diff --git a/.gitattributes b/.gitattributes index ecd9a7a29..41a6c0979 100644 --- a/.gitattributes +++ b/.gitattributes @@ -5,3 +5,4 @@ *.h diff=cpp *.gltf binary +*.x binary diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 4edd63207..5c2718366 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -14,7 +14,7 @@ Contributions are welcome! Here's how you can help: [clone](https://help.github.com/articles/cloning-a-repository/) your fork. 2. Before you start coding, consider opening an - [issue at Github](https://github.com/minetest/minetest/issues) to discuss the + [issue on Github](https://github.com/luanti-org/luanti/issues) to discuss the suitability and implementation of your intended contribution with the core developers. @@ -25,16 +25,16 @@ Contributions are welcome! Here's how you can help: the work, to avoid disappointment. You may also benefit from discussing on our IRC development channel - [#minetest-dev](http://www.minetest.net/irc/). Note that a proper IRC client + [#luanti-dev](http://www.luanti.org/irc/). Note that a proper IRC client is required to speak on this channel. 3. Start coding! - Refer to the - [Lua API](https://github.com/minetest/minetest/blob/master/doc/lua_api.md), - [Developer Wiki](http://dev.minetest.net/Main_Page) and other - [documentation](https://github.com/minetest/minetest/tree/master/doc). - - Follow the [C/C++](http://dev.minetest.net/Code_style_guidelines) and - [Lua](http://dev.minetest.net/Lua_code_style_guidelines) code style guidelines. + [Lua API](https://github.com/luanti-org/luanti/blob/master/doc/lua_api.md), + [Developer Wiki](https://dev.luanti.org/) and other + [documentation](https://github.com/luanti-org/luanti/tree/master/doc). + - Follow the [C/C++](https://dev.luanti.org/Code_style_guidelines) and + [Lua](https://dev.luanti.org/Lua_code_style_guidelines) code style guidelines. - Check your code works as expected and document any changes to the Lua API. - To avoid conflicting changes between contributions, do not do the following manually. They will be done before each release. - Run `updatepo.sh` or update `luanti.po{,t}` even if your code adds new translatable strings. @@ -53,7 +53,7 @@ Contributions are welcome! Here's how you can help: - The following lines should describe the commit, starting a new line for each point. 5. Once you are happy with your changes, submit a pull request. - - Open the [pull-request form](https://github.com/minetest/minetest/pull/new/master). + - Open the [pull-request form](https://github.com/luanti-org/luanti/pull/new/master). - Add a description explaining what you've done (or if it's a work-in-progress - what you need to do). - Make sure to fill out the pull request template. @@ -64,8 +64,8 @@ Contributions are welcome! Here's how you can help: picture of the project. 2. It works. 3. It follows the code style for - [C/C++](http://dev.minetest.net/Code_style_guidelines) or - [Lua](http://dev.minetest.net/Lua_code_style_guidelines). + [C/C++](https://dev.luanti.org/Code_style_guidelines) or + [Lua](https://dev.luanti.org/Lua_code_style_guidelines). 4. The code's interfaces are well designed, regardless of other aspects that might need more work in the future. 5. It uses protocols and formats which include the required compatibility. @@ -76,9 +76,9 @@ If you experience an issue, we would like to know the details - especially when a stable release is on the way. 1. Do a quick search on GitHub to check if the issue has already been reported. -2. Is it an issue with the Minetest *engine*? If not, report it - [elsewhere](http://www.minetest.net/development/#reporting-issues). -3. [Open an issue](https://github.com/minetest/minetest/issues/new) and describe +2. Is it an issue with the Luanti *engine*? If not, report it + [elsewhere](http://www.luanti.org/development/#reporting-issues). +3. [Open an issue](https://github.com/luanti-org/luanti/issues/new) and describe the issue you are having - you could include: - Error logs (check the bottom of the `debug.txt` file). - Screenshots. @@ -106,21 +106,21 @@ the project page with a list of current languages Builtin (the component which contains things like server messages, chat command descriptions, privilege descriptions) is translated separately; it needs to be translated by editing a `.tr` text file. See -[Translation](https://dev.minetest.net/Translation) for more information. +[Translation](https://dev.luanti.org/Translation) for more information. ## Donations If you'd like to monetarily support Luanti development, you can find donation -methods on [our website](http://www.minetest.net/development/#donate). +methods on [our website](http://www.luanti.org/development/#donate). # Maintaining * This is a concise version of the - [Rules & Guidelines](http://dev.minetest.net/Category:Rules_and_Guidelines) on the developer wiki.* + [Rules & Guidelines](https://dev.luanti.org/engine-dev-process/) on the developer wiki.* These notes are for those who have push access Luanti (core developers / maintainers). -- See the [project organisation](http://dev.minetest.net/Organisation) for the people involved. +- See the [project organisation](https://dev.luanti.org/Organisation) for the people involved. ## Concept approvals and roadmaps @@ -159,14 +159,14 @@ Submit a :+1: (+1) or "Looks good" comment to show you believe the pull-request - The title should follow the commit guidelines (title starts with a capital letter, present tense, descriptive). - Don't modify history older than 10 minutes. - Use rebase, not merge to get linear history: - - `curl https://github.com/minetest/minetest/pull/1.patch | git am` + - `curl -Ls https://github.com/luanti-org/luanti/pull/1.patch | git am` ## Reviewing issues and feature requests - If an issue does not get a response from its author within 1 month (when requiring more details), it can be closed. - When an issue is a duplicate, refer to the first ones and close the later ones. -- Tag issues with the appropriate [labels](https://github.com/minetest/minetest/labels) for devices, platforms etc. +- Tag issues with the appropriate [labels](https://github.com/luanti-org/luanti/labels) for devices, platforms etc. ## Releasing a new version -*Refer to [dev.minetest.net/Releasing_Luanti](https://dev.minetest.net/Releasing_Luanti)* +*Refer to [dev.luanti.org/Releasing_Luanti](https://dev.luanti.org/Releasing_Luanti)* diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml index 828d29b59..29df88d18 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yaml +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -9,7 +9,7 @@ body: 1. **Please update Luanti to the latest stable or dev version** before submitting bug reports. Make sure the bug is still reproducible on the latest version. 2. This page is for reporting the bugs of **the engine itself**. For bugs in a particular game, please [search for the game in the ContentDB](https://content.luanti.org/packages/?type=game) and submit a bug report in their issue trackers. - * For example, you can submit issues about the Minetest Game [in its own repository](https://github.com/minetest/minetest_game/issues). + * For example, you can submit issues about the Minetest Game [in its own repository](https://github.com/luanti-org/minetest_game/issues). 3. Please provide as many details as possible for us to spot the problem quicker. - type: textarea attributes: @@ -34,13 +34,6 @@ body: render: "true" validations: required: true - - type: input - attributes: - label: Irrlicht device - description: - placeholder: "Example: X11" - validations: - required: false - type: input attributes: label: Operating system and version @@ -69,7 +62,7 @@ body: attributes: label: Active renderer description: You can find this in the "About" tab in the main menu. - placeholder: "Example: OpenGL 4.6.0" + placeholder: "Example: ES 3.2 / ogles2 / X11" validations: required: false - type: textarea diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 502e8e1d7..c6834265d 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,7 +1,7 @@ blank_issues_enabled: true contact_links: - name: Submit issues about Minetest Game - url: https://github.com/minetest/minetest_game/issues/new/choose + url: https://github.com/luanti-org/minetest_game/issues/new about: Only submit issues of the engine in this repository's issue tracker. Submit those of Minetest Game in its own issue tracker. - name: Search for issue trackers of third-party games url: https://content.luanti.org/packages/?type=game diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 0d7c0fb86..60a926039 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -3,7 +3,7 @@ Add compact, short information about your PR for easier understanding: - Goal of the PR - How does the PR work? - Does it resolve any reported issue? -- Does this relate to a goal in [the roadmap](https://github.com/minetest/minetest/blob/master/doc/direction.md)? +- Does this relate to a goal in [the roadmap](https://github.com/luanti-org/luanti/blob/master/doc/direction.md)? - If not a bug fix, why is this PR needed? What usecases does it solve? ## To do diff --git a/.github/SECURITY.md b/.github/SECURITY.md index d5db2751a..22b154458 100644 --- a/.github/SECURITY.md +++ b/.github/SECURITY.md @@ -3,7 +3,7 @@ ## Supported Versions We only support the latest stable version for security issues. -See the [releases page](https://github.com/minetest/minetest/releases). +See the [releases page](https://github.com/luanti-org/luanti/releases). ## Reporting a Vulnerability @@ -11,7 +11,7 @@ We ask that you report vulnerabilities privately, by contacting a core developer to give us time to fix them. You can do that by emailing one of the following addresses: * celeron55@gmail.com -* rubenwardy@minetest.net +* rw@rubenwardy.com Depending on severity, we will either create a private issue for the vulnerability and release a patch version of Luanti, or give you permission to file the issue publicly. diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index bd553cd61..7a0ed2ec9 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -53,6 +53,8 @@ jobs: env: CC: gcc-7 CXX: g++-7 + # Test fallback SHA implementations + CMAKE_FLAGS: '-DENABLE_OPENSSL=0' - name: Test continue-on-error: true diff --git a/.github/workflows/lua_api_deploy.yml b/.github/workflows/lua_api_deploy.yml index e42335a78..68db8316f 100644 --- a/.github/workflows/lua_api_deploy.yml +++ b/.github/workflows/lua_api_deploy.yml @@ -16,7 +16,7 @@ on: jobs: build: - if: github.repository == 'minetest/minetest' + if: github.repository == 'luanti-org/luanti' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/png_file_checks.yml b/.github/workflows/png_file_checks.yml new file mode 100644 index 000000000..86cd93527 --- /dev/null +++ b/.github/workflows/png_file_checks.yml @@ -0,0 +1,26 @@ +name: png_file_checks + +# Check whether all png files are in a valid format +on: + push: + paths: + - '**.png' + - '.github/workflows/**.yml' + pull_request: + paths: + - '**.png' + - '.github/workflows/**.yml' + +jobs: + png_optimized: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Install deps + run: | + sudo apt-get update + sudo apt install -y optipng + + - name: Check whether all png files are optimized + run: | + ./util/ci/check_png_optimized.sh diff --git a/.github/workflows/whitespace_checks.yml b/.github/workflows/whitespace_checks.yml index cc16e7b22..b5fcc02e5 100644 --- a/.github/workflows/whitespace_checks.yml +++ b/.github/workflows/whitespace_checks.yml @@ -14,6 +14,7 @@ on: - '**.sh' - '**.cmake' - '**.glsl' + - '**.lua' pull_request: paths: - '**.txt' @@ -24,6 +25,7 @@ on: - '**.sh' - '**.cmake' - '**.glsl' + - '**.lua' jobs: trailing_whitespaces: @@ -32,7 +34,72 @@ jobs: - uses: actions/checkout@v4 # Line endings are already ensured by .gitattributes - name: Check trailing whitespaces - run: if git ls-files | grep -E '\.txt$|\.md$|\.[ch]$|\.cpp$|\.hpp$|\.sh$|\.cmake$|\.glsl$' | xargs grep -n '\s$'; then echo -e "\033[0;31mFound trailing whitespace"; (exit 1); else (exit 0); fi + run: | + if git ls-files |\ + grep -E '\.txt$|\.md$|\.[ch]$|\.cpp$|\.hpp$|\.sh$|\.cmake$|\.glsl$' |\ + xargs grep -n '\s$';\ + then\ + echo -e "\033[0;31mFound trailing whitespace";\ + (exit 1);\ + else\ + (exit 0);\ + fi + + indent_spaces: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + # Line endings are already ensured by .gitattributes + # Multiple multline comments in one line is not supported by this check + # and there is no reason to use them + # So lines like: "/* */ /*" or "*/ a = 5; /*" will result in error + - name: Check for unsupported multiline comments + run: | + if git ls-files |\ + grep -E '^src/.*\.cpp$|^src/.*\.[ch]$' |\ + xargs grep -n '\*/.*/\*';\ + then + echo -e "\033[0;31mUnsupported combination of multiline comments. New multiline comment should begin on new line.";\ + (exit 1);\ + else\ + (exit 0);\ + fi + if git ls-files |\ + grep -E '\.lua$' |\ + xargs grep -n -e '\]\].*--\[\[';\ + then + echo -e "\033[0;31mUnsupported combination of multiline comments. New multiline comment should begin on new line.";\ + (exit 1);\ + else\ + (exit 0);\ + fi + # This prepare files for final check + # See python script ./util/ci/indent_tab_preprocess.py for details. + - name: Preprocess files + run: | + git ls-files |\ + grep -E '^src/.*\.cpp$|^src/.*\.[ch]$' |\ + xargs -L 1 -P $(($(nproc) + 1)) \ + python3 ./util/ci/indent_tab_preprocess.py "/*" "*/" + git ls-files |\ + grep -E '\.lua$' |\ + xargs -L 1 -P $(($(nproc) + 1)) \ + python3 ./util/ci/indent_tab_preprocess.py "--[[" "]]" + # Check for bad indent. + # This runs over preprocessed files. + # If there is any remaining space on line beginning or after tab, + # error is generated + - name: Check indent spaces + run: | + if git ls-files |\ + grep -E '^src/.*\.cpp$|^src/.*\.[ch]$|\.lua' |\ + xargs grep -n -P '^\t*[ ]';\ + then\ + echo -e "\033[0;31mFound incorrect indent whitespaces";\ + (exit 1);\ + else\ + (exit 0);\ + fi tabs_lua_api_files: runs-on: ubuntu-latest @@ -40,6 +107,12 @@ jobs: - uses: actions/checkout@v4 # Some files should not contain tabs - name: Check tabs in Lua API files - run: if grep -n $'\t' doc/lua_api.md doc/client_lua_api.md; then echo -e "\033[0;31mFound tab in markdown file"; (exit 1); else (exit 0); fi - + run: | + if grep -n $'\t' doc/lua_api.md doc/client_lua_api.md;\ + then\ + echo -e "\033[0;31mFound tab in markdown file";\ + (exit 1);\ + else\ + (exit 0);\ + fi diff --git a/.gitignore b/.gitignore index 02db63f2b..35391a5d9 100644 --- a/.gitignore +++ b/.gitignore @@ -49,13 +49,13 @@ AppDir # Nix /result -## Files related to Minetest development cycle +## Files related to Luanti development cycle /*.patch *.diff # GNU Patch reject file *.rej -## Non-static Minetest directories or symlinks to these +## Non-static Luanti directories or symlinks to these /bin/ /games/* !/games/devtest/ @@ -80,7 +80,7 @@ minetest.conf debug.txt debug.txt.1 -## Other files generated by Minetest +## Other files generated by Luanti screenshot_*.png testbm.txt diff --git a/.luacheckrc b/.luacheckrc index afc136c7c..82c10fcd3 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -10,11 +10,13 @@ ignore = { read_globals = { "ItemStack", "INIT", + "PLATFORM", "DIR_DELIM", "dump", "dump2", "fgettext", "fgettext_ne", "vector", "VoxelArea", + "VoxelManip", "profiler", "Settings", "PerlinNoise", "PerlinNoiseMap", @@ -74,10 +76,6 @@ files["builtin/mainmenu"] = { globals = { "gamedata", }, - - read_globals = { - "PLATFORM", - }, } files["builtin/common/tests"] = { diff --git a/CMakeLists.txt b/CMakeLists.txt index 4562b8b15..2d344ed9b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -12,7 +12,7 @@ set(CLANG_MINIMUM_VERSION "7.0.1") # You should not need to edit these manually, use util/bump_version.sh set(VERSION_MAJOR 5) -set(VERSION_MINOR 10) +set(VERSION_MINOR 11) set(VERSION_PATCH 0) set(VERSION_EXTRA "" CACHE STRING "Stuff to append to version string") @@ -53,7 +53,7 @@ endif() # - win32/gcc: fails to link # - win32/clang: works # - macOS on x86: seems to be fine -# - macOS on ARM: crashes, see +# - macOS on ARM: crashes, see # Note: since CMake has no easy architecture detection disabling for Mac entirely #### #### if((WIN32 AND CMAKE_CXX_COMPILER_ID STREQUAL "GNU") OR APPLE) diff --git a/CNAME b/CNAME index c8f58d469..cd4ccafcc 100644 --- a/CNAME +++ b/CNAME @@ -1 +1 @@ -api.minetest.net +api.luanti.org diff --git a/LICENSE.txt b/LICENSE.txt index f1ec71cad..4e23636af 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -14,6 +14,9 @@ https://www.apache.org/licenses/LICENSE-2.0.html Textures by Zughy are under CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/ +Textures by cx384 are under CC BY-SA 4.0 +https://creativecommons.org/licenses/by-sa/4.0/ + Media files by DS are under CC BY-SA 4.0 https://creativecommons.org/licenses/by-sa/4.0/ @@ -63,6 +66,14 @@ Zughy: textures/base/pack/settings_btn.png textures/base/pack/settings_info.png textures/base/pack/settings_reset.png + textures/base/pack/server_url.png + textures/base/pack/server_url_unavailable.png + textures/base/pack/server_view_clients.png + textures/base/pack/server_view_clients_unavailable.png + +cx384: + textures/base/pack/server_view_mods.png + textures/base/pack/server_view_mods_unavailable.png appgurueu: textures/base/pack/server_incompatible.png diff --git a/README.md b/README.md index a8911ce03..6456e9b08 100644 --- a/README.md +++ b/README.md @@ -151,7 +151,7 @@ bin/freeminer Luanti (formerly Minetest) ========================== -![Build Status](https://github.com/minetest/minetest/workflows/build/badge.svg) +![Build Status](https://github.com/luanti-org/luanti/workflows/build/badge.svg) [![Translation status](https://hosted.weblate.org/widgets/minetest/-/svg-badge.svg)](https://hosted.weblate.org/engage/minetest/?utm_source=widget) [![License](https://img.shields.io/badge/license-LGPLv2.1%2B-blue.svg)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html) @@ -175,10 +175,10 @@ Table of Contents Further documentation ---------------------- -- Website: https://www.minetest.net/ -- Wiki: https://wiki.minetest.net/ +- Website: https://www.luanti.org/ +- Wiki: https://wiki.luanti.org/ - Forum: https://forum.luanti.org/ -- GitHub: https://github.com/minetest/minetest/ +- GitHub: https://github.com/luanti-org/luanti/ - [Developer documentation](doc/developing/) - [doc/](doc/) directory of source distribution diff --git a/android/app/src/main/res/values-fa/strings.xml b/android/app/src/main/res/values-fa/strings.xml new file mode 100644 index 000000000..634b75067 --- /dev/null +++ b/android/app/src/main/res/values-fa/strings.xml @@ -0,0 +1,11 @@ + + + کمتر از 1 دقیقه… + در حال بارگذاری… + انجام شد + لوآنتی + در حال بارگذاری لوآنتی + نوتیفیکیشن عمومی + نوتیفیکیشن از لوآنتی + هیچ مرورگری یافت نشد + diff --git a/android/app/src/main/res/values-fr/strings.xml b/android/app/src/main/res/values-fr/strings.xml new file mode 100644 index 000000000..690965405 --- /dev/null +++ b/android/app/src/main/res/values-fr/strings.xml @@ -0,0 +1,11 @@ + + + Luanti + Chargement… + Notification générale + Notifications de Luanti + Chargement de Luanti + Moins d\'une minute… + Terminé + Aucun navigateur web trouvé + diff --git a/android/app/src/main/res/values-gl/strings.xml b/android/app/src/main/res/values-gl/strings.xml new file mode 100644 index 000000000..89ee1f2bb --- /dev/null +++ b/android/app/src/main/res/values-gl/strings.xml @@ -0,0 +1,11 @@ + + + Luanti + Cargando… + Notificación xeral + Notificacións de Luanti + Cargando Luanti + Menos de 1 minuto… + Feito + Non se atopou ningún navegador web + diff --git a/android/app/src/main/res/values-sv/strings.xml b/android/app/src/main/res/values-sv/strings.xml new file mode 100644 index 000000000..5dcf923eb --- /dev/null +++ b/android/app/src/main/res/values-sv/strings.xml @@ -0,0 +1,11 @@ + + + Luanti + Laddar… + Mindre än 1 minut… + Färdig + Ingen webbläsare kunde hittas + Generell notis + Notiser från Luanti + Laddar Luanti + \ No newline at end of file diff --git a/android/app/src/main/res/values-ta/strings.xml b/android/app/src/main/res/values-ta/strings.xml new file mode 100644 index 000000000..a6b3daec9 --- /dev/null +++ b/android/app/src/main/res/values-ta/strings.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/android/app/src/main/res/values-uk/strings.xml b/android/app/src/main/res/values-uk/strings.xml new file mode 100644 index 000000000..2969e0e53 --- /dev/null +++ b/android/app/src/main/res/values-uk/strings.xml @@ -0,0 +1,11 @@ + + + Luanti + Браузерів не знайдено + Завантаження… + Загальні сповіщення + Luanti завантажується + Менше за 1 хвилину… + Готово + Сповіщення від Luanti + \ No newline at end of file diff --git a/android/app/src/main/res/values-zh-rCN/strings.xml b/android/app/src/main/res/values-zh-rCN/strings.xml new file mode 100644 index 000000000..5441ec322 --- /dev/null +++ b/android/app/src/main/res/values-zh-rCN/strings.xml @@ -0,0 +1,11 @@ + + + Luanti + 加载中… + 一般通知 + Luanti 的通知 + 加载 Luanti 中 + 不到1分钟… + 完成 + 未找到网页浏览器 + diff --git a/android/app/src/main/res/values-zh-rTW/strings.xml b/android/app/src/main/res/values-zh-rTW/strings.xml new file mode 100644 index 000000000..2953aefb8 --- /dev/null +++ b/android/app/src/main/res/values-zh-rTW/strings.xml @@ -0,0 +1,11 @@ + + + 載入中… + 一般通知 + Luanti 的通知 + 不到1分鐘… + 完畢 + 未找到任何網頁瀏覽器 + Luanti + 載入Luanti中 + \ No newline at end of file diff --git a/android/build.gradle b/android/build.gradle index 40266815e..a6b9c512d 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -1,7 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. project.ext.set("versionMajor", 5) // Version Major -project.ext.set("versionMinor", 10) // Version Minor +project.ext.set("versionMinor", 11) // Version Minor project.ext.set("versionPatch", 0) // Version Patch // ^ keep in sync with cmake diff --git a/android/native/build.gradle b/android/native/build.gradle index 806dda2f0..b5224c6a0 100644 --- a/android/native/build.gradle +++ b/android/native/build.gradle @@ -52,7 +52,7 @@ if (new File(depsDir, 'armeabi-v7a').exists()) { task downloadDeps(type: Download) { def depsZip = new File(buildDir, 'deps.zip') - src 'https://github.com/minetest/minetest_android_deps/releases/download/latest/deps-lite.zip' + src 'https://github.com/luanti-org/luanti_android_deps/releases/download/latest/deps-lite.zip' dest depsZip overwrite false diff --git a/builtin/client/init.lua b/builtin/client/init.lua index 1f83771ea..ee0f267db 100644 --- a/builtin/client/init.lua +++ b/builtin/client/init.lua @@ -2,7 +2,10 @@ local scriptpath = core.get_builtin_path() local clientpath = scriptpath.."client"..DIR_DELIM local commonpath = scriptpath.."common"..DIR_DELIM -dofile(clientpath .. "register.lua") +local builtin_shared = {} + +assert(loadfile(commonpath .. "register.lua"))(builtin_shared) +assert(loadfile(clientpath .. "register.lua"))(builtin_shared) dofile(commonpath .. "after.lua") dofile(commonpath .. "mod_storage.lua") dofile(commonpath .. "chatcommands.lua") diff --git a/builtin/client/register.lua b/builtin/client/register.lua index 61db4a30b..0e3e68fee 100644 --- a/builtin/client/register.lua +++ b/builtin/client/register.lua @@ -1,68 +1,6 @@ -core.callback_origins = {} +local builtin_shared = ... -local getinfo = debug.getinfo -debug.getinfo = nil - ---- Runs given callbacks. --- --- Note: this function is also called from C++ --- @tparam table callbacks a table with registered callbacks, like `core.registered_on_*` --- @tparam number mode a RunCallbacksMode, as defined in src/script/common/c_internal.h --- @param ... arguments for the callback --- @return depends on mode -function core.run_callbacks(callbacks, mode, ...) - assert(type(callbacks) == "table") - local cb_len = #callbacks - if cb_len == 0 then - if mode == 2 or mode == 3 then - return true - elseif mode == 4 or mode == 5 then - return false - end - end - local ret - for i = 1, cb_len do - local cb_ret = callbacks[i](...) - - if mode == 0 and i == 1 or mode == 1 and i == cb_len then - ret = cb_ret - elseif mode == 2 then - if not cb_ret or i == 1 then - ret = cb_ret - end - elseif mode == 3 then - if cb_ret then - return cb_ret - end - ret = cb_ret - elseif mode == 4 then - if (cb_ret and not ret) or i == 1 then - ret = cb_ret - end - elseif mode == 5 and cb_ret then - return cb_ret - end - end - return ret -end - --- --- Callback registration --- - -local function make_registration() - local t = {} - local registerfunc = function(func) - t[#t + 1] = func - core.callback_origins[func] = { - mod = core.get_current_modname() or "??", - name = getinfo(1, "n").name or "??" - } - --local origin = core.callback_origins[func] - --print(origin.name .. ": " .. origin.mod .. " registering cbk " .. tostring(func)) - end - return t, registerfunc -end +local make_registration = builtin_shared.make_registration core.registered_globalsteps, core.register_globalstep = make_registration() core.registered_on_mods_loaded, core.register_on_mods_loaded = make_registration() diff --git a/builtin/common/register.lua b/builtin/common/register.lua index c300ef90f..cbeac7c64 100644 --- a/builtin/common/register.lua +++ b/builtin/common/register.lua @@ -54,7 +54,8 @@ function builtin_shared.make_registration() local registerfunc = function(func) t[#t + 1] = func core.callback_origins[func] = { - mod = core.get_current_modname() or "??", + -- may be nil or return nil + mod = core.get_current_modname and core.get_current_modname() or "??", name = debug.getinfo(1, "n").name or "??" } end @@ -66,7 +67,8 @@ function builtin_shared.make_registration_reverse() local registerfunc = function(func) table.insert(t, 1, func) core.callback_origins[func] = { - mod = core.get_current_modname() or "??", + -- may be nil or return nil + mod = core.get_current_modname and core.get_current_modname() or "??", name = debug.getinfo(1, "n").name or "??" } end diff --git a/builtin/mainmenu/settings/components.lua b/builtin/common/settings/components.lua similarity index 88% rename from builtin/mainmenu/settings/components.lua rename to builtin/common/settings/components.lua index 64cd27c3c..aec2b8898 100644 --- a/builtin/mainmenu/settings/components.lua +++ b/builtin/common/settings/components.lua @@ -98,6 +98,7 @@ local function make_field(converter, validator, stringifier) local fs = ("field[0,0.3;%f,0.8;%s;%s;%s]"):format( avail_w - 1.5, setting.name, get_label(setting), core.formspec_escape(value)) fs = fs .. ("field_enter_after_edit[%s;true]"):format(setting.name) + fs = fs .. ("field_close_on_enter[%s;false]"):format(setting.name) -- for pause menu env fs = fs .. ("button[%f,0.3;1.5,0.8;%s;%s]"):format(avail_w - 1.5, "set_" .. setting.name, fgettext("Set")) return fs, 1.1 @@ -217,6 +218,8 @@ local function make_path(setting) local fs = ("field[0,0.3;%f,0.8;%s;%s;%s]"):format( avail_w - 3, setting.name, get_label(setting), core.formspec_escape(value)) + fs = fs .. ("field_enter_after_edit[%s;true]"):format(setting.name) + fs = fs .. ("field_close_on_enter[%s;false]"):format(setting.name) -- for pause menu env fs = fs .. ("button[%f,0.3;1.5,0.8;%s;%s]"):format(avail_w - 3, "pick_" .. setting.name, fgettext("Browse")) fs = fs .. ("button[%f,0.3;1.5,0.8;%s;%s]"):format(avail_w - 1.5, "set_" .. setting.name, fgettext("Set")) @@ -249,8 +252,11 @@ local function make_path(setting) } end -if PLATFORM == "Android" then +if PLATFORM == "Android" or INIT == "pause_menu" then -- The Irrlicht file picker doesn't work on Android. + -- Access to the Irrlicht file picker isn't implemented in the pause menu. + -- We want to delete the Irrlicht file picker anyway, so any time spent on + -- that would be wasted. make.path = make.string make.filepath = make.string else @@ -282,6 +288,14 @@ function make.v3f(setting) fs = fs .. ("field[%f,0.6;%f,0.8;%s;%s;%s]"):format( 2 * (field_width + 0.25), field_width, setting.name .. "_z", "Z", value.z) + fs = fs .. ("field_enter_after_edit[%s;true]"):format(setting.name .. "_x") + fs = fs .. ("field_enter_after_edit[%s;true]"):format(setting.name .. "_y") + fs = fs .. ("field_enter_after_edit[%s;true]"):format(setting.name .. "_z") + -- for pause menu env + fs = fs .. ("field_close_on_enter[%s;false]"):format(setting.name .. "_x") + fs = fs .. ("field_close_on_enter[%s;false]"):format(setting.name .. "_y") + fs = fs .. ("field_close_on_enter[%s;false]"):format(setting.name .. "_z") + fs = fs .. ("button[%f,0.6;1,0.8;%s;%s]"):format(avail_w, "set_" .. setting.name, fgettext("Set")) return fs, 1.4 @@ -428,8 +442,22 @@ local function make_noise_params(setting) } end -make.noise_params_2d = make_noise_params -make.noise_params_3d = make_noise_params +if INIT == "pause_menu" then + -- Making the noise parameter dialog work in the pause menu settings would + -- require porting "FSTK" (at least the dialog API) from the mainmenu formspec + -- API to the in-game formspec API. + -- There's no reason you'd want to adjust mapgen noise parameter settings + -- in-game (they only apply to new worlds), so there's no reason to implement + -- this. + local empty = function() + return { get_formspec = function() return "", 0 end } + end + make.noise_params_2d = empty + make.noise_params_3d = empty +else + make.noise_params_2d = make_noise_params + make.noise_params_3d = make_noise_params +end return make diff --git a/builtin/mainmenu/settings/dlg_change_mapgen_flags.lua b/builtin/common/settings/dlg_change_mapgen_flags.lua similarity index 100% rename from builtin/mainmenu/settings/dlg_change_mapgen_flags.lua rename to builtin/common/settings/dlg_change_mapgen_flags.lua diff --git a/builtin/mainmenu/settings/dlg_settings.lua b/builtin/common/settings/dlg_settings.lua similarity index 89% rename from builtin/mainmenu/settings/dlg_settings.lua rename to builtin/common/settings/dlg_settings.lua index 57e5a1300..68d210cc9 100644 --- a/builtin/mainmenu/settings/dlg_settings.lua +++ b/builtin/common/settings/dlg_settings.lua @@ -16,13 +16,10 @@ --51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -local component_funcs = dofile(core.get_mainmenu_path() .. DIR_DELIM .. - "settings" .. DIR_DELIM .. "components.lua") +local path = core.get_builtin_path() .. "common" .. DIR_DELIM .. "settings" .. DIR_DELIM -local shader_warning_component = dofile(core.get_mainmenu_path() .. DIR_DELIM .. - "settings" .. DIR_DELIM .. "shader_warning_component.lua") -local shadows_component = dofile(core.get_mainmenu_path() .. DIR_DELIM .. - "settings" .. DIR_DELIM .. "shadows_component.lua") +local component_funcs = dofile(path .. "components.lua") +local shadows_component = dofile(path .. "shadows_component.lua") local loaded = false local full_settings @@ -112,7 +109,7 @@ local function load() local change_keys = { query_text = "Controls", requires = { - touch_controls = false, + keyboard_mouse = true, }, get_formspec = function(self, avail_w) local btn_w = math.min(avail_w, 3) @@ -125,6 +122,22 @@ local function load() end, } + local touchscreen_layout = { + query_text = "Touchscreen layout", + requires = { + touchscreen = true, + }, + get_formspec = function(self, avail_w) + local btn_w = math.min(avail_w, 6) + return ("button[0,0;%f,0.8;btn_touch_layout;%s]"):format(btn_w, fgettext("Touchscreen layout")), 0.8 + end, + on_submit = function(self, fields) + if fields.btn_touch_layout then + core.show_touchscreen_layout() + end + end, + } + add_page({ id = "accessibility", title = fgettext_ne("Accessibility"), @@ -153,13 +166,10 @@ local function load() load_settingtypes() table.insert(page_by_id.controls_keyboard_and_mouse.content, 1, change_keys) + -- insert after "touch_controls" + table.insert(page_by_id.controls_touchscreen.content, 2, touchscreen_layout) do - local content = page_by_id.graphics_and_audio_graphics.content - table.insert(content, 1, shader_warning_component) - - content = page_by_id.graphics_and_audio_effects.content - table.insert(content, 1, shader_warning_component) - + local content = page_by_id.graphics_and_audio_effects.content local idx = table.indexof(content, "enable_dynamic_shadows") table.insert(content, idx, shadows_component) @@ -348,7 +358,6 @@ local function check_requirements(name, requires) end local video_driver = core.get_active_driver() - local shaders_support = video_driver == "opengl" or video_driver == "opengl3" or video_driver == "ogles2" local touch_support = core.irrlicht_device_supports_touch() local touch_controls = core.settings:get("touch_controls") local special = { @@ -359,9 +368,7 @@ local function check_requirements(name, requires) -- be used, so we show settings for both. touchscreen = touch_support and (touch_controls == "auto" or core.is_yes(touch_controls)), keyboard_mouse = not touch_support or (touch_controls == "auto" or not core.is_yes(touch_controls)), - shaders_support = shaders_support, - shaders = core.settings:get_bool("enable_shaders") and shaders_support, - opengl = video_driver == "opengl", + opengl = (video_driver == "opengl" or video_driver == "opengl3"), gles = video_driver:sub(1, 5) == "ogles", } @@ -369,7 +376,10 @@ local function check_requirements(name, requires) if special[req_key] == nil then local required_setting = get_setting_info(req_key) if required_setting == nil then - core.log("warning", "Unknown setting " .. req_key .. " required by " .. name) + core.log("warning", "Unknown setting " .. req_key .. " required by " .. (name or "???")) + elseif required_setting.type ~= "bool" then + core.log("warning", "Setting " .. req_key .. " of type " .. required_setting.type .. + " used as requirement by " .. (name or "???") .. ", only bool is allowed") end local actual_value = core.settings:get_bool(req_key, required_setting and core.is_yes(required_setting.default)) @@ -506,7 +516,8 @@ local function get_formspec(dialogdata) "box[0,0;", tostring(tabsize.width), ",", tostring(tabsize.height), ";#0000008C]", ("button[0,%f;%f,0.8;back;%s]"):format( - tabsize.height + 0.2, back_w, fgettext("Back")), + tabsize.height + 0.2, back_w, + fgettext(INIT == "pause_menu" and "Exit" or "Back")), ("box[%f,%f;%f,0.8;#0000008C]"):format( back_w + 0.2, tabsize.height + 0.2, checkbox_w), @@ -523,6 +534,7 @@ local function get_formspec(dialogdata) "field[0.25,0.25;", tostring(search_width), ",0.75;search_query;;", core.formspec_escape(dialogdata.query or ""), "]", "field_enter_after_edit[search_query;true]", + "field_close_on_enter[search_query;false]", -- for pause menu env "container[", tostring(search_width + 0.25), ", 0.25]", "image_button[0,0;0.75,0.75;", core.formspec_escape(defaulttexturedir .. "search.png"), ";search;]", "image_button[0.75,0;0.75,0.75;", core.formspec_escape(defaulttexturedir .. "clear.png"), ";search_clear;]", @@ -663,7 +675,8 @@ local function buttonhandler(this, fields) dialogdata.rightscroll = core.explode_scrollbar_event(fields.rightscroll).value or dialogdata.rightscroll dialogdata.query = fields.search_query - if fields.back then + -- "fields.quit" is for the pause menu env + if fields.back or fields.quit then this:delete() return true end @@ -757,11 +770,44 @@ local function eventhandler(event) end -function create_settings_dlg() - load() - local dlg = dialog_create("dlg_settings", get_formspec, buttonhandler, eventhandler) +if INIT == "mainmenu" then + function create_settings_dlg() + load() + local dlg = dialog_create("dlg_settings", get_formspec, buttonhandler, eventhandler) - dlg.data.page_id = update_filtered_pages("") + dlg.data.page_id = update_filtered_pages("") - return dlg + return dlg + end + +else + assert(INIT == "pause_menu") + + local dialog + + core.register_on_formspec_input(function(formname, fields) + if dialog and formname == "__builtin:settings" then + -- buttonhandler returning true means we should update the formspec. + -- dialog is re-checked since the buttonhandler may have closed it. + if buttonhandler(dialog, fields) and dialog then + core.show_formspec("__builtin:settings", get_formspec(dialog.data)) + end + return true + end + end) + + core.open_settings = function() + load() + dialog = {} + dialog.data = {} + dialog.data.page_id = update_filtered_pages("") + dialog.delete = function() + dialog = nil + -- only needed for the "fields.back" case, in the "fields.quit" + -- case it's a no-op + core.show_formspec("__builtin:settings", "") + end + + core.show_formspec("__builtin:settings", get_formspec(dialog.data)) + end end diff --git a/builtin/mainmenu/settings/generate_from_settingtypes.lua b/builtin/common/settings/generate_from_settingtypes.lua similarity index 99% rename from builtin/mainmenu/settings/generate_from_settingtypes.lua rename to builtin/common/settings/generate_from_settingtypes.lua index d224e5519..d64de9871 100644 --- a/builtin/mainmenu/settings/generate_from_settingtypes.lua +++ b/builtin/common/settings/generate_from_settingtypes.lua @@ -16,7 +16,7 @@ local minetest_example_header = [[ # to the program, eg. "freeminer.exe --config ../freeminer.conf.example". # Further documentation: -# https://wiki.minetest.net/ +# https://wiki.luanti.org/ ]] diff --git a/builtin/mainmenu/settings/init.lua b/builtin/common/settings/init.lua similarity index 83% rename from builtin/mainmenu/settings/init.lua rename to builtin/common/settings/init.lua index c8615ba34..d475e0c96 100644 --- a/builtin/mainmenu/settings/init.lua +++ b/builtin/common/settings/init.lua @@ -15,11 +15,11 @@ --with this program; if not, write to the Free Software Foundation, Inc., --51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -local path = core.get_mainmenu_path() .. DIR_DELIM .. "settings" +local path = core.get_builtin_path() .. "common" .. DIR_DELIM .. "settings" .. DIR_DELIM -dofile(path .. DIR_DELIM .. "settingtypes.lua") -dofile(path .. DIR_DELIM .. "dlg_change_mapgen_flags.lua") -dofile(path .. DIR_DELIM .. "dlg_settings.lua") +dofile(path .. "settingtypes.lua") +dofile(path .. "dlg_change_mapgen_flags.lua") +dofile(path .. "dlg_settings.lua") -- Uncomment to generate 'minetest.conf.example' and 'settings_translation_file.cpp'. -- For RUN_IN_PLACE the generated files may appear in the 'bin' folder. diff --git a/builtin/mainmenu/settings/settingtypes.lua b/builtin/common/settings/settingtypes.lua similarity index 96% rename from builtin/mainmenu/settings/settingtypes.lua rename to builtin/common/settings/settingtypes.lua index e763535a9..a4dd28483 100644 --- a/builtin/mainmenu/settings/settingtypes.lua +++ b/builtin/common/settings/settingtypes.lua @@ -408,7 +408,16 @@ function settingtypes.parse_config_file(read_all, parse_mods) file:close() end - if parse_mods then + -- TODO: Support game/mod settings in the pause menu too + -- Note that this will need to work different from how it's done in the + -- mainmenu: + -- * Only if in singleplayer / on local server, not on remote servers + -- * Only show settings for the active game and mods + -- (add API function to get them, can return nil if on a remote server) + -- (names are probably not enough, will need paths for uniqueness) + -- This means just making "pkgmgr.lua" work won't get you very far. + + if INIT == "mainmenu" and parse_mods then -- Parse games local games_category_initialized = false for _, game in ipairs(pkgmgr.games) do diff --git a/builtin/mainmenu/settings/shadows_component.lua b/builtin/common/settings/shadows_component.lua similarity index 99% rename from builtin/mainmenu/settings/shadows_component.lua rename to builtin/common/settings/shadows_component.lua index 2ca03b71b..2d68f9d3d 100644 --- a/builtin/mainmenu/settings/shadows_component.lua +++ b/builtin/common/settings/shadows_component.lua @@ -82,7 +82,6 @@ end return { query_text = "Shadows", requires = { - shaders = true, opengl = true, }, get_formspec = function(self, avail_w) diff --git a/builtin/common/vector.lua b/builtin/common/vector.lua index fb1d2a7d9..7a8558cbd 100644 --- a/builtin/common/vector.lua +++ b/builtin/common/vector.lua @@ -389,7 +389,7 @@ function vector.random_direction() local x, y, z, l2 repeat -- expected less than two attempts on average (volume sphere vs. cube) x, y, z = math.random() * 2 - 1, math.random() * 2 - 1, math.random() * 2 - 1 - l2 = x*x + y*y + z*z + l2 = x*x + y*y + z*z until l2 <= 1 and l2 >= 1e-6 -- normalize local l = math.sqrt(l2) diff --git a/builtin/fstk/buttonbar.lua b/builtin/fstk/buttonbar.lua index ed478af82..577eb7c6d 100644 --- a/builtin/fstk/buttonbar.lua +++ b/builtin/fstk/buttonbar.lua @@ -38,7 +38,7 @@ local function buttonbar_formspec(self) -- `BASE_SPACING` is used as the minimum spacing, like `gap` in CSS Flexbox. -- The number of buttons per page is always calculated as if the scroll - -- buttons were visible. + -- buttons were visible. local avail_space = self.size.x - 2*BASE_SPACING - 2*get_scroll_btn_width() local btns_per_page = math.floor((avail_space - BASE_SPACING) / (btn_size + BASE_SPACING)) diff --git a/builtin/game/falling.lua b/builtin/game/falling.lua index 82a7699cf..a8dc31940 100644 --- a/builtin/game/falling.lua +++ b/builtin/game/falling.lua @@ -102,7 +102,7 @@ core.register_entity(":__builtin:falling_node_NOOOOOOOOOOOO", { self.floats = core.get_item_group(node.name, "float") ~= 0 -- Save liquidtype for falling water - self.liquidtype = def.liquidtype + self.liquidtype = def.liquidtype -- Set entity visuals if def.drawtype == "torchlike" or def.drawtype == "signlike" then @@ -340,23 +340,26 @@ core.register_entity(":__builtin:falling_node_NOOOOOOOOOOOO", { core.remove_node(bcp, remove_fast) else + -- We are placing on top so check what's there np.y = np.y + 1 - end - -- Check what's here - local n2 = core.get_node(np) - local nd = core.registered_nodes[n2.name] - -- If it's not air or liquid, remove node and replace it with - -- it's drops - if n2.name ~= "air" and (not nd or nd.liquidtype ~= "source") then - if nd and nd.buildable_to == false then + local n2 = core.get_node(np) + local nd = core.registered_nodes[n2.name] + if not nd or nd.buildable_to then + core.remove_node(np) + else + -- 'walkable' is used to mean "falling nodes can't replace this" + -- here. Normally we would collide with the walkable node itself + -- and place our node on top (so `n2.name == "air"`), but we + -- re-check this in case we ended up inside a node. + if not nd.diggable or nd.walkable then + return false + end nd.on_dig(np, n2, nil) -- If it's still there, it might be protected if core.get_node(np).name == n2.name then return false end - else - core.remove_node(np, remove_fast) end end diff --git a/builtin/game/features.lua b/builtin/game/features.lua index 88ec282c3..ea80a09fb 100644 --- a/builtin/game/features.lua +++ b/builtin/game/features.lua @@ -43,6 +43,8 @@ core.features = { hotbar_hud_element = true, bulk_lbms = true, abm_without_neighbors = true, + biome_weights = true, + particle_blend_clip = true, } function core.has_feature(arg) diff --git a/builtin/game/misc_s.lua b/builtin/game/misc_s.lua index 90092952d..e64134e15 100644 --- a/builtin/game/misc_s.lua +++ b/builtin/game/misc_s.lua @@ -36,11 +36,7 @@ end function core.setting_get_pos(name) - local value = core.settings:get(name) - if not value then - return nil - end - return core.string_to_pos(value) + return core.settings:get_pos(name) end @@ -116,3 +112,25 @@ if core.set_push_moveresult1 then end) core.set_push_moveresult1 = nil end + +-- Protocol version table +-- see also src/network/networkprotocol.cpp +core.protocol_versions = { + ["5.0.0"] = 37, + ["5.1.0"] = 38, + ["5.2.0"] = 39, + ["5.3.0"] = 39, + ["5.4.0"] = 39, + ["5.5.0"] = 40, + ["5.6.0"] = 41, + ["5.7.0"] = 42, + ["5.8.0"] = 43, + ["5.9.0"] = 44, + ["5.9.1"] = 45, + ["5.10.0"] = 46, + ["5.11.0"] = 47, +} + +setmetatable(core.protocol_versions, {__newindex = function() + error("core.protocol_versions is read-only") +end}) diff --git a/builtin/game/static_spawn.lua b/builtin/game/static_spawn.lua index 5b834310f..2d535251a 100644 --- a/builtin/game/static_spawn.lua +++ b/builtin/game/static_spawn.lua @@ -1,7 +1,7 @@ local static_spawnpoint_string = core.settings:get("static_spawnpoint") if static_spawnpoint_string and static_spawnpoint_string ~= "" and - not core.setting_get_pos("static_spawnpoint") then + not core.settings:get_pos("static_spawnpoint") then error('The static_spawnpoint setting is invalid: "' .. static_spawnpoint_string .. '"') end diff --git a/builtin/init.lua b/builtin/init.lua index 52e494004..69e8ae49f 100644 --- a/builtin/init.lua +++ b/builtin/init.lua @@ -89,6 +89,8 @@ elseif INIT == "client" then dofile(scriptdir .. "client" .. DIR_DELIM .. "init.lua") elseif INIT == "emerge" then dofile(scriptdir .. "emerge" .. DIR_DELIM .. "init.lua") +elseif INIT == "pause_menu" then + dofile(scriptdir .. "pause_menu" .. DIR_DELIM .. "init.lua") else error(("Unrecognized builtin initialization type %s!"):format(tostring(INIT))) end diff --git a/builtin/mainmenu/async_event.lua b/builtin/mainmenu/async_event.lua index 04bfb78d6..2358ee70e 100644 --- a/builtin/mainmenu/async_event.lua +++ b/builtin/mainmenu/async_event.lua @@ -11,11 +11,6 @@ end core.async_event_handler = handle_job function core.handle_async(func, parameter, callback) - -- Serialize function - local serialized_func = string.dump(func) - - assert(serialized_func ~= nil) - -- Serialize parameters local serialized_param = core.serialize(parameter) @@ -23,7 +18,7 @@ function core.handle_async(func, parameter, callback) return false end - local jobid = core.do_async_callback(serialized_func, serialized_param) + local jobid = core.do_async_callback(func, serialized_param) core.async_jobs[jobid] = callback diff --git a/builtin/mainmenu/content/contentdb.lua b/builtin/mainmenu/content/contentdb.lua index c352a260b..963400a12 100644 --- a/builtin/mainmenu/content/contentdb.lua +++ b/builtin/mainmenu/content/contentdb.lua @@ -392,7 +392,7 @@ function contentdb.resolve_dependencies(package, game, callback) end -local function fetch_pkgs(params) +local function fetch_pkgs() local version = core.get_version() local base_url = core.settings:get("contentdb_url") local url = base_url .. @@ -429,41 +429,43 @@ local function fetch_pkgs(params) if not packages or #packages == 0 then return end - local aliases = {} + return packages +end + + +function contentdb.set_packages_from_api(packages) + contentdb.package_by_id = {} + contentdb.aliases = {} for _, package in pairs(packages) do - package.id = params.calculate_package_id(package.type, package.author, package.name) + package.id = contentdb.calculate_package_id(package.type, package.author, package.name) package.url_part = core.urlencode(package.author) .. "/" .. core.urlencode(package.name) + contentdb.package_by_id[package.id] = package + if package.aliases then for _, alias in ipairs(package.aliases) do -- We currently don't support name changing local suffix = "/" .. package.name if alias:sub(-#suffix) == suffix then - aliases[alias:lower()] = package.id + contentdb.aliases[alias:lower()] = package.id end end end end - return { packages = packages, aliases = aliases } + contentdb.load_ok = true + contentdb.load_error = false + contentdb.packages = packages + contentdb.packages_full = packages + contentdb.packages_full_unordered = packages end - function contentdb.fetch_pkgs(callback) contentdb.loading = true - core.handle_async(fetch_pkgs, { calculate_package_id = contentdb.calculate_package_id }, function(result) + core.handle_async(fetch_pkgs, nil, function(result) if result then - contentdb.load_ok = true - contentdb.load_error = false - contentdb.packages = result.packages - contentdb.packages_full = result.packages - contentdb.packages_full_unordered = result.packages - contentdb.aliases = result.aliases - - for _, package in ipairs(result.packages) do - contentdb.package_by_id[package.id] = package - end + contentdb.set_packages_from_api(result) else contentdb.load_error = true end diff --git a/builtin/mainmenu/credits.json b/builtin/mainmenu/credits.json index 8a946893c..cd2b15d78 100644 --- a/builtin/mainmenu/credits.json +++ b/builtin/mainmenu/credits.json @@ -1,5 +1,5 @@ { - "#": "https://github.com/orgs/minetest/teams/engine/members", + "#": "https://github.com/orgs/luanti-org/teams/engine/members", "core_developers": [ "Perttu Ahola (celeron55) [Project founder]", "sfan5 ", @@ -15,7 +15,8 @@ "Gregor Parzefall (grorp)", "Lars Müller (luatic)", "cx384", - "sfence" + "sfence", + "y5nw" ], "previous_core_developers": [ "BlockMen", @@ -38,7 +39,7 @@ "Hugues Ross ", "Dmitry Kostenko (x2048) " ], - "#": "Currently only https://github.com/orgs/minetest/teams/triagers/members", + "#": "Currently only https://github.com/orgs/luanti-org/teams/triagers/members", "core_team": [ "Zughy [Issue triager]", "wsor [Issue triager]", @@ -47,23 +48,20 @@ "#": "For updating active/previous contributors, see the script in ./util/gather_git_credits.py", "contributors": [ "JosiahWI", - "1F616EMO", - "y5nw", "Erich Schubert", - "numzero", + "wrrrzr", + "1F616EMO", "red-001 ", - "David Heidelberg", - "Wuzzy", + "veprogames", "paradust7", - "HybridDog", - "Zemtzov7", - "kromka-chleba", "AFCMS", - "chmodsayshello", - "OgelGames" + "siliconsniffer", + "Wuzzy", + "Zemtzov7", ], "previous_contributors": [ "Ælla Chiana Moskopp (erle) [Logo]", + "numzero", "Giuseppe Bilotta", "ClobberXD", "Dániel Juhász (juhdanad) ", diff --git a/builtin/mainmenu/dlg_clients_list.lua b/builtin/mainmenu/dlg_clients_list.lua new file mode 100644 index 000000000..324d41efd --- /dev/null +++ b/builtin/mainmenu/dlg_clients_list.lua @@ -0,0 +1,49 @@ +-- Luanti +-- Copyright (C) 2024 siliconsniffer +-- SPDX-License-Identifier: LGPL-2.1-or-later + + +local function clients_list_formspec(dialogdata) + local TOUCH_GUI = core.settings:get_bool("touch_gui") + local clients_list = dialogdata.server.clients_list + local servername = dialogdata.server.name + + local function fmt_formspec_list(clients_list) + local escaped = {} + for i, str in ipairs(clients_list) do + escaped[i] = core.formspec_escape(str) + end + return table.concat(escaped, ",") + end + + local formspec = { + "formspec_version[8]", + "size[6,9.5]", + TOUCH_GUI and "padding[0.01,0.01]" or "", + "hypertext[0,0;6,1.5;;", + fgettext("This is the list of clients connected to\n$1", + "" .. core.hypertext_escape(servername) .. "") .. "]", + "textlist[0.5,1.5;5,6.8;;" .. fmt_formspec_list(clients_list) .. "]", + "button[1.5,8.5;3,0.8;quit;OK]" + } + return table.concat(formspec, "") +end + + +local function clients_list_buttonhandler(this, fields) + if fields.quit then + this:delete() + return true + end + return false +end + + +function create_clientslist_dialog(server) + local retval = dialog_create("dlg_clients_list", + clients_list_formspec, + clients_list_buttonhandler, + nil) + retval.data.server = server + return retval +end diff --git a/builtin/mainmenu/dlg_reinstall_mtg.lua b/builtin/mainmenu/dlg_reinstall_mtg.lua index 85bdedf7b..11b20f637 100644 --- a/builtin/mainmenu/dlg_reinstall_mtg.lua +++ b/builtin/mainmenu/dlg_reinstall_mtg.lua @@ -19,7 +19,7 @@ -- This whole file can be removed after a while. -- It was only directly useful for upgrades from 5.7.0 to 5.8.0, but -- maybe some odd fellow directly upgrades from 5.6.1 to 5.9.0 in the future... --- see in case it's not obvious +-- see in case it's not obvious ---- ---- local SETTING_NAME = "no_mtg_notification" diff --git a/builtin/mainmenu/dlg_server_list_mods.lua b/builtin/mainmenu/dlg_server_list_mods.lua new file mode 100644 index 000000000..fc392ae06 --- /dev/null +++ b/builtin/mainmenu/dlg_server_list_mods.lua @@ -0,0 +1,105 @@ +-- Luanti +-- Copyright (C) 2024 cx384 +-- SPDX-License-Identifier: LGPL-2.1-or-later + +local function get_formspec(dialogdata) + local TOUCH_GUI = core.settings:get_bool("touch_gui") + local server = dialogdata.server + local group_by_prefix = dialogdata.group_by_prefix + local expand_all = dialogdata.expand_all + + -- A wrongly behaving server may send ill formed mod names + table.sort(server.mods) + + local cells = {} + if group_by_prefix then + local function get_prefix(mod) + return mod:match("[^_]*") + end + local count = {} + for _, mod in ipairs(server.mods) do + local prefix = get_prefix(mod) + count[prefix] = (count[prefix] or 0) + 1 + end + local last_prefix + local function add_row(depth, mod) + table.insert(cells, ("%d"):format(depth)) + table.insert(cells, mod) + end + for i, mod in ipairs(server.mods) do + local prefix = get_prefix(mod) + if last_prefix == prefix then + add_row(1, mod) + elseif count[prefix] > 1 then + add_row(0, prefix) + add_row(1, mod) + else + add_row(0, mod) + end + last_prefix = prefix + end + else + cells = table.copy(server.mods) + end + + for i, cell in ipairs(cells) do + cells[i] = core.formspec_escape(cell) + end + cells = table.concat(cells, ",") + + local heading + if server.gameid then + heading = fgettext("The $1 server uses a game called $2 and the following mods:", + "" .. core.hypertext_escape(server.name) .. "", + "") + else + heading = fgettext("The $1 server uses the following mods:", + "" .. core.hypertext_escape(server.name) .. "") + end + + local formspec = { + "formspec_version[8]", + "size[8,9.5]", + TOUCH_GUI and "padding[0.01,0.01]" or "", + "hypertext[0,0;8,1.5;;", heading, "]", + "tablecolumns[", group_by_prefix and + (expand_all and "indent;text" or "tree;text") or "text", "]", + "table[0.5,1.5;7,6.8;mods;", cells, "]", + "checkbox[0.5,8.7;group_by_prefix;", fgettext("Group by prefix"), ";", + group_by_prefix and "true" or "false", "]", + group_by_prefix and ("checkbox[0.5,9.15;expand_all;" .. fgettext("Expand all") .. ";" .. + (expand_all and "true" or "false") .. "]") or "", + "button[5.5,8.5;2,0.8;quit;OK]" + } + return table.concat(formspec, "") +end + +local function buttonhandler(this, fields) + if fields.quit then + this:delete() + return true + end + + if fields.group_by_prefix then + this.data.group_by_prefix = core.is_yes(fields.group_by_prefix) + return true + end + + if fields.expand_all then + this.data.expand_all = core.is_yes(fields.expand_all) + return true + end + + return false +end + +function create_server_list_mods_dialog(server) + local retval = dialog_create("dlg_server_list_mods", + get_formspec, + buttonhandler, + nil) + retval.data.group_by_prefix = false + retval.data.expand_all = false + retval.data.server = server + return retval +end diff --git a/builtin/mainmenu/init.lua b/builtin/mainmenu/init.lua index d7ced241b..c88874dd9 100644 --- a/builtin/mainmenu/init.lua +++ b/builtin/mainmenu/init.lua @@ -47,7 +47,7 @@ dofile(menupath .. DIR_DELIM .. "game_theme.lua") dofile(menupath .. DIR_DELIM .. "content" .. DIR_DELIM .. "init.lua") dofile(menupath .. DIR_DELIM .. "dlg_config_world.lua") -dofile(menupath .. DIR_DELIM .. "settings" .. DIR_DELIM .. "init.lua") +dofile(basepath .. "common" .. DIR_DELIM .. "settings" .. DIR_DELIM .. "init.lua") dofile(menupath .. DIR_DELIM .. "dlg_create_world.lua") dofile(menupath .. DIR_DELIM .. "dlg_delete_content.lua") dofile(menupath .. DIR_DELIM .. "dlg_delete_world.lua") @@ -55,6 +55,8 @@ dofile(menupath .. DIR_DELIM .. "dlg_register.lua") dofile(menupath .. DIR_DELIM .. "dlg_rename_modpack.lua") dofile(menupath .. DIR_DELIM .. "dlg_version_info.lua") dofile(menupath .. DIR_DELIM .. "dlg_reinstall_mtg.lua") +dofile(menupath .. DIR_DELIM .. "dlg_clients_list.lua") +dofile(menupath .. DIR_DELIM .. "dlg_server_list_mods.lua") local tabs = { content = dofile(menupath .. DIR_DELIM .. "tab_content.lua"), @@ -145,4 +147,5 @@ local function init_globals() check_new_version() end +assert(os.execute == nil) init_globals() diff --git a/builtin/mainmenu/settings/shader_warning_component.lua b/builtin/mainmenu/settings/shader_warning_component.lua deleted file mode 100644 index b227bcee3..000000000 --- a/builtin/mainmenu/settings/shader_warning_component.lua +++ /dev/null @@ -1,26 +0,0 @@ --- Luanti --- SPDX-License-Identifier: LGPL-2.1-or-later - -return { - query_text = "Shaders", - requires = { - shaders_support = true, - shaders = false, - }, - full_width = true, - get_formspec = function(self, avail_w) - local fs = { - "box[0,0;", avail_w, ",1.2;", mt_color_orange, "]", - "label[0.2,0.4;", fgettext("Shaders are disabled."), "]", - "label[0.2,0.8;", fgettext("This is not a recommended configuration."), "]", - "button[", avail_w - 2.2, ",0.2;2,0.8;fix_shader_warning;", fgettext("Enable"), "]", - } - return table.concat(fs, ""), 1.2 - end, - on_submit = function(self, fields) - if fields.fix_shader_warning then - core.settings:remove("enable_shaders") -- default value is true - return true - end - end, -} diff --git a/builtin/mainmenu/tab_about.lua b/builtin/mainmenu/tab_about.lua index 221f56565..a416d2049 100644 --- a/builtin/mainmenu/tab_about.lua +++ b/builtin/mainmenu/tab_about.lua @@ -32,6 +32,27 @@ local function get_credits() return json end +local function get_renderer_info() + local ret = {} + + -- OpenGL version, stripped to just the important part + local s1 = core.get_active_renderer() + if s1:sub(1, 7) == "OpenGL " then + s1 = s1:sub(8) + end + local m = s1:match("^[%d.]+") + if not m then + m = s1:match("^ES [%d.]+") + end + ret[#ret+1] = m or s1 + -- video driver + ret[#ret+1] = core.get_active_driver():lower() + -- irrlicht device + ret[#ret+1] = core.get_active_irrlicht_device():upper() + + return table.concat(ret, " / ") +end + return { name = "about", caption = fgettext("About"), @@ -81,20 +102,12 @@ return { "button_url[1.5,4.1;2.5,0.8;homepage;freeminer.org;https://freeminer.org/]" .. "hypertext[5.5,0.25;9.75,6.6;credits;" .. core.formspec_escape(hypertext) .. "]" - -- Render information - local active_renderer_info = fgettext("Active renderer:") .. " " .. - core.formspec_escape(core.get_active_renderer()) + local active_renderer_info = fgettext("Active renderer:") .. "\n" .. + core.formspec_escape(get_renderer_info()) fs = fs .. "style[label_button2;border=false]" .. - "button[0.1,6;5.3,0.5;label_button2;" .. active_renderer_info .. "]".. + "button[0.1,6;5.3,1;label_button2;" .. active_renderer_info .. "]".. "tooltip[label_button2;" .. active_renderer_info .. "]" - -- Irrlicht device information - local irrlicht_device_info = fgettext("Irrlicht device:") .. " " .. - core.formspec_escape(core.get_active_irrlicht_device()) - fs = fs .. "style[label_button3;border=false]" .. - "button[0.1,6.5;5.3,0.5;label_button3;" .. irrlicht_device_info .. "]".. - "tooltip[label_button3;" .. irrlicht_device_info .. "]" - if PLATFORM == "Android" then fs = fs .. "button[0.5,5.1;4.5,0.8;share_debug;" .. fgettext("Share debug log") .. "]" else diff --git a/builtin/mainmenu/tab_online.lua b/builtin/mainmenu/tab_online.lua index 083e3b1b6..be60132e2 100644 --- a/builtin/mainmenu/tab_online.lua +++ b/builtin/mainmenu/tab_online.lua @@ -61,6 +61,71 @@ local function get_sorted_servers() return servers end +local function is_selected_fav(server) + local address = core.settings:get("address") + local port = tonumber(core.settings:get("remote_port")) + + for _, fav in ipairs(serverlistmgr.get_favorites()) do + if address == fav.address and port == fav.port then + return true + end + end + return false +end + +-- Persists the selected server in the "address" and "remote_port" settings + +local function set_selected_server(server) + if server == nil then -- reset selection + core.settings:remove("address") + core.settings:remove("remote_port") + core.settings:remove("remote_proto") + return + end + local address = server.address + local port = server.port + gamedata.serverdescription = server.description + + if address and port then + + -- fm: + if server.proto_multi and server.proto_multi.enet then + gamedata.proto = "enet" + gamedata.port = server.proto_multi.enet + port = gamedata.port + elseif server.proto_multi and server.proto_multi.sctp then + gamedata.proto = "sctp" + gamedata.port = server.proto_multi.sctp + port = gamedata.port + elseif server.proto then + gamedata.proto = server.proto + else + gamedata.proto = "mt" + end + core.settings:set("remote_proto", gamedata.proto or "mt") + -- === + + core.settings:set("address", address) + core.settings:set("remote_port", port) + + end +end + +local function find_selected_server() + local address = core.settings:get("address") + local port = tonumber(core.settings:get("remote_port")) + for _, server in ipairs(serverlistmgr.servers) do + if server.address == address and server.port == port then + return server + end + end + for _, server in ipairs(serverlistmgr.get_favorites()) do + if server.address == address and server.port == port then + return server + end + end +end + local function get_formspec(tabview, name, tabdata) -- Update the cached supported proto info, -- it may have changed after a change by the settings menu. @@ -73,6 +138,7 @@ local function get_formspec(tabview, name, tabdata) local retval = -- Search "field[0.25,0.25;7,0.75;te_search;;" .. core.formspec_escape(tabdata.search_for) .. "]" .. + "tooltip[te_search;" .. fgettext("Possible filters\ngame:\nmod:\nplayer:") .. "]" .. "field_enter_after_edit[te_search;true]" .. "container[7.25,0.25]" .. "image_button[0,0;0.75,0.75;" .. core.formspec_escape(defaulttexturedir .. "search.png") .. ";btn_mp_search;]" .. @@ -113,17 +179,79 @@ local function get_formspec(tabview, name, tabdata) retval = retval .. "button[0.25,6;2.5,0.75;btn_mp_register;" .. fgettext("Register") .. "]" end - if tabdata.selected then - if gamedata.fav then - retval = retval .. "tooltip[btn_delete_favorite;" .. fgettext("Remove favorite") .. "]" - retval = retval .. "style[btn_delete_favorite;padding=6]" - retval = retval .. "image_button[5,1.3;0.5,0.5;" .. core.formspec_escape(defaulttexturedir .. - "server_favorite_delete.png") .. ";btn_delete_favorite;]" - end + local selected_server = find_selected_server() + + if selected_server then if gamedata.serverdescription then retval = retval .. "textarea[0.25,1.85;5.25,2.7;;;" .. core.formspec_escape(gamedata.serverdescription) .. "]" end + + -- Mods button + local mods = selected_server.mods + if mods and #mods > 0 then + local tooltip = "" + if selected_server.gameid then + tooltip = fgettext("Game: $1", selected_server.gameid) .. "\n" + end + tooltip = tooltip .. fgettext("Number of mods: $1", #mods) + + retval = retval .. + "tooltip[btn_view_mods;" .. tooltip .. "]" .. + "style[btn_view_mods;padding=6]" .. + "image_button[4,1.3;0.5,0.5;" .. core.formspec_escape(defaulttexturedir .. + "server_view_mods.png") .. ";btn_view_mods;]" + else + retval = retval .. "image[4.1,1.4;0.3,0.3;" .. core.formspec_escape(defaulttexturedir .. + "server_view_mods_unavailable.png") .. "]" + end + + -- Clients list button + local clients_list = selected_server.clients_list + local can_view_clients_list = clients_list and #clients_list > 0 + if can_view_clients_list then + table.sort(clients_list, function(a, b) + return a:lower() < b:lower() + end) + local max_clients = 5 + if #clients_list > max_clients then + retval = retval .. "tooltip[btn_view_clients;" .. + fgettext("Clients:\n$1", table.concat(clients_list, "\n", 1, max_clients)) .. "\n..." .. "]" + else + retval = retval .. "tooltip[btn_view_clients;" .. + fgettext("Clients:\n$1", table.concat(clients_list, "\n")) .. "]" + end + retval = retval .. "style[btn_view_clients;padding=6]" + retval = retval .. "image_button[4.5,1.3;0.5,0.5;" .. core.formspec_escape(defaulttexturedir .. + "server_view_clients.png") .. ";btn_view_clients;]" + else + retval = retval .. "image[4.6,1.4;0.3,0.3;" .. core.formspec_escape(defaulttexturedir .. + "server_view_clients_unavailable.png") .. "]" + end + + -- URL button + if selected_server.url then + retval = retval .. "tooltip[btn_server_url;" .. fgettext("Open server website") .. "]" + retval = retval .. "style[btn_server_url;padding=6]" + retval = retval .. "image_button[3.5,1.3;0.5,0.5;" .. + core.formspec_escape(defaulttexturedir .. "server_url.png") .. ";btn_server_url;]" + else + retval = retval .. "image[3.6,1.4;0.3,0.3;" .. core.formspec_escape(defaulttexturedir .. + "server_url_unavailable.png") .. "]" + end + + -- Favorites toggle button + if is_selected_fav() then + retval = retval .. "tooltip[btn_delete_favorite;" .. fgettext("Remove favorite") .. "]" + retval = retval .. "style[btn_delete_favorite;padding=6]" + retval = retval .. "image_button[5,1.3;0.5,0.5;" .. + core.formspec_escape(defaulttexturedir .. "server_favorite_delete.png") .. ";btn_delete_favorite;]" + else + retval = retval .. "tooltip[btn_add_favorite;" .. fgettext("Add favorite") .. "]" + retval = retval .. "style[btn_add_favorite;padding=6]" + retval = retval .. "image_button[5,1.3;0.5,0.5;" .. + core.formspec_escape(defaulttexturedir .. "server_favorite.png") .. ";btn_add_favorite;]" + end end retval = retval .. "container_end[]" @@ -182,30 +310,123 @@ local function get_formspec(tabview, name, tabdata) retval = retval .. table.concat(rows, ",") - if tabdata.selected then - retval = retval .. ";" .. tabdata.selected .. "]" - else - retval = retval .. ";0]" + local selected_row_idx = 0 + if selected_server then + for i, server in pairs(tabdata.lookup) do + if selected_server.address == server.address and + selected_server.port == server.port then + selected_row_idx = i + break + end + end end + retval = retval .. ";" .. selected_row_idx .. "]" return retval end -------------------------------------------------------------------------------- +local function parse_search_input(input) + if not input:find("%S") then + return -- Return nil if nothing to search for + end + + -- Search is not case sensitive + input = input:lower() + + local query = {keywords = {}, mods = {}, players = {}} + + -- Process quotation enclosed parts + input = input:gsub('(%S?)"([^"]*)"(%S?)', function(before, match, after) + if before == "" and after == "" then -- Also have be separated by spaces + table.insert(query.keywords, match) + return " " + end + return before..'"'..match..'"'..after + end) + + -- Separate by space characters and handle special prefixes + -- (words with special prefixes need an exact match and none of them can contain spaces) + for word in input:gmatch("%S+") do + local mod = word:match("^mod:(.*)") + table.insert(query.mods, mod) + local player = word:match("^player:(.*)") + table.insert(query.players, player) + local game = word:match("^game:(.*)") + query.game = query.game or game + if not (mod or player or game) then + table.insert(query.keywords, word) + end + end + + return query +end + +-- Prepares the server to be used for searching +local function uncapitalize_server(server) + local function table_lower(t) + local r = {} + for i, s in ipairs(t or {}) do + r[i] = s:lower() + end + return r + end + + return { + name = (server.name or ""):lower(), + description = (server.description or ""):lower(), + gameid = (server.gameid or ""):lower(), + mods = table_lower(server.mods), + clients_list = table_lower(server.clients_list), + } +end + +-- Returns false if the query does not match +-- otherwise returns a number to adjust the sorting priority +local function matches_query(server, query) + -- Search is not case sensitive + server = uncapitalize_server(server) + + -- Check if mods found + for _, mod in ipairs(query.mods) do + if table.indexof(server.mods, mod) < 0 then + return false + end + end + + -- Check if players found + for _, player in ipairs(query.players) do + if table.indexof(server.clients_list, player) < 0 then + return false + end + end + + -- Check if game matches + if query.game and query.game ~= server.gameid then + return false + end + + -- Check if keyword found + local name_matches = true + local description_matches = true + for _, keyword in ipairs(query.keywords) do + name_matches = name_matches and server.name:find(keyword, 1, true) + description_matches = description_matches and server.description:find(keyword, 1, true) + end + + return name_matches and 50 or description_matches and 0 +end + local function search_server_list(input) menudata.search_result = nil if #serverlistmgr.servers < 2 then return end - -- setup the keyword list - local keywords = {} - for word in input:gmatch("%S+") do - table.insert(keywords, word:lower()) - end - - if #keywords == 0 then + -- setup the search query + local query = parse_search_input(input) + if not query then return end @@ -214,16 +435,9 @@ local function search_server_list(input) -- Search the serverlist local search_result = {} for i, server in ipairs(serverlistmgr.servers) do - local name_matches, description_matches = true, true - for _, keyword in ipairs(keywords) do - name_matches = name_matches and not not - (server.name or ""):lower():find(keyword, 1, true) - description_matches = description_matches and not not - (server.description or ""):lower():find(keyword, 1, true) - end - if name_matches or description_matches then - server.points = #serverlistmgr.servers - i - + (name_matches and 50 or 0) + local match = matches_query(server, query) + if match then + server.points = #serverlistmgr.servers - i + match table.insert(search_result, server) end end @@ -236,50 +450,18 @@ local function search_server_list(input) return a.points > b.points end) menudata.search_result = search_result -end -local function set_selected_server(tabdata, idx, server) - -- reset selection - if idx == nil or server == nil then - tabdata.selected = nil - - core.settings:set("address", "") - core.settings:set("remote_port", "30000") - return - end - - local address = server.address - local port = server.port - gamedata.serverdescription = server.description - - gamedata.fav = false - for _, fav in ipairs(serverlistmgr.get_favorites()) do - if address == fav.address and port == fav.port then - gamedata.fav = true - break + -- Find first compatible server (favorite or public) + for _, server in ipairs(search_result) do + if is_server_protocol_compat(server.proto_min, server.proto_max) then + set_selected_server(server) + return end end - if address and port then - core.settings:set("address", address) - core.settings:set("remote_port", port) - - if server.proto_multi and server.proto_multi.enet then - gamedata.proto = "enet" - core.settings:set("remote_port", server.proto_multi.enet) - elseif server.proto_multi and server.proto_multi.sctp then - gamedata.proto = "sctp" - core.settings:set("remote_port", server.proto_multi.sctp) - elseif server.proto then - gamedata.proto = server.proto - else - gamedata.proto = "mt" - end - core.settings:set("remote_proto", gamedata.proto) - end - tabdata.selected = idx + -- If no compatible server found, clear selection + set_selected_server(nil) end - local function main_button_handler(tabview, fields, name, tabdata) if fields.te_name then gamedata.playername = fields.te_name @@ -310,30 +492,26 @@ local function main_button_handler(tabview, fields, name, tabdata) gamedata.servername = server.name gamedata.serverdescription = server.description gamedata.proto_multi = server.proto_multi +print(server) +print(gamedata) if gamedata.address and gamedata.port then - if gamedata.proto_multi and gamedata.proto_multi.enet then - gamedata.port = gamedata.proto_multi.enet - gamedata.proto = "enet" - elseif gamedata.proto_multi and gamedata.proto_multi.sctp then - gamedata.port = gamedata.proto_multi.sctp - gamedata.proto = "sctp" - end - - core.settings:set("address", gamedata.address) - core.settings:set("remote_port", gamedata.port) - core.settings:set("remote_proto", gamedata.proto or "mt") - + set_selected_server(server) core.start() end return true end if event.type == "CHG" then - set_selected_server(tabdata, event.row, server) + set_selected_server(server) return true end end end + if fields.btn_add_favorite then + serverlistmgr.add_favorite(find_selected_server()) + return true + end + if fields.btn_delete_favorite then local idx = core.get_table_index("servers") if not idx then return end @@ -341,25 +519,41 @@ local function main_button_handler(tabview, fields, name, tabdata) if not server then return end serverlistmgr.delete_favorite(server) - -- the server at [idx+1] will be at idx once list is refreshed - set_selected_server(tabdata, idx, tabdata.lookup[idx+1]) + set_selected_server(server) + return true + end + + if fields.btn_server_url then + core.open_url_dialog(find_selected_server().url) + return true + end + + if fields.btn_view_clients then + local dlg = create_clientslist_dialog(find_selected_server()) + dlg:set_parent(tabview) + tabview:hide() + dlg:show() + return true + end + + if fields.btn_view_mods then + local dlg = create_server_list_mods_dialog(find_selected_server()) + dlg:set_parent(tabview) + tabview:hide() + dlg:show() return true end if fields.btn_mp_clear then tabdata.search_for = "" menudata.search_result = nil + set_selected_server(nil) return true end if fields.btn_mp_search or fields.key_enter_field == "te_search" then tabdata.search_for = fields.te_search - search_server_list(fields.te_search:lower()) - if menudata.search_result then - -- first server in row 2 due to header - set_selected_server(tabdata, 2, menudata.search_result[1]) - end - + search_server_list(fields.te_search) return true end @@ -384,8 +578,6 @@ local function main_button_handler(tabview, fields, name, tabdata) local idx = core.get_table_index("servers") local server = idx and tabdata.lookup[idx] - set_selected_server(tabdata) - if server and server.address == gamedata.address and server.port == gamedata.port then diff --git a/builtin/pause_menu/init.lua b/builtin/pause_menu/init.lua new file mode 100644 index 000000000..035d2ba99 --- /dev/null +++ b/builtin/pause_menu/init.lua @@ -0,0 +1,12 @@ +local scriptpath = core.get_builtin_path() +local pausepath = scriptpath.."pause_menu"..DIR_DELIM +local commonpath = scriptpath.."common"..DIR_DELIM + +-- we're in-game, so no absolute paths are needed +defaulttexturedir = "" + +local builtin_shared = {} + +assert(loadfile(commonpath .. "register.lua"))(builtin_shared) +assert(loadfile(pausepath .. "register.lua"))(builtin_shared) +dofile(commonpath .. "settings" .. DIR_DELIM .. "init.lua") diff --git a/builtin/pause_menu/register.lua b/builtin/pause_menu/register.lua new file mode 100644 index 000000000..ea97ca281 --- /dev/null +++ b/builtin/pause_menu/register.lua @@ -0,0 +1,5 @@ +local builtin_shared = ... + +local make_registration = builtin_shared.make_registration + +core.registered_on_formspec_input, core.register_on_formspec_input = make_registration() diff --git a/builtin/settingtypes.txt b/builtin/settingtypes.txt index 0e290feb9..b8f811749 100644 --- a/builtin/settingtypes.txt +++ b/builtin/settingtypes.txt @@ -61,7 +61,7 @@ # # # This is a comment # # -# # Requires: shaders, enable_dynamic_shadows, !enable_waving_leaves +# # Requires: enable_dynamic_shadows, !enable_waving_leaves # name (Readable name) type type_args # # A requirement can be the name of a boolean setting or an engine-defined value. @@ -69,8 +69,6 @@ # # * The value of a boolean setting, such as enable_dynamic_shadows # * An engine-defined value: -# * shaders_support (a video driver that supports shaders, may not be enabled) -# * shaders (both enable_shaders and shaders_support) # * desktop / android # * touchscreen / keyboard_mouse # * opengl / gles @@ -79,8 +77,11 @@ # Sections are marked by a single line in the format: [Section Name] # Sub-section are marked by adding * in front of the section name: [*Sub-section] # Sub-sub-sections have two * etc. -# There shouldn't be too much settings per category; settings that shouldn't be -# modified by the "average user" should be in (sub-)categories called "Advanced". +# There shouldn't be too many settings per category. +# +# The top-level categories "Advanced", "Client and Server" and "Mapgen" are +# handled specially and its contents only shown when a checkbox is checked. +# They contain settings not intended for the "average user". @@ -542,6 +543,8 @@ viewing_range (Viewing range) int 190 20 4000 # to the game world only, keeping the GUI intact. # It should give a significant performance boost at the cost of less detailed image. # Higher values result in a less detailed image. +# Note: Undersampling is currently not supported if the "3d_mode" setting is set +# to a non-default value. undersampling (Undersampling) int 1 1 8 [**3D] @@ -554,7 +557,6 @@ undersampling (Undersampling) int 1 1 8 # - topbottom: split screen top/bottom. # - sidebyside: split screen side by side. # - crossview: Cross-eyed 3d -# Note that the interlaced mode requires shaders to be enabled. 3d_mode (3D mode) enum none none,anaglyph,interlaced,topbottom,sidebyside,crossview # Strength of 3D mode parallax. @@ -652,17 +654,12 @@ fog_start (Fog start) float 0.4 0.0 0.99 [**Clouds] -# Clouds are a client-side effect. -enable_clouds (Clouds) bool true - -# Use 3D cloud look instead of flat. -# -# Requires: enable_clouds +# Allow clouds to look 3D instead of flat. enable_3d_clouds (3D clouds) bool true # Use smooth cloud shading. # -# Requires: enable_3d_clouds, enable_clouds +# Requires: enable_3d_clouds soft_clouds (Soft clouds) bool false [**Filtering and Antialiasing] @@ -681,6 +678,7 @@ bilinear_filter (Bilinear filtering) bool false trilinear_filter (Trilinear filtering) bool false # Use anisotropic filtering when looking at textures from an angle. +# This provides a significant improvement when used together with mipmapping. anisotropic_filter (Anisotropic filtering) bool false # Select the antialiasing method to apply. @@ -688,16 +686,18 @@ anisotropic_filter (Anisotropic filtering) bool false # * None - No antialiasing (default) # # * FSAA - Hardware-provided full-screen antialiasing -# (incompatible with Post Processing and Undersampling) # A.K.A multi-sample antialiasing (MSAA) # Smoothens out block edges but does not affect the insides of textures. -# A restart is required to change this option. # -# * FXAA - Fast approximate antialiasing (requires shaders) +# If Post Processing is disabled, changing FSAA requires a restart. +# Also, if Post Processing is disabled, FSAA will not work together with +# undersampling or a non-default "3d_mode" setting. +# +# * FXAA - Fast approximate antialiasing # Applies a post-processing filter to detect and smoothen high-contrast edges. # Provides balance between speed and image quality. # -# * SSAA - Super-sampling antialiasing (requires shaders) +# * SSAA - Super-sampling antialiasing # Renders higher-resolution image of the scene, then scales down to reduce # the aliasing effects. This is the slowest and the most accurate method. antialiasing (Antialiasing method) enum none none,fsaa,fxaa,ssaa @@ -744,24 +744,16 @@ smooth_lighting (Smooth lighting) bool true # at the expense of minor visual glitches that do not impact game playability. performance_tradeoffs (Tradeoffs for performance) bool false -# Adds particles when digging a node. -enable_particles (Digging particles) bool true [**Waving Nodes] # Set to true to enable waving leaves. -# -# Requires: shaders enable_waving_leaves (Waving leaves) bool false # Set to true to enable waving plants. -# -# Requires: shaders enable_waving_plants (Waving plants) bool false # Set to true to enable waving liquids (like water). -# -# Requires: shaders enable_waving_water (Waving liquids) bool false # The maximum height of the surface of waving liquids. @@ -769,99 +761,83 @@ enable_waving_water (Waving liquids) bool false # 0.0 = Wave doesn't move at all. # Default is 1.0 (1/2 node). # -# Requires: shaders, enable_waving_water +# Requires: enable_waving_water water_wave_height (Waving liquids wave height) float 1.0 0.0 4.0 # Length of liquid waves. # -# Requires: shaders, enable_waving_water +# Requires: enable_waving_water water_wave_length (Waving liquids wavelength) float 20.0 0.1 # How fast liquid waves will move. Higher = faster. # If negative, liquid waves will move backwards. # -# Requires: shaders, enable_waving_water +# Requires: enable_waving_water water_wave_speed (Waving liquids wave speed) float 5.0 [**Dynamic shadows] # Set to true to enable Shadow Mapping. # -# Requires: shaders, opengl +# Requires: opengl enable_dynamic_shadows (Dynamic shadows) bool false # Set the shadow strength gamma. # Adjusts the intensity of in-game dynamic shadows. # Lower value means lighter shadows, higher value means darker shadows. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_strength_gamma (Shadow strength gamma) float 1.0 0.1 10.0 # Maximum distance to render shadows. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_map_max_distance (Shadow map max distance in nodes to render shadows) float 140.0 10.0 1000.0 # Texture size to render the shadow map on. # This must be a power of two. # Bigger numbers create better shadows but it is also more expensive. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_map_texture_size (Shadow map texture size) int 2048 128 8192 # Sets shadow texture quality to 32 bits. # On false, 16 bits texture will be used. # This can cause much more artifacts in the shadow. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_map_texture_32bit (Shadow map texture in 32 bits) bool true -# Enable Poisson disk filtering. -# On true uses Poisson disk to make "soft shadows". Otherwise uses PCF filtering. -# -# Requires: shaders, enable_dynamic_shadows, opengl -shadow_poisson_filter (Poisson filtering) bool true - # Define shadow filtering quality. # This simulates the soft shadows effect by applying a PCF or Poisson disk # but also uses more resources. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_filters (Shadow filter quality) enum 1 0,1,2 -# Enable colored shadows. -# On true translucent nodes cast colored shadows. This is expensive. +# Enable colored shadows for transculent nodes. +# This is expensive. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_map_color (Colored shadows) bool false -# Spread a complete update of shadow map over given number of frames. -# Higher values might make shadows laggy, lower values -# will consume more resources. -# Minimum value: 1; maximum value: 16 -# -# Requires: shaders, enable_dynamic_shadows, opengl -shadow_update_frames (Map shadows update frames) int 8 1 16 - # Set the soft shadow radius size. # Lower values mean sharper shadows, bigger values mean softer shadows. # Minimum value: 1.0; maximum value: 15.0 # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_soft_radius (Soft shadow radius) float 5.0 1.0 15.0 # Set the default tilt of Sun/Moon orbit in degrees. # Games may change orbit tilt via API. # Value of 0 means no tilt / vertical orbit. # -# Requires: shaders, enable_dynamic_shadows, opengl +# Requires: enable_dynamic_shadows, opengl shadow_sky_body_orbit_tilt (Sky Body Orbit Tilt) float 0.0 -60.0 60.0 [**Post Processing] # Enables the post processing pipeline. -# -# Requires: shaders enable_post_processing (Enable Post Processing) bool true # Enables Hable's 'Uncharted 2' filmic tone mapping. @@ -869,7 +845,7 @@ enable_post_processing (Enable Post Processing) bool true # appearance of high dynamic range images. Mid-range contrast is slightly # enhanced, highlights and shadows are gradually compressed. # -# Requires: shaders, enable_post_processing +# Requires: enable_post_processing tone_mapping (Filmic tone mapping) bool false # Enable automatic exposure correction @@ -877,14 +853,14 @@ tone_mapping (Filmic tone mapping) bool false # automatically adjust to the brightness of the scene, # simulating the behavior of human eye. # -# Requires: shaders, enable_post_processing +# Requires: enable_post_processing enable_auto_exposure (Enable Automatic Exposure) bool false # Set the exposure compensation in EV units. # Value of 0.0 (default) means no exposure compensation. # Range: from -1 to 1.0 # -# Requires: shaders, enable_post_processing, enable_auto_exposure +# Requires: enable_post_processing, enable_auto_exposure exposure_compensation (Exposure compensation) float 0.0 -1.0 1.0 # Apply dithering to reduce color banding artifacts. @@ -895,35 +871,35 @@ exposure_compensation (Exposure compensation) float 0.0 -1.0 1.0 # With OpenGL ES, dithering only works if the shader supports high # floating-point precision and it may have a higher performance impact. # -# Requires: shaders, enable_post_processing +# Requires: enable_post_processing debanding (Enable Debanding) bool true # Set to true to enable bloom effect. # Bright colors will bleed over the neighboring objects. # -# Requires: shaders, enable_post_processing +# Requires: enable_post_processing enable_bloom (Enable Bloom) bool false # Set to true to enable volumetric lighting effect (a.k.a. "Godrays"). # -# Requires: shaders, enable_post_processing, enable_bloom +# Requires: enable_post_processing, enable_bloom enable_volumetric_lighting (Volumetric lighting) bool false [**Other Effects] # Simulate translucency when looking at foliage in the sunlight. # -# Requires: shaders, enable_dynamic_shadows +# Requires: enable_dynamic_shadows enable_translucent_foliage (Translucent foliage) bool false # Apply specular shading to nodes. # -# Requires: shaders, enable_dynamic_shadows +# Requires: enable_dynamic_shadows enable_node_specular (Node specular) bool false # When enabled, liquid reflections are simulated. # -# Requires: shaders, enable_waving_water, enable_dynamic_shadows +# Requires: enable_waving_water, enable_dynamic_shadows enable_water_reflections (Liquid reflections) bool false [*Audio] @@ -935,8 +911,7 @@ sound_volume (Volume) float 0.8 0.0 1.0 # Volume multiplier when the window is unfocused. sound_volume_unfocused (Volume when unfocused) float 0.3 0.0 1.0 -# Whether to mute sounds. You can unmute sounds at any time, unless the -# sound system is disabled (enable_sound=false). +# Whether to mute sounds. You can unmute sounds at any time. # In-game, you can toggle the mute state with the mute key or by using the # pause menu. mute_sound (Mute sound) bool false @@ -977,12 +952,6 @@ formspec_fullscreen_bg_color (Formspec Full-Screen Background Color) string (0,0 # to hardware (e.g. render-to-texture for nodes in inventory). gui_scaling_filter (GUI scaling filter) bool false -# When gui_scaling_filter_txr2img is true, copy those images -# from hardware to software for scaling. When false, fall back -# to the old scaling method, for video drivers that don't -# properly support downloading textures back from hardware. -gui_scaling_filter_txr2img (GUI scaling filter txr2img) bool true - # Delay showing tooltips, stated in milliseconds. tooltip_show_delay (Tooltip delay) int 400 0 18446744073709551615 @@ -1066,20 +1035,20 @@ contentdb_max_concurrent_downloads (ContentDB Max Concurrent Downloads) int 3 1 enable_local_map_saving (Saving map received from server) bool false # URL to the server list displayed in the Multiplayer Tab. -serverlist_url (Serverlist URL) string servers.luanti.org +serverlist_url (Serverlist URL) string https://servers.luanti.org -# If enabled, account registration is separate from login in the UI. -# If disabled, new accounts will be registered automatically when logging in. +# If enabled, server account registration is separate from login in the UI. +# If disabled, connecting to a server will automatically register a new account. enable_split_login_register (Enable split login/register) bool true # URL to JSON file which provides information about the newest Luanti release. # If this is empty the engine will never check for updates. -update_information_url (Update information URL) string https://www.minetest.net/release_info.json +update_information_url (Update information URL) string https://www.luanti.org/release_info.json [*Server] # Name of the player. -# When running a server, clients connecting with this name are admins. +# When running a server, a client connecting with this name is admin. # When starting from the main menu, this is overridden. name (Admin name) string @@ -1104,7 +1073,7 @@ server_announce (Announce server) bool false server_announce_send_players (Send player names to the server list) bool true # Announce to this serverlist. -serverlist_url (Serverlist URL) string servers.luanti.org +serverlist_url (Serverlist URL) string https://servers.luanti.org # Message of the day displayed to players connecting. motd (Message of the day) string @@ -1145,7 +1114,8 @@ remote_media (Remote media) string # Enable/disable running an IPv6 server. # Ignored if bind_address is set. -# Needs enable_ipv6 to be enabled. +# +# Requires: enable_ipv6 ipv6_server (IPv6 server) bool false [*Server Security] @@ -2133,14 +2103,10 @@ ignore_world_load_errors (Ignore world errors) bool false [**Graphics] -# Shaders are a fundamental part of rendering and enable advanced visual effects. -# -# Requires: shaders_support -enable_shaders (Shaders) bool true +# Enables debug and error-checking in the OpenGL driver. +opengl_debug (OpenGL debug) bool false # Path to shader directory. If no path is defined, default location will be used. -# -# Requires: shaders shader_path (Shader path) path # The rendering back-end. @@ -2153,16 +2119,14 @@ video_driver (Video driver) enum ,opengl,opengl3,ogles2 # Set to 0 to disable it entirely. transparency_sorting_distance (Transparency Sorting Distance) int 16 0 128 +# Draw transparency sorted triangles grouped by their mesh buffers. +# This breaks transparency sorting between mesh buffers, but avoids situations +# where transparency sorting would be very slow otherwise. +transparency_sorting_group_by_buffers (Transparency Sorting Group by Buffers) bool true + # Radius of cloud area stated in number of 64 node cloud squares. # Values larger than 26 will start to produce sharp cutoffs at cloud area corners. -cloud_radius (Cloud radius) int 12 1 62 - -# Whether node texture animations should be desynchronized per mapblock. -desynchronize_mapblock_texture_animation (Desynchronize block animation) bool false - -# Enables caching of facedir rotated meshes. -# This is only effective with shaders disabled. -enable_mesh_cache (Mesh cache) bool false +cloud_radius (Cloud radius) int 12 8 62 # Delay between mesh updates on the client in ms. Increasing this will slow # down the rate of mesh updates, thus reducing jitter on slower clients. @@ -2172,6 +2136,10 @@ mesh_generation_interval (Mapblock mesh generation delay) int 0 0 50 # Value of 0 (default) will let Luanti autodetect the number of available threads. mesh_generation_threads (Mapblock mesh generation threads) int 0 0 8 +# All mesh buffers with less than this number of vertices will be merged +# during map rendering. This improves rendering performance. +mesh_buffer_min_vertices (Minimum vertex count for mesh buffers) int 300 0 1000 + # True = 256 # False = 128 # Usable to make minimap smoother on slower machines. @@ -2193,12 +2161,11 @@ world_aligned_mode (World-aligned textures mode) enum enable disable,enable,forc # Warning: This option is EXPERIMENTAL! autoscale_mode (Autoscaling mode) enum disable disable,enable,force -# When using bilinear/trilinear/anisotropic filters, low-resolution textures -# can be blurred, so automatically upscale them with nearest-neighbor -# interpolation to preserve crisp pixels. This sets the minimum texture size -# for the upscaled textures; higher values look sharper, but require more -# memory. Powers of 2 are recommended. This setting is ONLY applied if -# bilinear/trilinear/anisotropic filtering is enabled. +# When using bilinear/trilinear filtering, low-resolution textures +# can be blurred, so this option automatically upscales them to preserve +# crisp pixels. This defines the minimum texture size for the upscaled textures; +# higher values look sharper, but require more memory. +# This setting is ONLY applied if any of the mentioned filters are enabled. # This is also used as the base node texture size for world-aligned # texture autoscaling. texture_min_size (Base texture size) int 64 1 32768 @@ -2210,15 +2177,32 @@ texture_min_size (Base texture size) int 64 1 32768 # Systems with a low-end GPU (or no GPU) would benefit from smaller values. client_mesh_chunk (Client Mesh Chunksize) int 1 1 16 -# Enables debug and error-checking in the OpenGL driver. -opengl_debug (OpenGL debug) bool false +# Decide the color depth of the texture used for the post-processing pipeline. +# Reducing this can improve performance, but some effects (e.g. debanding) +# require more than 8 bits to work. +# +# Requires: enable_post_processing +post_processing_texture_bits (Color depth for post-processing texture) enum 16 8,10,16 + +# Enable Poisson disk filtering. +# On true uses Poisson disk to make "soft shadows". Otherwise uses PCF filtering. +# +# Requires: enable_dynamic_shadows, opengl +shadow_poisson_filter (Poisson filtering) bool true + +# Spread a complete update of the shadow map over a given number of frames. +# Higher values might make shadows laggy, lower values +# will consume more resources. +# +# Requires: enable_dynamic_shadows, opengl +shadow_update_frames (Map shadows update frames) int 16 1 32 # Set to true to render debugging breakdown of the bloom effect. # In debug mode, the screen is split into 4 quadrants: # top-left - processed base image, top-right - final image # bottom-left - raw base image, bottom-right - bloom texture. # -# Requires: shaders, enable_post_processing, enable_bloom +# Requires: enable_post_processing, enable_bloom enable_bloom_debug (Enable Bloom Debug) bool false [**Sound] @@ -2395,9 +2379,6 @@ max_block_send_distance (Max block send distance) int 12 1 65535 # Set this to -1 to disable the limit. max_forceloaded_blocks (Maximum forceloaded blocks) int 16 -1 -# Interval of sending time of day to clients, stated in seconds. -time_send_interval (Time send interval) float 5.0 0.001 - # Interval of saving important changes in the world, stated in seconds. server_map_save_interval (Map save interval) float 5.3 0.001 @@ -2406,7 +2387,7 @@ server_map_save_interval (Map save interval) float 5.3 0.001 server_unload_unused_data_timeout (Unload unused server data) int 29 0 4294967295 # Maximum number of statically stored objects in a block. -max_objects_per_block (Maximum objects per block) int 256 1 65535 +max_objects_per_block (Maximum objects per block) int 256 256 65535 # Length of time between active block management cycles, stated in seconds. active_block_mgmt_interval (Active block management interval) float 2.0 0.0 @@ -2625,12 +2606,6 @@ show_technical_names (Show technical names) bool false # Controlled by a checkbox in the settings menu. show_advanced (Show advanced settings) bool false -# Enables the sound system. -# If disabled, this completely disables all sounds everywhere and the in-game -# sound controls will be non-functional. -# Changing this setting requires a restart. -enable_sound (Sound) bool true - # Key for moving the player forward. keymap_forward (Forward key) key KEY_KEY_W diff --git a/client/shaders/Irrlicht/Renderer2D.vsh b/client/shaders/Irrlicht/Renderer2D.vsh index 914214895..c0916562b 100644 --- a/client/shaders/Irrlicht/Renderer2D.vsh +++ b/client/shaders/Irrlicht/Renderer2D.vsh @@ -9,6 +9,7 @@ attribute vec2 inTexCoord0; /* Uniforms */ uniform float uThickness; +uniform mat4 uProjection; /* Varyings */ @@ -17,7 +18,7 @@ varying vec4 vVertexColor; void main() { - gl_Position = inVertexPosition; + gl_Position = uProjection * inVertexPosition; gl_PointSize = uThickness; vTextureCoord = inTexCoord0; vVertexColor = inVertexColor.bgra; diff --git a/client/shaders/default_shader/opengl_fragment.glsl b/client/shaders/default_shader/opengl_fragment.glsl deleted file mode 100644 index 300c0c589..000000000 --- a/client/shaders/default_shader/opengl_fragment.glsl +++ /dev/null @@ -1,6 +0,0 @@ -varying lowp vec4 varColor; - -void main(void) -{ - gl_FragData[0] = varColor; -} diff --git a/client/shaders/default_shader/opengl_vertex.glsl b/client/shaders/default_shader/opengl_vertex.glsl deleted file mode 100644 index d95a3c2d3..000000000 --- a/client/shaders/default_shader/opengl_vertex.glsl +++ /dev/null @@ -1,7 +0,0 @@ -varying lowp vec4 varColor; - -void main(void) -{ - gl_Position = mWorldViewProj * inVertexPosition; - varColor = inVertexColor; -} diff --git a/client/shaders/extract_bloom/opengl_fragment.glsl b/client/shaders/extract_bloom/opengl_fragment.glsl index 36671b06c..997b6ba2d 100644 --- a/client/shaders/extract_bloom/opengl_fragment.glsl +++ b/client/shaders/extract_bloom/opengl_fragment.glsl @@ -23,7 +23,12 @@ void main(void) vec2 uv = varTexCoord.st; vec3 color = texture2D(rendered, uv).rgb; // translate to linear colorspace (approximate) +#ifdef GL_ES + // clamp color to [0,1] range in lieu of centroids + color = pow(clamp(color, 0.0, 1.0), vec3(2.2)); +#else color = pow(color, vec3(2.2)); +#endif color *= exposureParams.compensationFactor * bloomStrength; diff --git a/client/shaders/nodes_shader/opengl_fragment.glsl b/client/shaders/nodes_shader/opengl_fragment.glsl index 14edad9e8..0d6fe6474 100644 --- a/client/shaders/nodes_shader/opengl_fragment.glsl +++ b/client/shaders/nodes_shader/opengl_fragment.glsl @@ -1,7 +1,3 @@ -#if (MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_OPAQUE || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_BASIC || MATERIAL_TYPE == TILE_MATERIAL_LIQUID_TRANSPARENT) -#define MATERIAL_WAVING_LIQUID 1 -#endif - uniform sampler2D baseTexture; uniform vec3 dayLight; @@ -47,17 +43,19 @@ varying vec3 vPosition; // cameraOffset + worldPosition (for large coordinates the limits of float // precision must be considered). varying vec3 worldPosition; -varying lowp vec4 varColor; #ifdef GL_ES +varying lowp vec4 varColor; varying mediump vec2 varTexCoord; +varying float nightRatio; #else +centroid varying lowp vec4 varColor; centroid varying vec2 varTexCoord; +centroid varying float nightRatio; #endif varying highp vec3 eyeVec; -varying float nightRatio; #ifdef ENABLE_DYNAMIC_SHADOWS -#if (defined(MATERIAL_WAVING_LIQUID) && defined(ENABLE_WATER_REFLECTIONS) && ENABLE_WAVING_WATER) +#if (defined(ENABLE_WATER_REFLECTIONS) && MATERIAL_WATER_REFLECTIONS && ENABLE_WAVING_WATER) vec4 perm(vec4 x) { return mod(((x * 34.0) + 1.0) * x, 289.0); @@ -509,7 +507,7 @@ void main(void) vec3 viewVec = normalize(worldPosition + cameraOffset - cameraPosition); // Water reflections -#if (defined(MATERIAL_WAVING_LIQUID) && defined(ENABLE_WATER_REFLECTIONS) && ENABLE_WAVING_WATER) +#if (defined(ENABLE_WATER_REFLECTIONS) && MATERIAL_WATER_REFLECTIONS && ENABLE_WAVING_WATER) vec3 wavePos = worldPosition * vec3(2.0, 0.0, 2.0); float off = animationTimer * WATER_WAVE_SPEED * 10.0; wavePos.x /= WATER_WAVE_LENGTH * 3.0; @@ -537,7 +535,7 @@ void main(void) col.rgb += water_reflect_color * f_adj_shadow_strength * brightness_factor; #endif -#if (defined(ENABLE_NODE_SPECULAR) && !defined(MATERIAL_WAVING_LIQUID)) +#if (defined(ENABLE_NODE_SPECULAR) && !MATERIAL_WATER_REFLECTIONS) // Apply specular to blocks. if (dot(v_LightDirection, vNormal) < 0.0) { float intensity = 2.0 * (1.0 - (base.r * varColor.r)); diff --git a/client/shaders/nodes_shader/opengl_vertex.glsl b/client/shaders/nodes_shader/opengl_vertex.glsl index 09b7780f0..f8798ae3c 100644 --- a/client/shaders/nodes_shader/opengl_vertex.glsl +++ b/client/shaders/nodes_shader/opengl_vertex.glsl @@ -16,14 +16,17 @@ varying vec3 vPosition; // cameraOffset + worldPosition (for large coordinates the limits of float // precision must be considered). varying vec3 worldPosition; -varying lowp vec4 varColor; // The centroid keyword ensures that after interpolation the texture coordinates // lie within the same bounds when MSAA is en- and disabled. // This fixes the stripes problem with nearest-neighbor textures and MSAA. #ifdef GL_ES +varying lowp vec4 varColor; varying mediump vec2 varTexCoord; +varying float nightRatio; #else +centroid varying lowp vec4 varColor; centroid varying vec2 varTexCoord; +centroid varying float nightRatio; #endif #ifdef ENABLE_DYNAMIC_SHADOWS // shadow uniforms @@ -46,7 +49,6 @@ centroid varying vec2 varTexCoord; varying float area_enable_parallax; varying highp vec3 eyeVec; -varying float nightRatio; // Color of the light emitted by the light sources. const vec3 artificialLight = vec3(1.04, 1.04, 1.04); const float e = 2.718281828459; @@ -110,8 +112,7 @@ float smoothTriangleWave(float x) return smoothCurve(triangleWave(x)) * 2.0 - 1.0; } -// OpenGL < 4.3 does not support continued preprocessor lines -#if (MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_OPAQUE || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_BASIC) && ENABLE_WAVING_WATER +#if MATERIAL_WAVING_LIQUID && ENABLE_WAVING_WATER // // Simple, fast noise function. @@ -168,8 +169,7 @@ void main(void) #endif vec4 pos = inVertexPosition; -// OpenGL < 4.3 does not support continued preprocessor lines -#if (MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_OPAQUE || MATERIAL_TYPE == TILE_MATERIAL_WAVING_LIQUID_BASIC) && ENABLE_WAVING_WATER +#if MATERIAL_WAVING_LIQUID && ENABLE_WAVING_WATER // Generate waves with Perlin-type noise. // The constants are calibrated such that they roughly // correspond to the old sine waves. diff --git a/client/shaders/second_stage/opengl_fragment.glsl b/client/shaders/second_stage/opengl_fragment.glsl index 0a73aa393..6053884bc 100644 --- a/client/shaders/second_stage/opengl_fragment.glsl +++ b/client/shaders/second_stage/opengl_fragment.glsl @@ -61,7 +61,7 @@ vec4 applyBloom(vec4 color, vec2 uv) equation used: ((x * (A * x + C * B) + D * E) / (x * (A * x + B) + D * F)) - E / F */ -// see https://github.com/minetest/minetest/pull/14688 +// highp for GLES, see highp vec3 uncharted2Tonemap(highp vec3 x) { return ((x * (0.22 * x + 0.03) + 0.002) / (x * (0.22 * x + 0.3) + 0.06)) - 0.03333; diff --git a/doc/Doxyfile.in b/doc/Doxyfile.in index ae36fd6bf..98ef36fd6 100644 --- a/doc/Doxyfile.in +++ b/doc/Doxyfile.in @@ -1,7 +1,7 @@ # Project properties PROJECT_NAME = @PROJECT_NAME_CAPITALIZED@ PROJECT_NUMBER = @VERSION_STRING@ -PROJECT_LOGO = @CMAKE_CURRENT_SOURCE_DIR@/misc/minetest.svg +PROJECT_LOGO = @CMAKE_CURRENT_SOURCE_DIR@/misc/luanti.svg # Parsing JAVADOC_AUTOBRIEF = YES diff --git a/doc/android.md b/doc/android.md index 19d7e569b..353a7d1c8 100644 --- a/doc/android.md +++ b/doc/android.md @@ -3,8 +3,6 @@ All Luanti builds, including the Android variant, are based on the same code. However, additional Java code is used for proper Android integration. ## Controls -Compared to Luanti binaries for PC, the Android port has limited functionality -due to limited capabilities of common devices. What can be done is described below: While you're playing the game normally (that is, no menu or inventory is shown), the following controls are available: @@ -44,7 +42,7 @@ configuration file can usually be found at: * After 5.4.2: * `/sdcard/Android/data/net.minetest.minetest/` or `/storage/emulated/0/Android/data/net.minetest.minetest/` if stored on the device * `/storage/emulated/(varying folder name)/Android/data/net.minetest.minetest/` if stored on the SD card -* [Learn more about Android directory](https://wiki.minetest.net/Accessing_Android_Data_Directory) +* [Learn more about Android directory](https://wiki.luanti.org/Accessing_Android_Data_Directory) ## Useful settings @@ -58,35 +56,25 @@ Mobile device generally have less RAM than PC, this setting limit how many mapbl this setting limit max FPS (Frame per second). Default value is 60, which lowest Android device screen refresh rate commonly found, but if you're using an device have lower refresh rate, change this ## Requirements -The minimal and recommended system requirements for Luanti are listed below. +The recommended system requirements for Luanti are listed below. ### CPU Supported architectures: -1. ARM v7 -2. ARM v8 +1. ARMv7 +2. AArch64 3. x86 4. x86_64 -CPU architectures similar to ARM or x86 might run Luanti but are not tested. - -### Minimum -1. Graphics API: OpenGL ES 1.0 - * Shaders might not work correctly or work at all on OpenGL ES 1.0. -2. Android version: Android 4.1 (API Level 16) -3. Free RAM: 500 MB -4. Free storage: 100 MB - * More storage is highly recommended - ### Recommended 1. Graphics API: OpenGL ES 2.0 -2. Android version: Android 4.4 (API Level 19) or newer -3. Empty RAM: 850 MB -4. Free storage: 480 MB +2. Android version: Android 5 (API Level 21) or newer +3. Free RAM: 1 GB +4. Free storage: 500 MB ## Rendering Unlike on PC, Android devices use OpenGL ES which less powerful than OpenGL, thus some shader settings cannot be used on OpenGL ES. -Changing the graphic driver setting to OpenGL will result in undesirable behavior. +Changing the graphic driver setting to OpenGL will not work. ## Building Requirements In order to build, your PC has to be set up to build Luanti in the usual diff --git a/doc/breakages.md b/doc/breakages.md index 0aded3d92..51387e279 100644 --- a/doc/breakages.md +++ b/doc/breakages.md @@ -10,14 +10,16 @@ This list is largely advisory and items may be reevaluated once the time comes. * `game.conf` name/id mess * remove `depends.txt` / `description.txt` (would simplify ContentDB and Luanti code a little) * rotate moon texture by 180°, making it coherent with the sun - * https://github.com/minetest/minetest/pull/11902 + * https://github.com/luanti-org/luanti/pull/11902 * remove undocumented `set_physics_override(num, num, num)` * remove special handling of `${key}` syntax in metadata values * remove old_move * change physics_override `sneak` to disable the speed change and not just the node clipping - * https://github.com/minetest/minetest/issues/13699 + * https://github.com/luanti-org/luanti/issues/13699 * migrate from player names to UUIDs, this would enable renaming of accounts and unicode player names (if desired) * harmonize use_texture_alpha between entities & nodes, change default to 'opaque' and remove bool compat code * merge `sound` and `sounds` table in itemdef * remove `DIR_DELIM` from Lua * stop reading initial properties from bare entity def +* change particle default blend mode to `clip` +* remove built-in knockback and related functions entirely diff --git a/doc/client_lua_api.md b/doc/client_lua_api.md index 715f6aa03..1934ec5ab 100644 --- a/doc/client_lua_api.md +++ b/doc/client_lua_api.md @@ -1,12 +1,12 @@ -Luanti Lua Client Modding API Reference 5.10.0 +Luanti Lua Client Modding API Reference 5.11.0 ============================================== **WARNING**: if you're looking for the `minetest` namespace (e.g. `minetest.something`), it's now called `core` due to the renaming of Luanti (formerly Minetest). `minetest` will keep existing as an alias, so that old code won't break. -* More information at -* Developer Wiki: +* More information at +* Developer Wiki: Introduction ------------ @@ -23,7 +23,7 @@ Transferring client-sided mods from the server to the client is planned, but not If you see a deficiency in the API, feel free to attempt to add the functionality in the engine and API. You can send such improvements as -source code patches on GitHub (https://github.com/minetest/minetest). +source code patches on GitHub. Programming in Lua ------------------ diff --git a/doc/compiling/README.md b/doc/compiling/README.md index 70a78946f..16167977b 100644 --- a/doc/compiling/README.md +++ b/doc/compiling/README.md @@ -30,6 +30,7 @@ General options and their default values: ENABLE_POSTGRESQL=ON - Build with libpq; Enables use of PostgreSQL map backend (PostgreSQL 9.5 or greater recommended) ENABLE_REDIS=ON - Build with libhiredis; Enables use of Redis map backend ENABLE_SPATIAL=ON - Build with LibSpatial; Speeds up AreaStores + ENABLE_OPENSSL=ON - Build with OpenSSL; Speeds up SHA1 and SHA2 hashing ENABLE_SOUND=ON - Build with OpenAL, libogg & libvorbis; in-game sounds ENABLE_LTO= - Build with IPO/LTO optimizations (smaller and more efficient than regular build) ENABLE_LUAJIT=ON - Build with LuaJIT (much faster than non-JIT Lua) @@ -61,7 +62,14 @@ Library specific options: GETTEXT_INCLUDE_DIR - Only when building with gettext; directory that contains libintl.h GETTEXT_LIBRARY - Optional/platform-dependent with gettext; path to libintl.so/libintl.dll.a GETTEXT_MSGFMT - Only when building with gettext; path to msgfmt/msgfmt.exe + GMP_INCLUDE_DIR - Directory that contains gmp.h + GMP_LIBRARY - Path to libgmp.a/libgmp.so/libgmp.lib ICONV_LIBRARY - Optional/platform-dependent; path to libiconv.so/libiconv.dylib + JPEG_DLL - Only on Windows; path to libjpeg.dll + JPEG_INCLUDE_DIR - Directory that contains jpeg.h + JPEG_LIBRARY - Path to libjpeg.a/libjpeg.so/libjpeg.lib + JSON_INCLUDE_DIR - Directory that contains json/allocator.h + JSON_LIBRARY - Path to libjson.a/libjson.so/libjson.lib LEVELDB_INCLUDE_DIR - Only when building with LevelDB; directory that contains db.h LEVELDB_LIBRARY - Only when building with LevelDB; path to libleveldb.a/libleveldb.so/libleveldb.dll.a LEVELDB_DLL - Only when building with LevelDB on Windows; path to libleveldb.dll @@ -79,6 +87,12 @@ Library specific options: OPENAL_DLL - Only if building with sound on Windows; path to OpenAL32.dll OPENAL_INCLUDE_DIR - Only if building with sound; directory where al.h is located OPENAL_LIBRARY - Only if building with sound; path to libopenal.a/libopenal.so/OpenAL32.lib + PNG_DLL - Only on Windows; path to libpng.dll + PNG_INCLUDE_DIR - Directory that contains png.h + PNG_LIBRARY - Path to libpng.a/libpng.so/libpng.lib + PROMETHEUS_PULL_LIBRARY - Only if building with prometheus; path to prometheus-cpp-pull + PROMETHEUS_CORE_LIBRARY - Only if building with prometheus; path to prometheus-cpp-core + PROMETHEUS_CPP_INCLUDE_DIR - Only if building with prometheus; directory where prometheus/counter.h is located SQLITE3_INCLUDE_DIR - Directory that contains sqlite3.h SQLITE3_LIBRARY - Path to libsqlite3.a/libsqlite3.so/sqlite3.lib VORBISFILE_LIBRARY - Only if building with sound; path to libvorbisfile.a/libvorbisfile.so/libvorbisfile.dll.a diff --git a/doc/compiling/linux.md b/doc/compiling/linux.md index 3b31250e8..65ad2fec4 100644 --- a/doc/compiling/linux.md +++ b/doc/compiling/linux.md @@ -18,6 +18,7 @@ | JsonCPP | 1.0.0+ | Bundled JsonCPP is used if not present | | Curl | 7.56.0+ | Optional | | gettext | - | Optional | +| OpenSSL | 3.0+ | Optional (only libcrypto used) | For Debian/Ubuntu users: @@ -33,7 +34,7 @@ For openSUSE users: For Arch users: - sudo pacman -S --needed base-devel libcurl-gnutls cmake libxi libpng sqlite libogg libvorbis openal freetype2 jsoncpp gmp luajit leveldb ncurses zstd gettext + sudo pacman -S --needed base-devel libcurl-gnutls cmake libxi libpng libjpeg-turbo sqlite libogg libvorbis openal freetype2 jsoncpp gmp luajit leveldb ncurses zstd gettext For Alpine users: @@ -69,14 +70,14 @@ For Void users: Download source (this is the URL to the latest of source repository, which might not work at all times) using Git: - git clone --depth 1 https://github.com/minetest/minetest.git - cd minetest + git clone --depth 1 https://github.com/luanti-org/luanti + cd luanti Download source, without using Git: - wget https://github.com/minetest/minetest/archive/master.tar.gz + wget https://github.com/luanti-org/luanti/archive/master.tar.gz tar xf master.tar.gz - cd minetest-master + cd luanti-master ## Build @@ -87,7 +88,7 @@ Build a version that runs directly from the source directory: Run it: - ./bin/minetest + ./bin/luanti - Use `cmake . -LH` to see all CMake options and their current state. - If you want to install it system-wide (or are making a distribution package), diff --git a/doc/compiling/macos.md b/doc/compiling/macos.md index 09452004e..12818a334 100644 --- a/doc/compiling/macos.md +++ b/doc/compiling/macos.md @@ -16,7 +16,7 @@ brew install cmake freetype gettext gmp hiredis jpeg-turbo jsoncpp leveldb libog Download source (this is the URL to the latest of source repository, which might not work at all times) using Git: ```bash -git clone --depth 1 https://github.com/minetest/minetest.git luanti +git clone --depth 1 https://github.com/luanti-org/luanti luanti cd luanti ``` diff --git a/doc/compiling/windows.md b/doc/compiling/windows.md index b36db4d9a..13ede4a22 100644 --- a/doc/compiling/windows.md +++ b/doc/compiling/windows.md @@ -34,8 +34,8 @@ Use `--triplet` to specify the target triplet, e.g. `x64-windows` or `x86-window ### a) Using the vcpkg toolchain and CMake GUI 1. Start up the CMake GUI -2. Select **Browse Source...** and select DIR/minetest -3. Select **Browse Build...** and select DIR/minetest-build +2. Select **Browse Source...** and select DIR/luanti +3. Select **Browse Build...** and select DIR/luanti-build 4. Select **Configure** 5. Choose the right visual Studio version and target platform. It has to match the version of the installed dependencies 6. Choose **Specify toolchain file for cross-compiling** diff --git a/doc/developing/README.md b/doc/developing/README.md index 7e84de904..419e41edd 100644 --- a/doc/developing/README.md +++ b/doc/developing/README.md @@ -2,15 +2,15 @@ ## Wiki -Some important development docs are found in the wiki: https://dev.minetest.net/ +Some important development docs are found in the wiki: https://dev.luanti.org/ Notable pages: -- [Releasing Luanti](https://dev.minetest.net/Releasing_Minetest) -- [Engine translations](https://dev.minetest.net/Translation#Maintaining_engine_translations) -- [Changelog](https://dev.minetest.net/Changelog) -- [Organisation](https://dev.minetest.net/Organisation) -- [Code style guidelines](https://dev.minetest.net/Code_style_guidelines) +- [Releasing Luanti](https://dev.luanti.org/Releasing_Luanti) +- [Engine translations](https://dev.luanti.org/Translation#Maintaining_engine_translations) +- [Changelog](https://dev.luanti.org/Changelog) +- [Organisation](https://dev.luanti.org/Organisation) +- [Code style guidelines](https://dev.luanti.org/Code_style_guidelines) ## In this folder @@ -23,4 +23,4 @@ Notable pages: Oftentimes knowledge hasn't been written down (yet) and your best bet is to ask someone experienced and/or the core developers. -Feel free to join the [#minetest-dev IRC](https://wiki.minetest.net/IRC) and ask questions related to **engine development**. +Feel free to join the [#minetest-dev IRC](https://wiki.luanti.org/IRC) and ask questions related to **engine development**. diff --git a/doc/developing/android.md b/doc/developing/android.md index 5a134d561..285351cf0 100644 --- a/doc/developing/android.md +++ b/doc/developing/android.md @@ -2,7 +2,7 @@ ## Sign the Android APK from CI -The [Github Actions Workflow](https://github.com/minetest/minetest/actions?query=workflow%3Aandroid+event%3Apush) +The [Github Actions Workflow](https://github.com/luanti-org/luanti/actions?query=workflow%3Aandroid+event%3Apush) automatically produces an APK for each architecture. Before installing them onto a device they however need to be signed. diff --git a/doc/developing/misc.md b/doc/developing/misc.md index 9895cc624..5992946cb 100644 --- a/doc/developing/misc.md +++ b/doc/developing/misc.md @@ -9,7 +9,7 @@ To get usable results you need to build Luanti with debug symbols Run the client (or server) like this and do whatever you wanted to test: ```bash -perf record -z --call-graph dwarf -- ./bin/minetest +perf record -z --call-graph dwarf -- ./bin/luanti ``` This will leave a file called "perf.data". diff --git a/doc/developing/os-compatibility.md b/doc/developing/os-compatibility.md index 29b271e6f..794328e7b 100644 --- a/doc/developing/os-compatibility.md +++ b/doc/developing/os-compatibility.md @@ -45,13 +45,8 @@ There's usually no reason to raise this unless the NDK drops older versions. **Compilers**: gcc, clang and MSVC (exceptions exist) -**OpenGL** is an entirely different beast, there is no formal consensus on changing the requirements -and neither do we have an exact set of requirements. - -We still support OpenGL 1.4 without shaders (fixed-pipeline), which could be considered very unreasonable in 2024. -OpenGL ES 2.0 is supported for the sake of mobile platforms. - -It has been [proposed](https://irc.minetest.net/minetest-dev/2022-08-18) moving to OpenGL 2.x or 3.0 with shaders required. +We require **OpenGL** 2.0 or ES 2.0, so shaders can be relied on. +Graphics code should generally work on both. Newer features can be used as long as a fallback exists. General **system requirements** are not bounded either. Being able to play Luanti on a recent low-end phone is a reasonable target. diff --git a/doc/direction.md b/doc/direction.md index 85b44f57c..574572516 100644 --- a/doc/direction.md +++ b/doc/direction.md @@ -7,7 +7,7 @@ following documents: * [What is Minetest?](http://c55.me/blog/?p=1491) * [celeron55's roadmap](https://forum.luanti.org/viewtopic.php?t=9177) -* [celeron55's comment in "A clear mission statement for Minetest is missing"](https://github.com/minetest/minetest/issues/3476#issuecomment-167399287) +* [celeron55's comment in "A clear mission statement for Minetest is missing"](https://github.com/luanti-org/luanti/issues/3476#issuecomment-167399287) * [Core developer to-do/wish lists](https://forum.luanti.org/viewforum.php?f=7) ## 2. Medium-term Roadmap @@ -16,7 +16,7 @@ These are the current medium-term goals for Luanti development, in no particular order. These goals were created from the top points in a -[roadmap brainstorm](https://github.com/minetest/minetest/issues/10461). +[roadmap brainstorm](https://github.com/luanti-org/luanti/issues/10461). This should be reviewed approximately yearly, or when goals are achieved. Pull requests that address one of these goals will be labeled as "Roadmap". @@ -32,9 +32,9 @@ Once that is done, fancier features can be worked on, such as water shaders, shadows, and improved lighting. Examples include -[transparency sorting](https://github.com/minetest/minetest/issues/95), -[particle performance](https://github.com/minetest/minetest/issues/1414), -[general view distance](https://github.com/minetest/minetest/issues/7222). +[transparency sorting](https://github.com/luanti-org/luanti/issues/95), +[particle performance](https://github.com/luanti-org/luanti/issues/1414), +[general view distance](https://github.com/luanti-org/luanti/issues/7222). This includes work on maintaining [our Irrlicht fork](https://github.com/minetest/irrlicht), and switching to @@ -43,16 +43,16 @@ alternative libraries to replace Irrlicht functionality as needed ### 2.2 Internal code refactoring To ensure sustainable development, Luanti's code needs to be -[refactored and improved](https://github.com/minetest/minetest/pulls?q=is%3Aopen+sort%3Aupdated-desc+label%3A%22Code+quality%22+). +[refactored and improved](https://github.com/luanti-org/luanti/pulls?q=is%3Aopen+sort%3Aupdated-desc+label%3A%22Code+quality%22). This will remove code rot and allow for more efficient development. ### 2.3 UI Improvements -A [formspec replacement](https://github.com/minetest/minetest/issues/6527) is +A [formspec replacement](https://github.com/luanti-org/luanti/issues/6527) is needed to make GUIs better and easier to create. This replacement could also be a replacement for HUDs, allowing for a unified API. -A [new mainmenu](https://github.com/minetest/minetest/issues/6733) is needed to +A [new mainmenu](https://github.com/luanti-org/luanti/issues/6733) is needed to improve user experience. First impressions matter, and the current main menu doesn't do a very good job at selling Luanti or explaining what it is. A new main menu should promote games to users, allowing Minetest Game to no @@ -65,5 +65,5 @@ an issue for any large changes before spending lots of time. There are still a significant number of issues with objects. Collisions, -[performance](https://github.com/minetest/minetest/issues/6453), +[performance](https://github.com/luanti-org/luanti/issues/6453), API convenience, and discrepancies between players and entities. diff --git a/doc/docker_server.md b/doc/docker_server.md index eebe776b9..c89c4e6f0 100644 --- a/doc/docker_server.md +++ b/doc/docker_server.md @@ -4,22 +4,25 @@ We provide Luanti server Docker images using the GitHub container registry. Images are built on each commit and available using the following tag scheme: -* `ghcr.io/minetest/minetest:master` (latest build) -* `ghcr.io/minetest/minetest:` (specific Git tag) -* `ghcr.io/minetest/minetest:latest` (latest Git tag, which is the stable release) +* `ghcr.io/luanti-org/luanti:master` (latest build) +* `ghcr.io/luanti-org/luanti:` (specific Git tag) +* `ghcr.io/luanti-org/luanti:latest` (latest Git tag, which is the stable release) -See [here](https://github.com/minetest/minetest/pkgs/container/minetest) for all available tags. +See [here](https://github.com/luanti-org/luanti/pkgs/container/luanti) for all available tags. + +Versions released before the project was renamed are available with the same tag scheme at `ghcr.io/minetest/minetest`. +See [here](https://github.com/orgs/minetest/packages/container/package/minetest) for all available tags. For a quick test you can easily run: ```shell -docker run ghcr.io/minetest/minetest:master +docker run ghcr.io/luanti-org/luanti:master ``` To use it in a production environment, you should use volumes bound to the Docker host to persist data and modify the configuration: ```shell -docker create -v /home/minetest/data/:/var/lib/minetest/ -v /home/minetest/conf/:/etc/minetest/ ghcr.io/minetest/minetest:master +docker create -v /home/minetest/data/:/var/lib/minetest/ -v /home/minetest/conf/:/etc/minetest/ ghcr.io/luanti-org/luanti:master ``` You may also want to use [Docker Compose](https://docs.docker.com/compose): @@ -29,7 +32,7 @@ You may also want to use [Docker Compose](https://docs.docker.com/compose): version: "2" services: minetest_server: - image: ghcr.io/minetest/minetest:master + image: ghcr.io/luanti-org/luanti:master restart: always networks: - default diff --git a/doc/freeminer.6 b/doc/freeminer.6 index 0eb5b630e..587af24fc 100644 --- a/doc/freeminer.6 +++ b/doc/freeminer.6 @@ -124,7 +124,7 @@ Colon delimited list of directories to search for mods. Path to Luanti user data directory. .SH BUGS -Please report all bugs at https://github.com/minetest/minetest/issues. +Please report all bugs at https://github.com/luanti-org/luanti/issues. .SH AUTHOR .PP @@ -134,4 +134,4 @@ This man page was originally written by Juhani Numminen . .SH WWW -http://www.minetest.net/ +http://www.luanti.org/ diff --git a/doc/lua_api.md b/doc/lua_api.md index e27964fc5..ba72e97e9 100644 --- a/doc/lua_api.md +++ b/doc/lua_api.md @@ -5,10 +5,10 @@ Luanti Lua Modding API Reference it's now called `core` due to the renaming of Luanti (formerly Minetest). `minetest` will keep existing as an alias, so that old code won't break. -* More information at -* Developer Wiki: +* More information at +* Developer Wiki: * (Unofficial) Minetest Modding Book by rubenwardy: -* Modding tools: +* Modding tools: Introduction ------------ @@ -188,14 +188,14 @@ Mod directory structure │   ├── models │   ├── textures │   │   ├── modname_stuff.png - │   │   ├── modname_stuff_normal.png │   │   ├── modname_something_else.png │   │   ├── subfolder_foo │   │   │ ├── modname_more_stuff.png │   │   │ └── another_subfolder │   │   └── bar_subfolder │   ├── sounds - │   ├── media + │   ├── fonts + │ ├── media │   ├── locale │   └── └── another @@ -266,7 +266,7 @@ The main Lua script. Running this script should register everything it wants to register. Subsequent execution depends on Luanti calling the registered callbacks. -### `textures`, `sounds`, `media`, `models`, `locale` +### `textures`, `sounds`, `media`, `models`, `locale`, `fonts` Media files (textures, sounds, whatever) that will be transferred to the client and will be available for use by the mod and translation files for @@ -276,9 +276,10 @@ the clients (see [Translations]). Accepted characters for names are: Accepted formats are: - images: .png, .jpg, .tga, (deprecated:) .bmp + images: .png, .jpg, .tga sounds: .ogg vorbis models: .x, .b3d, .obj, (since version 5.10:) .gltf, .glb + fonts: .ttf, .woff (both since version 5.11, see notes below) Other formats won't be sent to the client (e.g. you can store .blend files in a folder for convenience, without the risk that such files are transferred) @@ -309,17 +310,24 @@ it unlocks no special rendering features. Binary glTF (`.glb`) files are supported and recommended over `.gltf` files due to their space savings. -This means that many glTF features are not supported *yet*, including: +Bone weights should be normalized, e.g. using ["normalize all" in Blender](https://docs.blender.org/manual/en/4.2/grease_pencil/modes/weight_paint/weights_menu.html#normalize-all). + +You can use the [Khronos glTF validator](https://github.com/KhronosGroup/glTF-Validator) +to check whether a model is a valid glTF file. + +Many glTF features are not supported *yet*, including: * Animations * Only a single animation is supported, use frame ranges within this animation. + * `CUBICSPLINE` interpolation is not supported. * Cameras * Materials * Only base color textures are supported * Backface culling is overridden * Double-sided materials don't work * Alternative means of supplying data - * Embedded images + * Embedded images. You can use `gltfutil.py` from the + [modding tools](https://github.com/luanti-org/modtools) to strip or extract embedded images. * References to files via URIs Textures are supplied solely via the same means as for the other model file formats: @@ -336,6 +344,28 @@ For example, if your model used an emissive material, you should expect that a future version of Luanti may respect this, and thus cause your model to render differently there. +#### Custom fonts + +You can supply custom fonts in TrueType Font (`.ttf`) or Web Open Font Format (`.woff`) format. +The former is supported primarily for convenience. The latter is preferred due to its compression. + +In the future, having multiple custom fonts and the ability to switch between them is planned, +but for now this feature is limited to the ability to override Luanti's default fonts via mods. +It is recommended that this only be used by game mods to set a look and feel. + +The stems (file names without extension) are self-explanatory: + +* Regular variants: + * `regular` + * `bold` + * `italic` + * `bold_italic` +* Monospaced variants: + * `mono` + * `mono_bold` + * `mono_italic` + * `mono_bold_italic` + Naming conventions ------------------ @@ -486,9 +516,7 @@ stripping out the file extension: * e.g. `foomod_foothing.png` * e.g. `foomod_foothing` -Supported texture formats are PNG (`.png`), JPEG (`.jpg`), Bitmap (`.bmp`) -and Targa (`.tga`). -Since better alternatives exist, the latter two may be removed in the future. +Supported texture formats are PNG (`.png`), JPEG (`.jpg`) and Targa (`.tga`). Texture modifiers ----------------- @@ -1456,8 +1484,6 @@ Node drawtypes There are a bunch of different looking node types. -Look for examples in `games/devtest` or `games/minetest_game`. - * `normal` * A node-sized cube. * `airlike` @@ -4185,14 +4211,14 @@ Two functions are provided to translate strings: `core.translate` and * `core.get_translator(textdomain)` is a simple wrapper around `core.translate` and `core.translate_n`. - After `local S, NS = core.get_translator(textdomain)`, we have + After `local S, PS = core.get_translator(textdomain)`, we have `S(str, ...)` equivalent to `core.translate(textdomain, str, ...)`, and - `NS(str, str_plural, n, ...)` to `core.translate_n(textdomain, str, str_plural, n, ...)`. + `PS(str, str_plural, n, ...)` to `core.translate_n(textdomain, str, str_plural, n, ...)`. It is intended to be used in the following way, so that it avoids verbose repetitions of `core.translate`: ```lua - local S, NS = core.get_translator(textdomain) + local S, PS = core.get_translator(textdomain) S(str, ...) ``` @@ -4226,7 +4252,7 @@ command that shows the amount of time since the player joined. We can do the following: ```lua -local S, NS = core.get_translator("hello") +local S, PS = core.get_translator("hello") core.register_on_joinplayer(function(player) local name = player:get_player_name() core.chat_send_player(name, S("Hello @1, how are you today?", name)) @@ -4235,7 +4261,7 @@ core.register_chatcommand("playtime", { func = function(name) local last_login = core.get_auth_handler().get_auth(name).last_login local playtime = math.floor((last_login-os.time())/60) - return true, NS( + return true, PS( "You have been playing for @1 minute.", "You have been playing for @1 minutes.", minutes, tostring(minutes)) @@ -4282,7 +4308,7 @@ After creating the `locale` directory, a translation template for the above example using the following command: ```sh -xgettext -L lua -kS -kNS:1,2 -kcore.translate:1c,2 -kcore.translate_n:1c,2,3 \ +xgettext -L lua -kS -kPS:1,2 -kcore.translate:1c,2 -kcore.translate_n:1c,2,3 \ -d hello -o locale/hello.pot *.lua ``` @@ -4342,7 +4368,7 @@ Hello @1, how are you today?=Hallo @1, wie geht es dir heute? ``` For old translation files, consider using the script `mod_translation_updater.py` -in the Luanti [modtools](https://github.com/minetest/modtools) repository to +in the Luanti [modtools](https://github.com/luanti-org/modtools) repository to generate and update translation files automatically from the Lua sources. Gettext translation file format @@ -5040,7 +5066,7 @@ inside the VoxelManip. can use `core.emerge_area` to make sure that the area you want to read/write is already generated. -* Other mods, or the core itself, could possibly modify the area of the map +* Other mods, or the engine itself, could possibly modify the area of the map currently loaded into a VoxelManip object. With the exception of Mapgen VoxelManips (see above section), the internal buffers are not updated. For this reason, it is strongly encouraged to complete the usage of a particular @@ -5055,9 +5081,11 @@ inside the VoxelManip. Methods ------- -* `read_from_map(p1, p2)`: Loads a chunk of map into the VoxelManip object +* `read_from_map(p1, p2)`: Loads a chunk of map into the VoxelManip object containing the region formed by `p1` and `p2`. * returns actual emerged `pmin`, actual emerged `pmax` + * Note that calling this multiple times will *add* to the area loaded in the + VoxelManip, and not reset it. * `write_to_map([light])`: Writes the data loaded from the `VoxelManip` back to the map. * **important**: data must be set using `VoxelManip:set_data()` before @@ -5116,8 +5144,8 @@ Methods generated mapchunk above are propagated down into the mapchunk, defaults to `true` if left out. * `update_liquids()`: Update liquid flow -* `was_modified()`: Returns `true` if the data in the voxel manipulator has been modified - since it was last read from the map. This means you have to call `get_data` again. +* `was_modified()`: Returns `true` if the data in the VoxelManip has been modified + since it was last read from the map. This means you have to call `get_data()` again. This only applies to a `VoxelManip` object from `core.get_mapgen_object`, where the engine will keep the map and the VM in sync automatically. * Note: this doesn't do what you think it does and is subject to removal. Don't use it! @@ -5550,7 +5578,7 @@ Utilities * It's possible that multiple Luanti instances are running at the same time, which may lead to corruption if you are not careful. * `core.is_singleplayer()` -* `core.features`: Table containing API feature flags +* `core.features`: Table containing *server-side* API feature flags ```lua { @@ -5657,10 +5685,15 @@ Utilities bulk_lbms = true, -- ABM supports field without_neighbors (5.10.0) abm_without_neighbors = true, + -- biomes have a weight parameter (5.11.0) + biome_weights = true, + -- Particles can specify a "clip" blend mode (5.11.0) + particle_blend_clip = true, } ``` * `core.has_feature(arg)`: returns `boolean, missing_features` + * checks for *server-side* feature availability * `arg`: string or table in format `{foo=true, bar=true}` * `missing_features`: `{foo=true, bar=true}` * `core.get_player_information(player_name)`: Table containing information @@ -5682,14 +5715,37 @@ Utilities min_jitter = 0.01, -- minimum packet time jitter max_jitter = 0.5, -- maximum packet time jitter avg_jitter = 0.03, -- average packet time jitter + + -- The version information is provided by the client and may be spoofed + -- or inconsistent in engine forks. You must not use this for checking + -- feature availability of clients. Instead, do use the fields + -- `protocol_version` and `formspec_version` where it matters. + -- Use `core.protocol_versions` to map Luanti versions to protocol versions. + -- This version string is only suitable for analysis purposes. + version_string = "0.4.9-git", -- full version string + -- the following information is available in a debug build only!!! -- DO NOT USE IN MODS - --ser_vers = 26, -- serialization version used by client - --major = 0, -- major version number - --minor = 4, -- minor version number - --patch = 10, -- patch version number - --vers_string = "0.4.9-git", -- full version string - --state = "Active" -- current client state + --serialization_version = 26, -- serialization version used by client + --major = 0, -- major version number + --minor = 4, -- minor version number + --patch = 10, -- patch version number + --state = "Active" -- current client state + } + ``` + +* `core.protocol_versions`: + * Table mapping Luanti versions to corresponding protocol versions for modder convenience. + * For example, to check whether a client has at least the feature set + of Luanti 5.8.0 or newer, you could do: + `core.get_player_information(player_name).protocol_version >= core.protocol_versions["5.8.0"]` + * (available since 5.11) + + ```lua + { + [version string] = protocol version at time of release + -- every major and minor version has an entry + -- patch versions only for the first release whose protocol version is not already present in the table } ``` @@ -6178,7 +6234,7 @@ Setting-related * `core.settings`: Settings object containing all of the settings from the main config file (`minetest.conf`). See [`Settings`]. * `core.setting_get_pos(name)`: Loads a setting from the main settings and - parses it as a position (in the format `(1,2,3)`). Returns a position or nil. + parses it as a position (in the format `(1,2,3)`). Returns a position or nil. **Deprecated: use `core.settings:get_pos()` instead** Authentication -------------- @@ -6557,7 +6613,7 @@ Environment access * `pointabilities`: Allows overriding the `pointable` property of nodes and objects. Uses the same format as the `pointabilities` property of item definitions. Default is `nil`. -* `core.find_path(pos1,pos2,searchdistance,max_jump,max_drop,algorithm)` +* `core.find_path(pos1, pos2, searchdistance, max_jump, max_drop, algorithm)` * returns table containing path that can be walked on * returns a table of 3D points representing a path from `pos1` to `pos2` or `nil` on failure. @@ -6577,8 +6633,11 @@ Environment access Difference between `"A*"` and `"A*_noprefetch"` is that `"A*"` will pre-calculate the cost-data, the other will calculate it on-the-fly -* `core.spawn_tree (pos, {treedef})` +* `core.spawn_tree(pos, treedef)` * spawns L-system tree at given `pos` with definition in `treedef` table +* `core.spawn_tree_on_vmanip(vmanip, pos, treedef)` + * analogous to `core.spawn_tree`, but spawns a L-system tree onto the specified + VoxelManip object `vmanip` instead of the map. * `core.transforming_liquid_add(pos)` * add node to liquid flow update queue * `core.get_node_max_level(pos)` @@ -6697,6 +6756,9 @@ Formspec * `core.hypertext_escape(string)`: returns a string * escapes the characters "\", "<", and ">" to show text in a hypertext element. * not safe for use with tag attributes. + * this function does not do formspec escaping, you will likely need to do + `core.formspec_escape(core.hypertext_escape(string))` if the hypertext is + not already being formspec escaped. * `core.explode_table_event(string)`: returns a table * returns e.g. `{type="CHG", row=1, column=2}` * `type` is one of: @@ -8890,7 +8952,7 @@ For `core.get_perlin_map()`, the actual seed used is the noiseparams seed plus the world seed, to create world-specific noise. Format of `size` is `{x=dimx, y=dimy, z=dimz}`. The `z` component is omitted -for 2D noise, and it must be must be larger than 1 for 3D noise (otherwise +for 2D noise, and it must be larger than 1 for 3D noise (otherwise `nil` is returned). For each of the functions with an optional `buffer` parameter: If `buffer` is @@ -9046,6 +9108,9 @@ means that no defaults will be returned for mod settings. * Is currently limited to mapgen flags `mg_flags` and mapgen-specific flags like `mgv5_spflags`. * Returns `nil` if `key` is not found. +* `get_pos(key)`: + * Returns a `vector` + * Returns `nil` if no value is found or parsing failed. * `set(key, value)` * Setting names can't contain whitespace or any of `="{}#`. * Setting values can't contain the sequence `\n"""`. @@ -9056,6 +9121,9 @@ means that no defaults will be returned for mod settings. * `set_np_group(key, value)` * `value` is a NoiseParams table. * Also, see documentation for `set()` above. +* `set_pos(key, value)` + * `value` is a `vector`. + * Also, see documentation for `set()` above. * `remove(key)`: returns a boolean (`true` for success) * `get_names()`: returns `{key1,...}` * `has(key)`: @@ -9192,7 +9260,7 @@ Player properties need to be saved manually. -- Deprecated usage of "wielditem" expects 'textures = {itemname}' (see 'visual' above). colors = {}, - -- Number of required colors depends on visual + -- Currently unused. use_texture_alpha = false, -- Use texture's alpha channel. @@ -10709,6 +10777,10 @@ performance and computing power the practical limit is much lower. -- distribution of the biomes. -- Heat and humidity have average values of 50, vary mostly between -- 0 and 100 but can exceed these values. + + weight = 1.0, + -- Relative weight of the biome in the Voronoi diagram. + -- A value of 0 (or less) is ignored and equivalent to 1.0. } ``` @@ -10782,10 +10854,9 @@ See [Decoration types]. Used by `core.register_decoration`. flags = "liquid_surface, force_placement, all_floors, all_ceilings", -- Flags for all decoration types. - -- "liquid_surface": Instead of placement on the highest solid surface - -- in a mapchunk column, placement is on the highest liquid surface. - -- Placement is disabled if solid nodes are found above the liquid - -- surface. + -- "liquid_surface": Find the highest liquid (not solid) surface under + -- open air. Search stops and fails on the first solid node. + -- Cannot be used with "all_floors" or "all_ceilings" below. -- "force_placement": Nodes other than "air" and "ignore" are replaced -- by the decoration. -- "all_floors", "all_ceilings": Instead of placement on the highest @@ -11480,6 +11551,14 @@ texture = { -- (default) blends transparent pixels with those they are drawn atop -- according to the alpha channel of the source texture. useful for -- e.g. material objects like rocks, dirt, smoke, or node chunks + -- note: there will be rendering bugs when particles interact with + -- translucent nodes. particles are also not transparency-sorted + -- relative to each other. + blend = "clip", + -- pixels are either fully opaque or fully transparent, + -- depending on whether alpha is greater than or less than 50% + -- (just like `use_texture_alpha = "clip"` for nodes). + -- you should prefer this if you don't need semi-transparency, as it's faster. blend = "add", -- adds the value of pixels to those underneath them, modulo the sources -- alpha channel. useful for e.g. bright light effects like sparks or fire diff --git a/doc/lua_api.txt b/doc/lua_api.txt index 95bc7f1f6..df7b12d4d 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -1,3 +1,3 @@ Moved to lua_api.md -URL: https://github.com/minetest/minetest/blob/master/doc/lua_api.md +URL: https://github.com/luanti-org/luanti/blob/master/doc/lua_api.md diff --git a/doc/main_page.dox b/doc/main_page.dox index 8211d9cae..f000d0638 100644 --- a/doc/main_page.dox +++ b/doc/main_page.dox @@ -1,7 +1,7 @@ -/** @mainpage The Minetest engine internal documentation +/** @mainpage The Luanti engine internal documentation -Welcome to the Minetest engine Doxygen documentation site!\n -This page documents the internal structure of the Minetest engine's C++ code.\n +Welcome to the Luanti engine Doxygen documentation site!\n +This page documents the internal structure of the Luanti engine's C++ code.\n Use the tree view at the left to navigate. */ diff --git a/doc/menu_lua_api.md b/doc/menu_lua_api.md index f69c5917f..260c6b661 100644 --- a/doc/menu_lua_api.md +++ b/doc/menu_lua_api.md @@ -1,4 +1,4 @@ -Luanti Lua Mainmenu API Reference 5.10.0 +Luanti Lua Mainmenu API Reference 5.11.0 ======================================== Introduction @@ -105,11 +105,6 @@ of manually putting one, as different OSs use different delimiters. E.g. * `spec` = `SimpleSoundSpec` (see `lua_api.md`) * `looped` = bool * `handle:stop()` or `core.sound_stop(handle)` -* `core.get_video_drivers()` - * get list of video drivers supported by engine (not all modes are guaranteed to work) - * returns list of available video drivers' settings name and 'friendly' display name - e.g. `{ {name="opengl", friendly_name="OpenGL"}, {name="software", friendly_name="Software Renderer"} }` - * first element of returned list is guaranteed to be the NULL driver * `core.get_mapgen_names([include_hidden=false])` -> table of map generator algorithms registered in the core (possible in async calls) * `core.get_cache_path()` -> path of cache @@ -223,6 +218,7 @@ GUI * `core.set_clouds()` * `core.set_topleft_text(text)` * `core.show_keys_menu()` +* `core.show_touchscreen_layout()` * `core.show_path_select_dialog(formname, caption, is_file_select)` * shows a path select dialog * `formname` is base name of dialog response returned in fields @@ -386,7 +382,7 @@ Settings * `core.settings:save()` -> nil, save all settings to config file For a complete list of methods of the `Settings` object see -[lua_api.md](https://github.com/minetest/minetest/blob/master/doc/lua_api.md) +[lua_api.md](./lua_api.md) Worlds diff --git a/freeminer.conf.example b/freeminer.conf.example index 970a4b7d6..1ee613b98 100644 --- a/freeminer.conf.example +++ b/freeminer.conf.example @@ -10,7 +10,7 @@ # to the program, eg. "freeminer.exe --config ../freeminer.conf.example". # Further documentation: -# https://wiki.minetest.net/ +# https://wiki.luanti.org/ # # Controls @@ -189,6 +189,8 @@ # to the game world only, keeping the GUI intact. # It should give a significant performance boost at the cost of less detailed image. # Higher values result in a less detailed image. +# Note: Undersampling is currently not supported if the "3d_mode" setting is set +# to a non-default value. # type: int min: 1 max: 8 # undersampling = 1 @@ -202,7 +204,6 @@ # - topbottom: split screen top/bottom. # - sidebyside: split screen side by side. # - crossview: Cross-eyed 3d -# Note that the interlaced mode requires shaders to be enabled. # type: enum values: none, anaglyph, interlaced, topbottom, sidebyside, crossview # 3d_mode = none @@ -310,11 +311,7 @@ ### Clouds -# Clouds are a client-side effect. -# type: bool -# enable_clouds = true - -# Use 3D cloud look instead of flat. +# Allow clouds to look 3D instead of flat. # type: bool # enable_3d_clouds = true @@ -341,6 +338,7 @@ # trilinear_filter = false # Use anisotropic filtering when looking at textures from an angle. +# This provides a significant improvement when used together with mipmapping. # type: bool # anisotropic_filter = false @@ -349,16 +347,18 @@ # * None - No antialiasing (default) # # * FSAA - Hardware-provided full-screen antialiasing -# (incompatible with Post Processing and Undersampling) # A.K.A multi-sample antialiasing (MSAA) # Smoothens out block edges but does not affect the insides of textures. -# A restart is required to change this option. # -# * FXAA - Fast approximate antialiasing (requires shaders) +# If Post Processing is disabled, changing FSAA requires a restart. +# Also, if Post Processing is disabled, FSAA will not work together with +# undersampling or a non-default "3d_mode" setting. +# +# * FXAA - Fast approximate antialiasing # Applies a post-processing filter to detect and smoothen high-contrast edges. # Provides balance between speed and image quality. # -# * SSAA - Super-sampling antialiasing (requires shaders) +# * SSAA - Super-sampling antialiasing # Renders higher-resolution image of the scene, then scales down to reduce # the aliasing effects. This is the slowest and the most accurate method. # type: enum values: none, fsaa, fxaa, ssaa @@ -412,10 +412,6 @@ # type: bool # performance_tradeoffs = false -# Adds particles when digging a node. -# type: bool -# enable_particles = true - ### Waving Nodes # Set to true to enable waving leaves. @@ -474,29 +470,17 @@ # type: bool # shadow_map_texture_32bit = true -# Enable Poisson disk filtering. -# On true uses Poisson disk to make "soft shadows". Otherwise uses PCF filtering. -# type: bool -# shadow_poisson_filter = true - # Define shadow filtering quality. # This simulates the soft shadows effect by applying a PCF or Poisson disk # but also uses more resources. # type: enum values: 0, 1, 2 # shadow_filters = 1 -# Enable colored shadows. -# On true translucent nodes cast colored shadows. This is expensive. +# Enable colored shadows for transculent nodes. +# This is expensive. # type: bool # shadow_map_color = false -# Spread a complete update of shadow map over given number of frames. -# Higher values might make shadows laggy, lower values -# will consume more resources. -# Minimum value: 1; maximum value: 16 -# type: int min: 1 max: 16 -# shadow_update_frames = 8 - # Set the soft shadow radius size. # Lower values mean sharper shadows, bigger values mean softer shadows. # Minimum value: 1.0; maximum value: 15.0 @@ -579,8 +563,7 @@ # type: float min: 0 max: 1 # sound_volume_unfocused = 0.3 -# Whether to mute sounds. You can unmute sounds at any time, unless the -# sound system is disabled (enable_sound=false). +# Whether to mute sounds. You can unmute sounds at any time. # In-game, you can toggle the mute state with the mute key or by using the # pause menu. # type: bool @@ -630,13 +613,6 @@ # type: bool # gui_scaling_filter = false -# When gui_scaling_filter_txr2img is true, copy those images -# from hardware to software for scaling. When false, fall back -# to the old scaling method, for video drivers that don't -# properly support downloading textures back from hardware. -# type: bool -# gui_scaling_filter_txr2img = true - # Delay showing tooltips, stated in milliseconds. # type: int min: 0 max: 1.844674407371e+19 # tooltip_show_delay = 400 @@ -708,7 +684,7 @@ # The URL for the content repository # type: string -# contentdb_url = https://content.minetest.net +# contentdb_url = https://content.luanti.org # If enabled and you have ContentDB packages installed, Luanti may contact ContentDB to # check for package updates when opening the mainmenu. @@ -720,7 +696,7 @@ # as defined by the Free Software Foundation. # You can also specify content ratings. # These flags are independent from Luanti versions, -# so see a full list at https://content.minetest.net/help/content_flags/ +# so see a full list at https://content.luanti.org/help/content_flags/ # type: string # contentdb_flag_blacklist = nonfree, desktop_default @@ -741,22 +717,22 @@ # URL to the server list displayed in the Multiplayer Tab. # type: string -# serverlist_url = servers.minetest.net +# serverlist_url = https://servers.luanti.org -# If enabled, account registration is separate from login in the UI. -# If disabled, new accounts will be registered automatically when logging in. +# If enabled, server account registration is separate from login in the UI. +# If disabled, connecting to a server will automatically register a new account. # type: bool # enable_split_login_register = true # URL to JSON file which provides information about the newest Luanti release. # If this is empty the engine will never check for updates. # type: string -# update_information_url = https://www.minetest.net/release_info.json +# update_information_url = https://www.luanti.org/release_info.json ## Server # Name of the player. -# When running a server, clients connecting with this name are admins. +# When running a server, a client connecting with this name is admin. # When starting from the main menu, this is overridden. # type: string # name = @@ -773,11 +749,11 @@ # Domain name of server, to be displayed in the serverlist. # type: string -# server_address = game.minetest.net +# server_address = game.example.net # Homepage of server, to be displayed in the serverlist. # type: string -# server_url = https://minetest.net +# server_url = https://game.example.net # Automatically report to the serverlist. # type: bool @@ -789,7 +765,7 @@ # Announce to this serverlist. # type: string -# serverlist_url = servers.minetest.net +# serverlist_url = https://servers.luanti.org # Message of the day displayed to players connecting. # type: string @@ -838,7 +814,6 @@ # Enable/disable running an IPv6 server. # Ignored if bind_address is set. -# Needs enable_ipv6 to be enabled. # type: bool # ipv6_server = false @@ -2737,9 +2712,9 @@ ### Graphics -# Shaders are a fundamental part of rendering and enable advanced visual effects. +# Enables debug and error-checking in the OpenGL driver. # type: bool -# enable_shaders = true +# opengl_debug = false # Path to shader directory. If no path is defined, default location will be used. # type: path @@ -2757,20 +2732,17 @@ # type: int min: 0 max: 128 # transparency_sorting_distance = 16 +# Draw transparency sorted triangles grouped by their mesh buffers. +# This breaks transparency sorting between mesh buffers, but avoids situations +# where transparency sorting would be very slow otherwise. +# type: bool +# transparency_sorting_group_by_buffers = true + # Radius of cloud area stated in number of 64 node cloud squares. # Values larger than 26 will start to produce sharp cutoffs at cloud area corners. -# type: int min: 1 max: 62 +# type: int min: 8 max: 62 # cloud_radius = 12 -# Whether node texture animations should be desynchronized per mapblock. -# type: bool -# desynchronize_mapblock_texture_animation = false - -# Enables caching of facedir rotated meshes. -# This is only effective with shaders disabled. -# type: bool -# enable_mesh_cache = false - # Delay between mesh updates on the client in ms. Increasing this will slow # down the rate of mesh updates, thus reducing jitter on slower clients. # type: int min: 0 max: 50 @@ -2781,6 +2753,11 @@ # type: int min: 0 max: 8 # mesh_generation_threads = 0 +# All mesh buffers with less than this number of vertices will be merged +# during map rendering. This improves rendering performance. +# type: int min: 0 max: 1000 +# mesh_buffer_min_vertices = 300 + # True = 256 # False = 128 # Usable to make minimap smoother on slower machines. @@ -2805,12 +2782,11 @@ # type: enum values: disable, enable, force # autoscale_mode = disable -# When using bilinear/trilinear/anisotropic filters, low-resolution textures -# can be blurred, so automatically upscale them with nearest-neighbor -# interpolation to preserve crisp pixels. This sets the minimum texture size -# for the upscaled textures; higher values look sharper, but require more -# memory. Powers of 2 are recommended. This setting is ONLY applied if -# bilinear/trilinear/anisotropic filtering is enabled. +# When using bilinear/trilinear filtering, low-resolution textures +# can be blurred, so this option automatically upscales them to preserve +# crisp pixels. This defines the minimum texture size for the upscaled textures; +# higher values look sharper, but require more memory. +# This setting is ONLY applied if any of the mentioned filters are enabled. # This is also used as the base node texture size for world-aligned # texture autoscaling. # type: int min: 1 max: 32768 @@ -2824,9 +2800,22 @@ # type: int min: 1 max: 16 # client_mesh_chunk = 1 -# Enables debug and error-checking in the OpenGL driver. +# Decide the color depth of the texture used for the post-processing pipeline. +# Reducing this can improve performance, but some effects (e.g. debanding) +# require more than 8 bits to work. +# type: enum values: 8, 10, 16 +# post_processing_texture_bits = 16 + +# Enable Poisson disk filtering. +# On true uses Poisson disk to make "soft shadows". Otherwise uses PCF filtering. # type: bool -# opengl_debug = false +# shadow_poisson_filter = true + +# Spread a complete update of the shadow map over a given number of frames. +# Higher values might make shadows laggy, lower values +# will consume more resources. +# type: int min: 1 max: 32 +# shadow_update_frames = 16 # Set to true to render debugging breakdown of the bloom effect. # In debug mode, the screen is split into 4 quadrants: @@ -3057,10 +3046,6 @@ # type: int min: -1 # max_forceloaded_blocks = 16 -# Interval of sending time of day to clients, stated in seconds. -# type: float min: 0.001 -# time_send_interval = 5.0 - # Interval of saving important changes in the world, stated in seconds. # type: float min: 0.001 # server_map_save_interval = 5.3 @@ -3071,7 +3056,7 @@ # server_unload_unused_data_timeout = 29 # Maximum number of statically stored objects in a block. -# type: int min: 1 max: 65535 +# type: int min: 256 max: 65535 # max_objects_per_block = 256 # Length of time between active block management cycles, stated in seconds. @@ -3338,13 +3323,6 @@ # type: bool # show_advanced = false -# Enables the sound system. -# If disabled, this completely disables all sounds everywhere and the in-game -# sound controls will be non-functional. -# Changing this setting requires a restart. -# type: bool -# enable_sound = true - # Key for moving the player forward. # See https://github.com/minetest/irrlicht/blob/master/include/Keycodes.h # type: key diff --git a/games/devtest/.luacheckrc b/games/devtest/.luacheckrc index 261cacf56..2ef36d209 100644 --- a/games/devtest/.luacheckrc +++ b/games/devtest/.luacheckrc @@ -23,6 +23,7 @@ read_globals = { "fgettext", "fgettext_ne", "vector", "VoxelArea", + "VoxelManip", "profiler", "Settings", "check", @@ -30,7 +31,7 @@ read_globals = { "PcgRandom", string = {fields = {"split", "trim"}}, - table = {fields = {"copy", "getn", "indexof", "insert_all"}}, + table = {fields = {"copy", "getn", "indexof", "insert_all", "key_value_swap"}}, math = {fields = {"hypot", "round"}}, } diff --git a/games/devtest/mods/gltf/init.lua b/games/devtest/mods/gltf/init.lua index fd4d13bee..f6a8f9bdf 100644 --- a/games/devtest/mods/gltf/init.lua +++ b/games/devtest/mods/gltf/init.lua @@ -55,6 +55,20 @@ core.register_entity("gltf:simple_skin", { end }) +core.register_entity("gltf:simple_skin_step", { + initial_properties = { + infotext = "Simple skin, but using STEP interpolation", + visual = "mesh", + visual_size = vector.new(5, 5, 5), + mesh = "gltf_simple_skin_step.gltf", + textures = {}, + backface_culling = false + }, + on_activate = function(self) + self.object:set_animation({x = 0, y = 5.5}, 1) + end +}) + -- The claws rendering incorrectly from one side is expected behavior: -- They use an unsupported double-sided material. core.register_entity("gltf:frog", { diff --git a/games/devtest/mods/gltf/models/gltf_simple_skin_step.gltf b/games/devtest/mods/gltf/models/gltf_simple_skin_step.gltf new file mode 100644 index 000000000..f26c0c8b1 --- /dev/null +++ b/games/devtest/mods/gltf/models/gltf_simple_skin_step.gltf @@ -0,0 +1 @@ +{"scene":0,"scenes":[{"nodes":[0,1]}],"nodes":[{"skin":0,"mesh":0},{"children":[2]},{"translation":[0.0,1.0,0.0],"rotation":[0.0,0.0,0.0,1.0]}],"meshes":[{"primitives":[{"attributes":{"POSITION":1,"JOINTS_0":2,"WEIGHTS_0":3},"indices":0}]}],"skins":[{"inverseBindMatrices":4,"joints":[1,2]}],"animations":[{"channels":[{"sampler":0,"target":{"node":2,"path":"rotation"}}],"samplers":[{"input":5,"interpolation":"STEP","output":6}]}],"buffers":[{"uri":"data:application/gltf-buffer;base64,AAABAAMAAAADAAIAAgADAAUAAgAFAAQABAAFAAcABAAHAAYABgAHAAkABgAJAAgAAAAAvwAAAAAAAAAAAAAAPwAAAAAAAAAAAAAAvwAAAD8AAAAAAAAAPwAAAD8AAAAAAAAAvwAAgD8AAAAAAAAAPwAAgD8AAAAAAAAAvwAAwD8AAAAAAAAAPwAAwD8AAAAAAAAAvwAAAEAAAAAAAAAAPwAAAEAAAAAA","byteLength":168},{"uri":"data:application/gltf-buffer;base64,AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAABAPwAAgD4AAAAAAAAAAAAAQD8AAIA+AAAAAAAAAAAAAAA/AAAAPwAAAAAAAAAAAAAAPwAAAD8AAAAAAAAAAAAAgD4AAEA/AAAAAAAAAAAAAIA+AABAPwAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAA=","byteLength":320},{"uri":"data:application/gltf-buffer;base64,AACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAAAAAAAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAgD8AAAAAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAIC/AAAAAAAAgD8=","byteLength":128},{"uri":"data:application/gltf-buffer;base64,AAAAAAAAAD8AAIA/AADAPwAAAEAAACBAAABAQAAAYEAAAIBAAACQQAAAoEAAALBAAAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAkxjEPkSLbD8AAAAAAAAAAPT9ND/0/TQ/AAAAAAAAAAD0/TQ/9P00PwAAAAAAAAAAkxjEPkSLbD8AAAAAAAAAAAAAAAAAAIA/AAAAAAAAAAAAAAAAAACAPwAAAAAAAAAAkxjEvkSLbD8AAAAAAAAAAPT9NL/0/TQ/AAAAAAAAAAD0/TS/9P00PwAAAAAAAAAAkxjEvkSLbD8AAAAAAAAAAAAAAAAAAIA/","byteLength":240}],"bufferViews":[{"buffer":0,"byteLength":48,"target":34963},{"buffer":0,"byteOffset":48,"byteLength":120,"target":34962},{"buffer":1,"byteLength":320,"byteStride":16},{"buffer":2,"byteLength":128},{"buffer":3,"byteLength":240}],"accessors":[{"bufferView":0,"componentType":5123,"count":24,"type":"SCALAR"},{"bufferView":1,"componentType":5126,"count":10,"type":"VEC3","max":[0.5,2.0,0.0],"min":[-0.5,0.0,0.0]},{"bufferView":2,"componentType":5123,"count":10,"type":"VEC4"},{"bufferView":2,"byteOffset":160,"componentType":5126,"count":10,"type":"VEC4"},{"bufferView":3,"componentType":5126,"count":2,"type":"MAT4"},{"bufferView":4,"componentType":5126,"count":12,"type":"SCALAR","max":[5.5],"min":[0.0]},{"bufferView":4,"byteOffset":48,"componentType":5126,"count":12,"type":"VEC4","max":[0.0,0.0,0.707,1.0],"min":[0.0,0.0,-0.707,0.707]}],"asset":{"version":"2.0"}} diff --git a/games/devtest/mods/soundstuff/racecar.lua b/games/devtest/mods/soundstuff/racecar.lua index 916279231..92adc7509 100644 --- a/games/devtest/mods/soundstuff/racecar.lua +++ b/games/devtest/mods/soundstuff/racecar.lua @@ -4,14 +4,14 @@ local drive_distance = 30 core.register_entity("soundstuff:racecar", { initial_properties = { - physical = false, - collisionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, - selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, - visual = "upright_sprite", - visual_size = {x = 1, y = 1, z = 1}, - textures = {"soundstuff_racecar.png", "soundstuff_racecar.png^[transformFX"}, - static_save = false, - }, + physical = false, + collisionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, + selectionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, + visual = "upright_sprite", + visual_size = {x = 1, y = 1, z = 1}, + textures = {"soundstuff_racecar.png", "soundstuff_racecar.png^[transformFX"}, + static_save = false, + }, on_activate = function(self, _staticdata, _dtime_s) self.min_x = self.object:get_pos().x - drive_distance * 0.5 diff --git a/games/devtest/mods/testabms/textures/testabms_after_node.png b/games/devtest/mods/testabms/textures/testabms_after_node.png index dab87594b..2a1efd53e 100644 Binary files a/games/devtest/mods/testabms/textures/testabms_after_node.png and b/games/devtest/mods/testabms/textures/testabms_after_node.png differ diff --git a/games/devtest/mods/testabms/textures/testabms_wait_node.png b/games/devtest/mods/testabms/textures/testabms_wait_node.png index a9bd9a36f..67ef96b6e 100644 Binary files a/games/devtest/mods/testabms/textures/testabms_wait_node.png and b/games/devtest/mods/testabms/textures/testabms_wait_node.png differ diff --git a/games/devtest/mods/testentities/models/LICENSE.txt b/games/devtest/mods/testentities/models/LICENSE.txt index 4317d68d3..19ffffc5c 100644 --- a/games/devtest/mods/testentities/models/LICENSE.txt +++ b/games/devtest/mods/testentities/models/LICENSE.txt @@ -1,3 +1,5 @@ +"Minetest Sam": + Original model by MirceaKitsune (CC BY-SA 3.0). Various alterations and fixes by kilbith, sofar, xunto, Rogier-5, TeTpaAka, Desour, stujones11, An0n3m0us (CC BY-SA 3.0): @@ -5,3 +7,9 @@ stujones11, An0n3m0us (CC BY-SA 3.0): Jordach (CC BY-SA 3.0): testentities_sam.png + +"Lava Flan": + +Zeg9 (CC BY-SA 3.0): + testentities_lava_flan.x + testentities_lava_flan.png \ No newline at end of file diff --git a/games/devtest/mods/testentities/models/testentities_lava_flan.png b/games/devtest/mods/testentities/models/testentities_lava_flan.png new file mode 100644 index 000000000..8cf37238f Binary files /dev/null and b/games/devtest/mods/testentities/models/testentities_lava_flan.png differ diff --git a/games/devtest/mods/testentities/models/testentities_lava_flan.x b/games/devtest/mods/testentities/models/testentities_lava_flan.x new file mode 100644 index 000000000..be78ff97e --- /dev/null +++ b/games/devtest/mods/testentities/models/testentities_lava_flan.x @@ -0,0 +1,3506 @@ +xof 0303txt 0032 + +template XSkinMeshHeader { + <3cf169ce-ff7c-44ab-93c0-f78f62d172e2> + WORD nMaxSkinWeightsPerVertex; + WORD nMaxSkinWeightsPerFace; + WORD nBones; +} + +template SkinWeights { + <6f0d123b-bad2-4167-a0d0-80224f25fabb> + STRING transformNodeName; + DWORD nWeights; + array DWORD vertexIndices[nWeights]; + array float weights[nWeights]; + Matrix4x4 matrixOffset; +} + +Frame Root { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000,-0.000000, 1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 1.000000;; + } + Frame Armature { + FrameTransformMatrix { + -5.000000, 0.000001, 0.000000, 0.000000, + -0.000001,-5.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 5.000000, 0.000000, + 0.000000, 0.000000,-5.000000, 1.000000;; + } + Frame Armature_Bone { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000,-1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 0.000000, 1.000000;; + } + Frame Armature_Bone_001 { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000, 2.000000, 0.000000, 1.000000;; + } + Frame Armature_Bone_002 { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000, 0.300000, 0.000000, 1.000000;; + } + Frame Armature_Bone_003 { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000, 0.300000, 0.000000, 1.000000;; + } + Frame Armature_Bone_004 { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000, 0.400000, 0.000000, 1.000000;; + } + } // End of Armature_Bone_004 + } // End of Armature_Bone_003 + } // End of Armature_Bone_002 + } // End of Armature_Bone_001 + } // End of Armature_Bone + Frame Cube { + FrameTransformMatrix { + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 0.000000, + 0.000000, 0.000000, 1.000000, 1.000000;; + } + Mesh { // Cube mesh + 264; + 1.000000; 1.000000;-1.000000;, + 1.000000;-1.000000;-1.000000;, + -1.000000;-1.000000;-1.000000;, + -1.000000; 1.000000;-1.000000;, + -1.000000; 1.000000; 1.000000;, + -1.000000;-1.000000; 1.000000;, + -0.800000;-0.800000; 1.000000;, + -0.800000; 0.800000; 1.000000;, + 1.000000; 1.000000;-1.000000;, + 1.000000; 0.999999; 1.000000;, + 0.999999;-1.000001; 1.000000;, + 1.000000;-1.000000;-1.000000;, + 1.000000;-1.000000;-1.000000;, + 0.999999;-1.000001; 1.000000;, + -1.000000;-1.000000; 1.000000;, + -1.000000;-1.000000;-1.000000;, + -1.000000;-1.000000;-1.000000;, + -1.000000;-1.000000; 1.000000;, + -1.000000; 1.000000; 1.000000;, + -1.000000; 1.000000;-1.000000;, + 1.000000; 0.999999; 1.000000;, + 1.000000; 1.000000;-1.000000;, + -1.000000; 1.000000;-1.000000;, + -1.000000; 1.000000; 1.000000;, + -0.800000; 0.800000; 1.666667;, + -0.800000;-0.800000; 1.666667;, + -0.800000;-0.800000; 2.000000;, + -0.800000; 0.800000; 2.000000;, + 0.999999;-1.000001; 1.000000;, + 1.000000; 0.999999; 1.000000;, + 0.800000; 0.800000; 1.000000;, + 0.799999;-0.800001; 1.000000;, + 1.000000; 0.999999; 1.000000;, + -1.000000; 1.000000; 1.000000;, + -0.800000; 0.800000; 1.000000;, + 0.800000; 0.800000; 1.000000;, + -1.000000;-1.000000; 1.000000;, + 0.999999;-1.000001; 1.000000;, + 0.799999;-0.800001; 1.000000;, + -0.800000;-0.800000; 1.000000;, + -0.800000;-0.800000; 2.000000;, + 0.799999;-0.800001; 2.000000;, + 0.640000;-0.640000; 2.000000;, + -0.640000;-0.640000; 2.000000;, + 0.799999;-0.800001; 1.666667;, + 0.800000; 0.800000; 1.666667;, + 0.800000; 0.800000; 2.000000;, + 0.799999;-0.800001; 2.000000;, + 0.800000; 0.800000; 1.666667;, + -0.800000; 0.800000; 1.666667;, + -0.800000; 0.800000; 2.000000;, + 0.800000; 0.800000; 2.000000;, + -0.800000;-0.800000; 1.666667;, + 0.799999;-0.800001; 1.666667;, + 0.799999;-0.800001; 2.000000;, + -0.800000;-0.800000; 2.000000;, + 0.640000; 0.640000; 2.000000;, + -0.640000; 0.640000; 2.000000;, + -0.640000; 0.640000; 2.500000;, + 0.640000; 0.640000; 2.500000;, + -0.800000; 0.800000; 2.000000;, + -0.800000;-0.800000; 2.000000;, + -0.640000;-0.640000; 2.000000;, + -0.640000; 0.640000; 2.000000;, + 0.799999;-0.800001; 2.000000;, + 0.800000; 0.800000; 2.000000;, + 0.640000; 0.640000; 2.000000;, + 0.640000;-0.640000; 2.000000;, + 0.800000; 0.800000; 2.000000;, + -0.800000; 0.800000; 2.000000;, + -0.640000; 0.640000; 2.000000;, + 0.640000; 0.640000; 2.000000;, + 0.640000; 0.640000; 2.500000;, + -0.640000; 0.640000; 2.500000;, + -0.640000;-0.640000; 2.500000;, + 0.640000;-0.640000; 2.500000;, + -0.640000;-0.640000; 2.000000;, + 0.640000;-0.640000; 2.000000;, + 0.640000;-0.640000; 2.500000;, + -0.640000;-0.640000; 2.500000;, + -0.640000; 0.640000; 2.000000;, + -0.640000;-0.640000; 2.000000;, + -0.640000;-0.640000; 2.500000;, + -0.640000; 0.640000; 2.500000;, + 0.640000;-0.640000; 2.000000;, + 0.640000; 0.640000; 2.000000;, + 0.640000; 0.640000; 2.500000;, + 0.640000;-0.640000; 2.500000;, + -0.800000; 0.800000; 1.000000;, + -0.800000;-0.800000; 1.000000;, + -0.800000;-0.800000; 1.333333;, + -0.800000; 0.800000; 1.333333;, + -0.800000; 0.800000; 1.333333;, + -0.800000;-0.800000; 1.333333;, + -0.800000;-0.800000; 1.666667;, + -0.800000; 0.800000; 1.666667;, + 0.799999;-0.800001; 1.000000;, + 0.800000; 0.800000; 1.000000;, + 0.800000; 0.800000; 1.333333;, + 0.799999;-0.800001; 1.333333;, + 0.799999;-0.800001; 1.333333;, + 0.800000; 0.800000; 1.333333;, + 0.800000; 0.800000; 1.666667;, + 0.799999;-0.800001; 1.666667;, + 0.800000; 0.800000; 1.000000;, + -0.800000; 0.800000; 1.000000;, + -0.800000; 0.800000; 1.333333;, + 0.800000; 0.800000; 1.333333;, + 0.800000; 0.800000; 1.333333;, + -0.800000; 0.800000; 1.333333;, + -0.800000; 0.800000; 1.666667;, + 0.800000; 0.800000; 1.666667;, + -0.800000;-0.800000; 1.000000;, + 0.799999;-0.800001; 1.000000;, + 0.799999;-0.800001; 1.333333;, + -0.800000;-0.800000; 1.333333;, + 0.799999;-0.800001; 1.333333;, + 0.799999;-0.800001; 1.666667;, + 0.560000;-0.000000; 1.616667;, + 0.560000;-0.000000; 1.383333;, + -0.560000; 0.000000; 1.383333;, + 0.560000;-0.000000; 1.383333;, + 0.560000;-0.000000; 1.616667;, + -0.560000; 0.000000; 1.616667;, + 0.799999;-0.800001; 1.666667;, + -0.800000;-0.800000; 1.666667;, + -0.560000; 0.000000; 1.616667;, + 0.560000;-0.000000; 1.616667;, + -0.800000;-0.800000; 1.666667;, + -0.800000;-0.800000; 1.333333;, + -0.560000; 0.000000; 1.383333;, + -0.560000; 0.000000; 1.616667;, + -0.800000;-0.800000; 1.333333;, + 0.799999;-0.800001; 1.333333;, + 0.560000;-0.000000; 1.383333;, + -0.560000; 0.000000; 1.383333;, + -0.000000;-0.790000; 1.340000;, + -0.000000;-0.690000; 1.540000;, + -0.100000;-0.690000; 1.340000;, + -0.000000;-0.590000; 1.340000;, + -0.000000;-0.690000; 1.540000;, + 0.100000;-0.690000; 1.340000;, + 0.400000;-0.590000; 1.340000;, + 0.500000;-0.690000; 1.340000;, + 0.400000;-0.790000; 1.340000;, + 0.300000;-0.690000; 1.340000;, + -0.100000;-0.690000; 1.340000;, + -0.000000;-0.690000; 1.540000;, + -0.000000;-0.590000; 1.340000;, + 0.100000;-0.690000; 1.340000;, + -0.000000;-0.690000; 1.540000;, + -0.000000;-0.790000; 1.340000;, + 0.200000;-0.590000; 1.340000;, + 0.300000;-0.690000; 1.340000;, + 0.200000;-0.790000; 1.340000;, + 0.100000;-0.690000; 1.340000;, + 0.300000;-0.690000; 1.340000;, + 0.200000;-0.690000; 1.540000;, + 0.200000;-0.790000; 1.340000;, + 0.100000;-0.690000; 1.340000;, + 0.200000;-0.690000; 1.540000;, + 0.200000;-0.590000; 1.340000;, + 0.200000;-0.590000; 1.340000;, + 0.200000;-0.690000; 1.540000;, + 0.300000;-0.690000; 1.340000;, + 0.500000;-0.690000; 1.340000;, + 0.400000;-0.690000; 1.540000;, + 0.400000;-0.790000; 1.340000;, + 0.200000;-0.790000; 1.340000;, + 0.200000;-0.690000; 1.540000;, + 0.100000;-0.690000; 1.340000;, + -0.000000;-0.590000; 1.340000;, + 0.100000;-0.690000; 1.340000;, + -0.000000;-0.790000; 1.340000;, + -0.100000;-0.690000; 1.340000;, + 0.300000;-0.690000; 1.340000;, + 0.400000;-0.690000; 1.540000;, + 0.400000;-0.590000; 1.340000;, + 0.400000;-0.590000; 1.340000;, + 0.400000;-0.690000; 1.540000;, + 0.500000;-0.690000; 1.340000;, + 0.400000;-0.790000; 1.340000;, + 0.400000;-0.690000; 1.540000;, + 0.300000;-0.690000; 1.340000;, + -0.200000;-0.590000; 1.340000;, + -0.100000;-0.690000; 1.340000;, + -0.200000;-0.790000; 1.340000;, + -0.300000;-0.690000; 1.340000;, + -0.100000;-0.690000; 1.340000;, + -0.200000;-0.690000; 1.540000;, + -0.200000;-0.790000; 1.340000;, + -0.300000;-0.690000; 1.340000;, + -0.200000;-0.690000; 1.540000;, + -0.200000;-0.590000; 1.340000;, + -0.200000;-0.590000; 1.340000;, + -0.200000;-0.690000; 1.540000;, + -0.100000;-0.690000; 1.340000;, + -0.200000;-0.790000; 1.340000;, + -0.200000;-0.690000; 1.540000;, + -0.300000;-0.690000; 1.340000;, + -0.400000;-0.590000; 1.340000;, + -0.300000;-0.690000; 1.340000;, + -0.400000;-0.790000; 1.340000;, + -0.500000;-0.690000; 1.340000;, + -0.300000;-0.690000; 1.340000;, + -0.400000;-0.690000; 1.540000;, + -0.400000;-0.790000; 1.340000;, + -0.500000;-0.690000; 1.340000;, + -0.400000;-0.690000; 1.540000;, + -0.400000;-0.590000; 1.340000;, + -0.400000;-0.590000; 1.340000;, + -0.400000;-0.690000; 1.540000;, + -0.300000;-0.690000; 1.340000;, + -0.400000;-0.790000; 1.340000;, + -0.400000;-0.690000; 1.540000;, + -0.500000;-0.690000; 1.340000;, + 0.200000;-0.700000; 2.400000;, + 0.200000;-0.500000; 2.400000;, + 0.200000;-0.500000; 2.200000;, + 0.200000;-0.700000; 2.200000;, + 0.200000;-0.500000; 2.400000;, + 0.400000;-0.500000; 2.400000;, + 0.400000;-0.500000; 2.200000;, + 0.200000;-0.500000; 2.200000;, + 0.400000;-0.500000; 2.400000;, + 0.400000;-0.700000; 2.400000;, + 0.400000;-0.700000; 2.200000;, + 0.400000;-0.500000; 2.200000;, + 0.400000;-0.700000; 2.400000;, + 0.200000;-0.700000; 2.400000;, + 0.200000;-0.700000; 2.200000;, + 0.400000;-0.700000; 2.200000;, + 0.200000;-0.700000; 2.200000;, + 0.200000;-0.500000; 2.200000;, + 0.400000;-0.500000; 2.200000;, + 0.400000;-0.700000; 2.200000;, + 0.400000;-0.700000; 2.400000;, + 0.400000;-0.500000; 2.400000;, + 0.200000;-0.500000; 2.400000;, + 0.200000;-0.700000; 2.400000;, + -0.400000;-0.700000; 2.400000;, + -0.400000;-0.500000; 2.400000;, + -0.400000;-0.500000; 2.200000;, + -0.400000;-0.700000; 2.200000;, + -0.400000;-0.500000; 2.400000;, + -0.200000;-0.500000; 2.400000;, + -0.200000;-0.500000; 2.200000;, + -0.400000;-0.500000; 2.200000;, + -0.200000;-0.500000; 2.400000;, + -0.200000;-0.700000; 2.400000;, + -0.200000;-0.700000; 2.200000;, + -0.200000;-0.500000; 2.200000;, + -0.200000;-0.700000; 2.400000;, + -0.400000;-0.700000; 2.400000;, + -0.400000;-0.700000; 2.200000;, + -0.200000;-0.700000; 2.200000;, + -0.400000;-0.700000; 2.200000;, + -0.400000;-0.500000; 2.200000;, + -0.200000;-0.500000; 2.200000;, + -0.200000;-0.700000; 2.200000;, + -0.200000;-0.700000; 2.400000;, + -0.200000;-0.500000; 2.400000;, + -0.400000;-0.500000; 2.400000;, + -0.400000;-0.700000; 2.400000;; + 71; + 4;3;2;1;0;, + 4;7;6;5;4;, + 4;11;10;9;8;, + 4;15;14;13;12;, + 4;19;18;17;16;, + 4;23;22;21;20;, + 4;27;26;25;24;, + 4;31;30;29;28;, + 4;35;34;33;32;, + 4;39;38;37;36;, + 4;43;42;41;40;, + 4;47;46;45;44;, + 4;51;50;49;48;, + 4;55;54;53;52;, + 4;59;58;57;56;, + 4;63;62;61;60;, + 4;67;66;65;64;, + 4;71;70;69;68;, + 4;75;74;73;72;, + 4;79;78;77;76;, + 4;83;82;81;80;, + 4;87;86;85;84;, + 4;91;90;89;88;, + 4;95;94;93;92;, + 4;99;98;97;96;, + 4;103;102;101;100;, + 4;107;106;105;104;, + 4;111;110;109;108;, + 4;115;114;113;112;, + 4;119;118;117;116;, + 4;123;122;121;120;, + 4;127;126;125;124;, + 4;131;130;129;128;, + 4;135;134;133;132;, + 3;138;137;136;, + 3;141;140;139;, + 4;145;144;143;142;, + 3;148;147;146;, + 3;151;150;149;, + 4;155;154;153;152;, + 3;158;157;156;, + 3;161;160;159;, + 3;164;163;162;, + 3;167;166;165;, + 3;170;169;168;, + 4;174;173;172;171;, + 3;177;176;175;, + 3;180;179;178;, + 3;183;182;181;, + 4;187;186;185;184;, + 3;190;189;188;, + 3;193;192;191;, + 3;196;195;194;, + 3;199;198;197;, + 4;203;202;201;200;, + 3;206;205;204;, + 3;209;208;207;, + 3;212;211;210;, + 3;215;214;213;, + 4;219;218;217;216;, + 4;223;222;221;220;, + 4;227;226;225;224;, + 4;231;230;229;228;, + 4;235;234;233;232;, + 4;239;238;237;236;, + 4;243;242;241;240;, + 4;247;246;245;244;, + 4;251;250;249;248;, + 4;255;254;253;252;, + 4;259;258;257;256;, + 4;263;262;261;260;; + MeshNormals { // Cube normals + 71; + 0.000000; 0.000000;-1.000000;, + 0.000000; 0.000000; 1.000000;, + 1.000000;-0.000000; 0.000000;, + -0.000000;-1.000000;-0.000000;, + -1.000000; 0.000000;-0.000000;, + 0.000000; 1.000000; 0.000000;, + -1.000000; 0.000000; 0.000000;, + -0.000000; 0.000000; 1.000000;, + 0.000000;-0.000000; 1.000000;, + 0.000000; 0.000000; 1.000000;, + 0.000000; 0.000000; 1.000000;, + 1.000000;-0.000001; 0.000000;, + 0.000000; 1.000000; 0.000000;, + -0.000000;-1.000000; 0.000000;, + 0.000000; 1.000000; 0.000000;, + 0.000000; 0.000000; 1.000000;, + -0.000000; 0.000000; 1.000000;, + 0.000000;-0.000000; 1.000000;, + 0.000000;-0.000000; 1.000000;, + -0.000000;-1.000000; 0.000000;, + -1.000000; 0.000000; 0.000000;, + 1.000000;-0.000001; 0.000000;, + -1.000000; 0.000000; 0.000000;, + -1.000000; 0.000000; 0.000000;, + 1.000000;-0.000001; 0.000000;, + 1.000000;-0.000001; 0.000000;, + 0.000000; 1.000000; 0.000000;, + 0.000000; 1.000000; 0.000000;, + -0.000000;-1.000000; 0.000000;, + -0.957826;-0.287348; 0.000000;, + -0.000000;-1.000000; 0.000000;, + -0.000000;-0.062378;-0.998053;, + 0.957826;-0.287348; 0.000000;, + 0.000000;-0.062378; 0.998053;, + -0.666667;-0.666667; 0.333333;, + 0.666667; 0.666666; 0.333333;, + 0.000000; 0.000000;-1.000000;, + -0.666667; 0.666667; 0.333333;, + 0.666667;-0.666667; 0.333333;, + 0.000000; 0.000000;-1.000000;, + 0.666667;-0.666667; 0.333333;, + -0.666667; 0.666667; 0.333333;, + 0.666667; 0.666667; 0.333333;, + 0.666667;-0.666667; 0.333333;, + -0.666667;-0.666667; 0.333333;, + 0.000000; 0.000000;-1.000000;, + -0.666667; 0.666667; 0.333333;, + 0.666667; 0.666667; 0.333333;, + -0.666667;-0.666667; 0.333333;, + 0.000000; 0.000000;-1.000000;, + 0.666667;-0.666667; 0.333333;, + -0.666667; 0.666667; 0.333333;, + 0.666667; 0.666667; 0.333333;, + -0.666667;-0.666667; 0.333333;, + 0.000000; 0.000000;-1.000000;, + 0.666667;-0.666667; 0.333333;, + -0.666667; 0.666667; 0.333333;, + 0.666667; 0.666667; 0.333333;, + -0.666667;-0.666667; 0.333333;, + -1.000000; 0.000000; 0.000000;, + 0.000000; 1.000000;-0.000000;, + 1.000000; 0.000000;-0.000000;, + 0.000000;-1.000000; 0.000000;, + -0.000000; 0.000000;-1.000000;, + -0.000000; 0.000000; 1.000000;, + -1.000000; 0.000000; 0.000000;, + 0.000000; 1.000000;-0.000000;, + 1.000000; 0.000000;-0.000000;, + 0.000000;-1.000000; 0.000000;, + -0.000000; 0.000000;-1.000000;, + -0.000000; 0.000000; 1.000000;; + 71; + 4;0;0;0;0;, + 4;1;1;1;1;, + 4;2;2;2;2;, + 4;3;3;3;3;, + 4;4;4;4;4;, + 4;5;5;5;5;, + 4;6;6;6;6;, + 4;7;7;7;7;, + 4;8;8;8;8;, + 4;9;9;9;9;, + 4;10;10;10;10;, + 4;11;11;11;11;, + 4;12;12;12;12;, + 4;13;13;13;13;, + 4;14;14;14;14;, + 4;15;15;15;15;, + 4;16;16;16;16;, + 4;17;17;17;17;, + 4;18;18;18;18;, + 4;19;19;19;19;, + 4;20;20;20;20;, + 4;21;21;21;21;, + 4;22;22;22;22;, + 4;23;23;23;23;, + 4;24;24;24;24;, + 4;25;25;25;25;, + 4;26;26;26;26;, + 4;27;27;27;27;, + 4;28;28;28;28;, + 4;29;29;29;29;, + 4;30;30;30;30;, + 4;31;31;31;31;, + 4;32;32;32;32;, + 4;33;33;33;33;, + 3;34;34;34;, + 3;35;35;35;, + 4;36;36;36;36;, + 3;37;37;37;, + 3;38;38;38;, + 4;39;39;39;39;, + 3;40;40;40;, + 3;41;41;41;, + 3;42;42;42;, + 3;43;43;43;, + 3;44;44;44;, + 4;45;45;45;45;, + 3;46;46;46;, + 3;47;47;47;, + 3;48;48;48;, + 4;49;49;49;49;, + 3;50;50;50;, + 3;51;51;51;, + 3;52;52;52;, + 3;53;53;53;, + 4;54;54;54;54;, + 3;55;55;55;, + 3;56;56;56;, + 3;57;57;57;, + 3;58;58;58;, + 4;59;59;59;59;, + 4;60;60;60;60;, + 4;61;61;61;61;, + 4;62;62;62;62;, + 4;63;63;63;63;, + 4;64;64;64;64;, + 4;65;65;65;65;, + 4;66;66;66;66;, + 4;67;67;67;67;, + 4;68;68;68;68;, + 4;69;69;69;69;, + 4;70;70;70;70;; + } // End of Cube normals + MeshTextureCoords { // Cube UV coordinates + 264; + 0.000000; 0.500000;, + 0.500000; 0.500000;, + 0.500000; 0.000000;, + 0.000000; 0.000000;, + -0.000104; 0.000450;, + -0.000014; 0.499950;, + 0.058184; 0.442464;, + 0.057363; 0.058619;, + 0.000000; 0.500000;, + 0.500000; 0.500000;, + 0.500000; 0.000000;, + 0.000000; 0.000000;, + 0.000000; 0.500000;, + 0.500000; 0.500000;, + 0.500000; 0.000000;, + 0.000000; 0.000000;, + 0.000000; 0.500000;, + 0.500000; 0.500000;, + 0.500000; 0.000000;, + 0.000000; 0.000000;, + 0.000000; 0.500000;, + 0.500000; 0.500000;, + 0.500000; 0.000000;, + 0.000000; 0.000000;, + 0.499960; 0.416620;, + 0.000040; 0.416620;, + 0.000040; 0.624921;, + 0.499960; 0.624921;, + 0.499489; 0.499550;, + 0.499399; 0.000050;, + 0.441201; 0.057536;, + 0.442021; 0.441381;, + 0.499399; 0.000050;, + -0.000104; 0.000450;, + 0.057363; 0.058619;, + 0.441201; 0.057536;, + -0.000014; 0.499950;, + 0.499489; 0.499550;, + 0.442021; 0.441381;, + 0.058184; 0.442464;, + -0.000014; 0.499950;, + 0.499489; 0.499550;, + 0.442022; 0.441382;, + 0.058184; 0.442464;, + 0.000040; 0.208320;, + 0.499960; 0.208320;, + 0.499960; 0.000020;, + 0.000040; 0.000020;, + 0.499960; 0.416621;, + 0.000040; 0.416620;, + 0.000040; 0.624921;, + 0.499960; 0.624921;, + 0.000046; 0.499908;, + 0.499954; 0.499909;, + 0.499954; 0.291613;, + 0.000046; 0.291613;, + 0.499969;-0.015638;, + 0.000031;-0.015639;, + 0.000031; 0.374937;, + 0.499969; 0.374938;, + -0.000104; 0.000450;, + -0.000014; 0.499950;, + 0.058184; 0.442464;, + 0.057364; 0.058619;, + 0.499489; 0.499550;, + 0.499399; 0.000050;, + 0.441201; 0.057536;, + 0.442022; 0.441382;, + 0.499399; 0.000050;, + -0.000104; 0.000450;, + 0.057364; 0.058619;, + 0.441201; 0.057536;, + 0.499950; 0.000050;, + 0.000050; 0.000050;, + 0.000050; 0.499950;, + 0.499950; 0.499950;, + 0.000031; 0.374937;, + 0.499969; 0.374938;, + 0.499969;-0.015638;, + 0.000031;-0.015639;, + 0.499969;-0.015639;, + 0.000031;-0.015639;, + 0.000031; 0.374937;, + 0.499969; 0.374938;, + 0.000031; 0.374937;, + 0.499969; 0.374938;, + 0.499969;-0.015639;, + 0.000031;-0.015639;, + 0.499960; 0.000019;, + 0.000040; 0.000019;, + 0.000040; 0.208320;, + 0.499960; 0.208320;, + 0.499960; 0.208320;, + 0.000040; 0.208320;, + 0.000040; 0.416620;, + 0.499960; 0.416620;, + 0.000040; 0.624921;, + 0.499960; 0.624921;, + 0.499960; 0.416620;, + 0.000040; 0.416621;, + 0.000040; 0.416621;, + 0.499960; 0.416620;, + 0.499960; 0.208320;, + 0.000040; 0.208320;, + 0.499961; 0.000021;, + 0.000040; 0.000020;, + 0.000040; 0.208320;, + 0.499960; 0.208321;, + 0.499960; 0.208321;, + 0.000040; 0.208320;, + 0.000040; 0.416620;, + 0.499960; 0.416621;, + 0.000046; 0.291430;, + 0.499954; 0.291430;, + 0.499954; 0.083135;, + 0.000046; 0.083134;, + 0.482632; 0.297524;, + 0.499972; 0.143183;, + 0.275451; 0.201614;, + 0.279529; 0.217376;, + 0.000023; 0.249954;, + 0.499977; 0.249954;, + 0.499977; 0.041640;, + 0.000023; 0.041640;, + 0.499972; 0.143183;, + 0.017368; 0.143350;, + 0.220471; 0.223498;, + 0.275451; 0.201614;, + 0.017368; 0.143350;, + 0.000028; 0.297691;, + 0.224549; 0.239260;, + 0.220471; 0.223498;, + 0.000035; 0.499630;, + 0.499965; 0.499457;, + 0.424889; 0.249031;, + 0.074938; 0.249151;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.843750; 0.500000;, + 0.750000; 0.375000;, + 0.656250; 0.500000;, + 0.562500; 0.562500;, + 0.500000; 0.500000;, + 0.500000; 1.000000;, + 0.562500; 0.937500;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 1.000000; 0.500000;, + 0.937500; 0.562500;, + 0.937500; 0.937500;, + 0.999902; 0.999901;, + 0.968750; 0.031250;, + 0.843750; 0.031250;, + 0.843750; 0.156250;, + 0.968750; 0.156250;, + 0.562500; 0.937500;, + 0.500000; 1.000000;, + 0.999902; 0.999901;, + 0.937500; 0.937500;, + 0.937500; 0.562500;, + 1.000000; 0.500000;, + 0.500000; 0.500000;, + 0.562500; 0.562500;, + 0.562500; 0.562500;, + 0.500000; 0.500000;, + 0.500000; 1.000000;, + 0.562500; 0.937500;, + 0.000000; 1.000000;, + 1.000000; 1.000000;, + 1.000000; 0.000000;, + 0.000000; 0.000000;, + 1.000000; 0.500000;, + 0.937500; 0.562500;, + 0.937559; 0.942680;, + 0.999902; 0.999901;, + 0.656250; 0.031250;, + 0.531250; 0.031250;, + 0.531250; 0.156250;, + 0.656250; 0.156250;, + 0.562500; 0.937500;, + 0.500000; 1.000000;, + 0.999902; 0.999901;, + 0.937559; 0.942680;, + 0.937500; 0.562500;, + 1.000000; 0.500000;, + 0.500000; 0.500000;, + 0.562500; 0.562500;; + } // End of Cube UV coordinates + MeshMaterialList { // Cube material list + 1; + 71; + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0;; + Material Material { + 0.640000; 0.640000; 0.640000; 1.000000;; + 96.078431; + 0.500000; 0.500000; 0.500000;; + 0.000000; 0.000000; 0.000000;; + } + } // End of Cube material list + XSkinMeshHeader { + 5; + 15; + 5; + } + SkinWeights { + "Armature_Bone_003"; + 249; + 4, + 5, + 6, + 7, + 9, + 10, + 13, + 14, + 17, + 18, + 20, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 76, + 77, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263; + 0.097855, + 0.076266, + 0.083495, + 0.107234, + 0.089782, + 0.015282, + 0.015282, + 0.076266, + 0.076266, + 0.097855, + 0.089782, + 0.097855, + 0.297901, + 0.287737, + 0.176628, + 0.182485, + 0.015282, + 0.089782, + 0.098610, + 0.018636, + 0.089782, + 0.097855, + 0.107234, + 0.098610, + 0.076266, + 0.015282, + 0.018636, + 0.083495, + 0.176628, + 0.003327, + 0.018794, + 0.127925, + 0.020404, + 0.286977, + 0.174766, + 0.003327, + 0.286977, + 0.297901, + 0.182485, + 0.174766, + 0.287737, + 0.020404, + 0.003327, + 0.176628, + 0.126954, + 0.136859, + 0.062329, + 0.060353, + 0.182485, + 0.176628, + 0.127925, + 0.136859, + 0.003327, + 0.174766, + 0.126954, + 0.018794, + 0.174766, + 0.182485, + 0.136859, + 0.126954, + 0.060353, + 0.062329, + 0.059240, + 0.127925, + 0.018794, + 0.059240, + 0.136859, + 0.127925, + 0.059240, + 0.062329, + 0.018794, + 0.126954, + 0.060353, + 0.107234, + 0.083495, + 0.133455, + 0.171692, + 0.171692, + 0.133455, + 0.287737, + 0.297901, + 0.018636, + 0.098610, + 0.162048, + 0.016914, + 0.016914, + 0.162048, + 0.286977, + 0.020404, + 0.098610, + 0.107234, + 0.171692, + 0.162048, + 0.162048, + 0.171692, + 0.297901, + 0.286977, + 0.083495, + 0.018636, + 0.016914, + 0.133455, + 0.016914, + 0.020404, + 0.031793, + 0.024185, + 0.091978, + 0.024185, + 0.031793, + 0.098530, + 0.020404, + 0.287737, + 0.098530, + 0.031793, + 0.287737, + 0.133455, + 0.091978, + 0.098530, + 0.133455, + 0.016914, + 0.024185, + 0.091978, + 0.500298, + 0.488502, + 0.484399, + 0.484912, + 0.488502, + 0.484399, + 0.574901, + 0.567861, + 0.584345, + 0.581311, + 0.484399, + 0.488502, + 0.484912, + 0.484399, + 0.488502, + 0.500298, + 0.650639, + 0.642159, + 0.660270, + 0.658477, + 0.642159, + 0.652886, + 0.660270, + 0.658477, + 0.652886, + 0.650639, + 0.650639, + 0.652886, + 0.642159, + 0.567861, + 0.577104, + 0.584345, + 0.660270, + 0.652886, + 0.658477, + 0.484912, + 0.484399, + 0.500298, + 0.484399, + 0.581311, + 0.577104, + 0.574901, + 0.574901, + 0.577104, + 0.567861, + 0.584345, + 0.577104, + 0.581311, + 0.650637, + 0.658473, + 0.660266, + 0.642160, + 0.658473, + 0.652884, + 0.660266, + 0.642160, + 0.652884, + 0.650637, + 0.650637, + 0.652884, + 0.658473, + 0.660266, + 0.652884, + 0.642160, + 0.574890, + 0.581306, + 0.584343, + 0.567845, + 0.581306, + 0.577096, + 0.584343, + 0.567845, + 0.577096, + 0.574890, + 0.574890, + 0.577096, + 0.581306, + 0.584343, + 0.577096, + 0.567845, + 0.228406, + 0.235541, + 0.226562, + 0.226110, + 0.235541, + 0.218934, + 0.220409, + 0.226562, + 0.218934, + 0.223567, + 0.223362, + 0.220409, + 0.223567, + 0.228406, + 0.226110, + 0.223362, + 0.226110, + 0.226562, + 0.220409, + 0.223362, + 0.223567, + 0.218934, + 0.235541, + 0.228406, + 0.467092, + 0.474056, + 0.449203, + 0.459631, + 0.474056, + 0.473079, + 0.460570, + 0.449203, + 0.473079, + 0.467589, + 0.462597, + 0.460570, + 0.467589, + 0.467092, + 0.459631, + 0.462597, + 0.459631, + 0.449203, + 0.460570, + 0.462597, + 0.467589, + 0.473079, + 0.474056, + 0.467092; + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000,-1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000,-1.600000, 0.000000, 1.000000;; + } // End of Armature_Bone_003 skin weights + SkinWeights { + "Armature_Bone_002"; + 210; + 0, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 13, + 14, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 136, + 137, + 138, + 139, + 140, + 141, + 142, + 143, + 144, + 145, + 146, + 147, + 148, + 149, + 150, + 151, + 152, + 153, + 154, + 155, + 156, + 157, + 158, + 159, + 160, + 161, + 162, + 163, + 164, + 165, + 166, + 167, + 168, + 169, + 170, + 171, + 172, + 173, + 174, + 175, + 176, + 177, + 178, + 179, + 180, + 181, + 182, + 183, + 184, + 185, + 186, + 187, + 188, + 189, + 190, + 191, + 192, + 193, + 194, + 195, + 196, + 197, + 198, + 199, + 200, + 201, + 202, + 203, + 204, + 205, + 206, + 207, + 208, + 209, + 210, + 211, + 212, + 213, + 214, + 215; + 0.026699, + 0.019645, + 0.225152, + 0.090050, + 0.096422, + 0.247592, + 0.026699, + 0.225915, + 0.091110, + 0.091110, + 0.090050, + 0.090050, + 0.225152, + 0.019645, + 0.225915, + 0.026699, + 0.019645, + 0.225152, + 0.378267, + 0.217186, + 0.396865, + 0.489530, + 0.091110, + 0.225915, + 0.248358, + 0.097508, + 0.225915, + 0.225152, + 0.247592, + 0.248358, + 0.090050, + 0.091110, + 0.097508, + 0.096422, + 0.396865, + 0.398905, + 0.438519, + 0.443076, + 0.218141, + 0.380147, + 0.489880, + 0.398905, + 0.380147, + 0.378267, + 0.489530, + 0.489880, + 0.217186, + 0.218141, + 0.398905, + 0.396865, + 0.504112, + 0.502873, + 0.231972, + 0.249788, + 0.489530, + 0.396865, + 0.443076, + 0.502873, + 0.398905, + 0.489880, + 0.504112, + 0.438519, + 0.489880, + 0.489530, + 0.502873, + 0.504112, + 0.249788, + 0.231972, + 0.219728, + 0.214257, + 0.443076, + 0.438519, + 0.214257, + 0.219728, + 0.502873, + 0.443076, + 0.219728, + 0.231972, + 0.438519, + 0.504112, + 0.249788, + 0.214257, + 0.247592, + 0.096422, + 0.123030, + 0.409380, + 0.409380, + 0.123030, + 0.217186, + 0.378267, + 0.097508, + 0.248358, + 0.410435, + 0.124284, + 0.124284, + 0.410435, + 0.380147, + 0.218141, + 0.248358, + 0.247592, + 0.409380, + 0.410435, + 0.410435, + 0.409380, + 0.378267, + 0.380147, + 0.096422, + 0.097508, + 0.124284, + 0.123030, + 0.124284, + 0.218141, + 0.103633, + 0.087149, + 0.092557, + 0.087149, + 0.103633, + 0.094423, + 0.218141, + 0.217186, + 0.094423, + 0.103633, + 0.217186, + 0.123030, + 0.092557, + 0.094423, + 0.123030, + 0.124284, + 0.087149, + 0.092557, + 0.499702, + 0.511498, + 0.515601, + 0.515088, + 0.511498, + 0.515601, + 0.425099, + 0.432139, + 0.415655, + 0.418689, + 0.515601, + 0.511498, + 0.515088, + 0.515601, + 0.511498, + 0.499702, + 0.349361, + 0.357841, + 0.339730, + 0.341523, + 0.357841, + 0.347114, + 0.339730, + 0.341523, + 0.347114, + 0.349361, + 0.349361, + 0.347114, + 0.357841, + 0.432139, + 0.422896, + 0.415655, + 0.339730, + 0.347114, + 0.341523, + 0.515088, + 0.515601, + 0.499702, + 0.515601, + 0.418689, + 0.422896, + 0.425099, + 0.425099, + 0.422896, + 0.432139, + 0.415655, + 0.422896, + 0.418689, + 0.349363, + 0.341527, + 0.339734, + 0.357840, + 0.341527, + 0.347116, + 0.339734, + 0.357840, + 0.347116, + 0.349363, + 0.349363, + 0.347116, + 0.341527, + 0.339734, + 0.347116, + 0.357840, + 0.425110, + 0.418694, + 0.415657, + 0.432155, + 0.418694, + 0.422904, + 0.415657, + 0.432155, + 0.422904, + 0.425110, + 0.425110, + 0.422904, + 0.418694, + 0.415657, + 0.422904, + 0.432155; + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000,-1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000,-1.300000, 0.000000, 1.000000;; + } // End of Armature_Bone_002 skin weights + SkinWeights { + "Armature_Bone_001"; + 127; + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 75, + 76, + 77, + 78, + 80, + 81, + 84, + 85, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135; + 0.028090, + 0.044667, + 0.027228, + 0.014924, + 0.187604, + 0.200597, + 0.217670, + 0.204339, + 0.028090, + 0.204480, + 0.310430, + 0.044667, + 0.044667, + 0.310430, + 0.200597, + 0.027228, + 0.027228, + 0.200597, + 0.187604, + 0.014924, + 0.204480, + 0.028090, + 0.014924, + 0.187604, + 0.067482, + 0.064812, + 0.031709, + 0.033965, + 0.310430, + 0.204480, + 0.222012, + 0.341423, + 0.204480, + 0.187604, + 0.204339, + 0.222012, + 0.200597, + 0.310430, + 0.341423, + 0.217670, + 0.031709, + 0.101587, + 0.070428, + 0.017181, + 0.167670, + 0.078366, + 0.047455, + 0.101587, + 0.078366, + 0.067482, + 0.033965, + 0.047455, + 0.064812, + 0.167670, + 0.101587, + 0.031709, + 0.027631, + 0.014453, + 0.033965, + 0.031709, + 0.017181, + 0.014453, + 0.101587, + 0.047455, + 0.027631, + 0.070428, + 0.047455, + 0.033965, + 0.014453, + 0.027631, + 0.008199, + 0.017181, + 0.070428, + 0.008199, + 0.014453, + 0.017181, + 0.070428, + 0.027631, + 0.008199, + 0.204339, + 0.217670, + 0.123770, + 0.116219, + 0.116219, + 0.123770, + 0.064812, + 0.067482, + 0.341423, + 0.222012, + 0.131980, + 0.371812, + 0.371812, + 0.131980, + 0.078366, + 0.167670, + 0.222012, + 0.204339, + 0.116219, + 0.131980, + 0.131980, + 0.116219, + 0.067482, + 0.078366, + 0.217670, + 0.341423, + 0.371812, + 0.123770, + 0.371812, + 0.167670, + 0.122698, + 0.132035, + 0.078042, + 0.132035, + 0.122698, + 0.065986, + 0.167670, + 0.064812, + 0.065986, + 0.122698, + 0.064812, + 0.123770, + 0.078042, + 0.065986, + 0.123770, + 0.371812, + 0.132035, + 0.078042; + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000,-1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000,-1.000000, 0.000000, 1.000000;; + } // End of Armature_Bone_001 skin weights + SkinWeights { + "Armature_Bone"; + 136; + 0, + 1, + 2, + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 12, + 13, + 14, + 15, + 16, + 17, + 18, + 19, + 20, + 21, + 22, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135; + 0.945211, + 0.955333, + 0.972772, + 0.965432, + 0.441407, + 0.557541, + 0.520087, + 0.387790, + 0.945211, + 0.424328, + 0.470645, + 0.955333, + 0.955333, + 0.470645, + 0.557541, + 0.972772, + 0.972772, + 0.557541, + 0.441407, + 0.965432, + 0.424328, + 0.945211, + 0.965432, + 0.441407, + 0.133775, + 0.243816, + 0.149205, + 0.083512, + 0.470645, + 0.424328, + 0.371115, + 0.418447, + 0.424328, + 0.441407, + 0.387790, + 0.371115, + 0.557541, + 0.470645, + 0.418447, + 0.520087, + 0.149205, + 0.102630, + 0.077530, + 0.107912, + 0.165882, + 0.124352, + 0.077496, + 0.102630, + 0.124352, + 0.133775, + 0.083512, + 0.077496, + 0.243816, + 0.165882, + 0.102630, + 0.149205, + 0.060886, + 0.066205, + 0.013250, + 0.011723, + 0.083512, + 0.149205, + 0.107912, + 0.066205, + 0.102630, + 0.077496, + 0.060886, + 0.077530, + 0.077496, + 0.083512, + 0.066205, + 0.060886, + 0.011723, + 0.013250, + 0.048094, + 0.022321, + 0.107912, + 0.077530, + 0.022321, + 0.048094, + 0.066205, + 0.107912, + 0.048094, + 0.013250, + 0.077530, + 0.060886, + 0.011723, + 0.022321, + 0.387790, + 0.520087, + 0.494225, + 0.226848, + 0.226848, + 0.494225, + 0.243816, + 0.133775, + 0.418447, + 0.371115, + 0.212428, + 0.276984, + 0.276984, + 0.212428, + 0.124352, + 0.165882, + 0.371115, + 0.387790, + 0.226848, + 0.212428, + 0.212428, + 0.226848, + 0.133775, + 0.124352, + 0.520087, + 0.418447, + 0.276984, + 0.494225, + 0.276984, + 0.165882, + 0.382664, + 0.483353, + 0.390460, + 0.483353, + 0.382664, + 0.298215, + 0.165882, + 0.243816, + 0.298215, + 0.382664, + 0.243816, + 0.494225, + 0.390460, + 0.298215, + 0.494225, + 0.276984, + 0.483353, + 0.390460; + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000,-1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 1.000000;; + } // End of Armature_Bone skin weights + SkinWeights { + "Armature_Bone_004"; + 172; + 4, + 5, + 6, + 7, + 9, + 10, + 13, + 14, + 17, + 18, + 20, + 23, + 24, + 25, + 26, + 27, + 28, + 29, + 30, + 31, + 32, + 33, + 34, + 35, + 36, + 37, + 38, + 39, + 40, + 41, + 42, + 43, + 44, + 45, + 46, + 47, + 48, + 49, + 50, + 51, + 52, + 53, + 54, + 55, + 56, + 57, + 58, + 59, + 60, + 61, + 62, + 63, + 64, + 65, + 66, + 67, + 68, + 69, + 70, + 71, + 72, + 73, + 74, + 75, + 76, + 77, + 78, + 79, + 80, + 81, + 82, + 83, + 84, + 85, + 86, + 87, + 88, + 89, + 90, + 91, + 92, + 93, + 94, + 95, + 96, + 97, + 98, + 99, + 100, + 101, + 102, + 103, + 104, + 105, + 106, + 107, + 108, + 109, + 110, + 111, + 112, + 113, + 114, + 115, + 116, + 117, + 118, + 119, + 120, + 121, + 122, + 123, + 124, + 125, + 126, + 127, + 128, + 129, + 130, + 131, + 132, + 133, + 134, + 135, + 216, + 217, + 218, + 219, + 220, + 221, + 222, + 223, + 224, + 225, + 226, + 227, + 228, + 229, + 230, + 231, + 232, + 233, + 234, + 235, + 236, + 237, + 238, + 239, + 240, + 241, + 242, + 243, + 244, + 245, + 246, + 247, + 248, + 249, + 250, + 251, + 252, + 253, + 254, + 255, + 256, + 257, + 258, + 259, + 260, + 261, + 262, + 263; + 0.047982, + 0.075546, + 0.082326, + 0.053045, + 0.055496, + 0.112532, + 0.112532, + 0.075546, + 0.075546, + 0.047982, + 0.055496, + 0.047982, + 0.122575, + 0.186448, + 0.245593, + 0.210507, + 0.112532, + 0.055496, + 0.059905, + 0.123986, + 0.055496, + 0.047982, + 0.053045, + 0.059905, + 0.075546, + 0.112532, + 0.123986, + 0.082326, + 0.245593, + 0.393551, + 0.394730, + 0.303906, + 0.427903, + 0.130157, + 0.210403, + 0.393551, + 0.130157, + 0.122575, + 0.210507, + 0.210403, + 0.186448, + 0.427903, + 0.393551, + 0.245593, + 0.280416, + 0.279610, + 0.692449, + 0.678135, + 0.210507, + 0.245593, + 0.303906, + 0.279610, + 0.393551, + 0.210403, + 0.280416, + 0.394730, + 0.210403, + 0.210507, + 0.279610, + 0.280416, + 0.678135, + 0.692449, + 0.672937, + 0.755223, + 0.303906, + 0.394730, + 0.755223, + 0.672937, + 0.279610, + 0.303906, + 0.672937, + 0.692449, + 0.394730, + 0.280416, + 0.678135, + 0.755223, + 0.053045, + 0.082326, + 0.125519, + 0.075862, + 0.075862, + 0.125519, + 0.186448, + 0.122575, + 0.123986, + 0.059905, + 0.083109, + 0.210006, + 0.210006, + 0.083109, + 0.130157, + 0.427903, + 0.059905, + 0.053045, + 0.075862, + 0.083109, + 0.083109, + 0.075862, + 0.122575, + 0.130157, + 0.082326, + 0.123986, + 0.210006, + 0.125519, + 0.210006, + 0.427903, + 0.359212, + 0.273279, + 0.346964, + 0.273279, + 0.359212, + 0.442846, + 0.427903, + 0.186448, + 0.442846, + 0.359212, + 0.186448, + 0.125519, + 0.346964, + 0.442846, + 0.125519, + 0.210006, + 0.273279, + 0.346964, + 0.771594, + 0.764459, + 0.773438, + 0.773890, + 0.764459, + 0.781066, + 0.779591, + 0.773438, + 0.781066, + 0.776433, + 0.776638, + 0.779591, + 0.776433, + 0.771594, + 0.773890, + 0.776638, + 0.773890, + 0.773438, + 0.779591, + 0.776638, + 0.776433, + 0.781066, + 0.764459, + 0.771594, + 0.532908, + 0.525944, + 0.550797, + 0.540369, + 0.525944, + 0.526921, + 0.539430, + 0.550797, + 0.526921, + 0.532411, + 0.537403, + 0.539430, + 0.532411, + 0.532908, + 0.540369, + 0.537403, + 0.540369, + 0.550797, + 0.539430, + 0.537403, + 0.532411, + 0.526921, + 0.525944, + 0.532908; + 1.000000, 0.000000, 0.000000, 0.000000, + 0.000000, 0.000000,-1.000000, 0.000000, + 0.000000, 1.000000, 0.000000, 0.000000, + 0.000000,-2.000000, 0.000000, 1.000000;; + } // End of Armature_Bone_004 skin weights + } // End of Cube mesh + } // End of Cube + } // End of Armature +} // End of Root +AnimationSet Global { + Animation { + {Armature} + AnimationKey { // Rotation + 0; + 31; + 0;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 1;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 2;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 3;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 4;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 5;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 6;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 7;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 8;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 9;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 10;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 11;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 12;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 13;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 14;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 15;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 16;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 17;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 18;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 19;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 20;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 21;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 22;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 23;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 24;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 25;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 26;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 27;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 28;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 29;4;-0.000000, 0.000000, 0.000000, 1.000000;;, + 30;4;-0.000000, 0.000000, 0.000000, 1.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 5.000000, 5.000000, 5.000000;;, + 1;3; 5.000000, 5.000000, 5.000000;;, + 2;3; 5.000000, 5.000000, 5.000000;;, + 3;3; 5.000000, 5.000000, 5.000000;;, + 4;3; 5.000000, 5.000000, 5.000000;;, + 5;3; 5.000000, 5.000000, 5.000000;;, + 6;3; 5.000000, 5.000000, 5.000000;;, + 7;3; 5.000000, 5.000000, 5.000000;;, + 8;3; 5.000000, 5.000000, 5.000000;;, + 9;3; 5.000000, 5.000000, 5.000000;;, + 10;3; 5.000000, 5.000000, 5.000000;;, + 11;3; 5.000000, 5.000000, 5.000000;;, + 12;3; 5.000000, 5.000000, 5.000000;;, + 13;3; 5.000000, 5.000000, 5.000000;;, + 14;3; 5.000000, 5.000000, 5.000000;;, + 15;3; 5.000000, 5.000000, 5.000000;;, + 16;3; 5.000000, 5.000000, 5.000000;;, + 17;3; 5.000000, 5.000000, 5.000000;;, + 18;3; 5.000000, 5.000000, 5.000000;;, + 19;3; 5.000000, 5.000000, 5.000000;;, + 20;3; 5.000000, 5.000000, 5.000000;;, + 21;3; 5.000000, 5.000000, 5.000000;;, + 22;3; 5.000000, 5.000000, 5.000000;;, + 23;3; 5.000000, 5.000000, 5.000000;;, + 24;3; 5.000000, 5.000000, 5.000000;;, + 25;3; 5.000000, 5.000000, 5.000000;;, + 26;3; 5.000000, 5.000000, 5.000000;;, + 27;3; 5.000000, 5.000000, 5.000000;;, + 28;3; 5.000000, 5.000000, 5.000000;;, + 29;3; 5.000000, 5.000000, 5.000000;;, + 30;3; 5.000000, 5.000000, 5.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.000000,-5.000000;;, + 1;3; 0.000000, 0.000000,-5.000000;;, + 2;3; 0.000000, 0.000000,-5.000000;;, + 3;3; 0.000000, 0.000000,-5.000000;;, + 4;3; 0.000000, 0.000000,-5.000000;;, + 5;3; 0.000000, 0.000000,-5.000000;;, + 6;3; 0.000000, 0.000000,-5.000000;;, + 7;3; 0.000000, 0.000000,-5.000000;;, + 8;3; 0.000000, 0.000000,-5.000000;;, + 9;3; 0.000000, 0.000000,-5.000000;;, + 10;3; 0.000000, 0.000000,-5.000000;;, + 11;3; 0.000000, 0.000000,-5.000000;;, + 12;3; 0.000000, 0.000000,-5.000000;;, + 13;3; 0.000000, 0.000000,-5.000000;;, + 14;3; 0.000000, 0.000000,-5.000000;;, + 15;3; 0.000000, 0.000000,-5.000000;;, + 16;3; 0.000000, 0.000000,-5.000000;;, + 17;3; 0.000000, 0.000000,-5.000000;;, + 18;3; 0.000000, 0.000000,-5.000000;;, + 19;3; 0.000000, 0.000000,-5.000000;;, + 20;3; 0.000000, 0.000000,-5.000000;;, + 21;3; 0.000000, 0.000000,-5.000000;;, + 22;3; 0.000000, 0.000000,-5.000000;;, + 23;3; 0.000000, 0.000000,-5.000000;;, + 24;3; 0.000000, 0.000000,-5.000000;;, + 25;3; 0.000000, 0.000000,-5.000000;;, + 26;3; 0.000000, 0.000000,-5.000000;;, + 27;3; 0.000000, 0.000000,-5.000000;;, + 28;3; 0.000000, 0.000000,-5.000000;;, + 29;3; 0.000000, 0.000000,-5.000000;;, + 30;3; 0.000000, 0.000000,-5.000000;;; + } + } + Animation { + {Armature_Bone} + AnimationKey { // Rotation + 0; + 31; + 0;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 1;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 2;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 3;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 4;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 5;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 6;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 7;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 8;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 9;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 10;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 11;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 12;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 13;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 14;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 15;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 16;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 17;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 18;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 19;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 20;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 21;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 22;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 23;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 24;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 25;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 26;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 27;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 28;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 29;4;-0.707107, 0.707107, 0.000000, 0.000000;;, + 30;4;-0.707107, 0.707107, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.000000, 0.000000;;, + 1;3; 0.000000, 0.000000, 0.000000;;, + 2;3; 0.000000, 0.000000, 0.000000;;, + 3;3; 0.000000, 0.000000, 0.000000;;, + 4;3; 0.000000, 0.000000, 0.000000;;, + 5;3; 0.000000, 0.000000, 0.000000;;, + 6;3; 0.000000, 0.000000, 0.000000;;, + 7;3; 0.000000, 0.000000, 0.000000;;, + 8;3; 0.000000, 0.000000, 0.000000;;, + 9;3; 0.000000, 0.000000, 0.000000;;, + 10;3; 0.000000, 0.000000, 0.000000;;, + 11;3; 0.000000, 0.000000, 0.000000;;, + 12;3; 0.000000, 0.000000, 0.000000;;, + 13;3; 0.000000, 0.000000, 0.000000;;, + 14;3; 0.000000, 0.000000, 0.000000;;, + 15;3; 0.000000, 0.000000, 0.000000;;, + 16;3; 0.000000, 0.000000, 0.000000;;, + 17;3; 0.000000, 0.000000, 0.000000;;, + 18;3; 0.000000, 0.000000, 0.000000;;, + 19;3; 0.000000, 0.000000, 0.000000;;, + 20;3; 0.000000, 0.000000, 0.000000;;, + 21;3; 0.000000, 0.000000, 0.000000;;, + 22;3; 0.000000, 0.000000, 0.000000;;, + 23;3; 0.000000, 0.000000, 0.000000;;, + 24;3; 0.000000, 0.000000, 0.000000;;, + 25;3; 0.000000, 0.000000, 0.000000;;, + 26;3; 0.000000, 0.000000, 0.000000;;, + 27;3; 0.000000, 0.000000, 0.000000;;, + 28;3; 0.000000, 0.000000, 0.000000;;, + 29;3; 0.000000, 0.000000, 0.000000;;, + 30;3; 0.000000, 0.000000, 0.000000;;; + } + } + Animation { + {Armature_Bone_001} + AnimationKey { // Rotation + 0; + 31; + 0;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 1;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 2;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 3;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 4;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 5;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 6;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 7;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 8;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 9;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 10;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 11;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 12;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 13;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 14;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 15;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 16;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 17;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 18;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 19;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 20;4;-0.998539, 0.054035, 0.000000,-0.000000;;, + 21;4;-0.996147, 0.053932, 0.002355, 0.043499;;, + 22;4;-0.998539, 0.054035, 0.000000, 0.000000;;, + 23;4;-0.997589, 0.053983,-0.002357,-0.043556;;, + 24;4;-0.998539, 0.054035, 0.000000, 0.000000;;, + 25;4;-0.996639, 0.053932, 0.003045, 0.056265;;, + 26;4;-0.994740, 0.053829, 0.004709, 0.087028;;, + 27;4;-0.996147, 0.053932, 0.002355, 0.043519;;, + 28;4;-0.998539, 0.054035, 0.000000, 0.000000;;, + 29;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 30;4;-1.000000, 0.000000, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 2.000000, 0.000000;;, + 1;3; 0.000000, 2.000000, 0.000000;;, + 2;3; 0.000000, 2.000000, 0.000000;;, + 3;3; 0.000000, 2.000000, 0.000000;;, + 4;3; 0.000000, 2.000000, 0.000000;;, + 5;3; 0.000000, 2.000000, 0.000000;;, + 6;3; 0.000000, 2.000000, 0.000000;;, + 7;3; 0.000000, 2.000000, 0.000000;;, + 8;3; 0.000000, 2.000000, 0.000000;;, + 9;3; 0.000000, 2.000000, 0.000000;;, + 10;3; 0.000000, 2.000000, 0.000000;;, + 11;3; 0.000000, 2.000000, 0.000000;;, + 12;3; 0.000000, 2.000000, 0.000000;;, + 13;3; 0.000000, 2.000000, 0.000000;;, + 14;3; 0.000000, 2.000000, 0.000000;;, + 15;3; 0.000000, 2.000000, 0.000000;;, + 16;3; 0.000000, 2.000000, 0.000000;;, + 17;3; 0.000000, 2.000000, 0.000000;;, + 18;3; 0.000000, 2.000000, 0.000000;;, + 19;3; 0.000000, 2.000000, 0.000000;;, + 20;3; 0.000000, 2.000000, 0.000000;;, + 21;3; 0.000000, 2.000000, 0.000000;;, + 22;3; 0.000000, 2.000000, 0.000000;;, + 23;3; 0.000000, 2.000000, 0.000000;;, + 24;3; 0.000000, 2.000000, 0.000000;;, + 25;3; 0.000000, 2.000000, 0.000000;;, + 26;3; 0.000000, 2.000000, 0.000000;;, + 27;3; 0.000000, 2.000000, 0.000000;;, + 28;3; 0.000000, 2.000000, 0.000000;;, + 29;3; 0.000000, 2.000000, 0.000000;;, + 30;3; 0.000000, 2.000000, 0.000000;;; + } + } + Animation { + {Armature_Bone_002} + AnimationKey { // Rotation + 0; + 31; + 0;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 1;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 2;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 3;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 4;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 5;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 6;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 7;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 8;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 9;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 10;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 11;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 12;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 13;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 14;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 15;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 16;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 17;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 18;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 19;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 20;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 21;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 22;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 23;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 24;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 25;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 26;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 27;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 28;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 29;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 30;4;-1.000000, 0.000000, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.300000, 0.000000;;, + 1;3; 0.000000, 0.300000, 0.000000;;, + 2;3; 0.000000, 0.300000, 0.000000;;, + 3;3; 0.000000, 0.300000, 0.000000;;, + 4;3; 0.000000, 0.300000, 0.000000;;, + 5;3; 0.000000, 0.300000, 0.000000;;, + 6;3; 0.000000, 0.300000, 0.000000;;, + 7;3; 0.000000, 0.300000, 0.000000;;, + 8;3; 0.000000, 0.300000, 0.000000;;, + 9;3; 0.000000, 0.300000, 0.000000;;, + 10;3; 0.000000, 0.300000, 0.000000;;, + 11;3; 0.000000, 0.300000, 0.000000;;, + 12;3; 0.000000, 0.300000, 0.000000;;, + 13;3; 0.000000, 0.300000, 0.000000;;, + 14;3; 0.000000, 0.300000, 0.000000;;, + 15;3; 0.000000, 0.300000, 0.000000;;, + 16;3; 0.000000, 0.300000, 0.000000;;, + 17;3; 0.000000, 0.300000, 0.000000;;, + 18;3; 0.000000, 0.300000, 0.000000;;, + 19;3; 0.000000, 0.300000, 0.000000;;, + 20;3; 0.000000, 0.300000, 0.000000;;, + 21;3;-0.000000, 0.300000,-0.000000;;, + 22;3;-0.000000, 0.300000, 0.000000;;, + 23;3;-0.000000, 0.300000, 0.000000;;, + 24;3;-0.000000, 0.300000, 0.000000;;, + 25;3;-0.000000, 0.300000,-0.000000;;, + 26;3;-0.000000, 0.300000, 0.000000;;, + 27;3;-0.000000, 0.300000,-0.000000;;, + 28;3; 0.000000, 0.300000, 0.000000;;, + 29;3; 0.000000, 0.300000, 0.000000;;, + 30;3; 0.000000, 0.300000, 0.000000;;; + } + } + Animation { + {Armature_Bone_003} + AnimationKey { // Rotation + 0; + 31; + 0;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 1;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 2;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 3;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 4;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 5;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 6;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 7;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 8;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 9;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 10;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 11;4;-0.998097,-0.000000, 0.000000,-0.043583;;, + 12;4;-0.996195,-0.000000, 0.000000,-0.087156;;, + 13;4;-0.998097,-0.000000, 0.000000,-0.056342;;, + 14;4;-1.000000,-0.000000,-0.000000, 0.000000;;, + 15;4;-0.998097,-0.000000,-0.000000, 0.056342;;, + 16;4;-0.996195,-0.000000,-0.000000, 0.087156;;, + 17;4;-0.998097,-0.000000,-0.000000, 0.043583;;, + 18;4;-1.000000,-0.000000, 0.000000, 0.000000;;, + 19;4;-1.000000,-0.000000, 0.000000, 0.000000;;, + 20;4;-0.996195, 0.087156, 0.000000, 0.000000;;, + 21;4;-0.996434, 0.081668, 0.000000, 0.000000;;, + 22;4;-0.996936, 0.070172, 0.000000, 0.000000;;, + 23;4;-0.997535, 0.056459, 0.000000, 0.000000;;, + 24;4;-0.998149, 0.042383, 0.000000, 0.000000;;, + 25;4;-0.998729, 0.029106, 0.000000, 0.000000;;, + 26;4;-0.999236, 0.017493, 0.000000, 0.000000;;, + 27;4;-0.999638, 0.008289, 0.000000, 0.000000;;, + 28;4;-0.999904, 0.002208, 0.000000, 0.000000;;, + 29;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 30;4;-1.000000, 0.000000, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.300000, 0.000000;;, + 1;3; 0.000000, 0.300000, 0.000000;;, + 2;3; 0.000000, 0.300000, 0.000000;;, + 3;3; 0.000000, 0.300000, 0.000000;;, + 4;3; 0.000000, 0.300000, 0.000000;;, + 5;3; 0.000000, 0.300000, 0.000000;;, + 6;3; 0.000000, 0.300000, 0.000000;;, + 7;3; 0.000000, 0.300000, 0.000000;;, + 8;3; 0.000000, 0.300000, 0.000000;;, + 9;3; 0.000000, 0.300000, 0.000000;;, + 10;3; 0.000000, 0.300000, 0.000000;;, + 11;3; 0.000000, 0.300000, 0.000000;;, + 12;3; 0.000000, 0.300000, 0.000000;;, + 13;3; 0.000000, 0.300000, 0.000000;;, + 14;3; 0.000000, 0.300000, 0.000000;;, + 15;3; 0.000000, 0.300000, 0.000000;;, + 16;3; 0.000000, 0.300000, 0.000000;;, + 17;3; 0.000000, 0.300000, 0.000000;;, + 18;3; 0.000000, 0.300000, 0.000000;;, + 19;3; 0.000000, 0.300000, 0.000000;;, + 20;3; 0.000000, 0.300000, 0.000000;;, + 21;3;-0.000000, 0.300000,-0.000000;;, + 22;3;-0.000000, 0.300000,-0.000000;;, + 23;3; 0.000000, 0.300000, 0.000000;;, + 24;3;-0.000000, 0.300000,-0.000000;;, + 25;3; 0.000000, 0.300000,-0.000000;;, + 26;3;-0.000000, 0.300000,-0.000000;;, + 27;3;-0.000000, 0.300000,-0.000000;;, + 28;3;-0.000000, 0.300000, 0.000000;;, + 29;3; 0.000000, 0.300000, 0.000000;;, + 30;3; 0.000000, 0.300000, 0.000000;;; + } + } + Animation { + {Armature_Bone_004} + AnimationKey { // Rotation + 0; + 31; + 0;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 1;4;-0.999524, 0.021812, 0.000000,-0.000000;;, + 2;4;-0.999048, 0.043619, 0.000000,-0.000000;;, + 3;4;-0.999524, 0.028196, 0.000000,-0.000000;;, + 4;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 5;4;-0.999524,-0.028196,-0.000000, 0.000000;;, + 6;4;-0.999048,-0.043619,-0.000000, 0.000000;;, + 7;4;-0.999524,-0.021810,-0.000000, 0.000000;;, + 8;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 9;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 10;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 11;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 12;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 13;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 14;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 15;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 16;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 17;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 18;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 19;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 20;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 21;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 22;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 23;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 24;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 25;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 26;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 27;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 28;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 29;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 30;4;-1.000000, 0.000000, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.400000, 0.000000;;, + 1;3; 0.000000, 0.400000, 0.000000;;, + 2;3; 0.000000, 0.400000, 0.000000;;, + 3;3; 0.000000, 0.400000, 0.000000;;, + 4;3; 0.000000, 0.400000, 0.000000;;, + 5;3; 0.000000, 0.400000, 0.000000;;, + 6;3; 0.000000, 0.400000, 0.000000;;, + 7;3; 0.000000, 0.400000, 0.000000;;, + 8;3; 0.000000, 0.400000, 0.000000;;, + 9;3; 0.000000, 0.400000, 0.000000;;, + 10;3; 0.000000, 0.400000, 0.000000;;, + 11;3; 0.000000, 0.400000,-0.000000;;, + 12;3;-0.000000, 0.400000, 0.000000;;, + 13;3; 0.000000, 0.400000, 0.000000;;, + 14;3;-0.000000, 0.400000, 0.000000;;, + 15;3;-0.000000, 0.400000, 0.000000;;, + 16;3; 0.000000, 0.400000, 0.000000;;, + 17;3;-0.000000, 0.400000,-0.000000;;, + 18;3;-0.000000, 0.400000,-0.000000;;, + 19;3;-0.000000, 0.400000,-0.000000;;, + 20;3; 0.000000, 0.400000,-0.000000;;, + 21;3; 0.000000, 0.400000, 0.000000;;, + 22;3;-0.000000, 0.400000,-0.000000;;, + 23;3;-0.000000, 0.400000,-0.000000;;, + 24;3;-0.000000, 0.400000,-0.000000;;, + 25;3; 0.000000, 0.400000, 0.000000;;, + 26;3;-0.000000, 0.400000, 0.000000;;, + 27;3;-0.000000, 0.400000, 0.000000;;, + 28;3; 0.000000, 0.400000, 0.000000;;, + 29;3; 0.000000, 0.400000, 0.000000;;, + 30;3; 0.000000, 0.400000, 0.000000;;; + } + } + Animation { + {Cube} + AnimationKey { // Rotation + 0; + 31; + 0;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 1;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 2;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 3;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 4;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 5;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 6;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 7;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 8;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 9;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 10;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 11;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 12;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 13;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 14;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 15;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 16;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 17;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 18;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 19;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 20;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 21;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 22;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 23;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 24;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 25;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 26;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 27;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 28;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 29;4;-1.000000, 0.000000, 0.000000, 0.000000;;, + 30;4;-1.000000, 0.000000, 0.000000, 0.000000;;; + } + AnimationKey { // Scale + 1; + 31; + 0;3; 1.000000, 1.000000, 1.000000;;, + 1;3; 1.000000, 1.000000, 1.000000;;, + 2;3; 1.000000, 1.000000, 1.000000;;, + 3;3; 1.000000, 1.000000, 1.000000;;, + 4;3; 1.000000, 1.000000, 1.000000;;, + 5;3; 1.000000, 1.000000, 1.000000;;, + 6;3; 1.000000, 1.000000, 1.000000;;, + 7;3; 1.000000, 1.000000, 1.000000;;, + 8;3; 1.000000, 1.000000, 1.000000;;, + 9;3; 1.000000, 1.000000, 1.000000;;, + 10;3; 1.000000, 1.000000, 1.000000;;, + 11;3; 1.000000, 1.000000, 1.000000;;, + 12;3; 1.000000, 1.000000, 1.000000;;, + 13;3; 1.000000, 1.000000, 1.000000;;, + 14;3; 1.000000, 1.000000, 1.000000;;, + 15;3; 1.000000, 1.000000, 1.000000;;, + 16;3; 1.000000, 1.000000, 1.000000;;, + 17;3; 1.000000, 1.000000, 1.000000;;, + 18;3; 1.000000, 1.000000, 1.000000;;, + 19;3; 1.000000, 1.000000, 1.000000;;, + 20;3; 1.000000, 1.000000, 1.000000;;, + 21;3; 1.000000, 1.000000, 1.000000;;, + 22;3; 1.000000, 1.000000, 1.000000;;, + 23;3; 1.000000, 1.000000, 1.000000;;, + 24;3; 1.000000, 1.000000, 1.000000;;, + 25;3; 1.000000, 1.000000, 1.000000;;, + 26;3; 1.000000, 1.000000, 1.000000;;, + 27;3; 1.000000, 1.000000, 1.000000;;, + 28;3; 1.000000, 1.000000, 1.000000;;, + 29;3; 1.000000, 1.000000, 1.000000;;, + 30;3; 1.000000, 1.000000, 1.000000;;; + } + AnimationKey { // Position + 2; + 31; + 0;3; 0.000000, 0.000000, 1.000000;;, + 1;3; 0.000000, 0.000000, 1.000000;;, + 2;3; 0.000000, 0.000000, 1.000000;;, + 3;3; 0.000000, 0.000000, 1.000000;;, + 4;3; 0.000000, 0.000000, 1.000000;;, + 5;3; 0.000000, 0.000000, 1.000000;;, + 6;3; 0.000000, 0.000000, 1.000000;;, + 7;3; 0.000000, 0.000000, 1.000000;;, + 8;3; 0.000000, 0.000000, 1.000000;;, + 9;3; 0.000000, 0.000000, 1.000000;;, + 10;3; 0.000000, 0.000000, 1.000000;;, + 11;3; 0.000000, 0.000000, 1.000000;;, + 12;3; 0.000000, 0.000000, 1.000000;;, + 13;3; 0.000000, 0.000000, 1.000000;;, + 14;3; 0.000000, 0.000000, 1.000000;;, + 15;3; 0.000000, 0.000000, 1.000000;;, + 16;3; 0.000000, 0.000000, 1.000000;;, + 17;3; 0.000000, 0.000000, 1.000000;;, + 18;3; 0.000000, 0.000000, 1.000000;;, + 19;3; 0.000000, 0.000000, 1.000000;;, + 20;3; 0.000000, 0.000000, 1.000000;;, + 21;3; 0.000000, 0.000000, 1.000000;;, + 22;3; 0.000000, 0.000000, 1.000000;;, + 23;3; 0.000000, 0.000000, 1.000000;;, + 24;3; 0.000000, 0.000000, 1.000000;;, + 25;3; 0.000000, 0.000000, 1.000000;;, + 26;3; 0.000000, 0.000000, 1.000000;;, + 27;3; 0.000000, 0.000000, 1.000000;;, + 28;3; 0.000000, 0.000000, 1.000000;;, + 29;3; 0.000000, 0.000000, 1.000000;;, + 30;3; 0.000000, 0.000000, 1.000000;;; + } + } +} // End of AnimationSet Global diff --git a/games/devtest/mods/testentities/selectionbox.lua b/games/devtest/mods/testentities/selectionbox.lua index 8885a2a95..eb8761a2b 100644 --- a/games/devtest/mods/testentities/selectionbox.lua +++ b/games/devtest/mods/testentities/selectionbox.lua @@ -68,7 +68,7 @@ core.register_globalstep(function() hud_ids[pname] = hud_id or player:hud_add({ type = "text", -- See HUD element types position = {x=0.5, y=0.5}, - text = "X", + text = "X", number = 0xFF0000, alignment = {x=0, y=0}, }) diff --git a/games/devtest/mods/testentities/visuals.lua b/games/devtest/mods/testentities/visuals.lua index b61b5e819..6bb1b8282 100644 --- a/games/devtest/mods/testentities/visuals.lua +++ b/games/devtest/mods/testentities/visuals.lua @@ -79,6 +79,20 @@ core.register_entity("testentities:sam", { end, }) +core.register_entity("testentities:lava_flan", { + initial_properties = { + infotext = "Lava Flan (smoke test .x)", + visual = "mesh", + mesh = "testentities_lava_flan.x", + textures = { + "testentities_lava_flan.png" + }, + }, + on_activate = function(self) + self.object:set_animation({x = 0, y = 28}, 15, 0, true) + end, +}) + -- Advanced visual tests -- An entity for testing animated and yaw-modulated sprites diff --git a/games/devtest/mods/testitems/init.lua b/games/devtest/mods/testitems/init.lua index 12da2ad1c..90407109a 100644 --- a/games/devtest/mods/testitems/init.lua +++ b/games/devtest/mods/testitems/init.lua @@ -105,3 +105,68 @@ core.register_craftitem("testitems:telescope_stick", { return itemstack end, }) + + +-- Tree spawners + +local tree_def={ + axiom="Af", + rules_a="TT[&GB][&+GB][&++GB][&+++GB]A", + rules_b="[+GB]fB", + trunk="basenodes:tree", + leaves="basenodes:leaves", + angle=90, + iterations=4, + trunk_type="single", + thin_branches=true, +} + +core.register_craftitem("testitems:tree_spawner", { + description = S("Tree Spawner"), + inventory_image = "testitems_tree_spawner.png", + on_place = function(itemstack, placer, pointed_thing) + if (not pointed_thing or pointed_thing.type ~= "node") then + return + end + core.spawn_tree(pointed_thing.above, tree_def) + end, +}) + +local vmanip_for_trees = {} -- per player +core.register_craftitem("testitems:tree_spawner_vmanip", { + description = S("Tree Spawner using VoxelManip"), + inventory_image = "testitems_tree_spawner_vmanip.png", + on_place = function(itemstack, placer, pointed_thing) + if (not pointed_thing or pointed_thing.type ~= "node" or + not core.is_player(placer)) then + return + end + local name = placer:get_player_name() + local vm = vmanip_for_trees[name] + if not vm then + vm = VoxelManip(vector.add(pointed_thing.above, 20), + vector.subtract(pointed_thing.above, 20)) + vmanip_for_trees[name] = vm + core.chat_send_player(name, + "Tree in new VoxelManip spawned, left click to apply to map, ".. + "or right click to add more trees.") + end + core.spawn_tree_on_vmanip(vm, pointed_thing.above, tree_def) + end, + on_use = function(itemstack, user, pointed_thing) + if not core.is_player(user) then + return + end + local name = user:get_player_name() + local vm = vmanip_for_trees[name] + if vm then + vm:write_to_map() + vmanip_for_trees[name] = nil + core.chat_send_player(name, "VoxelManip written to map.") + end + end, +}) + +core.register_on_leaveplayer(function(player, timed_out) + vmanip_for_trees[player:get_player_name()] = nil +end) diff --git a/games/devtest/mods/testitems/textures/testitems_tree_spawner.png b/games/devtest/mods/testitems/textures/testitems_tree_spawner.png new file mode 100644 index 000000000..aa7430677 Binary files /dev/null and b/games/devtest/mods/testitems/textures/testitems_tree_spawner.png differ diff --git a/games/devtest/mods/testitems/textures/testitems_tree_spawner_vmanip.png b/games/devtest/mods/testitems/textures/testitems_tree_spawner_vmanip.png new file mode 100644 index 000000000..2d8e0311f Binary files /dev/null and b/games/devtest/mods/testitems/textures/testitems_tree_spawner_vmanip.png differ diff --git a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_bottom.png b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_bottom.png index 1a2e1e90e..9318c9454 100644 Binary files a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_bottom.png and b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_bottom.png differ diff --git a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_side.png b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_side.png index 382e2dafa..7701dc9e2 100644 Binary files a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_side.png and b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_side.png differ diff --git a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_top.png b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_top.png index 39ea67b8b..70976ca15 100644 Binary files a/games/devtest/mods/testnodes/textures/testnodes_attachedwr_top.png and b/games/devtest/mods/testnodes/textures/testnodes_attachedwr_top.png differ diff --git a/games/devtest/mods/testnodes/textures/testnodes_sign3d.png b/games/devtest/mods/testnodes/textures/testnodes_sign3d.png index e4ad9479f..d37a0de7e 100644 Binary files a/games/devtest/mods/testnodes/textures/testnodes_sign3d.png and b/games/devtest/mods/testnodes/textures/testnodes_sign3d.png differ diff --git a/games/devtest/mods/testtools/particles.lua b/games/devtest/mods/testtools/particles.lua index 17f4f5c80..da6b6cab9 100644 --- a/games/devtest/mods/testtools/particles.lua +++ b/games/devtest/mods/testtools/particles.lua @@ -1,14 +1,27 @@ +local function spawn_clip_test_particle(pos) + core.add_particle({ + pos = pos, + size = 5, + expirationtime = 10, + texture = { + name = "testtools_particle_clip.png", + blend = "clip", + }, + }) +end + core.register_tool("testtools:particle_spawner", { - description = "Particle Spawner".."\n".. + description = table.concat({ + "Particle Spawner", "Punch: Spawn random test particle", + "Place: Spawn clip test particle", + }, "\n"), inventory_image = "testtools_particle_spawner.png", groups = { testtool = 1, disable_repair = 1 }, on_use = function(itemstack, user, pointed_thing) local pos = core.get_pointed_thing_position(pointed_thing, true) if pos == nil then - if user then - pos = user:get_pos() - end + pos = assert(user):get_pos() end pos = vector.add(pos, {x=0, y=0.5, z=0}) local tex, anim @@ -32,5 +45,12 @@ core.register_tool("testtools:particle_spawner", { glow = math.random(0, 5), }) end, + on_place = function(itemstack, user, pointed_thing) + local pos = assert(core.get_pointed_thing_position(pointed_thing, true)) + spawn_clip_test_particle(pos) + end, + on_secondary_use = function(_, user) + spawn_clip_test_particle(assert(user):get_pos()) + end, }) diff --git a/games/devtest/mods/testtools/textures/testtools_particle_clip.png b/games/devtest/mods/testtools/textures/testtools_particle_clip.png new file mode 100644 index 000000000..773e55e50 Binary files /dev/null and b/games/devtest/mods/testtools/textures/testtools_particle_clip.png differ diff --git a/games/devtest/mods/tiled/init.lua b/games/devtest/mods/tiled/init.lua index 51e1fda21..ea34ea1b1 100644 --- a/games/devtest/mods/tiled/init.lua +++ b/games/devtest/mods/tiled/init.lua @@ -2,37 +2,38 @@ local align_help = "Texture spans over a space of 8×8 nodes" local align_help_n = "Tiles looks the same for every node" core.register_node("tiled:tiled", { - description = "Tiled Node (world-aligned)".."\n"..align_help, - tiles = {{ - name = "tiled_tiled.png", - align_style = "world", - scale = 8, - }}, - groups = {cracky=3}, + description = "Tiled Node (world-aligned)".."\n"..align_help, + tiles = {{ + name = "tiled_tiled.png", + align_style = "world", + scale = 8, + }}, + groups = {cracky=3}, }) core.register_node("tiled:tiled_rooted", { - description = "Tiled 'plantlike_rooted' Node (world-aligned)".."\n".. - "Base node texture spans over a space of 8×8 nodes".."\n".. - "A plantlike thing grows on top", - paramtype = "light", - drawtype = "plantlike_rooted", - tiles = {{ - name = "tiled_tiled.png", - align_style = "world", - scale = 8, - }}, - special_tiles = {"tiled_tiled_node.png"}, - groups = {cracky=3}, + description = + "Tiled 'plantlike_rooted' Node (world-aligned)".."\n".. + "Base node texture spans over a space of 8×8 nodes".."\n".. + "A plantlike thing grows on top", + paramtype = "light", + drawtype = "plantlike_rooted", + tiles = {{ + name = "tiled_tiled.png", + align_style = "world", + scale = 8, + }}, + special_tiles = {"tiled_tiled_node.png"}, + groups = {cracky=3}, }) core.register_node("tiled:tiled_n", { - description = "Tiled Node (node-aligned)".."\n"..align_help_n, - tiles = {{ - name = "tiled_tiled_node.png", - align_style = "node", - }}, - groups = {cracky=3}, + description = "Tiled Node (node-aligned)".."\n"..align_help_n, + tiles = {{ + name = "tiled_tiled_node.png", + align_style = "node", + }}, + groups = {cracky=3}, }) stairs.register_stair_and_slab("tiled_n", "tiled:tiled_n", diff --git a/games/devtest/mods/unittests/color.lua b/games/devtest/mods/unittests/color.lua index 86154445c..116417ed4 100644 --- a/games/devtest/mods/unittests/color.lua +++ b/games/devtest/mods/unittests/color.lua @@ -1,17 +1,17 @@ local function assert_colors_equal(c1, c2) - if type(c1) == "table" and type(c2) == "table" then - assert(c1.r == c2.r and c1.g == c2.g and c1.b == c2.b and c1.a == c2.a) - else - assert(c1 == c2) - end + if type(c1) == "table" and type(c2) == "table" then + assert(c1.r == c2.r and c1.g == c2.g and c1.b == c2.b and c1.a == c2.a) + else + assert(c1 == c2) + end end local function test_color_conversion() - assert_colors_equal(core.colorspec_to_table("#fff"), {r = 255, g = 255, b = 255, a = 255}) - assert_colors_equal(core.colorspec_to_table(0xFF00FF00), {r = 0, g = 255, b = 0, a = 255}) - assert_colors_equal(core.colorspec_to_table("#00000000"), {r = 0, g = 0, b = 0, a = 0}) - assert_colors_equal(core.colorspec_to_table("green"), {r = 0, g = 128, b = 0, a = 255}) - assert_colors_equal(core.colorspec_to_table("gren"), nil) + assert_colors_equal(core.colorspec_to_table("#fff"), {r = 255, g = 255, b = 255, a = 255}) + assert_colors_equal(core.colorspec_to_table(0xFF00FF00), {r = 0, g = 255, b = 0, a = 255}) + assert_colors_equal(core.colorspec_to_table("#00000000"), {r = 0, g = 0, b = 0, a = 0}) + assert_colors_equal(core.colorspec_to_table("green"), {r = 0, g = 128, b = 0, a = 255}) + assert_colors_equal(core.colorspec_to_table("gren"), nil) end unittests.register("test_color_conversion", test_color_conversion) diff --git a/games/devtest/mods/unittests/get_version.lua b/games/devtest/mods/unittests/get_version.lua deleted file mode 100644 index 7ef78257d..000000000 --- a/games/devtest/mods/unittests/get_version.lua +++ /dev/null @@ -1,16 +0,0 @@ - -unittests.register("test_get_version", function() - local version = core.get_version() - assert(type(version) == "table") - assert(type(version.project) == "string") - assert(type(version.string) == "string") - assert(type(version.proto_min) == "number") - assert(type(version.proto_max) == "number") - assert(version.proto_max >= version.proto_min) - assert(type(version.is_dev) == "boolean") - if version.is_dev then - assert(type(version.hash) == "string") - else - assert(version.hash == nil) - end -end) diff --git a/games/devtest/mods/unittests/init.lua b/games/devtest/mods/unittests/init.lua index 724334326..22057f26a 100644 --- a/games/devtest/mods/unittests/init.lua +++ b/games/devtest/mods/unittests/init.lua @@ -12,6 +12,7 @@ unittests.list = {} -- player = false, -- Does test require a player? -- map = false, -- Does test require map access? -- async = false, -- Does the test run asynchronously? (read notes above!) +-- random = false, -- Does the test use math.random directly or indirectly? -- } function unittests.register(name, func, opts) local def = table.copy(opts or {}) @@ -47,8 +48,18 @@ local function await(invoke) return coroutine.yield() end +local function printf(fmt, ...) + print(fmt:format(...)) +end + function unittests.run_one(idx, counters, out_callback, player, pos) local def = unittests.list[idx] + local seed + if def.random then + seed = core.get_us_time() + math.randomseed(seed) + end + if not def.player then player = nil elseif player == nil then @@ -70,8 +81,10 @@ function unittests.run_one(idx, counters, out_callback, player, pos) if not status then core.log("error", err) end - print(string.format("[%s] %s - %dms", - status and "PASS" or "FAIL", def.name, ms_taken)) + printf("[%s] %s - %dms", status and "PASS" or "FAIL", def.name, ms_taken) + if seed and not status then + printf("Random was seeded to %d", seed) + end counters.time = counters.time + ms_taken counters.total = counters.total + 1 if status then @@ -160,11 +173,11 @@ function unittests.run_all() -- Print stats assert(#unittests.list == counters.total) print(string.rep("+", 80)) - print(string.format("Devtest Unit Test Results: %s", - counters.total == counters.passed and "PASSED" or "FAILED")) - print(string.format(" %d / %d failed tests.", - counters.total - counters.passed, counters.total)) - print(string.format(" Testing took %dms total.", counters.time)) + local passed = counters.total == counters.passed + printf("Devtest Unit Test Results: %s", passed and "PASSED" or "FAILED") + printf(" %d / %d failed tests.", + counters.total - counters.passed, counters.total) + printf(" Testing took %dms total.", counters.time) print(string.rep("+", 80)) unittests.on_finished(counters.total == counters.passed) return counters.total == counters.passed @@ -179,7 +192,7 @@ dofile(modpath .. "/crafting.lua") dofile(modpath .. "/itemdescription.lua") dofile(modpath .. "/async_env.lua") dofile(modpath .. "/entity.lua") -dofile(modpath .. "/get_version.lua") +dofile(modpath .. "/version.lua") dofile(modpath .. "/itemstack_equals.lua") dofile(modpath .. "/content_ids.lua") dofile(modpath .. "/metadata.lua") diff --git a/games/devtest/mods/unittests/raycast.lua b/games/devtest/mods/unittests/raycast.lua index 08d6a1120..0c0584530 100644 --- a/games/devtest/mods/unittests/raycast.lua +++ b/games/devtest/mods/unittests/raycast.lua @@ -1,36 +1,103 @@ local function raycast_with_pointabilities(start_pos, end_pos, pointabilities) local ray = core.raycast(start_pos, end_pos, nil, nil, pointabilities) for hit in ray do - if hit.type == "node" then - return hit.under - end + if hit.type == "node" then + return hit.under + end end - return nil + return nil end local function test_raycast_pointabilities(player, pos1) - local pos2 = pos1:offset(0, 0, 1) - local pos3 = pos1:offset(0, 0, 2) + local pos2 = pos1:offset(0, 0, 1) + local pos3 = pos1:offset(0, 0, 2) - local oldnode1 = core.get_node(pos1) - local oldnode2 = core.get_node(pos2) - local oldnode3 = core.get_node(pos3) - core.swap_node(pos1, {name = "air"}) - core.swap_node(pos2, {name = "testnodes:not_pointable"}) - core.swap_node(pos3, {name = "testnodes:pointable"}) + local oldnode1 = core.get_node(pos1) + local oldnode2 = core.get_node(pos2) + local oldnode3 = core.get_node(pos3) + core.swap_node(pos1, {name = "air"}) + core.swap_node(pos2, {name = "testnodes:not_pointable"}) + core.swap_node(pos3, {name = "testnodes:pointable"}) - local p = nil - assert(raycast_with_pointabilities(pos1, pos3, p) == pos3) + local p = nil + assert(raycast_with_pointabilities(pos1, pos3, p) == pos3) - p = core.registered_items["testtools:blocked_pointing_staff"].pointabilities - assert(raycast_with_pointabilities(pos1, pos3, p) == nil) + p = core.registered_items["testtools:blocked_pointing_staff"].pointabilities + assert(raycast_with_pointabilities(pos1, pos3, p) == nil) - p = core.registered_items["testtools:ultimate_pointing_staff"].pointabilities - assert(raycast_with_pointabilities(pos1, pos3, p) == pos2) + p = core.registered_items["testtools:ultimate_pointing_staff"].pointabilities + assert(raycast_with_pointabilities(pos1, pos3, p) == pos2) - core.swap_node(pos1, oldnode1) - core.swap_node(pos2, oldnode2) - core.swap_node(pos3, oldnode3) + core.swap_node(pos1, oldnode1) + core.swap_node(pos2, oldnode2) + core.swap_node(pos3, oldnode3) end unittests.register("test_raycast_pointabilities", test_raycast_pointabilities, {map=true}) + +local function test_raycast_noskip(_, pos) + local function random_point_in_area(min, max) + local extents = max - min + local v = extents:multiply(vector.new( + math.random(), + math.random(), + math.random() + )) + return min + v + end + + -- FIXME a variation of this unit test fails in an edge case. + -- This is because Luanti does not handle perfectly diagonal raycasts correctly: + -- Perfect diagonals collide with neither "outside" face and may thus "pierce" nodes. + -- Enable the following code to reproduce: + if 0 == 1 then + pos = vector.new(6, 32, -3) + math.randomseed(1596190898) + function random_point_in_area(min, max) + return min:combine(max, math.random) + end + end + + local function cuboid_minmax(extent) + return pos:offset(-extent, -extent, -extent), + pos:offset(extent, extent, extent) + end + + -- Carve out a 3x3x3 dirt cuboid in a larger air cuboid + local r = 8 + local min, max = cuboid_minmax(r + 1) + local vm = core.get_voxel_manip(min, max) + local old_data = vm:get_data() + local data = vm:get_data() + local emin, emax = vm:get_emerged_area() + local va = VoxelArea:new({MinEdge = emin, MaxEdge = emax}) + for index in va:iterp(min, max) do + data[index] = core.CONTENT_AIR + end + for index in va:iterp(cuboid_minmax(1)) do + data[index] = core.get_content_id("basenodes:dirt") + end + vm:set_data(data) + vm:write_to_map() + + -- Raycast many times from outside the cuboid + for _ = 1, 100 do + local ray_start + repeat + ray_start = random_point_in_area(cuboid_minmax(r)) + until not ray_start:in_area(cuboid_minmax(1.501)) + -- Pick a random position inside the dirt + local ray_end = random_point_in_area(cuboid_minmax(1.499)) + -- The first pointed thing should have only air "in front" of it, + -- or a dirt node got falsely skipped. + local pt = core.raycast(ray_start, ray_end, false, false):next() + if pt then + assert(core.get_node(pt.above).name == "air") + end + end + + vm:set_data(old_data) + vm:write_to_map() +end + +unittests.register("test_raycast_noskip", test_raycast_noskip, {map = true, random = true}) diff --git a/games/devtest/mods/unittests/version.lua b/games/devtest/mods/unittests/version.lua new file mode 100644 index 000000000..baf4520a4 --- /dev/null +++ b/games/devtest/mods/unittests/version.lua @@ -0,0 +1,40 @@ +unittests.register("test_get_version", function() + local version = core.get_version() + assert(type(version) == "table") + assert(type(version.project) == "string") + assert(type(version.string) == "string") + assert(type(version.proto_min) == "number") + assert(type(version.proto_max) == "number") + assert(version.proto_max >= version.proto_min) + assert(type(version.is_dev) == "boolean") + if version.is_dev then + assert(type(version.hash) == "string") + else + assert(version.hash == nil) + end +end) + +unittests.register("test_protocol_version", function(player) + local info = core.get_player_information(player:get_player_name()) + + local maxver = 0 + for _, v in pairs(core.protocol_versions) do + maxver = math.max(maxver, v) + end + assert(maxver > 0) -- table must contain something valid + + -- If the client is older than a known version then it's pointless. + if info.protocol_version < maxver then + core.log("warning", "test_protocol_version: client is outdated, skipping test!") + return + end + local info_server = core.get_version() + if info.version_string ~= (info_server.hash or info_server.string) then + core.log("warning", "test_protocol_version: client is not the same version. False-positive possible.") + end + + -- The protocol version the client and server agreed on must exist in the table. + local match = table.key_value_swap(core.protocol_versions)[info.protocol_version] + assert(match ~= nil) + print(string.format("client proto matched: %s sent: %s", match, info.version_string)) +end, {player = true}) diff --git a/games/devtest/mods/util_commands/init.lua b/games/devtest/mods/util_commands/init.lua index 8341901a8..a413e7fa7 100644 --- a/games/devtest/mods/util_commands/init.lua +++ b/games/devtest/mods/util_commands/init.lua @@ -234,10 +234,10 @@ core.register_chatcommand("dump_wear_bar", { }) core.register_chatcommand("set_saturation", { - params = "", - description = "Set the saturation for current player.", - func = function(player_name, param) - local saturation = tonumber(param) - core.get_player_by_name(player_name):set_lighting({saturation = saturation }) - end + params = "", + description = "Set the saturation for current player.", + func = function(player_name, param) + local saturation = tonumber(param) + core.get_player_by_name(player_name):set_lighting({saturation = saturation }) + end }) diff --git a/irr/README.md b/irr/README.md index 25fff00e5..ffa9f3693 100644 --- a/irr/README.md +++ b/irr/README.md @@ -36,6 +36,27 @@ We aim to support these platforms: This doesn't mean other platforms don't work or won't be supported, if you find something that doesn't work contributions are welcome. +Compatibility matrix +-------------------- + +Driver (rows) vs Device (columns) + +| | SDL [1] | Linux [2] | OSX [3] | Win32 [4] | +|---------------------------|----------|----------------|------------------|-----------------| +| OpenGL 1.2 (to 2.1) | Works | Works (GLX) | Works (NSOpenGL) | Works (WGL) | +| OpenGL 3.2+ | Works | Testing (GLX) | Not implemented | Testing (WGL) | +| OpenGL ES 2.x | Works | Untested (EGL) | Not implemented | Untested (EGL) | +| WebGL 1 | Untested | Untested (EGL) | Not implemented | Not implemented | +| Null (no graphics output) | Works | Works | Works | Works | + +Notes: + +* [1] `CIrrDeviceSDL`: supports Android, Linux, macOS, Windows +* [2] `CIrrDeviceLinux`: supports Linux +* [3] `CIrrDeviceOSX`: supports macOS +* [4] `CIrrDeviceWin32`: supports Windows + + License ------- diff --git a/irr/include/CIndexBuffer.h b/irr/include/CIndexBuffer.h index 904b0ab9a..ba85d49e6 100644 --- a/irr/include/CIndexBuffer.h +++ b/irr/include/CIndexBuffer.h @@ -24,12 +24,7 @@ class CIndexBuffer final : public IIndexBuffer { public: //! Default constructor for empty buffer - CIndexBuffer() - { -#ifdef _DEBUG - setDebugName("CIndexBuffer"); -#endif - } + CIndexBuffer() {} video::E_INDEX_TYPE getType() const override { diff --git a/irr/include/CMeshBuffer.h b/irr/include/CMeshBuffer.h index 9a6d4426f..b5ed6d2ef 100644 --- a/irr/include/CMeshBuffer.h +++ b/irr/include/CMeshBuffer.h @@ -22,9 +22,6 @@ public: CMeshBuffer() : PrimitiveType(EPT_TRIANGLES) { -#ifdef _DEBUG - setDebugName("CMeshBuffer"); -#endif Vertices = new CVertexBuffer(); Indices = new SIndexBuffer(); } @@ -137,7 +134,7 @@ public: //! Index buffer SIndexBuffer *Indices; //! Bounding box of this meshbuffer. - core::aabbox3d BoundingBox; + core::aabbox3d BoundingBox{{0, 0, 0}}; //! Primitive type used for rendering (triangles, lines, ...) E_PRIMITIVE_TYPE PrimitiveType; }; diff --git a/irr/include/CVertexBuffer.h b/irr/include/CVertexBuffer.h index 4b3f33688..1bface16c 100644 --- a/irr/include/CVertexBuffer.h +++ b/irr/include/CVertexBuffer.h @@ -24,12 +24,7 @@ class CVertexBuffer final : public IVertexBuffer { public: //! Default constructor for empty buffer - CVertexBuffer() - { -#ifdef _DEBUG - setDebugName("CVertexBuffer"); -#endif - } + CVertexBuffer() {} const void *getData() const override { diff --git a/irr/include/EDebugSceneTypes.h b/irr/include/EDebugSceneTypes.h index 29ca8ad0e..2994eca6c 100644 --- a/irr/include/EDebugSceneTypes.h +++ b/irr/include/EDebugSceneTypes.h @@ -34,7 +34,7 @@ enum E_DEBUG_SCENE_TYPE EDS_BBOX_ALL = EDS_BBOX | EDS_BBOX_BUFFERS, //! Show all debug infos - EDS_FULL = 0xffffffff + EDS_FULL = 0xffff }; } // end namespace scene diff --git a/irr/include/EDriverFeatures.h b/irr/include/EDriverFeatures.h index bde2c7698..0a35161cf 100644 --- a/irr/include/EDriverFeatures.h +++ b/irr/include/EDriverFeatures.h @@ -129,6 +129,9 @@ enum E_VIDEO_DRIVER_FEATURE //! Support for clamping vertices beyond far-plane to depth instead of capping them. EVDF_DEPTH_CLAMP, + //! Support for multisample textures. + EVDF_TEXTURE_MULTISAMPLE, + //! Only used for counting the elements of this enum EVDF_COUNT }; diff --git a/irr/include/EShaderTypes.h b/irr/include/EShaderTypes.h deleted file mode 100644 index 8d0b3a5e1..000000000 --- a/irr/include/EShaderTypes.h +++ /dev/null @@ -1,85 +0,0 @@ -#pragma once - -#include "irrTypes.h" - -namespace irr -{ -namespace video -{ - -//! Compile target enumeration for the addHighLevelShaderMaterial() method. -enum E_VERTEX_SHADER_TYPE -{ - EVST_VS_1_1 = 0, - EVST_VS_2_0, - EVST_VS_2_a, - EVST_VS_3_0, - EVST_VS_4_0, - EVST_VS_4_1, - EVST_VS_5_0, - - //! This is not a type, but a value indicating how much types there are. - EVST_COUNT -}; - -//! Names for all vertex shader types, each entry corresponds to a E_VERTEX_SHADER_TYPE entry. -const c8 *const VERTEX_SHADER_TYPE_NAMES[] = { - "vs_1_1", - "vs_2_0", - "vs_2_a", - "vs_3_0", - "vs_4_0", - "vs_4_1", - "vs_5_0", - 0}; - -//! Compile target enumeration for the addHighLevelShaderMaterial() method. -enum E_PIXEL_SHADER_TYPE -{ - EPST_PS_1_1 = 0, - EPST_PS_1_2, - EPST_PS_1_3, - EPST_PS_1_4, - EPST_PS_2_0, - EPST_PS_2_a, - EPST_PS_2_b, - EPST_PS_3_0, - EPST_PS_4_0, - EPST_PS_4_1, - EPST_PS_5_0, - - //! This is not a type, but a value indicating how much types there are. - EPST_COUNT -}; - -//! Names for all pixel shader types, each entry corresponds to a E_PIXEL_SHADER_TYPE entry. -const c8 *const PIXEL_SHADER_TYPE_NAMES[] = { - "ps_1_1", - "ps_1_2", - "ps_1_3", - "ps_1_4", - "ps_2_0", - "ps_2_a", - "ps_2_b", - "ps_3_0", - "ps_4_0", - "ps_4_1", - "ps_5_0", - 0}; - -//! Enum for supported geometry shader types -enum E_GEOMETRY_SHADER_TYPE -{ - EGST_GS_4_0 = 0, - - //! This is not a type, but a value indicating how much types there are. - EGST_COUNT -}; - -//! String names for supported geometry shader types -const c8 *const GEOMETRY_SHADER_TYPE_NAMES[] = { - "gs_4_0", - 0}; - -} // end namespace video -} // end namespace irr diff --git a/irr/include/IBoneSceneNode.h b/irr/include/IBoneSceneNode.h index 668289271..eef55f6e0 100644 --- a/irr/include/IBoneSceneNode.h +++ b/irr/include/IBoneSceneNode.h @@ -48,7 +48,7 @@ const c8 *const BoneAnimationModeNames[] = { }; //! Interface for bones used for skeletal animation. -/** Used with ISkinnedMesh and IAnimatedMeshSceneNode. */ +/** Used with SkinnedMesh and IAnimatedMeshSceneNode. */ class IBoneSceneNode : public ISceneNode { public: diff --git a/irr/include/IGPUProgrammingServices.h b/irr/include/IGPUProgrammingServices.h index de24a912d..ccd134209 100644 --- a/irr/include/IGPUProgrammingServices.h +++ b/irr/include/IGPUProgrammingServices.h @@ -4,7 +4,6 @@ #pragma once -#include "EShaderTypes.h" #include "EMaterialTypes.h" #include "EPrimitiveTypes.h" #include "path.h" @@ -31,26 +30,15 @@ public: virtual ~IGPUProgrammingServices() {} //! Adds a new high-level shading material renderer to the VideoDriver. - /** Currently only HLSL/D3D9 and GLSL/OpenGL are supported. + /** \param vertexShaderProgram String containing the source of the vertex shader program. This can be 0 if no vertex program shall be used. - \param vertexShaderEntryPointName Name of the entry function of the - vertexShaderProgram (p.e. "main") - \param vsCompileTarget Vertex shader version the high level shader - shall be compiled to. \param pixelShaderProgram String containing the source of the pixel shader program. This can be 0 if no pixel shader shall be used. - \param pixelShaderEntryPointName Entry name of the function of the - pixelShaderProgram (p.e. "main") - \param psCompileTarget Pixel shader version the high level shader - shall be compiled to. \param geometryShaderProgram String containing the source of the geometry shader program. This can be 0 if no geometry shader shall be used. - \param geometryShaderEntryPointName Entry name of the function of the - geometryShaderProgram (p.e. "main") - \param gsCompileTarget Geometry shader version the high level shader - shall be compiled to. + \param shaderName Name of the shader for debug purposes \param inType Type of vertices passed to geometry shader \param outType Type of vertices created by geometry shader \param verticesOut Maximal number of vertices created by geometry @@ -73,108 +61,43 @@ public: error log and can be caught with a custom event receiver. */ virtual s32 addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) = 0; //! convenience function for use without geometry shaders s32 addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName = "main", - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - const c8 *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = "main", - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - IShaderConstantSetCallBack *callback = 0, + const c8 *pixelShaderProgram = nullptr, + const c8 *shaderName = nullptr, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) { return addHighLevelShaderMaterial( - vertexShaderProgram, vertexShaderEntryPointName, - vsCompileTarget, pixelShaderProgram, - pixelShaderEntryPointName, psCompileTarget, - 0, "main", EGST_GS_4_0, + vertexShaderProgram, pixelShaderProgram, + nullptr, shaderName, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, callback, baseMaterial, userData); } - //! convenience function for use with many defaults, without geometry shader - /** All shader names are set to "main" and compile targets are shader - type 1.1. - */ - s32 addHighLevelShaderMaterial( - const c8 *vertexShaderProgram, - const c8 *pixelShaderProgram = 0, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterial( - vertexShaderProgram, "main", - EVST_VS_1_1, pixelShaderProgram, - "main", EPST_PS_1_1, - 0, "main", EGST_GS_4_0, - scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, - callback, baseMaterial, userData); - } - - //! convenience function for use with many defaults, with geometry shader - /** All shader names are set to "main" and compile targets are shader - type 1.1 and geometry shader 4.0. - */ - s32 addHighLevelShaderMaterial( - const c8 *vertexShaderProgram, - const c8 *pixelShaderProgram = 0, - const c8 *geometryShaderProgram = 0, - scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, - scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, - u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterial( - vertexShaderProgram, "main", - EVST_VS_1_1, pixelShaderProgram, - "main", EPST_PS_1_1, - geometryShaderProgram, "main", EGST_GS_4_0, - inType, outType, verticesOut, - callback, baseMaterial, userData); - } - //! Like addHighLevelShaderMaterial(), but loads from files. /** \param vertexShaderProgramFileName Text file containing the source of the vertex shader program. Set to empty string if no vertex shader shall be created. - \param vertexShaderEntryPointName Name of the entry function of the - vertexShaderProgram (p.e. "main") - \param vsCompileTarget Vertex shader version the high level shader - shall be compiled to. \param pixelShaderProgramFileName Text file containing the source of the pixel shader program. Set to empty string if no pixel shader shall be created. - \param pixelShaderEntryPointName Entry name of the function of the - pixelShaderProgram (p.e. "main") - \param psCompileTarget Pixel shader version the high level shader - shall be compiled to. \param geometryShaderProgramFileName Name of the source of the geometry shader program. Set to empty string if no geometry shader shall be created. - \param geometryShaderEntryPointName Entry name of the function of the - geometryShaderProgram (p.e. "main") - \param gsCompileTarget Geometry shader version the high level shader - shall be compiled to. + \param shaderName Name of the shader for debug purposes \param inType Type of vertices passed to geometry shader \param outType Type of vertices created by geometry shader \param verticesOut Maximal number of vertices created by geometry @@ -197,164 +120,16 @@ public: error log and can be caught with a custom event receiver. */ virtual s32 addHighLevelShaderMaterialFromFiles( const io::path &vertexShaderProgramFileName, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const io::path &pixelShaderProgramFileName, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const io::path &geometryShaderProgramFileName, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) = 0; - //! convenience function for use without geometry shaders - s32 addHighLevelShaderMaterialFromFiles( - const io::path &vertexShaderProgramFileName, - const c8 *vertexShaderEntryPointName = "main", - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - const io::path &pixelShaderProgramFileName = "", - const c8 *pixelShaderEntryPointName = "main", - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterialFromFiles( - vertexShaderProgramFileName, vertexShaderEntryPointName, - vsCompileTarget, pixelShaderProgramFileName, - pixelShaderEntryPointName, psCompileTarget, - "", "main", EGST_GS_4_0, - scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, - callback, baseMaterial, userData); - } - - //! convenience function for use with many defaults, without geometry shader - /** All shader names are set to "main" and compile targets are shader - type 1.1. - */ - s32 addHighLevelShaderMaterialFromFiles( - const io::path &vertexShaderProgramFileName, - const io::path &pixelShaderProgramFileName = "", - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterialFromFiles( - vertexShaderProgramFileName, "main", - EVST_VS_1_1, pixelShaderProgramFileName, - "main", EPST_PS_1_1, - "", "main", EGST_GS_4_0, - scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, - callback, baseMaterial, userData); - } - - //! convenience function for use with many defaults, with geometry shader - /** All shader names are set to "main" and compile targets are shader - type 1.1 and geometry shader 4.0. - */ - s32 addHighLevelShaderMaterialFromFiles( - const io::path &vertexShaderProgramFileName, - const io::path &pixelShaderProgramFileName = "", - const io::path &geometryShaderProgramFileName = "", - scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, - scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, - u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterialFromFiles( - vertexShaderProgramFileName, "main", - EVST_VS_1_1, pixelShaderProgramFileName, - "main", EPST_PS_1_1, - geometryShaderProgramFileName, "main", EGST_GS_4_0, - inType, outType, verticesOut, - callback, baseMaterial, userData); - } - - //! Like addHighLevelShaderMaterial(), but loads from files. - /** \param vertexShaderProgram Text file handle containing the source - of the vertex shader program. Set to 0 if no vertex shader shall be - created. - \param vertexShaderEntryPointName Name of the entry function of the - vertexShaderProgram - \param vsCompileTarget Vertex shader version the high level shader - shall be compiled to. - \param pixelShaderProgram Text file handle containing the source of - the pixel shader program. Set to 0 if no pixel shader shall be created. - \param pixelShaderEntryPointName Entry name of the function of the - pixelShaderProgram (p.e. "main") - \param psCompileTarget Pixel shader version the high level shader - shall be compiled to. - \param geometryShaderProgram Text file handle containing the source of - the geometry shader program. Set to 0 if no geometry shader shall be - created. - \param geometryShaderEntryPointName Entry name of the function of the - geometryShaderProgram (p.e. "main") - \param gsCompileTarget Geometry shader version the high level shader - shall be compiled to. - \param inType Type of vertices passed to geometry shader - \param outType Type of vertices created by geometry shader - \param verticesOut Maximal number of vertices created by geometry - shader. If 0, maximal number supported is assumed. - \param callback Pointer to an implementation of - IShaderConstantSetCallBack in which you can set the needed vertex and - pixel shader program constants. Set this to 0 if you don't need this. - \param baseMaterial Base material which renderstates will be used to - shade the material. - \param userData a user data int. This int can be set to any value and - will be set as parameter in the callback method when calling - OnSetConstants(). In this way it is easily possible to use the same - callback method for multiple materials and distinguish between them - during the call. - \return Number of the material type which can be set in - SMaterial::MaterialType to use the renderer. -1 is returned if an - error occurred, e.g. if a shader program could not be compiled or a - compile target is not reachable. The error strings are then printed to - the error log and can be caught with a custom event receiver. */ - virtual s32 addHighLevelShaderMaterialFromFiles( - io::IReadFile *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, - io::IReadFile *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, - io::IReadFile *geometryShaderProgram, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, - scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, - scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, - u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) = 0; - - //! convenience function for use without geometry shaders - s32 addHighLevelShaderMaterialFromFiles( - io::IReadFile *vertexShaderProgram, - const c8 *vertexShaderEntryPointName = "main", - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - io::IReadFile *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = "main", - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - IShaderConstantSetCallBack *callback = 0, - E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) - { - return addHighLevelShaderMaterialFromFiles( - vertexShaderProgram, vertexShaderEntryPointName, - vsCompileTarget, pixelShaderProgram, - pixelShaderEntryPointName, psCompileTarget, - 0, "main", EGST_GS_4_0, - scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, - callback, baseMaterial, userData); - } - //! Delete a shader material and associated data. /** After you have deleted a material it is invalid to still use and doing diff --git a/irr/include/IGUIButton.h b/irr/include/IGUIButton.h index 8870f8b1c..fdee609d9 100644 --- a/irr/include/IGUIButton.h +++ b/irr/include/IGUIButton.h @@ -5,6 +5,7 @@ #pragma once #include "IGUIElement.h" +#include "SColor.h" namespace irr { diff --git a/irr/include/IGUIElement.h b/irr/include/IGUIElement.h index cffac10d1..cdd3d7487 100644 --- a/irr/include/IGUIElement.h +++ b/irr/include/IGUIElement.h @@ -10,7 +10,6 @@ #include "IEventReceiver.h" #include "EGUIElementTypes.h" #include "EGUIAlignment.h" -#include "IGUIEnvironment.h" #include #include #include @@ -19,6 +18,8 @@ namespace irr { namespace gui { +class IGUIEnvironment; + //! Base class of all GUI elements. class IGUIElement : virtual public IReferenceCounted, public IEventReceiver { @@ -34,10 +35,6 @@ public: AlignLeft(EGUIA_UPPERLEFT), AlignRight(EGUIA_UPPERLEFT), AlignTop(EGUIA_UPPERLEFT), AlignBottom(EGUIA_UPPERLEFT), Environment(environment), Type(type) { -#ifdef _DEBUG - setDebugName("IGUIElement"); -#endif - // if we were given a parent to attach to if (parent) { parent->addChildToEnd(this); diff --git a/irr/include/IGUIFont.h b/irr/include/IGUIFont.h index c18354c79..5efce9796 100644 --- a/irr/include/IGUIFont.h +++ b/irr/include/IGUIFont.h @@ -53,7 +53,7 @@ public: //! Calculates the width and height of a given string of text. /** \return Returns width and height of the area covered by the text if it would be drawn. */ - virtual core::dimension2d getDimension(const wchar_t *text) const = 0; + virtual core::dimension2du getDimension(const wchar_t *text) const = 0; //! Calculates the index of the character in the text which is on a specific position. /** \param text: Text string. @@ -82,10 +82,7 @@ public: which supports kerning pairs a string such as 'Wo' may have the 'o' tucked neatly under the 'W'. */ - virtual s32 getKerningWidth(const wchar_t *thisLetter = 0, const wchar_t *previousLetter = 0) const = 0; - - //! Returns the distance between letters - virtual s32 getKerningHeight() const = 0; + virtual core::vector2di getKerning(const wchar_t thisLetter = 0, const wchar_t previousLetter = 0) const = 0; //! Define which characters should not be drawn by the font. /** For example " " would not draw any space which is usually blank in diff --git a/irr/include/IGUIFontBitmap.h b/irr/include/IGUIFontBitmap.h index b86dbe2bf..f7bd70dc3 100644 --- a/irr/include/IGUIFontBitmap.h +++ b/irr/include/IGUIFontBitmap.h @@ -24,17 +24,6 @@ public: //! returns the sprite number from a given character virtual u32 getSpriteNoFromChar(const wchar_t *c) const = 0; - - //! Gets kerning values (distance between letters) for the font. If no parameters are provided, - /** the global kerning distance is returned. - \param thisLetter: If this parameter is provided, the left side kerning for this letter is added - to the global kerning value. For example, a space might only be one pixel wide, but it may - be displayed as several pixels. - \param previousLetter: If provided, kerning is calculated for both letters and added to the global - kerning value. For example, EGFT_BITMAP will add the right kerning value of previousLetter to the - left side kerning value of thisLetter, then add the global value. - */ - s32 getKerningWidth(const wchar_t *thisLetter = 0, const wchar_t *previousLetter = 0) const override = 0; }; } // end namespace gui diff --git a/irr/include/IGUIImage.h b/irr/include/IGUIImage.h index 33453a3cd..cc3c66eb9 100644 --- a/irr/include/IGUIImage.h +++ b/irr/include/IGUIImage.h @@ -5,6 +5,7 @@ #pragma once #include "IGUIElement.h" +#include "SColor.h" namespace irr { diff --git a/irr/include/IImage.h b/irr/include/IImage.h index f3c29b71d..a303201a9 100644 --- a/irr/include/IImage.h +++ b/irr/include/IImage.h @@ -328,6 +328,8 @@ public: return 32; case ECF_D16: return 16; + case ECF_D24: + return 32; case ECF_D32: return 32; case ECF_D24S8: @@ -340,6 +342,8 @@ public: return 16; case ECF_R16G16: return 32; + case ECF_A2R10G10B10: + return 32; case ECF_R16F: return 16; case ECF_G16R16F: @@ -378,6 +382,7 @@ public: { switch (format) { case ECF_D16: + case ECF_D24: case ECF_D32: case ECF_D24S8: return true; diff --git a/irr/include/IMeshManipulator.h b/irr/include/IMeshManipulator.h index 54770c6f7..c9d989cae 100644 --- a/irr/include/IMeshManipulator.h +++ b/irr/include/IMeshManipulator.h @@ -108,7 +108,7 @@ public: if (!mesh) return true; bool result = true; - core::aabbox3df bufferbox; + core::aabbox3df bufferbox{{0, 0, 0}}; for (u32 i = 0; i < mesh->getMeshBufferCount(); ++i) { result &= apply(func, mesh->getMeshBuffer(i), boundingBoxUpdate); if (boundingBoxUpdate) { @@ -136,7 +136,7 @@ protected: if (!buffer) return true; - core::aabbox3df bufferbox; + core::aabbox3df bufferbox{{0, 0, 0}}; for (u32 i = 0; i < buffer->getVertexCount(); ++i) { switch (buffer->getVertexType()) { case video::EVT_STANDARD: { diff --git a/irr/include/IReferenceCounted.h b/irr/include/IReferenceCounted.h index 68aa20fb6..65c991db2 100644 --- a/irr/include/IReferenceCounted.h +++ b/irr/include/IReferenceCounted.h @@ -136,31 +136,6 @@ public: return ReferenceCounter; } -#ifdef _DEBUG - //! Returns the debug name of the object. - /** The Debugname may only be set and changed by the object - itself. This method should only be used in Debug mode. - \return Returns a string, previously set by setDebugName(); */ - const c8 *getDebugName() const - { - return DebugName; - } - -protected: - //! Sets the debug name of the object. - /** The Debugname may only be set and changed by the object - itself. This method should only be used in Debug mode. - \param newName: New debug name to set. */ - void setDebugName(const c8 *newName) - { - DebugName = newName; - } - -private: - //! The debug name. - const c8 *DebugName = nullptr; -#endif - private: //! The reference counter. Mutable to do reference counting on const objects. diff --git a/irr/include/IRenderTarget.h b/irr/include/IRenderTarget.h index 1e70c1e06..d4e5960a2 100644 --- a/irr/include/IRenderTarget.h +++ b/irr/include/IRenderTarget.h @@ -26,6 +26,7 @@ enum E_CUBE_SURFACE }; //! Interface of a Render Target. +/** This is a framebuffer object (FBO) in OpenGL. */ class IRenderTarget : public virtual IReferenceCounted { public: @@ -108,11 +109,6 @@ protected: //! Driver type of render target. E_DRIVER_TYPE DriverType; - -private: - // no copying (IReferenceCounted still allows that for reasons which take some time to work around) - IRenderTarget(const IRenderTarget &); - IRenderTarget &operator=(const IRenderTarget &); }; } diff --git a/irr/include/ISceneManager.h b/irr/include/ISceneManager.h index 18521dbe9..31604214f 100644 --- a/irr/include/ISceneManager.h +++ b/irr/include/ISceneManager.h @@ -11,7 +11,6 @@ #include "SColor.h" #include "ESceneNodeTypes.h" #include "SceneParameters.h" // IWYU pragma: export -#include "ISkinnedMesh.h" namespace irr { @@ -55,9 +54,6 @@ enum E_SCENE_NODE_RENDER_PASS //! Camera pass. The active view is set up here. The very first pass. ESNRP_CAMERA = 1, - //! In this pass, lights are transformed into camera space and added to the driver - ESNRP_LIGHT = 2, - //! This is used for sky boxes. ESNRP_SKY_BOX = 4, @@ -85,9 +81,6 @@ enum E_SCENE_NODE_RENDER_PASS //! Transparent effect scene nodes, drawn after Transparent nodes. They are sorted from back to front and drawn in that order. ESNRP_TRANSPARENT_EFFECT = 32, - //! Drawn after the solid nodes, before the transparent nodes, the time for drawing shadow volumes - ESNRP_SHADOW = 64, - //! Drawn after transparent effect nodes. For custom gui's. Unsorted (in order nodes registered themselves). ESNRP_GUI = 128 @@ -99,6 +92,7 @@ class IBillboardSceneNode; class ICameraSceneNode; class IDummyTransformationSceneNode; class IMesh; +class SkinnedMesh; class IMeshBuffer; class IMeshCache; class ISceneCollisionManager; @@ -127,189 +121,6 @@ public: //! Get pointer to an animatable mesh. Loads the file if not loaded already. /** * If you want to remove a loaded mesh from the cache again, use removeMesh(). - * Currently there are the following mesh formats supported: - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - * - *
FormatDescription
3D Studio (.3ds)Loader for 3D-Studio files which lots of 3D packages - * are able to export. Only static meshes are currently - * supported by this importer.
3D World Studio (.smf)Loader for Leadwerks SMF mesh files, a simple mesh format - * containing static geometry for games. The proprietary .STF texture format - * is not supported yet. This loader was originally written by Joseph Ellis.
Bliz Basic B3D (.b3d)Loader for blitz basic files, developed by Mark - * Sibly. This is the ideal animated mesh format for game - * characters as it is both rigidly defined and widely - * supported by modeling and animation software. - * As this format supports skeletal animations, an - * ISkinnedMesh will be returned by this importer.
Cartography shop 4 (.csm)Cartography Shop is a modeling program for creating - * architecture and calculating lighting. Irrlicht can - * directly import .csm files thanks to the IrrCSM library - * created by Saurav Mohapatra which is now integrated - * directly in Irrlicht. - *
Delgine DeleD (.dmf)DeleD (delgine.com) is a 3D editor and level-editor - * combined into one and is specifically designed for 3D - * game-development. With this loader, it is possible to - * directly load all geometry is as well as textures and - * lightmaps from .dmf files. To set texture and - * material paths, see scene::DMF_USE_MATERIALS_DIRS. - * It is also possible to flip the alpha texture by setting - * scene::DMF_FLIP_ALPHA_TEXTURES to true and to set the - * material transparent reference value by setting - * scene::DMF_ALPHA_CHANNEL_REF to a float between 0 and - * 1. The loader is based on Salvatore Russo's .dmf - * loader, I just changed some parts of it. Thanks to - * Salvatore for his work and for allowing me to use his - * code in Irrlicht and put it under Irrlicht's license. - * For newer and more enhanced versions of the loader, - * take a look at delgine.com. - *
DirectX (.x)Platform independent importer (so not D3D-only) for - * .x files. Most 3D packages can export these natively - * and there are several tools for them available, e.g. - * the Maya exporter included in the DX SDK. - * .x files can include skeletal animations and Irrlicht - * is able to play and display them, users can manipulate - * the joints via the ISkinnedMesh interface. Currently, - * Irrlicht only supports uncompressed .x files.
Half-Life model (.mdl)This loader opens Half-life 1 models, it was contributed - * by Fabio Concas and adapted by Thomas Alten.
LightWave (.lwo)Native to NewTek's LightWave 3D, the LWO format is well - * known and supported by many exporters. This loader will - * import LWO2 models including lightmaps, bumpmaps and - * reflection textures.
Maya (.obj)Most 3D software can create .obj files which contain - * static geometry without material data. The material - * files .mtl are also supported. This importer for - * Irrlicht can load them directly.
Milkshape (.ms3d).MS3D files contain models and sometimes skeletal - * animations from the Milkshape 3D modeling and animation - * software. Like the other skeletal mesh loaders, joints - * are exposed via the ISkinnedMesh animated mesh type.
My3D (.my3d).my3D is a flexible 3D file format. The My3DTools - * contains plug-ins to export .my3D files from several - * 3D packages. With this built-in importer, Irrlicht - * can read and display those files directly. This - * loader was written by Zhuck Dimitry who also created - * the whole My3DTools package. - *
OCT (.oct)The oct file format contains 3D geometry and - * lightmaps and can be loaded directly by Irrlicht. OCT - * files
can be created by FSRad, Paul Nette's - * radiosity processor or exported from Blender using - * OCTTools which can be found in the exporters/OCTTools - * directory of the SDK. Thanks to Murphy McCauley for - * creating all this.
OGRE Meshes (.mesh)Ogre .mesh files contain 3D data for the OGRE 3D - * engine. Irrlicht can read and display them directly - * with this importer. To define materials for the mesh, - * copy a .material file named like the corresponding - * .mesh file where the .mesh file is. (For example - * ogrehead.material for ogrehead.mesh). Thanks to - * Christian Stehno who wrote and contributed this - * loader.
Pulsar LMTools (.lmts)LMTools is a set of tools (Windows & Linux) for - * creating lightmaps. Irrlicht can directly read .lmts - * files thanks to
the importer created by Jonas - * Petersen. - * Notes for
this version of the loader:
- * - It does not recognize/support user data in the - * *.lmts files.
- * - The TGAs generated by LMTools don't work in - * Irrlicht for some reason (the textures are upside - * down). Opening and resaving them in a graphics app - * will solve the problem.
Quake 3 levels (.bsp)Quake 3 is a popular game by IDSoftware, and .pk3 - * files contain .bsp files and textures/lightmaps - * describing huge prelighted levels. Irrlicht can read - * .pk3 and .bsp files directly and thus render Quake 3 - * levels directly. Written by Nikolaus Gebhardt - * enhanced by Dean P. Macri with the curved surfaces - * feature.
Quake 2 models (.md2)Quake 2 models are characters with morph target - * animation. Irrlicht can read, display and animate - * them directly with this importer.
Quake 3 models (.md3)Quake 3 models are characters with morph target - * animation, they contain mount points for weapons and body - * parts and are typically made of several sections which are - * manually joined together.
Stanford Triangle (.ply)Invented by Stanford University and known as the native - * format of the infamous "Stanford Bunny" model, this is a - * popular static mesh format used by 3D scanning hardware - * and software. This loader supports extremely large models - * in both ASCII and binary format, but only has rudimentary - * material support in the form of vertex colors and texture - * coordinates.
Stereolithography (.stl)The STL format is used for rapid prototyping and - * computer-aided manufacturing, thus has no support for - * materials.
- * - * To load and display a mesh quickly, just do this: - * \code - * SceneManager->addAnimatedMeshSceneNode( - * SceneManager->getMesh("yourmesh.3ds")); - * \endcode * If you would like to implement and add your own file format loader to Irrlicht, * see addExternalMeshLoader(). * \param file File handle of the mesh to load. @@ -576,6 +387,14 @@ public: pass currently is active they can render the correct part of their geometry. */ virtual E_SCENE_NODE_RENDER_PASS getSceneNodeRenderPass() const = 0; + /** + * Sets debug data flags that will be set on every rendered scene node. + * Refer to `E_DEBUG_SCENE_TYPE`. + * @param setBits bit mask of types to enable + * @param unsetBits bit mask of types to disable + */ + virtual void setGlobalDebugData(u16 setBits, u16 unsetBits) = 0; + //! Creates a new scene manager. /** This can be used to easily draw and/or store two independent scenes at the same time. The mesh cache will be @@ -600,13 +419,7 @@ public: //! Get a skinned mesh, which is not available as header-only code /** Note: You need to drop() the pointer after use again, see IReferenceCounted::drop() for details. */ - virtual ISkinnedMesh *createSkinnedMesh() = 0; - - //! Sets ambient color of the scene - virtual void setAmbientLight(const video::SColorf &ambientColor) = 0; - - //! Get ambient color of the scene - virtual const video::SColorf &getAmbientLight() const = 0; + virtual SkinnedMesh *createSkinnedMesh() = 0; //! Get current render pass. virtual E_SCENE_NODE_RENDER_PASS getCurrentRenderPass() const = 0; diff --git a/irr/include/ISceneNode.h b/irr/include/ISceneNode.h index 0438d855f..897cfb350 100644 --- a/irr/include/ISceneNode.h +++ b/irr/include/ISceneNode.h @@ -403,14 +403,14 @@ public: their geometry because it is their only reason for existence, for example the OctreeSceneNode. \param state The culling state to be used. Check E_CULLING_TYPE for possible values.*/ - void setAutomaticCulling(u32 state) + void setAutomaticCulling(u16 state) { AutomaticCullingState = state; } //! Gets the automatic culling state. /** \return The automatic culling state. */ - u32 getAutomaticCulling() const + u16 getAutomaticCulling() const { return AutomaticCullingState; } @@ -419,7 +419,7 @@ public: /** A bitwise OR of the types from @ref irr::scene::E_DEBUG_SCENE_TYPE. Please note that not all scene nodes support all debug data types. \param state The debug data visibility state to be used. */ - virtual void setDebugDataVisible(u32 state) + virtual void setDebugDataVisible(u16 state) { DebugDataVisible = state; } @@ -427,7 +427,7 @@ public: //! Returns if debug data like bounding boxes are drawn. /** \return A bitwise OR of the debug data values from @ref irr::scene::E_DEBUG_SCENE_TYPE that are currently visible. */ - u32 isDebugDataVisible() const + u16 isDebugDataVisible() const { return DebugDataVisible; } @@ -581,10 +581,10 @@ protected: s32 ID; //! Automatic culling state - u32 AutomaticCullingState; + u16 AutomaticCullingState; //! Flag if debug data should be drawn, such as Bounding Boxes. - u32 DebugDataVisible; + u16 DebugDataVisible; //! Is the node visible? bool IsVisible; diff --git a/irr/include/ISkinnedMesh.h b/irr/include/ISkinnedMesh.h deleted file mode 100644 index af241f55d..000000000 --- a/irr/include/ISkinnedMesh.h +++ /dev/null @@ -1,226 +0,0 @@ -// Copyright (C) 2002-2012 Nikolaus Gebhardt -// This file is part of the "Irrlicht Engine". -// For conditions of distribution and use, see copyright notice in irrlicht.h - -#pragma once - -#include "irrArray.h" -#include "IAnimatedMesh.h" -#include "SSkinMeshBuffer.h" -#include "quaternion.h" - -#include -#include - -namespace irr -{ -namespace scene -{ - -enum E_INTERPOLATION_MODE -{ - // constant does use the current key-values without interpolation - EIM_CONSTANT = 0, - - // linear interpolation - EIM_LINEAR, - - //! count of all available interpolation modes - EIM_COUNT -}; - -//! Interface for using some special functions of Skinned meshes -class ISkinnedMesh : public IAnimatedMesh -{ -public: - //! Gets joint count. - /** \return Amount of joints in the skeletal animated mesh. */ - virtual u32 getJointCount() const = 0; - - //! Gets the name of a joint. - /** \param number: Zero based index of joint. The last joint - has the number getJointCount()-1; - \return Name of joint and null if an error happened. */ - virtual const std::optional &getJointName(u32 number) const = 0; - - //! Gets a joint number from its name - /** \param name: Name of the joint. - \return Number of the joint or std::nullopt if not found. */ - virtual std::optional getJointNumber(const std::string &name) const = 0; - - //! Use animation from another mesh - /** The animation is linked (not copied) based on joint names - so make sure they are unique. - \return True if all joints in this mesh were - matched up (empty names will not be matched, and it's case - sensitive). Unmatched joints will not be animated. */ - virtual bool useAnimationFrom(const ISkinnedMesh *mesh) = 0; - - //! Update Normals when Animating - /** \param on If false don't animate, which is faster. - Else update normals, which allows for proper lighting of - animated meshes. */ - virtual void updateNormalsWhenAnimating(bool on) = 0; - - //! Sets Interpolation Mode - virtual void setInterpolationMode(E_INTERPOLATION_MODE mode) = 0; - - //! Animates this mesh's joints based on frame input - virtual void animateMesh(f32 frame, f32 blend) = 0; - - //! Preforms a software skin on this mesh based of joint positions - virtual void skinMesh() = 0; - - //! converts the vertex type of all meshbuffers to tangents. - /** E.g. used for bump mapping. */ - virtual void convertMeshToTangents() = 0; - - //! Allows to enable hardware skinning. - /* This feature is not implemented in Irrlicht yet */ - virtual bool setHardwareSkinning(bool on) = 0; - - //! Refreshes vertex data cached in joints such as positions and normals - virtual void refreshJointCache() = 0; - - //! Moves the mesh into static position. - virtual void resetAnimation() = 0; - - //! A vertex weight - struct SWeight - { - //! Index of the mesh buffer - u16 buffer_id; // I doubt 32bits is needed - - //! Index of the vertex - u32 vertex_id; // Store global ID here - - //! Weight Strength/Percentage (0-1) - f32 strength; - - private: - //! Internal members used by CSkinnedMesh - friend class CSkinnedMesh; - char *Moved; - core::vector3df StaticPos; - core::vector3df StaticNormal; - }; - - //! Animation keyframe which describes a new position - struct SPositionKey - { - f32 frame; - core::vector3df position; - }; - - //! Animation keyframe which describes a new scale - struct SScaleKey - { - f32 frame; - core::vector3df scale; - }; - - //! Animation keyframe which describes a new rotation - struct SRotationKey - { - f32 frame; - core::quaternion rotation; - }; - - //! Joints - struct SJoint - { - SJoint() : - UseAnimationFrom(0), GlobalSkinningSpace(false), - positionHint(-1), scaleHint(-1), rotationHint(-1) - { - } - - //! The name of this joint - std::optional Name; - - //! Local matrix of this joint - core::matrix4 LocalMatrix; - - //! List of child joints - core::array Children; - - //! List of attached meshes - core::array AttachedMeshes; - - //! Animation keys causing translation change - core::array PositionKeys; - - //! Animation keys causing scale change - core::array ScaleKeys; - - //! Animation keys causing rotation change - core::array RotationKeys; - - //! Skin weights - core::array Weights; - - //! Unnecessary for loaders, will be overwritten on finalize - core::matrix4 GlobalMatrix; // loaders may still choose to set this (temporarily) to calculate absolute vertex data. - core::matrix4 GlobalAnimatedMatrix; - core::matrix4 LocalAnimatedMatrix; - - //! These should be set by loaders. - core::vector3df Animatedposition; - core::vector3df Animatedscale; - core::quaternion Animatedrotation; - - // The .x and .gltf formats pre-calculate this - std::optional GlobalInversedMatrix; - private: - //! Internal members used by CSkinnedMesh - friend class CSkinnedMesh; - - SJoint *UseAnimationFrom; - bool GlobalSkinningSpace; - - s32 positionHint; - s32 scaleHint; - s32 rotationHint; - }; - - // Interface for the mesh loaders (finalize should lock these functions, and they should have some prefix like loader_ - - // these functions will use the needed arrays, set values, etc to help the loaders - - //! exposed for loaders: to add mesh buffers - virtual core::array &getMeshBuffers() = 0; - - //! exposed for loaders: joints list - virtual core::array &getAllJoints() = 0; - - //! exposed for loaders: joints list - virtual const core::array &getAllJoints() const = 0; - - //! loaders should call this after populating the mesh - virtual void finalize() = 0; - - //! Adds a new meshbuffer to the mesh, access it as last one - virtual SSkinMeshBuffer *addMeshBuffer() = 0; - - //! Adds a new meshbuffer to the mesh, access it as last one - virtual void addMeshBuffer(SSkinMeshBuffer *meshbuf) = 0; - - //! Adds a new joint to the mesh, access it as last one - virtual SJoint *addJoint(SJoint *parent = 0) = 0; - - //! Adds a new weight to the mesh, access it as last one - virtual SWeight *addWeight(SJoint *joint) = 0; - - //! Adds a new position key to the mesh, access it as last one - virtual SPositionKey *addPositionKey(SJoint *joint) = 0; - //! Adds a new scale key to the mesh, access it as last one - virtual SScaleKey *addScaleKey(SJoint *joint) = 0; - //! Adds a new rotation key to the mesh, access it as last one - virtual SRotationKey *addRotationKey(SJoint *joint) = 0; - - //! Check if the mesh is non-animated - virtual bool isStatic() = 0; -}; - -} // end namespace scene -} // end namespace irr diff --git a/irr/include/ITexture.h b/irr/include/ITexture.h index 533271b39..869a325e0 100644 --- a/irr/include/ITexture.h +++ b/irr/include/ITexture.h @@ -74,9 +74,7 @@ enum E_TEXTURE_CREATION_FLAG //! Allow the driver to keep a copy of the texture in memory /** Enabling this makes calls to ITexture::lock a lot faster, but costs main memory. - Currently only used in combination with OpenGL drivers. - NOTE: Disabling this does not yet work correctly with alpha-textures. - So the default is on for now (but might change with Irrlicht 1.9 if we get the alpha-troubles fixed). + This is disabled by default. */ ETCF_ALLOW_MEMORY_COPY = 0x00000080, @@ -158,6 +156,9 @@ enum E_TEXTURE_TYPE //! 2D texture. ETT_2D, + //! 2D texture with multisampling. + ETT_2D_MS, + //! Cubemap texture. ETT_CUBEMAP }; @@ -184,7 +185,7 @@ public: //! Lock function. /** Locks the Texture and returns a pointer to access the pixels. After lock() has been called and all operations on the pixels - are done, you must call unlock(). + are done, you must call unlock(). Afterwards the pointer becomes invalid. Locks are not accumulating, hence one unlock will do for an arbitrary number of previous locks. You should avoid locking different levels without unlocking in between, though, because only the last level locked will be diff --git a/irr/include/IVideoDriver.h b/irr/include/IVideoDriver.h index 035f5ad77..29ce8678a 100644 --- a/irr/include/IVideoDriver.h +++ b/irr/include/IVideoDriver.h @@ -61,8 +61,8 @@ struct SFrameStats { u32 PrimitivesDrawn = 0; //! Number of hardware buffers uploaded (new or updated) u32 HWBuffersUploaded = 0; - //! Sum of uploaded hardware buffer size - u32 HWBuffersUploadedSize = 0; + //! Number of active hardware buffers + u32 HWBuffersActive = 0; }; //! Interface to driver which is able to perform 2d and 3d graphics functions. @@ -131,7 +131,6 @@ public: /** The following names can be queried for the given types: MaxTextures (int) The maximum number of simultaneous textures supported by the driver. This can be less than the supported number of textures of the driver. Use _IRR_MATERIAL_MAX_TEXTURES_ to adapt the number. MaxSupportedTextures (int) The maximum number of simultaneous textures supported by the fixed function pipeline of the (hw) driver. The actual supported number of textures supported by the engine can be lower. - MaxLights (int) Number of hardware lights supported in the fixed function pipeline of the driver, typically 6-8. Use light manager or deferred shading for more. MaxAnisotropy (int) Number of anisotropy levels supported for filtering. At least 1, max is typically at 16 or 32. MaxAuxBuffers (int) Special render buffers, which are currently not really usable inside Irrlicht. Only supported by OpenGL MaxMultipleRenderTargets (int) Number of render targets which can be bound simultaneously. Rendering to MRTs is done via shaders. @@ -273,6 +272,14 @@ public: virtual ITexture *addRenderTargetTexture(const core::dimension2d &size, const io::path &name = "rt", const ECOLOR_FORMAT format = ECF_UNKNOWN) = 0; + //! Adds a multisampled render target texture to the texture cache. + /** \param msaa The number of samples to use, values that make sense are > 1. + Only works if the driver supports the EVDF_TEXTURE_MULTISAMPLE feature, + check via queryFeature. + \see addRenderTargetTexture */ + virtual ITexture *addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name = "rt", const ECOLOR_FORMAT format = ECF_UNKNOWN) = 0; + //! Adds a new render target texture with 6 sides for a cubemap map to the texture cache. /** \param sideLen Length of one cubemap side. \param name A name for the texture. Later calls of getTexture() with this name will return this texture. @@ -303,6 +310,18 @@ public: 0 or another texture first. */ virtual void removeAllTextures() = 0; + //! Eagerly upload buffer to hardware + /** This can be a good idea if you have a newly created or modified buffer, + which you know you will draw in the near future (e.g. end of same frame, + or next frame), because it gives the GPU driver to copy the contents. */ + virtual void updateHardwareBuffer(const scene::IVertexBuffer *vb) = 0; + + //! Eagerly upload buffer to hardware + /** This can be a good idea if you have a newly created or modified buffer, + which you know you will draw in the near future (e.g. end of same frame, + or next frame), because it gives the GPU driver to copy the contents. */ + virtual void updateHardwareBuffer(const scene::IIndexBuffer *ib) = 0; + //! Remove hardware buffer virtual void removeHardwareBuffer(const scene::IVertexBuffer *vb) = 0; @@ -358,6 +377,10 @@ public: //! Remove all render targets. virtual void removeAllRenderTargets() = 0; + //! Blit contents of one render target to another one. + /** This is glBlitFramebuffer in OpenGL. */ + virtual void blitRenderTarget(IRenderTarget *from, IRenderTarget *to) = 0; + //! Sets a boolean alpha channel on the texture based on a color key. /** This makes the texture fully transparent at the texels where this color key can be found when using for example draw2DImage @@ -1098,15 +1121,6 @@ public: //! Get the graphics card vendor name. virtual core::stringc getVendorInfo() = 0; - //! Only used by the engine internally. - /** The ambient color is set in the scene manager, see - scene::ISceneManager::setAmbientLight(). - \param color New color of the ambient light. */ - virtual void setAmbientLight(const SColorf &color) = 0; - - //! Get the global ambient light currently used by the driver - virtual const SColorf &getAmbientLight() const = 0; - //! Only used by the engine internally. /** Passes the global material flag AllowZWriteOnTransparent. Use the SceneManager attribute to set this value from your app. @@ -1116,19 +1130,6 @@ public: //! Get the maximum texture size supported. virtual core::dimension2du getMaxTextureSize() const = 0; - //! Color conversion convenience function - /** Convert an image (as array of pixels) from source to destination - array, thereby converting the color format. The pixel size is - determined by the color formats. - \param sP Pointer to source - \param sF Color format of source - \param sN Number of pixels to convert, both array must be large enough - \param dP Pointer to destination - \param dF Color format of destination - */ - virtual void convertColor(const void *sP, ECOLOR_FORMAT sF, s32 sN, - void *dP, ECOLOR_FORMAT dF) const = 0; - //! Check if the driver supports creating textures with the given color format /** \return True if the format is available, false if not. */ virtual bool queryTextureFormat(ECOLOR_FORMAT format) const = 0; diff --git a/irr/include/IrrlichtDevice.h b/irr/include/IrrlichtDevice.h index edc6ead61..0c422ea89 100644 --- a/irr/include/IrrlichtDevice.h +++ b/irr/include/IrrlichtDevice.h @@ -198,6 +198,9 @@ public: or similar. */ virtual bool supportsTouchEvents() const { return false; } + //! Checks whether windowing uses the Wayland protocol. + virtual bool isUsingWayland() const { return false; } + //! Get the current color format of the window /** \return Color format of the window. */ virtual video::ECOLOR_FORMAT getColorFormat() const = 0; diff --git a/irr/include/SAnimatedMesh.h b/irr/include/SAnimatedMesh.h index dd7306633..dcc65410f 100644 --- a/irr/include/SAnimatedMesh.h +++ b/irr/include/SAnimatedMesh.h @@ -21,9 +21,6 @@ struct SAnimatedMesh final : public IAnimatedMesh SAnimatedMesh(scene::IMesh *mesh = 0, scene::E_ANIMATED_MESH_TYPE type = scene::EAMT_UNKNOWN) : IAnimatedMesh(), FramesPerSecond(25.f), Type(type) { -#ifdef _DEBUG - setDebugName("SAnimatedMesh"); -#endif addMesh(mesh); recalculateBoundingBox(); } @@ -157,7 +154,7 @@ struct SAnimatedMesh final : public IAnimatedMesh std::vector Meshes; //! The bounding box of this mesh - core::aabbox3d Box; + core::aabbox3d Box{{0.0f, 0.0f, 0.0f}}; //! Default animation speed of this mesh. f32 FramesPerSecond; diff --git a/irr/include/SColor.h b/irr/include/SColor.h index 284ab3351..0845b31f7 100644 --- a/irr/include/SColor.h +++ b/irr/include/SColor.h @@ -72,11 +72,17 @@ enum ECOLOR_FORMAT //! 32 bit format using 16 bits for the red and green channels. ECF_R16G16, + //! 32 bit format using 10 bits for R, G, B and 2 for alpha. + ECF_A2R10G10B10, + /** Depth and stencil formats. */ //! 16 bit format using 16 bits for depth. ECF_D16, + //! 32 bit(?) format using 24 bits for depth. + ECF_D24, + //! 32 bit format using 32 bits for depth. ECF_D32, @@ -88,7 +94,7 @@ enum ECOLOR_FORMAT }; //! Names for ECOLOR_FORMAT types -const c8 *const ColorFormatNames[ECF_UNKNOWN + 2] = { +const c8 *const ColorFormatNames[] = { "A1R5G5B5", "R5G6B5", "R8G8B8", @@ -103,13 +109,18 @@ const c8 *const ColorFormatNames[ECF_UNKNOWN + 2] = { "R8G8", "R16", "R16G16", + "A2R10G10B10", "D16", + "D24", "D32", "D24S8", "UNKNOWN", 0, }; +static_assert(sizeof(ColorFormatNames) / sizeof(ColorFormatNames[0]) + == ECF_UNKNOWN + 2, "name table size mismatch"); + //! Creates a 16 bit A1R5G5B5 color inline u16 RGBA16(u32 r, u32 g, u32 b, u32 a = 0xFF) { @@ -220,12 +231,6 @@ inline u32 getBlue(u16 color) return (color & 0x1F); } -//! Returns the average from a 16 bit A1R5G5B5 color -inline s32 getAverage(s16 color) -{ - return ((getRed(color) << 3) + (getGreen(color) << 3) + (getBlue(color) << 3)) / 3; -} - //! Class representing a 32 bit ARGB color. /** The color values for alpha, red, green, and blue are stored in a single u32. So all four values may be between 0 and 255. @@ -271,24 +276,12 @@ public: 0 means no blue, 255 means full blue. */ u32 getBlue() const { return color & 0xff; } - //! Get lightness of the color in the range [0,255] - f32 getLightness() const - { - return 0.5f * (core::max_(core::max_(getRed(), getGreen()), getBlue()) + core::min_(core::min_(getRed(), getGreen()), getBlue())); - } - - //! Get luminance of the color in the range [0,255]. - f32 getLuminance() const + //! Get an approximate brightness value of the color in the range [0,255] + f32 getBrightness() const { return 0.3f * getRed() + 0.59f * getGreen() + 0.11f * getBlue(); } - //! Get average intensity of the color in the range [0,255]. - u32 getAverage() const - { - return (getRed() + getGreen() + getBlue()) / 3; - } - //! Sets the alpha component of the Color. /** The alpha component defines how transparent a color should be. \param a The alpha value of the color. 0 is fully transparent, 255 is fully opaque. */ @@ -358,9 +351,9 @@ public: /** \return True if this color is smaller than the other one */ bool operator<(const SColor &other) const { return (color < other.color); } - //! Adds two colors, result is clamped to 0..255 values + //! Adds two colors in a gamma-incorrect way /** \param other Color to add to this color - \return Addition of the two colors, clamped to 0..255 values */ + \return Sum of the two non-linear colors, clamped to 0..255 values */ SColor operator+(const SColor &other) const { return SColor(core::min_(getAlpha() + other.getAlpha(), 255u), @@ -370,7 +363,9 @@ public: } //! Interpolates the color with a f32 value to another color - /** \param other: Other color + /** Note that the interpolation is neither physically nor perceptually + linear since it happens directly in the sRGB color space. + \param other: Other color \param d: value between 0.0f and 1.0f. d=0 returns other, d=1 returns this, values between interpolate. \return Interpolated color. */ SColor getInterpolated(const SColor &other, f32 d) const @@ -383,34 +378,6 @@ public: (u32)core::round32(other.getBlue() * inv + getBlue() * d)); } - //! Returns interpolated color. ( quadratic ) - /** \param c1: first color to interpolate with - \param c2: second color to interpolate with - \param d: value between 0.0f and 1.0f. */ - SColor getInterpolated_quadratic(const SColor &c1, const SColor &c2, f32 d) const - { - // this*(1-d)*(1-d) + 2 * c1 * (1-d) + c2 * d * d; - d = core::clamp(d, 0.f, 1.f); - const f32 inv = 1.f - d; - const f32 mul0 = inv * inv; - const f32 mul1 = 2.f * d * inv; - const f32 mul2 = d * d; - - return SColor( - core::clamp(core::floor32( - getAlpha() * mul0 + c1.getAlpha() * mul1 + c2.getAlpha() * mul2), - 0, 255), - core::clamp(core::floor32( - getRed() * mul0 + c1.getRed() * mul1 + c2.getRed() * mul2), - 0, 255), - core::clamp(core::floor32( - getGreen() * mul0 + c1.getGreen() * mul1 + c2.getGreen() * mul2), - 0, 255), - core::clamp(core::floor32( - getBlue() * mul0 + c1.getBlue() * mul1 + c2.getBlue() * mul2), - 0, 255)); - } - //! set the color by expecting data in the given format /** \param data: must point to valid memory containing color information in the given format \param format: tells the format in which data is available @@ -504,7 +471,7 @@ public: SColorf(f32 r, f32 g, f32 b, f32 a = 1.0f) : r(r), g(g), b(b), a(a) {} - //! Constructs a color from 32 bit Color. + //! Constructs a color from 32 bit Color without gamma correction /** \param c: 32 bit color from which this SColorf class is constructed from. */ SColorf(SColor c) @@ -516,7 +483,7 @@ public: a = c.getAlpha() * inv; } - //! Converts this color to a SColor without floats. + //! Converts this color to a SColor without gamma correction SColor toSColor() const { return SColor((u32)core::round32(a * 255.0f), (u32)core::round32(r * 255.0f), (u32)core::round32(g * 255.0f), (u32)core::round32(b * 255.0f)); @@ -554,7 +521,9 @@ public: } //! Interpolates the color with a f32 value to another color - /** \param other: Other color + /** Note that the interpolation is neither physically nor perceptually + linear if it happens directly in the sRGB color space. + \param other: Other color \param d: value between 0.0f and 1.0f \return Interpolated color. */ SColorf getInterpolated(const SColorf &other, f32 d) const @@ -565,45 +534,6 @@ public: other.g * inv + g * d, other.b * inv + b * d, other.a * inv + a * d); } - //! Returns interpolated color. ( quadratic ) - /** \param c1: first color to interpolate with - \param c2: second color to interpolate with - \param d: value between 0.0f and 1.0f. */ - inline SColorf getInterpolated_quadratic(const SColorf &c1, const SColorf &c2, - f32 d) const - { - d = core::clamp(d, 0.f, 1.f); - // this*(1-d)*(1-d) + 2 * c1 * (1-d) + c2 * d * d; - const f32 inv = 1.f - d; - const f32 mul0 = inv * inv; - const f32 mul1 = 2.f * d * inv; - const f32 mul2 = d * d; - - return SColorf(r * mul0 + c1.r * mul1 + c2.r * mul2, - g * mul0 + c1.g * mul1 + c2.g * mul2, - b * mul0 + c1.b * mul1 + c2.b * mul2, - a * mul0 + c1.a * mul1 + c2.a * mul2); - } - - //! Sets a color component by index. R=0, G=1, B=2, A=3 - void setColorComponentValue(s32 index, f32 value) - { - switch (index) { - case 0: - r = value; - break; - case 1: - g = value; - break; - case 2: - b = value; - break; - case 3: - a = value; - break; - } - } - //! Returns the alpha component of the color in the range 0.0 (transparent) to 1.0 (opaque) f32 getAlpha() const { return a; } diff --git a/irr/include/SMaterial.h b/irr/include/SMaterial.h index 7a939317c..3bbc6e946 100644 --- a/irr/include/SMaterial.h +++ b/irr/include/SMaterial.h @@ -20,7 +20,7 @@ class ITexture; //! Flag for MaterialTypeParam (in combination with EMT_ONETEXTURE_BLEND) or for BlendFactor //! BlendFunc = source * sourceFactor + dest * destFactor -enum E_BLEND_FACTOR +enum E_BLEND_FACTOR : u8 { EBF_ZERO = 0, //!< src & dest (0, 0, 0, 0) EBF_ONE, //!< src & dest (1, 1, 1, 1) @@ -36,7 +36,7 @@ enum E_BLEND_FACTOR }; //! Values defining the blend operation -enum E_BLEND_OPERATION +enum E_BLEND_OPERATION : u8 { EBO_NONE = 0, //!< No blending happens EBO_ADD, //!< Default blending adds the color values @@ -51,7 +51,7 @@ enum E_BLEND_OPERATION }; //! MaterialTypeParam: e.g. DirectX: D3DTOP_MODULATE, D3DTOP_MODULATE2X, D3DTOP_MODULATE4X -enum E_MODULATE_FUNC +enum E_MODULATE_FUNC : u8 { EMFN_MODULATE_1X = 1, EMFN_MODULATE_2X = 2, @@ -59,7 +59,7 @@ enum E_MODULATE_FUNC }; //! Comparison function, e.g. for depth buffer test -enum E_COMPARISON_FUNC +enum E_COMPARISON_FUNC : u8 { //! Depth test disabled (disable also write to depth buffer) ECFN_DISABLED = 0, @@ -82,7 +82,7 @@ enum E_COMPARISON_FUNC }; //! Enum values for enabling/disabling color planes for rendering -enum E_COLOR_PLANE +enum E_COLOR_PLANE : u8 { //! No color enabled ECP_NONE = 0, @@ -103,7 +103,7 @@ enum E_COLOR_PLANE //! Source of the alpha value to take /** This is currently only supported in EMT_ONETEXTURE_BLEND. You can use an or'ed combination of values. Alpha values are modulated (multiplied). */ -enum E_ALPHA_SOURCE +enum E_ALPHA_SOURCE : u8 { //! Use no alpha, somewhat redundant with other settings EAS_NONE = 0, @@ -181,7 +181,7 @@ Some drivers don't support a per-material setting of the anti-aliasing modes. In those cases, FSAA/multisampling is defined by the device mode chosen upon creation via irr::SIrrCreationParameters. */ -enum E_ANTI_ALIASING_MODE +enum E_ANTI_ALIASING_MODE : u8 { //! Use to turn off anti-aliasing for this material EAAM_OFF = 0, @@ -202,7 +202,7 @@ const c8 *const PolygonOffsetDirectionNames[] = { }; //! For SMaterial.ZWriteEnable -enum E_ZWRITE +enum E_ZWRITE : u8 { //! zwrite always disabled for this material EZW_OFF = 0, @@ -230,20 +230,20 @@ const c8 *const ZWriteNames[] = { /** SMaterial might ignore some textures in most function, like assignment and comparison, when SIrrlichtCreationParameters::MaxTextureUnits is set to a lower number. */ -const u32 MATERIAL_MAX_TEXTURES = 4; +constexpr static u32 MATERIAL_MAX_TEXTURES = 4; //! Struct for holding parameters for a material renderer // Note for implementors: Serialization is in CNullDriver class SMaterial { public: - //! Default constructor. Creates a solid, lit material with white colors + //! Default constructor. Creates a solid material SMaterial() : MaterialType(EMT_SOLID), ColorParam(0, 0, 0, 0), - MaterialTypeParam(0.0f), Thickness(1.0f), ZBuffer(ECFN_LESSEQUAL), - AntiAliasing(EAAM_SIMPLE), ColorMask(ECP_ALL), - BlendOperation(EBO_NONE), BlendFactor(0.0f), PolygonOffsetDepthBias(0.f), - PolygonOffsetSlopeScale(0.f), Wireframe(false), PointCloud(false), + MaterialTypeParam(0.0f), Thickness(1.0f), BlendFactor(0.0f), + PolygonOffsetDepthBias(0.f), PolygonOffsetSlopeScale(0.f), + ZBuffer(ECFN_LESSEQUAL), AntiAliasing(EAAM_SIMPLE), ColorMask(ECP_ALL), + BlendOperation(EBO_NONE), Wireframe(false), PointCloud(false), ZWriteEnable(EZW_AUTO), BackfaceCulling(true), FrontfaceCulling(false), FogEnable(false), UseMipMaps(true) @@ -257,7 +257,7 @@ public: E_MATERIAL_TYPE MaterialType; //! Custom color parameter, can be used by custom shader materials. - // See MainShaderConstantSetter in Minetest. + // See MainShaderConstantSetter in Luanti. SColor ColorParam; //! Free parameter, dependent on the material type. @@ -268,28 +268,6 @@ public: //! Thickness of non-3dimensional elements such as lines and points. f32 Thickness; - //! Is the ZBuffer enabled? Default: ECFN_LESSEQUAL - /** If you want to disable depth test for this material - just set this parameter to ECFN_DISABLED. - Values are from E_COMPARISON_FUNC. */ - u8 ZBuffer; - - //! Sets the antialiasing mode - /** Values are chosen from E_ANTI_ALIASING_MODE. Default is - EAAM_SIMPLE, i.e. simple multi-sample anti-aliasing. */ - u8 AntiAliasing; - - //! Defines the enabled color planes - /** Values are defined as or'ed values of the E_COLOR_PLANE enum. - Only enabled color planes will be rendered to the current render - target. Typical use is to disable all colors when rendering only to - depth or stencil buffer, or using Red and Green for Stereo rendering. */ - u8 ColorMask : 4; - - //! Store the blend operation of choice - /** Values to be chosen from E_BLEND_OPERATION. */ - E_BLEND_OPERATION BlendOperation : 4; - //! Store the blend factors /** textureBlendFunc/textureBlendFuncSeparate functions should be used to write properly blending factors to this parameter. @@ -304,11 +282,7 @@ public: //! A constant z-buffer offset for a polygon/line/point /** The range of the value is driver specific. - On OpenGL you get units which are multiplied by the smallest value that is guaranteed to produce a resolvable offset. - On D3D9 you can pass a range between -1 and 1. But you should likely divide it by the range of the depthbuffer. - Like dividing by 65535.0 for a 16 bit depthbuffer. Thought it still might produce too large of a bias. - Some article (https://aras-p.info/blog/2008/06/12/depth-bias-and-the-power-of-deceiving-yourself/) - recommends multiplying by 2.0*4.8e-7 (and strangely on both 16 bit and 24 bit). */ + On OpenGL you get units which are multiplied by the smallest value that is guaranteed to produce a resolvable offset. */ f32 PolygonOffsetDepthBias; //! Variable Z-Buffer offset based on the slope of the polygon. @@ -320,6 +294,25 @@ public: and -1.f to pull them towards the camera. */ f32 PolygonOffsetSlopeScale; + //! Is the ZBuffer enabled? Default: ECFN_LESSEQUAL + /** If you want to disable depth test for this material + just set this parameter to ECFN_DISABLED. */ + E_COMPARISON_FUNC ZBuffer : 4; + + //! Sets the antialiasing mode + /** Default is EAAM_SIMPLE, i.e. simple multi-sample anti-aliasing. */ + E_ANTI_ALIASING_MODE AntiAliasing : 4; + + //! Defines the enabled color planes + /** Values are defined as or'ed values of the E_COLOR_PLANE enum. + Only enabled color planes will be rendered to the current render + target. Typical use is to disable all colors when rendering only to + depth or stencil buffer, or using Red and Green for Stereo rendering. */ + E_COLOR_PLANE ColorMask : 4; + + //! Store the blend operation of choice + E_BLEND_OPERATION BlendOperation : 4; + //! Draw as wireframe or filled triangles? Default: false bool Wireframe : 1; @@ -427,10 +420,13 @@ public: PolygonOffsetDepthBias != b.PolygonOffsetDepthBias || PolygonOffsetSlopeScale != b.PolygonOffsetSlopeScale || UseMipMaps != b.UseMipMaps; - for (u32 i = 0; (i < MATERIAL_MAX_TEXTURES) && !different; ++i) { - different |= (TextureLayers[i] != b.TextureLayers[i]); + if (different) + return true; + for (u32 i = 0; i < MATERIAL_MAX_TEXTURES; ++i) { + if (TextureLayers[i] != b.TextureLayers[i]) + return true; } - return different; + return false; } //! Equality operator @@ -477,5 +473,19 @@ public: //! global const identity Material IRRLICHT_API extern SMaterial IdentityMaterial; + } // end namespace video } // end namespace irr + +template<> +struct std::hash +{ + /// @brief std::hash specialization for video::SMaterial + std::size_t operator()(const irr::video::SMaterial &m) const noexcept + { + // basic implementation that hashes the two things most likely to differ + auto h1 = std::hash{}(m.getTexture(0)); + auto h2 = std::hash{}(m.MaterialType); + return (h1 << 1) ^ h2; + } +}; diff --git a/irr/include/SMaterialLayer.h b/irr/include/SMaterialLayer.h index 419a8f1e9..4d43bd820 100644 --- a/irr/include/SMaterialLayer.h +++ b/irr/include/SMaterialLayer.h @@ -45,7 +45,7 @@ static const char *const aTextureClampNames[] = { //! Texture minification filter. /** Used when scaling textures down. See the documentation on OpenGL's `GL_TEXTURE_MIN_FILTER` for more information. */ -enum E_TEXTURE_MIN_FILTER +enum E_TEXTURE_MIN_FILTER : u8 { //! Aka nearest-neighbor. ETMINF_NEAREST_MIPMAP_NEAREST = 0, @@ -61,7 +61,7 @@ enum E_TEXTURE_MIN_FILTER /** Used when scaling textures up. See the documentation on OpenGL's `GL_TEXTURE_MAG_FILTER` for more information. Note that mipmaps are only used for minification, not for magnification. */ -enum E_TEXTURE_MAG_FILTER +enum E_TEXTURE_MAG_FILTER : u8 { //! Aka nearest-neighbor. ETMAGF_NEAREST = 0, diff --git a/irr/include/SMesh.h b/irr/include/SMesh.h index 15fa65115..5e76fafc5 100644 --- a/irr/include/SMesh.h +++ b/irr/include/SMesh.h @@ -17,12 +17,7 @@ namespace scene struct SMesh final : public IMesh { //! constructor - SMesh() - { -#ifdef _DEBUG - setDebugName("SMesh"); -#endif - } + SMesh() {} //! destructor virtual ~SMesh() @@ -138,7 +133,7 @@ struct SMesh final : public IMesh std::vector TextureSlots; //! The bounding box of this mesh - core::aabbox3d BoundingBox; + core::aabbox3d BoundingBox{{0, 0, 0}}; }; } // end namespace scene diff --git a/irr/include/SSkinMeshBuffer.h b/irr/include/SSkinMeshBuffer.h index b0b6658b3..eb3f7371f 100644 --- a/irr/include/SSkinMeshBuffer.h +++ b/irr/include/SSkinMeshBuffer.h @@ -22,9 +22,6 @@ struct SSkinMeshBuffer final : public IMeshBuffer VertexType(vt), PrimitiveType(EPT_TRIANGLES), BoundingBoxNeedsRecalculated(true) { -#ifdef _DEBUG - setDebugName("SSkinMeshBuffer"); -#endif Vertices_Tangents = new SVertexBufferTangents(); Vertices_2TCoords = new SVertexBufferLightMap(); Vertices_Standard = new SVertexBuffer(); @@ -231,7 +228,7 @@ public: video::SMaterial Material; video::E_VERTEX_TYPE VertexType; - core::aabbox3d BoundingBox; + core::aabbox3d BoundingBox{{0, 0, 0}}; //! Primitive type used for rendering (triangles, lines, ...) E_PRIMITIVE_TYPE PrimitiveType; diff --git a/irr/include/SViewFrustum.h b/irr/include/SViewFrustum.h index cd898e032..c03707d4f 100644 --- a/irr/include/SViewFrustum.h +++ b/irr/include/SViewFrustum.h @@ -117,7 +117,7 @@ struct SViewFrustum core::plane3d planes[VF_PLANE_COUNT]; //! bounding box around the view frustum - core::aabbox3d boundingBox; + core::aabbox3d boundingBox{{0, 0, 0}}; private: //! Hold a copy of important transform matrices diff --git a/irr/include/SkinnedMesh.h b/irr/include/SkinnedMesh.h new file mode 100644 index 000000000..c9ea99365 --- /dev/null +++ b/irr/include/SkinnedMesh.h @@ -0,0 +1,419 @@ +// Copyright (C) 2002-2012 Nikolaus Gebhardt +// This file is part of the "Irrlicht Engine". +// For conditions of distribution and use, see copyright notice in irrlicht.h + +#pragma once + +#include "IAnimatedMesh.h" +#include "ISceneManager.h" +#include "SMeshBuffer.h" +#include "SSkinMeshBuffer.h" +#include "quaternion.h" +#include "vector3d.h" + +#include +#include + +namespace irr +{ +namespace scene +{ + +class IAnimatedMeshSceneNode; +class IBoneSceneNode; +class ISceneManager; + +class SkinnedMesh : public IAnimatedMesh +{ +public: + //! constructor + SkinnedMesh() : + EndFrame(0.f), FramesPerSecond(25.f), + LastAnimatedFrame(-1), SkinnedLastFrame(false), + HasAnimation(false), PreparedForSkinning(false), + AnimateNormals(true), HardwareSkinning(false) + { + SkinningBuffers = &LocalBuffers; + } + + //! destructor + virtual ~SkinnedMesh(); + + //! If the duration is 0, it is a static (=non animated) mesh. + f32 getMaxFrameNumber() const override; + + //! Gets the default animation speed of the animated mesh. + /** \return Amount of frames per second. If the amount is 0, it is a static, non animated mesh. */ + f32 getAnimationSpeed() const override; + + //! Gets the frame count of the animated mesh. + /** \param fps Frames per second to play the animation with. If the amount is 0, it is not animated. + The actual speed is set in the scene node the mesh is instantiated in.*/ + void setAnimationSpeed(f32 fps) override; + + //! returns the animated mesh for the given frame + IMesh *getMesh(f32) override; + + //! Animates joints based on frame input + void animateMesh(f32 frame); + + //! Performs a software skin on this mesh based of joint positions + void skinMesh(); + + //! returns amount of mesh buffers. + u32 getMeshBufferCount() const override; + + //! returns pointer to a mesh buffer + IMeshBuffer *getMeshBuffer(u32 nr) const override; + + //! Returns pointer to a mesh buffer which fits a material + /** \param material: material to search for + \return Returns the pointer to the mesh buffer or + NULL if there is no such mesh buffer. */ + IMeshBuffer *getMeshBuffer(const video::SMaterial &material) const override; + + u32 getTextureSlot(u32 meshbufNr) const override; + + void setTextureSlot(u32 meshbufNr, u32 textureSlot); + + //! returns an axis aligned bounding box + const core::aabbox3d &getBoundingBox() const override { + return BoundingBox; + } + + //! set user axis aligned bounding box + void setBoundingBox(const core::aabbox3df &box) override { + BoundingBox = box; + } + + //! set the hardware mapping hint, for driver + void setHardwareMappingHint(E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer = EBT_VERTEX_AND_INDEX) override; + + //! flags the meshbuffer as changed, reloads hardware buffers + void setDirty(E_BUFFER_TYPE buffer = EBT_VERTEX_AND_INDEX) override; + + //! Returns the type of the animated mesh. + E_ANIMATED_MESH_TYPE getMeshType() const override { + return EAMT_SKINNED; + } + + //! Gets joint count. + u32 getJointCount() const; + + //! Gets the name of a joint. + /** \param number: Zero based index of joint. + \return Name of joint and null if an error happened. */ + const std::optional &getJointName(u32 number) const; + + //! Gets a joint number from its name + /** \param name: Name of the joint. + \return Number of the joint or std::nullopt if not found. */ + std::optional getJointNumber(const std::string &name) const; + + //! Update Normals when Animating + /** \param on If false don't animate, which is faster. + Else update normals, which allows for proper lighting of + animated meshes (default). */ + void updateNormalsWhenAnimating(bool on) { + AnimateNormals = on; + } + + //! converts the vertex type of all meshbuffers to tangents. + /** E.g. used for bump mapping. */ + void convertMeshToTangents(); + + //! Does the mesh have no animation + bool isStatic() const { + return !HasAnimation; + } + + //! Allows to enable hardware skinning. + /* This feature is not implemented in Irrlicht yet */ + bool setHardwareSkinning(bool on); + + //! Refreshes vertex data cached in joints such as positions and normals + void refreshJointCache(); + + //! Moves the mesh into static position. + void resetAnimation(); + + void updateBoundingBox(); + + //! Recovers the joints from the mesh + void recoverJointsFromMesh(std::vector &jointChildSceneNodes); + + //! Transfers the joint data to the mesh + void transferJointsToMesh(const std::vector &jointChildSceneNodes); + + //! Creates an array of joints from this mesh as children of node + void addJoints(std::vector &jointChildSceneNodes, + IAnimatedMeshSceneNode *node, + ISceneManager *smgr); + + //! A vertex weight + struct SWeight + { + //! Index of the mesh buffer + u16 buffer_id; // I doubt 32bits is needed + + //! Index of the vertex + u32 vertex_id; // Store global ID here + + //! Weight Strength/Percentage (0-1) + f32 strength; + + private: + //! Internal members used by SkinnedMesh + friend class SkinnedMesh; + char *Moved; + core::vector3df StaticPos; + core::vector3df StaticNormal; + }; + + template + struct Channel { + struct Frame { + f32 time; + T value; + }; + std::vector frames; + bool interpolate = true; + + bool empty() const { + return frames.empty(); + } + + f32 getEndFrame() const { + return frames.empty() ? 0 : frames.back().time; + } + + void pushBack(f32 time, const T &value) { + frames.push_back({time, value}); + } + + void append(const Channel &other) { + frames.insert(frames.end(), other.frames.begin(), other.frames.end()); + } + + void cleanup() { + if (frames.empty()) + return; + + std::vector ordered; + ordered.push_back(frames.front()); + // Drop out-of-order frames + for (auto it = frames.begin() + 1; it != frames.end(); ++it) { + if (it->time > ordered.back().time) { + ordered.push_back(*it); + } + } + frames.clear(); + // Drop redundant middle keys + frames.push_back(ordered.front()); + for (u32 i = 1; i < ordered.size() - 1; ++i) { + if (ordered[i - 1].value != ordered[i].value + || ordered[i + 1].value != ordered[i].value) { + frames.push_back(ordered[i]); + } + } + if (ordered.size() > 1) + frames.push_back(ordered.back()); + frames.shrink_to_fit(); + } + + static core::quaternion interpolateValue(core::quaternion from, core::quaternion to, f32 time) { + core::quaternion result; + result.slerp(from, to, time, 0.001f); + return result; + } + + static core::vector3df interpolateValue(core::vector3df from, core::vector3df to, f32 time) { + // Note: `from` and `to` are swapped here compared to quaternion slerp + return to.getInterpolated(from, time); + } + + std::optional get(f32 time) const { + if (frames.empty()) + return std::nullopt; + + const auto next = std::lower_bound(frames.begin(), frames.end(), time, [](const auto& frame, f32 time) { + return frame.time < time; + }); + if (next == frames.begin()) + return next->value; + if (next == frames.end()) + return frames.back().value; + + const auto prev = next - 1; + if (!interpolate) + return prev->value; + + return interpolateValue(prev->value, next->value, (time - prev->time) / (next->time - prev->time)); + } + }; + + struct Keys { + Channel position; + Channel rotation; + Channel scale; + + bool empty() const { + return position.empty() && rotation.empty() && scale.empty(); + } + + void append(const Keys &other) { + position.append(other.position); + rotation.append(other.rotation); + scale.append(other.scale); + } + + f32 getEndFrame() const { + return std::max({ + position.getEndFrame(), + rotation.getEndFrame(), + scale.getEndFrame() + }); + } + + void updateTransform(f32 frame, + core::vector3df &t, core::quaternion &r, core::vector3df &s) const + { + if (auto pos = position.get(frame)) + t = *pos; + if (auto rot = rotation.get(frame)) + r = *rot; + if (auto scl = scale.get(frame)) + s = *scl; + } + + void cleanup() { + position.cleanup(); + rotation.cleanup(); + scale.cleanup(); + } + }; + + //! Joints + struct SJoint + { + SJoint() : GlobalSkinningSpace(false) {} + + //! The name of this joint + std::optional Name; + + //! Local matrix of this joint + core::matrix4 LocalMatrix; + + //! List of child joints + std::vector Children; + + //! List of attached meshes + std::vector AttachedMeshes; + + // Animation keyframes for translation, rotation, scale + Keys keys; + + //! Skin weights + std::vector Weights; + + //! Unnecessary for loaders, will be overwritten on finalize + core::matrix4 GlobalMatrix; // loaders may still choose to set this (temporarily) to calculate absolute vertex data. + core::matrix4 GlobalAnimatedMatrix; + core::matrix4 LocalAnimatedMatrix; + + //! These should be set by loaders. + core::vector3df Animatedposition; + core::vector3df Animatedscale; + core::quaternion Animatedrotation; + + // The .x and .gltf formats pre-calculate this + std::optional GlobalInversedMatrix; + private: + //! Internal members used by SkinnedMesh + friend class SkinnedMesh; + + bool GlobalSkinningSpace; + }; + + const std::vector &getAllJoints() const { + return AllJoints; + } + +protected: + void checkForAnimation(); + + void normalizeWeights(); + + void buildAllLocalAnimatedMatrices(); + + void buildAllGlobalAnimatedMatrices(SJoint *Joint = 0, SJoint *ParentJoint = 0); + + void calculateGlobalMatrices(SJoint *Joint, SJoint *ParentJoint); + + void skinJoint(SJoint *Joint, SJoint *ParentJoint); + + void calculateTangents(core::vector3df &normal, + core::vector3df &tangent, core::vector3df &binormal, + const core::vector3df &vt1, const core::vector3df &vt2, const core::vector3df &vt3, + const core::vector2df &tc1, const core::vector2df &tc2, const core::vector2df &tc3); + + std::vector *SkinningBuffers; // Meshbuffer to skin, default is to skin localBuffers + + std::vector LocalBuffers; + //! Mapping from meshbuffer number to bindable texture slot + std::vector TextureSlots; + + std::vector AllJoints; + std::vector RootJoints; + + // bool can't be used here because std::vector + // doesn't allow taking a reference to individual elements. + std::vector> Vertices_Moved; + + core::aabbox3d BoundingBox{{0, 0, 0}}; + + f32 EndFrame; + f32 FramesPerSecond; + + f32 LastAnimatedFrame; + bool SkinnedLastFrame; + + bool HasAnimation; + bool PreparedForSkinning; + bool AnimateNormals; + bool HardwareSkinning; +}; + +// Interface for mesh loaders +class SkinnedMeshBuilder : public SkinnedMesh { +public: + SkinnedMeshBuilder() : SkinnedMesh() {} + + //! loaders should call this after populating the mesh + // returns *this, so do not try to drop the mesh builder instance + SkinnedMesh *finalize(); + + //! alternative method for adding joints + std::vector &getAllJoints() { + return AllJoints; + } + + //! Adds a new meshbuffer to the mesh, access it as last one + SSkinMeshBuffer *addMeshBuffer(); + + //! Adds a new meshbuffer to the mesh, access it as last one + void addMeshBuffer(SSkinMeshBuffer *meshbuf); + + //! Adds a new joint to the mesh, access it as last one + SJoint *addJoint(SJoint *parent = nullptr); + + void addPositionKey(SJoint *joint, f32 frame, core::vector3df pos); + void addRotationKey(SJoint *joint, f32 frame, core::quaternion rotation); + void addScaleKey(SJoint *joint, f32 frame, core::vector3df scale); + + //! Adds a new weight to the mesh, access it as last one + SWeight *addWeight(SJoint *joint); +}; + +} // end namespace scene +} // end namespace irr diff --git a/irr/include/aabbox3d.h b/irr/include/aabbox3d.h index 81c2293ad..bfdcb5813 100644 --- a/irr/include/aabbox3d.h +++ b/irr/include/aabbox3d.h @@ -20,9 +20,7 @@ template class aabbox3d { public: - //! Default Constructor. - constexpr aabbox3d() : - MinEdge(-1, -1, -1), MaxEdge(1, 1, 1) {} + constexpr aabbox3d(): MinEdge{0}, MaxEdge{0} {}; // = delete; //! Constructor with min edge and max edge. constexpr aabbox3d(const vector3d &min, const vector3d &max) : MinEdge(min), MaxEdge(max) {} diff --git a/irr/include/irrArray.h b/irr/include/irrArray.h index 4a87382bc..834dc825c 100644 --- a/irr/include/irrArray.h +++ b/irr/include/irrArray.h @@ -59,8 +59,12 @@ public: { size_t allocated = m_data.capacity(); if (new_size < allocated) { - if (canShrink) - m_data.resize(new_size); + if (canShrink) { + // since capacity != size don't accidentally make it bigger + if (m_data.size() > new_size) + m_data.resize(new_size); + m_data.shrink_to_fit(); + } } else { m_data.reserve(new_size); } diff --git a/irr/include/irrlicht.h b/irr/include/irrlicht.h index 14a190e53..8bac30e3d 100644 --- a/irr/include/irrlicht.h +++ b/irr/include/irrlicht.h @@ -36,119 +36,6 @@ #include "SIrrCreationParameters.h" #include "IrrCompileConfig.h" // for IRRLICHT_API and IRRCALLCONV -/*! \mainpage Irrlicht Engine 1.9 API documentation - * - *
- * - * \section intro Introduction - * - * Welcome to the Irrlicht Engine API documentation. - * Here you'll find any information you'll need to develop applications with - * the Irrlicht Engine. If you are looking for a tutorial on how to start, you'll - * find some on the homepage of the Irrlicht Engine at - * irrlicht.sourceforge.net - * or inside the SDK in the examples directory. - * - * The Irrlicht Engine is intended to be an easy-to-use 3d engine, so - * this documentation is an important part of it. If you have any questions or - * suggestions, just send a email to the author of the engine, Nikolaus Gebhardt - * (niko (at) irrlicht3d.org). - * - * - * \section links Links - * - * Namespaces: A very good place to start reading - * the documentation.
- * Class list: List of all classes with descriptions.
- * Class members: Good place to find forgotten features.
- * - * \section irrexample Short example - * - * A simple application, starting up the engine, loading a Quake 2 animated - * model file and the corresponding texture, animating and displaying it - * in front of a blue background and placing a user controlable 3d camera - * would look like the following code. I think this example shows the usage - * of the engine quite well: - * - * \code - * #include - * // include a bunch of other stuff... - * - * using namespace irr; - * - * int main() - * { - * // start up the engine - * IrrlichtDevice *device = createDevice(video::EDT_OPENGL, - * core::dimension2d(640,480)); - * - * video::IVideoDriver* driver = device->getVideoDriver(); - * scene::ISceneManager* scenemgr = device->getSceneManager(); - * - * device->setWindowCaption(L"Hello World!"); - * - * // load and show quake2 .md2 model - * scene::ISceneNode* node = scenemgr->addAnimatedMeshSceneNode( - * scenemgr->getMesh("quake2model.md2")); - * - * // if everything worked, add a texture and disable lighting - * if (node) - * { - * node->setMaterialTexture(0, driver->getTexture("texture.bmp")); - * node->setMaterialFlag(video::EMF_LIGHTING, false); - * } - * - * // add a first person shooter style user controlled camera - * scenemgr->addCameraSceneNodeFPS(); - * - * // draw everything - * while(device->run() && driver) - * { - * driver->beginScene(video::ECBF_COLOR | video::ECBF_DEPTH, video::SColor(255,0,0,255)); - * scenemgr->drawAll(); - * driver->endScene(); - * } - * - * // delete device - * device->drop(); - * return 0; - * } - * \endcode - * - * Irrlicht can load a lot of file formats automatically, see irr::scene::ISceneManager::getMesh() - * for a detailed list. So if you would like to replace the simple blue screen background by - * a cool Quake 3 Map, optimized by an octree, just insert this code - * somewhere before the while loop: - * - * \code - * // add .pk3 archive to the file system - * device->getFileSystem()->addZipFileArchive("quake3map.pk3"); - * - * // load .bsp file and show it using an octree - * scenemgr->addOctreeSceneNode( - * scenemgr->getMesh("quake3map.bsp")); - * \endcode - * - * As you can see, the engine uses namespaces. Everything in the engine is - * placed into the namespace 'irr', but there are also 5 sub namespaces. - * You can find a list of all namespaces with descriptions at the - * namespaces page. - * This is also a good place to start reading the documentation. If you - * don't want to write the namespace names all the time, just use all namespaces like - * this: - * \code - * using namespace core; - * using namespace scene; - * using namespace video; - * using namespace io; - * using namespace gui; - * \endcode - * - * There is a lot more the engine can do, but I hope this gave a short - * overview over the basic features of the engine. For more examples, please take - * a look into the examples directory of the SDK. - */ - //! Everything in the Irrlicht Engine can be found in this namespace. namespace irr { diff --git a/irr/include/matrix4.h b/irr/include/matrix4.h index 8fce0157a..973568daf 100644 --- a/irr/include/matrix4.h +++ b/irr/include/matrix4.h @@ -13,11 +13,6 @@ #include "rect.h" #include "IrrCompileConfig.h" // for IRRLICHT_API -// enable this to keep track of changes to the matrix -// and make simpler identity check for seldom changing matrices -// otherwise identity check will always compare the elements -// #define USE_MATRIX_TEST - namespace irr { namespace core @@ -81,9 +76,6 @@ public: //! Simple operator for directly accessing every element of the matrix. T &operator()(const s32 row, const s32 col) { -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return M[row * 4 + col]; } @@ -93,9 +85,6 @@ public: //! Simple operator for linearly accessing every element of the matrix. T &operator[](u32 index) { -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return M[index]; } @@ -112,19 +101,12 @@ public: const T *pointer() const { return M; } T *pointer() { -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return M; } //! Returns true if other matrix is equal to this matrix. constexpr bool operator==(const CMatrix4 &other) const { -#if defined(USE_MATRIX_TEST) - if (definitelyIdentityMatrix && other.definitelyIdentityMatrix) - return true; -#endif for (s32 i = 0; i < 16; ++i) if (M[i] != other.M[i]) return false; @@ -196,9 +178,13 @@ public: CMatrix4 &setInverseTranslation(const vector3d &translation); //! Make a rotation matrix from Euler angles. The 4th row and column are unmodified. + //! NOTE: Rotation order is ZYX. This means that vectors are + //! first rotated around the X, then the Y, and finally the Z axis. + //! NOTE: The rotation is done as per the right-hand rule. + //! See test_irr_matrix4.cpp if you're still unsure about the conventions used here. inline CMatrix4 &setRotationRadians(const vector3d &rotation); - //! Make a rotation matrix from Euler angles. The 4th row and column are unmodified. + //! Same as `setRotationRadians`, but uses degrees. CMatrix4 &setRotationDegrees(const vector3d &rotation); //! Get the rotation, as set by setRotation() when you already know the scale used to create the matrix @@ -254,12 +240,21 @@ public: [[nodiscard]] vector3d rotateAndScaleVect(const vector3d &vect) const; //! Transforms the vector by this matrix - /** This operation is performed as if the vector was 4d with the 4th component =1 */ - void transformVect(vector3df &vect) const; + /** This operation is performed as if the vector was 4d with the 4th component = 1 */ + [[nodiscard]] vector3d transformVect(const vector3d &v) const; + + //! Transforms the vector by this matrix + /** This operation is performed as if the vector was 4d with the 4th component = 1 */ + void transformVect(vector3d &vect) const { + const vector3d &v = vect; + vect = transformVect(v); + } //! Transforms input vector by this matrix and stores result in output vector - /** This operation is performed as if the vector was 4d with the 4th component =1 */ - void transformVect(vector3df &out, const vector3df &in) const; + /** This operation is performed as if the vector was 4d with the 4th component = 1 */ + void transformVect(vector3d &out, const vector3d &in) const { + out = transformVect(in); + } //! An alternate transform vector method, writing into an array of 4 floats /** This operation is performed as if the vector was 4d with the 4th component =1. @@ -443,31 +438,17 @@ public: //! Sets all matrix data members at once CMatrix4 &setM(const T *data); - //! Sets if the matrix is definitely identity matrix - void setDefinitelyIdentityMatrix(bool isDefinitelyIdentityMatrix); - - //! Gets if the matrix is definitely identity matrix - bool getDefinitelyIdentityMatrix() const; - //! Compare two matrices using the equal method bool equals(const core::CMatrix4 &other, const T tolerance = (T)ROUNDING_ERROR_f64) const; private: //! Matrix data, stored in row-major order T M[16]; -#if defined(USE_MATRIX_TEST) - //! Flag is this matrix is identity matrix - mutable u32 definitelyIdentityMatrix; -#endif }; // Default constructor template inline CMatrix4::CMatrix4(eConstructor constructor) -#if defined(USE_MATRIX_TEST) - : - definitelyIdentityMatrix(BIT_UNTESTED) -#endif { switch (constructor) { case EM4CONST_NOTHING: @@ -484,10 +465,6 @@ inline CMatrix4::CMatrix4(eConstructor constructor) // Copy constructor template inline CMatrix4::CMatrix4(const CMatrix4 &other, eConstructor constructor) -#if defined(USE_MATRIX_TEST) - : - definitelyIdentityMatrix(BIT_UNTESTED) -#endif { switch (constructor) { case EM4CONST_IDENTITY: @@ -713,9 +690,6 @@ inline CMatrix4 &CMatrix4::setbyproduct_nocheck(const CMatrix4 &other_a M[13] = m1[1] * m2[12] + m1[5] * m2[13] + m1[9] * m2[14] + m1[13] * m2[15]; M[14] = m1[2] * m2[12] + m1[6] * m2[13] + m1[10] * m2[14] + m1[14] * m2[15]; M[15] = m1[3] * m2[12] + m1[7] * m2[13] + m1[11] * m2[14] + m1[15] * m2[15]; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -787,9 +761,6 @@ inline CMatrix4 &CMatrix4::setTranslation(const vector3d &translation) M[12] = translation.X; M[13] = translation.Y; M[14] = translation.Z; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -799,9 +770,6 @@ inline CMatrix4 &CMatrix4::setInverseTranslation(const vector3d &transl M[12] = -translation.X; M[13] = -translation.Y; M[14] = -translation.Z; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -811,13 +779,10 @@ inline CMatrix4 &CMatrix4::setScale(const vector3d &scale) M[0] = scale.X; M[5] = scale.Y; M[10] = scale.Z; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } -//! Returns the absolute values of the scales of the matrix. +//! Returns the absolute values of the scales of the 3x3 submatrix. /** Note: You only get back original values if the matrix only set the scale. Otherwise the result is a scale you can use to normalize the matrix axes, @@ -826,19 +791,15 @@ but it's usually no longer what you did set with setScale. template inline vector3d CMatrix4::getScale() const { - // See http://www.robertblum.com/articles/2005/02/14/decomposing-matrices - - // Deal with the 0 rotation case first - // Prior to Irrlicht 1.6, we always returned this value. - if (core::iszero(M[1]) && core::iszero(M[2]) && - core::iszero(M[4]) && core::iszero(M[6]) && - core::iszero(M[8]) && core::iszero(M[9])) - return vector3d(M[0], M[5], M[10]); - - // We have to do the full calculation. - return vector3d(sqrtf(M[0] * M[0] + M[1] * M[1] + M[2] * M[2]), - sqrtf(M[4] * M[4] + M[5] * M[5] + M[6] * M[6]), - sqrtf(M[8] * M[8] + M[9] * M[9] + M[10] * M[10])); + auto row_vector_length = [this](int col) { + int i = 4 * col; + return sqrtf(M[i] * M[i] + M[i+1] * M[i+1] + M[i+2] * M[i+2]); + }; + return { + row_vector_length(0), + row_vector_length(1), + row_vector_length(2), + }; } template @@ -856,30 +817,27 @@ inline CMatrix4 &CMatrix4::setInverseRotationDegrees(const vector3d &ro template inline CMatrix4 &CMatrix4::setRotationRadians(const vector3d &rotation) { - const f64 cr = cos(rotation.X); - const f64 sr = sin(rotation.X); - const f64 cp = cos(rotation.Y); - const f64 sp = sin(rotation.Y); - const f64 cy = cos(rotation.Z); - const f64 sy = sin(rotation.Z); + const f64 cPitch = cos(rotation.X); + const f64 sPitch = sin(rotation.X); + const f64 cYaw = cos(rotation.Y); + const f64 sYaw = sin(rotation.Y); + const f64 cRoll = cos(rotation.Z); + const f64 sRoll = sin(rotation.Z); - M[0] = (T)(cp * cy); - M[1] = (T)(cp * sy); - M[2] = (T)(-sp); + M[0] = (T)(cYaw * cRoll); + M[1] = (T)(cYaw * sRoll); + M[2] = (T)(-sYaw); - const f64 srsp = sr * sp; - const f64 crsp = cr * sp; + const f64 sPitch_sYaw = sPitch * sYaw; + const f64 cPitch_sYaw = cPitch * sYaw; - M[4] = (T)(srsp * cy - cr * sy); - M[5] = (T)(srsp * sy + cr * cy); - M[6] = (T)(sr * cp); + M[4] = (T)(sPitch_sYaw * cRoll - cPitch * sRoll); + M[5] = (T)(sPitch_sYaw * sRoll + cPitch * cRoll); + M[6] = (T)(sPitch * cYaw); - M[8] = (T)(crsp * cy + sr * sy); - M[9] = (T)(crsp * sy - sr * cy); - M[10] = (T)(cr * cp); -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + M[8] = (T)(cPitch_sYaw * cRoll + sPitch * sRoll); + M[9] = (T)(cPitch_sYaw * sRoll - sPitch * cRoll); + M[10] = (T)(cPitch * cYaw); return *this; } @@ -929,7 +887,7 @@ inline core::vector3d CMatrix4::getRotationDegrees(const vector3d &scal //! Returns a rotation that is equivalent to that set by setRotationDegrees(). template -inline core::vector3d CMatrix4::getRotationDegrees() const +inline vector3d CMatrix4::getRotationDegrees() const { // Note: Using getScale() here make it look like it could do matrix decomposition. // It can't! It works (or should work) as long as rotation doesn't flip the handedness @@ -937,21 +895,7 @@ inline core::vector3d CMatrix4::getRotationDegrees() const // crossproduct of first 2 axes to direction of third axis, but TODO) // And maybe it should also offer the solution for the simple calculation // without regarding scaling as Irrlicht did before 1.7 - core::vector3d scale(getScale()); - - // We assume the matrix uses rotations instead of negative scaling 2 axes. - // Otherwise it fails even for some simple cases, like rotating around - // 2 axes by 180° which getScale thinks is a negative scaling. - if (scale.Y < 0 && scale.Z < 0) { - scale.Y = -scale.Y; - scale.Z = -scale.Z; - } else if (scale.X < 0 && scale.Z < 0) { - scale.X = -scale.X; - scale.Z = -scale.Z; - } else if (scale.X < 0 && scale.Y < 0) { - scale.X = -scale.X; - scale.Y = -scale.Y; - } + vector3d scale(getScale()); return getRotationDegrees(scale); } @@ -960,30 +904,27 @@ inline core::vector3d CMatrix4::getRotationDegrees() const template inline CMatrix4 &CMatrix4::setInverseRotationRadians(const vector3d &rotation) { - f64 cr = cos(rotation.X); - f64 sr = sin(rotation.X); - f64 cp = cos(rotation.Y); - f64 sp = sin(rotation.Y); - f64 cy = cos(rotation.Z); - f64 sy = sin(rotation.Z); + f64 cPitch = cos(rotation.X); + f64 sPitch = sin(rotation.X); + f64 cYaw = cos(rotation.Y); + f64 sYaw = sin(rotation.Y); + f64 cRoll = cos(rotation.Z); + f64 sRoll = sin(rotation.Z); - M[0] = (T)(cp * cy); - M[4] = (T)(cp * sy); - M[8] = (T)(-sp); + M[0] = (T)(cYaw * cRoll); + M[4] = (T)(cYaw * sRoll); + M[8] = (T)(-sYaw); - f64 srsp = sr * sp; - f64 crsp = cr * sp; + f64 sPitch_sYaw = sPitch * sYaw; + f64 cPitch_sYaw = cPitch * sYaw; - M[1] = (T)(srsp * cy - cr * sy); - M[5] = (T)(srsp * sy + cr * cy); - M[9] = (T)(sr * cp); + M[1] = (T)(sPitch_sYaw * cRoll - cPitch * sRoll); + M[5] = (T)(sPitch_sYaw * sRoll + cPitch * cRoll); + M[9] = (T)(sPitch * cYaw); - M[2] = (T)(crsp * cy + sr * sy); - M[6] = (T)(crsp * sy - sr * cy); - M[10] = (T)(cr * cp); -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + M[2] = (T)(cPitch_sYaw * cRoll + sPitch * sRoll); + M[6] = (T)(cPitch_sYaw * sRoll - sPitch * cRoll); + M[10] = (T)(cPitch * cYaw); return *this; } @@ -1015,9 +956,6 @@ inline CMatrix4 &CMatrix4::setRotationAxisRadians(const T &angle, const ve M[9] = (T)(tz * axis.Y - sx); M[10] = (T)(tz * axis.Z + c); -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1028,9 +966,6 @@ inline CMatrix4 &CMatrix4::makeIdentity() { memset(M, 0, 16 * sizeof(T)); M[0] = M[5] = M[10] = M[15] = (T)1; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = true; -#endif return *this; } @@ -1041,10 +976,6 @@ inline CMatrix4 &CMatrix4::makeIdentity() template inline bool CMatrix4::isIdentity() const { -#if defined(USE_MATRIX_TEST) - if (definitelyIdentityMatrix) - return true; -#endif if (!core::equals(M[12], (T)0) || !core::equals(M[13], (T)0) || !core::equals(M[14], (T)0) || !core::equals(M[15], (T)1)) return false; @@ -1068,9 +999,6 @@ inline bool CMatrix4::isIdentity() const if ((j != i) && (!iszero((*this)(i,j)))) return false; */ -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = true; -#endif return true; } @@ -1106,10 +1034,6 @@ inline bool CMatrix4::isOrthogonal() const template inline bool CMatrix4::isIdentity_integer_base() const { -#if defined(USE_MATRIX_TEST) - if (definitelyIdentityMatrix) - return true; -#endif if (IR(M[0]) != F32_VALUE_1) return false; if (IR(M[1]) != 0) @@ -1146,9 +1070,6 @@ inline bool CMatrix4::isIdentity_integer_base() const if (IR(M[15]) != F32_VALUE_1) return false; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = true; -#endif return true; } @@ -1173,25 +1094,13 @@ inline vector3d CMatrix4::scaleThenInvRotVect(const vector3d &v) const } template -inline void CMatrix4::transformVect(vector3df &vect) const +inline vector3d CMatrix4::transformVect(const vector3d &v) const { - T vector[3]; - - vector[0] = vect.X * M[0] + vect.Y * M[4] + vect.Z * M[8] + M[12]; - vector[1] = vect.X * M[1] + vect.Y * M[5] + vect.Z * M[9] + M[13]; - vector[2] = vect.X * M[2] + vect.Y * M[6] + vect.Z * M[10] + M[14]; - - vect.X = static_cast(vector[0]); - vect.Y = static_cast(vector[1]); - vect.Z = static_cast(vector[2]); -} - -template -inline void CMatrix4::transformVect(vector3df &out, const vector3df &in) const -{ - out.X = in.X * M[0] + in.Y * M[4] + in.Z * M[8] + M[12]; - out.Y = in.X * M[1] + in.Y * M[5] + in.Z * M[9] + M[13]; - out.Z = in.X * M[2] + in.Y * M[6] + in.Z * M[10] + M[14]; + return { + v.X * M[0] + v.Y * M[4] + v.Z * M[8] + M[12], + v.X * M[1] + v.Y * M[5] + v.Z * M[9] + M[13], + v.X * M[2] + v.Y * M[6] + v.Z * M[10] + M[14], + }; } template @@ -1402,9 +1311,6 @@ inline bool CMatrix4::getInverse(CMatrix4 &out) const m[1] * (m[6] * m[8] - m[4] * m[10]) + m[2] * (m[4] * m[9] - m[5] * m[8])); -#if defined(USE_MATRIX_TEST) - out.definitelyIdentityMatrix = definitelyIdentityMatrix; -#endif return true; } @@ -1433,9 +1339,6 @@ inline bool CMatrix4::getInversePrimitive(CMatrix4 &out) const out.M[14] = (T) - (M[12] * M[8] + M[13] * M[9] + M[14] * M[10]); out.M[15] = 1; -#if defined(USE_MATRIX_TEST) - out.definitelyIdentityMatrix = definitelyIdentityMatrix; -#endif return true; } @@ -1444,10 +1347,6 @@ inline bool CMatrix4::getInversePrimitive(CMatrix4 &out) const template inline bool CMatrix4::makeInverse() { -#if defined(USE_MATRIX_TEST) - if (definitelyIdentityMatrix) - return true; -#endif CMatrix4 temp(EM4CONST_NOTHING); if (getInverse(temp)) { @@ -1464,9 +1363,6 @@ inline CMatrix4 &CMatrix4::operator=(const T &scalar) for (s32 i = 0; i < 16; ++i) M[i] = scalar; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1509,9 +1405,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixPerspectiveFovRH( M[14] = (T)(2.0f * zNear * zFar / (zNear - zFar)); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1554,9 +1447,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixPerspectiveFovLH( M[14] = (T)(2.0f * zNear * zFar / (zNear - zFar)); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1589,9 +1479,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixPerspectiveFovInfinityLH( M[14] = (T)(zNear * (epsilon - 1.f)); M[15] = 0; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1631,9 +1518,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixOrthoLH( M[14] = (T) - (zFar + zNear) / (zFar - zNear); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1673,9 +1557,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixOrthoRH( M[14] = (T) - (zFar + zNear) / (zFar - zNear); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1716,9 +1597,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixPerspectiveRH( M[14] = (T)(2.0f * zNear * zFar / (zNear - zFar)); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1759,9 +1637,6 @@ inline CMatrix4 &CMatrix4::buildProjectionMatrixPerspectiveLH( M[14] = (T)(2.0f * zNear * zFar / (zNear - zFar)); } -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } @@ -1791,9 +1666,7 @@ inline CMatrix4 &CMatrix4::buildShadowMatrix(const core::vector3df &light, M[13] = (T)(-plane.D * light.Y); M[14] = (T)(-plane.D * light.Z); M[15] = (T)(-plane.D * point + d); -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + return *this; } @@ -1831,9 +1704,7 @@ inline CMatrix4 &CMatrix4::buildCameraLookAtMatrixLH( M[13] = (T)-yaxis.dotProduct(position); M[14] = (T)-zaxis.dotProduct(position); M[15] = 1; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + return *this; } @@ -1871,9 +1742,7 @@ inline CMatrix4 &CMatrix4::buildCameraLookAtMatrixRH( M[13] = (T)-yaxis.dotProduct(position); M[14] = (T)-zaxis.dotProduct(position); M[15] = 1; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + return *this; } @@ -1924,9 +1793,6 @@ inline void CMatrix4::getTransposed(CMatrix4 &o) const o[13] = M[7]; o[14] = M[11]; o[15] = M[15]; -#if defined(USE_MATRIX_TEST) - o.definitelyIdentityMatrix = definitelyIdentityMatrix; -#endif } // used to scale <-1,-1><1,1> to viewport @@ -2064,9 +1930,6 @@ inline void CMatrix4::setRotationCenter(const core::vector3df ¢er, const M[13] = -M[1] * center.X - M[5] * center.Y - M[9] * center.Z + (center.Y - translation.Y); M[14] = -M[2] * center.X - M[6] * center.Y - M[10] * center.Z + (center.Z - translation.Z); M[15] = (T)1.0; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif } /*! @@ -2108,9 +1971,7 @@ inline CMatrix4 &CMatrix4::buildTextureTransform(f32 rotateRad, M[13] = 0; M[14] = 0; M[15] = 1; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif + return *this; } @@ -2129,9 +1990,6 @@ inline CMatrix4 &CMatrix4::setTextureRotationCenter(f32 rotateRad) M[8] = (T)(0.5f * (s - c) + 0.5f); M[9] = (T)(-0.5f * (s + c) + 0.5f); -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = definitelyIdentityMatrix && (rotateRad == 0.0f); -#endif return *this; } @@ -2141,9 +1999,6 @@ inline CMatrix4 &CMatrix4::setTextureTranslate(f32 x, f32 y) M[8] = (T)x; M[9] = (T)y; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = definitelyIdentityMatrix && (x == 0.0f) && (y == 0.0f); -#endif return *this; } @@ -2159,10 +2014,6 @@ inline CMatrix4 &CMatrix4::setTextureTranslateTransposed(f32 x, f32 y) { M[2] = (T)x; M[6] = (T)y; - -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = definitelyIdentityMatrix && (x == 0.0f) && (y == 0.0f); -#endif return *this; } @@ -2171,9 +2022,6 @@ inline CMatrix4 &CMatrix4::setTextureScale(f32 sx, f32 sy) { M[0] = (T)sx; M[5] = (T)sy; -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = definitelyIdentityMatrix && (sx == 1.0f) && (sy == 1.0f); -#endif return *this; } @@ -2191,10 +2039,6 @@ inline CMatrix4 &CMatrix4::setTextureScaleCenter(f32 sx, f32 sy) M[5] = (T)sy; M[8] = (T)(0.5f - 0.5f * sx); M[9] = (T)(0.5f - 0.5f * sy); - -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = definitelyIdentityMatrix && (sx == 1.0f) && (sy == 1.0f); -#endif return *this; } @@ -2203,43 +2047,13 @@ template inline CMatrix4 &CMatrix4::setM(const T *data) { memcpy(M, data, 16 * sizeof(T)); - -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = false; -#endif return *this; } -// sets if the matrix is definitely identity matrix -template -inline void CMatrix4::setDefinitelyIdentityMatrix(bool isDefinitelyIdentityMatrix) -{ -#if defined(USE_MATRIX_TEST) - definitelyIdentityMatrix = isDefinitelyIdentityMatrix; -#else - (void)isDefinitelyIdentityMatrix; // prevent compiler warning -#endif -} - -// gets if the matrix is definitely identity matrix -template -inline bool CMatrix4::getDefinitelyIdentityMatrix() const -{ -#if defined(USE_MATRIX_TEST) - return definitelyIdentityMatrix; -#else - return false; -#endif -} - //! Compare two matrices using the equal method template inline bool CMatrix4::equals(const core::CMatrix4 &other, const T tolerance) const { -#if defined(USE_MATRIX_TEST) - if (definitelyIdentityMatrix && other.definitelyIdentityMatrix) - return true; -#endif for (s32 i = 0; i < 16; ++i) if (!core::equals(M[i], other.M[i], tolerance)) return false; diff --git a/irr/include/mt_opengl.h b/irr/include/mt_opengl.h index f69ba8c69..1a92cde56 100755 --- a/irr/include/mt_opengl.h +++ b/irr/include/mt_opengl.h @@ -15,11 +15,18 @@ #ifndef APIENTRYP #define APIENTRYP APIENTRY * #endif -#ifndef GLAPI - #define GLAPI extern +// undefine a few names that can easily clash with system headers +#ifdef NO_ERROR +#undef NO_ERROR +#endif +#ifdef ZERO +#undef ZERO +#endif +#ifdef ONE +#undef ONE #endif -class OpenGLProcedures { +class OpenGLProcedures final { private: // ./glcorearb.h typedef void GLvoid; @@ -49,8 +56,6 @@ private: typedef khronos_int64_t GLint64EXT; typedef void *GLeglClientBufferEXT; - // The script will miss this particular typedef thinking it's a PFN, - // so we have to paste it in manually. It's the only such type in OpenGL. typedef void (APIENTRY *GLDEBUGPROC) (GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); @@ -775,10 +780,12 @@ private: typedef void (APIENTRYP PFNGLTEXPAGECOMMITMENTPROC_MT) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit); std::unordered_set extensions; + public: // Call this once after creating the context. void LoadAllProcedures(irr::video::IContextManager *cmgr); - // Check if an extension is supported. + /// Check if an extension is supported. + /// @param ext full extension name e.g. "GL_KHR_no_error" inline bool IsExtensionPresent(const std::string &ext) const { return extensions.count(ext) > 0; @@ -3185,6 +3192,7 @@ public: static constexpr const GLenum STATE_RESTORE = 0x8BDC; static constexpr const GLenum SHADER_BINARY_VIV = 0x8FC4; + static constexpr const GLenum NO_ERROR = 0; static constexpr const GLenum ZERO = 0; static constexpr const GLenum ONE = 1; static constexpr const GLenum NONE = 0; diff --git a/irr/include/quaternion.h b/irr/include/quaternion.h index 4e90fa067..e23b1317d 100644 --- a/irr/include/quaternion.h +++ b/irr/include/quaternion.h @@ -358,8 +358,6 @@ inline void quaternion::getMatrixFast(matrix4 &dest) const dest[13] = 0.f; dest[14] = 0.f; dest[15] = 1.f; - - dest.setDefinitelyIdentityMatrix(false); } /*! @@ -397,8 +395,6 @@ inline void quaternion::getMatrix(matrix4 &dest, dest[13] = center.Y; dest[14] = center.Z; dest[15] = 1.f; - - dest.setDefinitelyIdentityMatrix(false); } /*! @@ -471,8 +467,6 @@ inline void quaternion::getMatrix_transposed(matrix4 &dest) const dest[7] = 0.f; dest[11] = 0.f; dest[15] = 1.f; - - dest.setDefinitelyIdentityMatrix(false); } // Inverts this quaternion diff --git a/irr/scripts/BindingGenerator.lua b/irr/scripts/BindingGenerator.lua index d0be04293..1ca5b41d9 100755 --- a/irr/scripts/BindingGenerator.lua +++ b/irr/scripts/BindingGenerator.lua @@ -219,11 +219,11 @@ local function ParseHeader( path, into, apiRegex, defs, consts, nameSet, noNewNa }; end elseif ( line:find( "#" ) and not line:find( "#include" ) ) then - local rawName, value = line:match( "#define%s+GL_([_%w]+)%s+0x(%w+)" ); + local rawName, value = line:match( "#define%s+GL_([_%w]+)%s+(0x%w+)" ); if rawName and value then local name, vendor = StripVendorSuffix( rawName, true ); if not constBanned[vendor] then - consts:Add{ name = name, vendor = vendor, value = "0x"..value }; + consts:Add{ name = name, vendor = vendor, value = value }; end end ::skip:: @@ -359,21 +359,28 @@ f:write[[ #ifndef APIENTRYP #define APIENTRYP APIENTRY * #endif -#ifndef GLAPI - #define GLAPI extern +// undefine a few names that can easily clash with system headers +#ifdef NO_ERROR +#undef NO_ERROR +#endif +#ifdef ZERO +#undef ZERO +#endif +#ifdef ONE +#undef ONE #endif ]]; f:write[[ -class OpenGLProcedures { +class OpenGLProcedures final { private: ]]; f:write( definitions:Concat( "\n" ) ); f:write( "\n" ); +-- The script will miss this particular typedef thinking it's a PFN, +-- so we have to paste it in manually. It's the only such type in OpenGL. f:write[[ - // The script will miss this particular typedef thinking it's a PFN, - // so we have to paste it in manually. It's the only such type in OpenGL. typedef void (APIENTRY *GLDEBUGPROC) (GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); @@ -382,10 +389,12 @@ f:write( typedefs:Concat( "\n" ) ); f:write( "\n\n" ); f:write [[ std::unordered_set extensions; + public: // Call this once after creating the context. void LoadAllProcedures(irr::video::IContextManager *cmgr); - // Check if an extension is supported. + /// Check if an extension is supported. + /// @param ext full extension name e.g. "GL_KHR_no_error" inline bool IsExtensionPresent(const std::string &ext) const { return extensions.count(ext) > 0; @@ -396,7 +405,10 @@ f:write( pointers:Concat( "\n" ) ); f:write( "\n\n" ); f:write( cppConsts:Concat( "\n" ) ); f:write( "\n\n" ); +-- We filter constants not in hex format to avoid the VERSION_X_X and extension +-- defines, but that means we miss these. f:write[[ + static constexpr const GLenum NO_ERROR = 0; static constexpr const GLenum ZERO = 0; static constexpr const GLenum ONE = 1; static constexpr const GLenum NONE = 0; @@ -416,7 +428,7 @@ f:write[[ #include #include -OpenGLProcedures GL = OpenGLProcedures(); +OpenGLProcedures GL; void OpenGLProcedures::LoadAllProcedures(irr::video::IContextManager *cmgr) { @@ -425,9 +437,11 @@ void OpenGLProcedures::LoadAllProcedures(irr::video::IContextManager *cmgr) f:write( loader:Concat() ); f:write[[ - // OpenGL 3 way to enumerate extensions + /* OpenGL 3 & ES 3 way to enumerate extensions */ GLint ext_count = 0; GetIntegerv(NUM_EXTENSIONS, &ext_count); + // clear error which is raised if unsupported + while (GetError() != GL.NO_ERROR) {} extensions.reserve(ext_count); for (GLint k = 0; k < ext_count; k++) { auto tmp = GetStringi(EXTENSIONS, k); @@ -437,16 +451,15 @@ f:write[[ if (!extensions.empty()) return; - // OpenGL 2 / ES 2 way to enumerate extensions + /* OpenGL 2 / ES 2 way to enumerate extensions */ auto ext_str = GetString(EXTENSIONS); if (!ext_str) return; // get the extension string, chop it up - std::stringstream ext_ss((char*)ext_str); + std::istringstream ext_ss((char*)ext_str); std::string tmp; while (std::getline(ext_ss, tmp, ' ')) extensions.emplace(tmp); - } ]]; f:close(); diff --git a/irr/src/CAnimatedMeshSceneNode.cpp b/irr/src/CAnimatedMeshSceneNode.cpp index ba8bc3b78..6facfcd06 100644 --- a/irr/src/CAnimatedMeshSceneNode.cpp +++ b/irr/src/CAnimatedMeshSceneNode.cpp @@ -7,7 +7,7 @@ #include "ISceneManager.h" #include "S3DVertex.h" #include "os.h" -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" #include "IDummyTransformationSceneNode.h" #include "IBoneSceneNode.h" #include "IMaterialRenderer.h" @@ -38,10 +38,6 @@ CAnimatedMeshSceneNode::CAnimatedMeshSceneNode(IAnimatedMesh *mesh, Looping(true), ReadOnlyMaterials(false), RenderFromIdentity(false), LoopCallBack(0), PassCount(0) { -#ifdef _DEBUG - setDebugName("CAnimatedMeshSceneNode"); -#endif - setMesh(mesh); } @@ -165,12 +161,12 @@ IMesh *CAnimatedMeshSceneNode::getMeshForCurrentFrame() // As multiple scene nodes may be sharing the same skinned mesh, we have to // re-animate it every frame to ensure that this node gets the mesh that it needs. - CSkinnedMesh *skinnedMesh = static_cast(Mesh); + SkinnedMesh *skinnedMesh = static_cast(Mesh); if (JointMode == EJUOR_CONTROL) // write to mesh skinnedMesh->transferJointsToMesh(JointChildSceneNodes); else - skinnedMesh->animateMesh(getFrameNr(), 1.0f); + skinnedMesh->animateMesh(getFrameNr()); // Update the skinned mesh for the current joint transforms. skinnedMesh->skinMesh(); @@ -227,7 +223,7 @@ void CAnimatedMeshSceneNode::render() Box = m->getBoundingBox(); } else { #ifdef _DEBUG - os::Printer::log("Animated Mesh returned no mesh to render.", Mesh->getDebugName(), ELL_WARNING); + os::Printer::log("Animated Mesh returned no mesh to render.", ELL_WARNING); #endif return; } @@ -257,7 +253,7 @@ void CAnimatedMeshSceneNode::render() // for debug purposes only: if (DebugDataVisible && PassCount == 1) { video::SMaterial debug_mat; - debug_mat.AntiAliasing = 0; + debug_mat.AntiAliasing = video::EAAM_OFF; driver->setMaterial(debug_mat); // show normals if (DebugDataVisible & scene::EDS_NORMALS) { @@ -280,9 +276,6 @@ void CAnimatedMeshSceneNode::render() debug_mat.ZBuffer = video::ECFN_DISABLED; driver->setMaterial(debug_mat); - if (DebugDataVisible & scene::EDS_BBOX) - driver->draw3DBox(Box, video::SColor(255, 255, 255, 255)); - // show bounding box if (DebugDataVisible & scene::EDS_BBOX_BUFFERS) { for (u32 g = 0; g < m->getMeshBufferCount(); ++g) { @@ -294,17 +287,18 @@ void CAnimatedMeshSceneNode::render() } } + if (DebugDataVisible & scene::EDS_BBOX) + driver->draw3DBox(Box, video::SColor(255, 255, 255, 255)); + // show skeleton if (DebugDataVisible & scene::EDS_SKELETON) { if (Mesh->getMeshType() == EAMT_SKINNED) { // draw skeleton - for (u32 g = 0; g < ((ISkinnedMesh *)Mesh)->getAllJoints().size(); ++g) { - ISkinnedMesh::SJoint *joint = ((ISkinnedMesh *)Mesh)->getAllJoints()[g]; - - for (u32 n = 0; n < joint->Children.size(); ++n) { + for (auto *joint : ((SkinnedMesh *)Mesh)->getAllJoints()) { + for (const auto *childJoint : joint->Children) { driver->draw3DLine(joint->GlobalAnimatedMatrix.getTranslation(), - joint->Children[n]->GlobalAnimatedMatrix.getTranslation(), + childJoint->GlobalAnimatedMatrix.getTranslation(), video::SColor(255, 51, 66, 255)); } } @@ -404,7 +398,7 @@ IBoneSceneNode *CAnimatedMeshSceneNode::getJointNode(const c8 *jointName) checkJoints(); - ISkinnedMesh *skinnedMesh = (ISkinnedMesh *)Mesh; + auto *skinnedMesh = (SkinnedMesh *)Mesh; const std::optional number = skinnedMesh->getJointNumber(jointName); @@ -446,7 +440,7 @@ u32 CAnimatedMeshSceneNode::getJointCount() const if (!Mesh || Mesh->getMeshType() != EAMT_SKINNED) return 0; - ISkinnedMesh *skinnedMesh = (ISkinnedMesh *)Mesh; + auto *skinnedMesh = (SkinnedMesh *)Mesh; return skinnedMesh->getJointCount(); } @@ -596,10 +590,9 @@ void CAnimatedMeshSceneNode::animateJoints(bool CalculateAbsolutePositions) checkJoints(); const f32 frame = getFrameNr(); // old? - CSkinnedMesh *skinnedMesh = static_cast(Mesh); + SkinnedMesh *skinnedMesh = static_cast(Mesh); - skinnedMesh->transferOnlyJointsHintsToMesh(JointChildSceneNodes); - skinnedMesh->animateMesh(frame, 1.0f); + skinnedMesh->animateMesh(frame); skinnedMesh->recoverJointsFromMesh(JointChildSceneNodes); //----------------------------------------- @@ -671,8 +664,8 @@ void CAnimatedMeshSceneNode::checkJoints() JointChildSceneNodes.clear(); // Create joints for SkinnedMesh - ((CSkinnedMesh *)Mesh)->addJoints(JointChildSceneNodes, this, SceneManager); - ((CSkinnedMesh *)Mesh)->recoverJointsFromMesh(JointChildSceneNodes); + ((SkinnedMesh *)Mesh)->addJoints(JointChildSceneNodes, this, SceneManager); + ((SkinnedMesh *)Mesh)->recoverJointsFromMesh(JointChildSceneNodes); JointsUsed = true; JointMode = EJUOR_READ; diff --git a/irr/src/CAnimatedMeshSceneNode.h b/irr/src/CAnimatedMeshSceneNode.h index e45edca86..5149f7618 100644 --- a/irr/src/CAnimatedMeshSceneNode.h +++ b/irr/src/CAnimatedMeshSceneNode.h @@ -145,7 +145,7 @@ private: void beginTransition(); core::array Materials; - core::aabbox3d Box; + core::aabbox3d Box{{0.0f, 0.0f, 0.0f}}; IAnimatedMesh *Mesh; f32 StartFrame; @@ -169,7 +169,7 @@ private: IAnimationEndCallBack *LoopCallBack; s32 PassCount; - core::array JointChildSceneNodes; + std::vector JointChildSceneNodes; core::array PretransitingSave; }; diff --git a/irr/src/CAttributes.cpp b/irr/src/CAttributes.cpp index b1509e455..924bd1a45 100644 --- a/irr/src/CAttributes.cpp +++ b/irr/src/CAttributes.cpp @@ -12,12 +12,7 @@ namespace irr namespace io { -CAttributes::CAttributes() -{ -#ifdef _DEBUG - setDebugName("CAttributes"); -#endif -} +CAttributes::CAttributes() {} CAttributes::~CAttributes() { diff --git a/irr/src/CB3DMeshFileLoader.cpp b/irr/src/CB3DMeshFileLoader.cpp index 6cb40cb95..e99bd2eed 100644 --- a/irr/src/CB3DMeshFileLoader.cpp +++ b/irr/src/CB3DMeshFileLoader.cpp @@ -10,6 +10,7 @@ #include "IVideoDriver.h" #include "IFileSystem.h" +#include "SkinnedMesh.h" #include "coreutil.h" #include "os.h" @@ -28,11 +29,7 @@ namespace scene CB3DMeshFileLoader::CB3DMeshFileLoader(scene::ISceneManager *smgr) : AnimatedMesh(0), B3DFile(0), VerticesStart(0), NormalsInFile(false), HasVertexColors(false), ShowWarning(true) -{ -#ifdef _DEBUG - setDebugName("CB3DMeshFileLoader"); -#endif -} +{} //! returns true if the file maybe is able to be loaded by this class //! based on the file extension (e.g. ".bsp") @@ -51,12 +48,12 @@ IAnimatedMesh *CB3DMeshFileLoader::createMesh(io::IReadFile *file) return 0; B3DFile = file; - AnimatedMesh = new scene::CSkinnedMesh(); + AnimatedMesh = new scene::SkinnedMeshBuilder(); ShowWarning = true; // If true a warning is issued if too many textures are used VerticesStart = 0; if (load()) { - AnimatedMesh->finalize(); + return AnimatedMesh->finalize(); } else { AnimatedMesh->drop(); AnimatedMesh = 0; @@ -111,7 +108,7 @@ bool CB3DMeshFileLoader::load() if (!readChunkBRUS()) return false; } else if (strncmp(B3dStack.getLast().name, "NODE", 4) == 0) { - if (!readChunkNODE((CSkinnedMesh::SJoint *)0)) + if (!readChunkNODE((SkinnedMesh::SJoint *)0)) return false; } else { os::Printer::log("Unknown chunk found in mesh base - skipping"); @@ -133,9 +130,9 @@ bool CB3DMeshFileLoader::load() return true; } -bool CB3DMeshFileLoader::readChunkNODE(CSkinnedMesh::SJoint *inJoint) +bool CB3DMeshFileLoader::readChunkNODE(SkinnedMesh::SJoint *inJoint) { - CSkinnedMesh::SJoint *joint = AnimatedMesh->addJoint(inJoint); + SkinnedMesh::SJoint *joint = AnimatedMesh->addJoint(inJoint); joint->Name = readString(); #ifdef _B3D_READER_DEBUG @@ -211,7 +208,7 @@ bool CB3DMeshFileLoader::readChunkNODE(CSkinnedMesh::SJoint *inJoint) return true; } -bool CB3DMeshFileLoader::readChunkMESH(CSkinnedMesh::SJoint *inJoint) +bool CB3DMeshFileLoader::readChunkMESH(SkinnedMesh::SJoint *inJoint) { #ifdef _B3D_READER_DEBUG core::stringc logStr; @@ -254,7 +251,7 @@ bool CB3DMeshFileLoader::readChunkMESH(CSkinnedMesh::SJoint *inJoint) meshBuffer->Material = Materials[brushID].Material; } - if (readChunkTRIS(meshBuffer, AnimatedMesh->getMeshBuffers().size() - 1, VerticesStart) == false) + if (readChunkTRIS(meshBuffer, AnimatedMesh->getMeshBufferCount() - 1, VerticesStart) == false) return false; if (!NormalsInFile) { @@ -302,7 +299,7 @@ VRTS: float tex_coords[tex_coord_sets][tex_coord_set_size] ;tex coords } */ -bool CB3DMeshFileLoader::readChunkVRTS(CSkinnedMesh::SJoint *inJoint) +bool CB3DMeshFileLoader::readChunkVRTS(SkinnedMesh::SJoint *inJoint) { #ifdef _B3D_READER_DEBUG core::stringc logStr; @@ -521,7 +518,7 @@ bool CB3DMeshFileLoader::readChunkTRIS(scene::SSkinMeshBuffer *meshBuffer, u32 m return true; } -bool CB3DMeshFileLoader::readChunkBONE(CSkinnedMesh::SJoint *inJoint) +bool CB3DMeshFileLoader::readChunkBONE(SkinnedMesh::SJoint *inJoint) { #ifdef _B3D_READER_DEBUG core::stringc logStr; @@ -552,7 +549,7 @@ bool CB3DMeshFileLoader::readChunkBONE(CSkinnedMesh::SJoint *inJoint) if (AnimatedVertices_VertexID[globalVertexID] == -1) { os::Printer::log("B3dMeshLoader: Weight has bad vertex id (no link to meshbuffer index found)"); } else if (strength > 0) { - CSkinnedMesh::SWeight *weight = AnimatedMesh->addWeight(inJoint); + SkinnedMesh::SWeight *weight = AnimatedMesh->addWeight(inJoint); weight->strength = strength; // Find the meshbuffer and Vertex index from the Global Vertex ID: weight->vertex_id = AnimatedVertices_VertexID[globalVertexID]; @@ -565,11 +562,11 @@ bool CB3DMeshFileLoader::readChunkBONE(CSkinnedMesh::SJoint *inJoint) return true; } -bool CB3DMeshFileLoader::readChunkKEYS(CSkinnedMesh::SJoint *inJoint) +bool CB3DMeshFileLoader::readChunkKEYS(SkinnedMesh::SJoint *inJoint) { #ifdef _B3D_READER_DEBUG // Only print first, that's just too much output otherwise - if (!inJoint || (inJoint->PositionKeys.empty() && inJoint->ScaleKeys.empty() && inJoint->RotationKeys.empty())) { + if (!inJoint || inJoint->keys.empty()) { core::stringc logStr; for (u32 i = 1; i < B3dStack.size(); ++i) logStr += "-"; @@ -584,13 +581,6 @@ bool CB3DMeshFileLoader::readChunkKEYS(CSkinnedMesh::SJoint *inJoint) flags = os::Byteswap::byteswap(flags); #endif - CSkinnedMesh::SPositionKey *oldPosKey = 0; - core::vector3df oldPos[2]; - CSkinnedMesh::SScaleKey *oldScaleKey = 0; - core::vector3df oldScale[2]; - CSkinnedMesh::SRotationKey *oldRotKey = 0; - core::quaternion oldRot[2]; - bool isFirst[3] = {true, true, true}; while ((B3dStack.getLast().startposition + B3dStack.getLast().length) > B3DFile->getPos()) // this chunk repeats { s32 frame; @@ -600,91 +590,24 @@ bool CB3DMeshFileLoader::readChunkKEYS(CSkinnedMesh::SJoint *inJoint) frame = os::Byteswap::byteswap(frame); #endif + if (frame < 1) { + os::Printer::log("Illegal frame number found", B3DFile->getFileName(), ELL_ERROR); + frame = 1; + } + // Add key frames, frames in Irrlicht are zero-based f32 data[4]; if (flags & 1) { readFloats(data, 3); - if ((oldPosKey != 0) && (oldPos[0] == oldPos[1])) { - const core::vector3df pos(data[0], data[1], data[2]); - if (oldPos[1] == pos) - oldPosKey->frame = (f32)frame - 1; - else { - oldPos[0] = oldPos[1]; - oldPosKey = AnimatedMesh->addPositionKey(inJoint); - oldPosKey->frame = (f32)frame - 1; - oldPos[1].set(oldPosKey->position.set(pos)); - } - } else if (oldPosKey == 0 && isFirst[0]) { - oldPosKey = AnimatedMesh->addPositionKey(inJoint); - oldPosKey->frame = (f32)frame - 1; - oldPos[0].set(oldPosKey->position.set(data[0], data[1], data[2])); - oldPosKey = 0; - isFirst[0] = false; - } else { - if (oldPosKey != 0) - oldPos[0] = oldPos[1]; - oldPosKey = AnimatedMesh->addPositionKey(inJoint); - oldPosKey->frame = (f32)frame - 1; - oldPos[1].set(oldPosKey->position.set(data[0], data[1], data[2])); - } + AnimatedMesh->addPositionKey(inJoint, frame - 1, {data[0], data[1], data[2]}); } if (flags & 2) { readFloats(data, 3); - if ((oldScaleKey != 0) && (oldScale[0] == oldScale[1])) { - const core::vector3df scale(data[0], data[1], data[2]); - if (oldScale[1] == scale) - oldScaleKey->frame = (f32)frame - 1; - else { - oldScale[0] = oldScale[1]; - oldScaleKey = AnimatedMesh->addScaleKey(inJoint); - oldScaleKey->frame = (f32)frame - 1; - oldScale[1].set(oldScaleKey->scale.set(scale)); - } - } else if (oldScaleKey == 0 && isFirst[1]) { - oldScaleKey = AnimatedMesh->addScaleKey(inJoint); - oldScaleKey->frame = (f32)frame - 1; - oldScale[0].set(oldScaleKey->scale.set(data[0], data[1], data[2])); - oldScaleKey = 0; - isFirst[1] = false; - } else { - if (oldScaleKey != 0) - oldScale[0] = oldScale[1]; - oldScaleKey = AnimatedMesh->addScaleKey(inJoint); - oldScaleKey->frame = (f32)frame - 1; - oldScale[1].set(oldScaleKey->scale.set(data[0], data[1], data[2])); - } + AnimatedMesh->addScaleKey(inJoint, frame - 1, {data[0], data[1], data[2]}); } if (flags & 4) { readFloats(data, 4); - if ((oldRotKey != 0) && (oldRot[0] == oldRot[1])) { - // meant to be in this order since b3d stores W first - const core::quaternion rot(data[1], data[2], data[3], data[0]); - if (oldRot[1] == rot) - oldRotKey->frame = (f32)frame - 1; - else { - oldRot[0] = oldRot[1]; - oldRotKey = AnimatedMesh->addRotationKey(inJoint); - oldRotKey->frame = (f32)frame - 1; - oldRot[1].set(oldRotKey->rotation.set(data[1], data[2], data[3], data[0])); - oldRot[1].normalize(); - } - } else if (oldRotKey == 0 && isFirst[2]) { - oldRotKey = AnimatedMesh->addRotationKey(inJoint); - oldRotKey->frame = (f32)frame - 1; - // meant to be in this order since b3d stores W first - oldRot[0].set(oldRotKey->rotation.set(data[1], data[2], data[3], data[0])); - oldRot[0].normalize(); - oldRotKey = 0; - isFirst[2] = false; - } else { - if (oldRotKey != 0) - oldRot[0] = oldRot[1]; - oldRotKey = AnimatedMesh->addRotationKey(inJoint); - oldRotKey->frame = (f32)frame - 1; - // meant to be in this order since b3d stores W first - oldRot[1].set(oldRotKey->rotation.set(data[1], data[2], data[3], data[0])); - oldRot[1].normalize(); - } + AnimatedMesh->addRotationKey(inJoint, frame - 1, core::quaternion(data[1], data[2], data[3], data[0])); } } diff --git a/irr/src/CB3DMeshFileLoader.h b/irr/src/CB3DMeshFileLoader.h index 808b68170..55978d743 100644 --- a/irr/src/CB3DMeshFileLoader.h +++ b/irr/src/CB3DMeshFileLoader.h @@ -10,7 +10,7 @@ #include "IMeshLoader.h" #include "ISceneManager.h" -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" #include "SB3DStructs.h" #include "IReadFile.h" @@ -39,12 +39,12 @@ public: private: bool load(); - bool readChunkNODE(CSkinnedMesh::SJoint *InJoint); - bool readChunkMESH(CSkinnedMesh::SJoint *InJoint); - bool readChunkVRTS(CSkinnedMesh::SJoint *InJoint); + bool readChunkNODE(SkinnedMesh::SJoint *InJoint); + bool readChunkMESH(SkinnedMesh::SJoint *InJoint); + bool readChunkVRTS(SkinnedMesh::SJoint *InJoint); bool readChunkTRIS(scene::SSkinMeshBuffer *MeshBuffer, u32 MeshBufferID, s32 Vertices_Start); - bool readChunkBONE(CSkinnedMesh::SJoint *InJoint); - bool readChunkKEYS(CSkinnedMesh::SJoint *InJoint); + bool readChunkBONE(SkinnedMesh::SJoint *InJoint); + bool readChunkKEYS(SkinnedMesh::SJoint *InJoint); bool readChunkANIM(); bool readChunkTEXS(); bool readChunkBRUS(); @@ -63,7 +63,7 @@ private: core::array BaseVertices; - CSkinnedMesh *AnimatedMesh; + SkinnedMeshBuilder *AnimatedMesh; io::IReadFile *B3DFile; // B3Ds have Vertex ID's local within the mesh I don't want this diff --git a/irr/src/CBillboardSceneNode.cpp b/irr/src/CBillboardSceneNode.cpp index 1c6d88dae..6769e8f04 100644 --- a/irr/src/CBillboardSceneNode.cpp +++ b/irr/src/CBillboardSceneNode.cpp @@ -20,10 +20,6 @@ CBillboardSceneNode::CBillboardSceneNode(ISceneNode *parent, ISceneManager *mgr, IBillboardSceneNode(parent, mgr, id, position), Buffer(new SMeshBuffer()) { -#ifdef _DEBUG - setDebugName("CBillboardSceneNode"); -#endif - setSize(size); auto &Vertices = Buffer->Vertices->Data; diff --git a/irr/src/CBillboardSceneNode.h b/irr/src/CBillboardSceneNode.h index f0d7f9dcf..2b11cc8f4 100644 --- a/irr/src/CBillboardSceneNode.h +++ b/irr/src/CBillboardSceneNode.h @@ -104,7 +104,7 @@ private: /** Note that we can't use the real boundingbox for culling because at that point the camera which is used to calculate the billboard is not yet updated. So we only know the real boundingbox after rendering - which is too late for culling. */ - core::aabbox3d BBoxSafe; + core::aabbox3d BBoxSafe{{0.0f, 0.0f, 0.0f}}; scene::SMeshBuffer *Buffer; }; diff --git a/irr/src/CBoneSceneNode.cpp b/irr/src/CBoneSceneNode.cpp index b9eb8892e..7aa637094 100644 --- a/irr/src/CBoneSceneNode.cpp +++ b/irr/src/CBoneSceneNode.cpp @@ -18,9 +18,6 @@ CBoneSceneNode::CBoneSceneNode(ISceneNode *parent, ISceneManager *mgr, s32 id, BoneIndex(boneIndex), AnimationMode(EBAM_AUTOMATIC), SkinningSpace(EBSS_LOCAL) { -#ifdef _DEBUG - setDebugName("CBoneSceneNode"); -#endif setName(boneName); } diff --git a/irr/src/CBoneSceneNode.h b/irr/src/CBoneSceneNode.h index 8e1a0f7a1..d900570db 100644 --- a/irr/src/CBoneSceneNode.h +++ b/irr/src/CBoneSceneNode.h @@ -60,7 +60,7 @@ private: u32 BoneIndex; - core::aabbox3d Box; + core::aabbox3d Box{-1.0f, -1.0f, -1.0f, 1.0f, 1.0f, 1.0f}; E_BONE_ANIMATION_MODE AnimationMode; E_BONE_SKINNING_SPACE SkinningSpace; diff --git a/irr/src/CCameraSceneNode.cpp b/irr/src/CCameraSceneNode.cpp index f8899e5ff..e1c3c96f6 100644 --- a/irr/src/CCameraSceneNode.cpp +++ b/irr/src/CCameraSceneNode.cpp @@ -20,10 +20,6 @@ CCameraSceneNode::CCameraSceneNode(ISceneNode *parent, ISceneManager *mgr, s32 i Target(lookat), UpVector(0.0f, 1.0f, 0.0f), ZNear(1.0f), ZFar(3000.0f), InputReceiverEnabled(true), TargetAndRotationAreBound(false) { -#ifdef _DEBUG - setDebugName("CCameraSceneNode"); -#endif - // set default projection Fovy = core::PI / 2.5f; // Field of view, in radians. Aspect = 4.0f / 3.0f; // Aspect ratio. diff --git a/irr/src/CColorConverter.cpp b/irr/src/CColorConverter.cpp index 96b22c544..d1bd302c7 100644 --- a/irr/src/CColorConverter.cpp +++ b/irr/src/CColorConverter.cpp @@ -7,98 +7,20 @@ #include "os.h" #include "irrString.h" +// Warning: The naming of Irrlicht color formats +// is not consistent regarding actual component order in memory. +// E.g. in CImage, ECF_R8G8B8 is handled per-byte and stored as [R][G][B] in memory +// while ECF_A8R8G8B8 is handled as an u32 0xAARRGGBB so [B][G][R][A] (little endian) in memory. +// The conversions suffer from the same inconsistencies, e.g. +// convert_R8G8B8toA8R8G8B8 converts [R][G][B] into 0xFFRRGGBB = [B][G][R][FF] (little endian); +// convert_A1R5G5B5toR8G8B8 converts 0bARRRRRGGGGGBBBBB into [R][G][B]. +// This also means many conversions may be broken on big endian. + namespace irr { namespace video { -//! converts a monochrome bitmap to A1R5G5B5 data -void CColorConverter::convert1BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, s32 linepad, bool flip) -{ - if (!in || !out) - return; - - if (flip) - out += width * height; - - for (s32 y = 0; y < height; ++y) { - s32 shift = 7; - if (flip) - out -= width; - - for (s32 x = 0; x < width; ++x) { - out[x] = *in >> shift & 0x01 ? (s16)0xffff : (s16)0x8000; - - if ((--shift) < 0) { // 8 pixel done - shift = 7; - ++in; - } - } - - if (shift != 7) // width did not fill last byte - ++in; - - if (!flip) - out += width; - in += linepad; - } -} - -//! converts a 4 bit palettized image to A1R5G5B5 -void CColorConverter::convert4BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, const s32 *palette, s32 linepad, bool flip) -{ - if (!in || !out || !palette) - return; - - if (flip) - out += width * height; - - for (s32 y = 0; y < height; ++y) { - s32 shift = 4; - if (flip) - out -= width; - - for (s32 x = 0; x < width; ++x) { - out[x] = X8R8G8B8toA1R5G5B5(palette[(u8)((*in >> shift) & 0xf)]); - - if (shift == 0) { - shift = 4; - ++in; - } else - shift = 0; - } - - if (shift == 0) // odd width - ++in; - - if (!flip) - out += width; - in += linepad; - } -} - -//! converts a 8 bit palettized image into A1R5G5B5 -void CColorConverter::convert8BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, const s32 *palette, s32 linepad, bool flip) -{ - if (!in || !out || !palette) - return; - - if (flip) - out += width * height; - - for (s32 y = 0; y < height; ++y) { - if (flip) - out -= width; // one line back - for (s32 x = 0; x < width; ++x) { - out[x] = X8R8G8B8toA1R5G5B5(palette[(u8)(*in)]); - ++in; - } - if (!flip) - out += width; - in += linepad; - } -} - //! converts a 8 bit palettized or non palettized image (A8) into R8G8B8 void CColorConverter::convert8BitTo24Bit(const u8 *in, u8 *out, s32 width, s32 height, const u8 *palette, s32 linepad, bool flip) { @@ -480,19 +402,6 @@ void CColorConverter::convert_R8G8B8toA1R5G5B5(const void *sP, s32 sN, void *dP) } } -void CColorConverter::convert_B8G8R8toA8R8G8B8(const void *sP, s32 sN, void *dP) -{ - u8 *sB = (u8 *)sP; - u32 *dB = (u32 *)dP; - - for (s32 x = 0; x < sN; ++x) { - *dB = 0xff000000 | (sB[2] << 16) | (sB[1] << 8) | sB[0]; - - sB += 3; - ++dB; - } -} - void CColorConverter::convert_A8R8G8B8toR8G8B8A8(const void *sP, s32 sN, void *dP) { const u32 *sB = (const u32 *)sP; @@ -515,22 +424,6 @@ void CColorConverter::convert_A8R8G8B8toA8B8G8R8(const void *sP, s32 sN, void *d } } -void CColorConverter::convert_B8G8R8A8toA8R8G8B8(const void *sP, s32 sN, void *dP) -{ - u8 *sB = (u8 *)sP; - u8 *dB = (u8 *)dP; - - for (s32 x = 0; x < sN; ++x) { - dB[0] = sB[3]; - dB[1] = sB[2]; - dB[2] = sB[1]; - dB[3] = sB[0]; - - sB += 4; - dB += 4; - } -} - void CColorConverter::convert_R8G8B8toB8G8R8(const void *sP, s32 sN, void *dP) { u8 *sB = (u8 *)sP; diff --git a/irr/src/CColorConverter.h b/irr/src/CColorConverter.h index 7f1628297..8db7af097 100644 --- a/irr/src/CColorConverter.h +++ b/irr/src/CColorConverter.h @@ -15,14 +15,6 @@ namespace video class CColorConverter { public: - //! converts a monochrome bitmap to A1R5G5B5 - static void convert1BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, s32 linepad = 0, bool flip = false); - - //! converts a 4 bit palettized image to A1R5G5B5 - static void convert4BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, const s32 *palette, s32 linepad = 0, bool flip = false); - - //! converts a 8 bit palettized image to A1R5G5B5 - static void convert8BitTo16Bit(const u8 *in, s16 *out, s32 width, s32 height, const s32 *palette, s32 linepad = 0, bool flip = false); //! converts a 8 bit palettized or non palettized image (A8) into R8G8B8 static void convert8BitTo24Bit(const u8 *in, u8 *out, s32 width, s32 height, const u8 *palette, s32 linepad = 0, bool flip = false); @@ -74,8 +66,6 @@ public: static void convert_R8G8B8toA1R5G5B5(const void *sP, s32 sN, void *dP); static void convert_R8G8B8toB8G8R8(const void *sP, s32 sN, void *dP); static void convert_R8G8B8toR5G6B5(const void *sP, s32 sN, void *dP); - static void convert_B8G8R8toA8R8G8B8(const void *sP, s32 sN, void *dP); - static void convert_B8G8R8A8toA8R8G8B8(const void *sP, s32 sN, void *dP); static void convert_A8R8G8B8toR8G8B8A8(const void *sP, s32 sN, void *dP); static void convert_A8R8G8B8toA8B8G8R8(const void *sP, s32 sN, void *dP); diff --git a/irr/src/CDummyTransformationSceneNode.cpp b/irr/src/CDummyTransformationSceneNode.cpp index 73953dd38..e354038df 100644 --- a/irr/src/CDummyTransformationSceneNode.cpp +++ b/irr/src/CDummyTransformationSceneNode.cpp @@ -15,10 +15,6 @@ CDummyTransformationSceneNode::CDummyTransformationSceneNode( ISceneNode *parent, ISceneManager *mgr, s32 id) : IDummyTransformationSceneNode(parent, mgr, id) { -#ifdef _DEBUG - setDebugName("CDummyTransformationSceneNode"); -#endif - setAutomaticCulling(scene::EAC_OFF); } diff --git a/irr/src/CDummyTransformationSceneNode.h b/irr/src/CDummyTransformationSceneNode.h index 86fda3639..a03ed07fa 100644 --- a/irr/src/CDummyTransformationSceneNode.h +++ b/irr/src/CDummyTransformationSceneNode.h @@ -48,7 +48,7 @@ private: void setPosition(const core::vector3df &newpos) override; core::matrix4 RelativeTransformationMatrix; - core::aabbox3d Box; + core::aabbox3d Box{{0, 0, 0}}; }; } // end namespace scene diff --git a/irr/src/CEGLManager.cpp b/irr/src/CEGLManager.cpp index 6c39c5c74..b70a0c091 100644 --- a/irr/src/CEGLManager.cpp +++ b/irr/src/CEGLManager.cpp @@ -18,11 +18,7 @@ namespace video CEGLManager::CEGLManager() : IContextManager(), EglWindow(0), EglDisplay(EGL_NO_DISPLAY), EglSurface(EGL_NO_SURFACE), EglContext(EGL_NO_CONTEXT), EglConfig(0), MajorVersion(0), MinorVersion(0) -{ -#ifdef _DEBUG - setDebugName("CEGLManager"); -#endif -} +{} CEGLManager::~CEGLManager() { diff --git a/irr/src/CEmptySceneNode.cpp b/irr/src/CEmptySceneNode.cpp index 2b965a198..70a2ca21d 100644 --- a/irr/src/CEmptySceneNode.cpp +++ b/irr/src/CEmptySceneNode.cpp @@ -14,10 +14,6 @@ namespace scene CEmptySceneNode::CEmptySceneNode(ISceneNode *parent, ISceneManager *mgr, s32 id) : ISceneNode(parent, mgr, id) { -#ifdef _DEBUG - setDebugName("CEmptySceneNode"); -#endif - setAutomaticCulling(scene::EAC_OFF); } diff --git a/irr/src/CEmptySceneNode.h b/irr/src/CEmptySceneNode.h index c89ad59ae..bf5c48e9b 100644 --- a/irr/src/CEmptySceneNode.h +++ b/irr/src/CEmptySceneNode.h @@ -33,7 +33,7 @@ public: ISceneNode *clone(ISceneNode *newParent = 0, ISceneManager *newManager = 0) override; private: - core::aabbox3d Box; + core::aabbox3d Box{{0, 0, 0}}; }; } // end namespace scene diff --git a/irr/src/CFileList.cpp b/irr/src/CFileList.cpp index cd6c85df4..9294f3f46 100644 --- a/irr/src/CFileList.cpp +++ b/irr/src/CFileList.cpp @@ -18,10 +18,6 @@ static const io::path emptyFileListEntry; CFileList::CFileList(const io::path &path, bool ignoreCase, bool ignorePaths) : IgnorePaths(ignorePaths), IgnoreCase(ignoreCase), Path(path) { -#ifdef _DEBUG - setDebugName("CFileList"); -#endif - Path.replace('\\', '/'); } diff --git a/irr/src/CFileSystem.cpp b/irr/src/CFileSystem.cpp index 4b938c4c5..d8f04eb1d 100644 --- a/irr/src/CFileSystem.cpp +++ b/irr/src/CFileSystem.cpp @@ -43,10 +43,6 @@ namespace io //! constructor CFileSystem::CFileSystem() { -#ifdef _DEBUG - setDebugName("CFileSystem"); -#endif - setFileListSystem(FILESYSTEM_NATIVE); //! reset current working directory getWorkingDirectory(); diff --git a/irr/src/CFileSystem.h b/irr/src/CFileSystem.h index 9400d85a3..d2a627e49 100644 --- a/irr/src/CFileSystem.h +++ b/irr/src/CFileSystem.h @@ -91,7 +91,7 @@ public: private: //! Currently used FileSystemType - EFileSystemType FileSystemType; + EFileSystemType FileSystemType = FILESYSTEM_NATIVE; //! WorkingDirectory for Native and Virtual filesystems io::path WorkingDirectory[2]; //! currently attached ArchiveLoaders diff --git a/irr/src/CGLTFMeshFileLoader.cpp b/irr/src/CGLTFMeshFileLoader.cpp index fe67228a7..4e653fbf8 100644 --- a/irr/src/CGLTFMeshFileLoader.cpp +++ b/irr/src/CGLTFMeshFileLoader.cpp @@ -5,7 +5,7 @@ #include "SMaterialLayer.h" #include "coreutil.h" -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" #include "IAnimatedMesh.h" #include "IReadFile.h" #include "irrTypes.h" @@ -305,7 +305,7 @@ SelfType::createNormalizedValuesAccessor( } } -template +template std::array SelfType::getNormalizedValues( const NormalizedValuesAccessor &accessor, const std::size_t i) @@ -313,17 +313,19 @@ std::array SelfType::getNormalizedValues( std::array values; if (std::holds_alternative>>(accessor)) { const auto u8s = std::get>>(accessor).get(i); - for (u8 i = 0; i < N; ++i) - values[i] = static_cast(u8s[i]) / std::numeric_limits::max(); + for (std::size_t j = 0; j < N; ++j) + values[j] = static_cast(u8s[j]) / std::numeric_limits::max(); } else if (std::holds_alternative>>(accessor)) { const auto u16s = std::get>>(accessor).get(i); - for (u8 i = 0; i < N; ++i) - values[i] = static_cast(u16s[i]) / std::numeric_limits::max(); + for (std::size_t j = 0; j < N; ++j) + values[j] = static_cast(u16s[j]) / std::numeric_limits::max(); } else { values = std::get>>(accessor).get(i); - for (u8 i = 0; i < N; ++i) { - if (values[i] < 0 || values[i] > 1) - throw std::runtime_error("invalid normalized value"); + if constexpr (validate) { + for (std::size_t j = 0; j < N; ++j) { + if (values[j] < 0 || values[j] > 1) + throw std::runtime_error("invalid normalized value"); + } } } return values; @@ -344,14 +346,14 @@ IAnimatedMesh* SelfType::createMesh(io::IReadFile* file) const char *filename = file->getFileName().c_str(); try { tiniergltf::GlTF model = parseGLTF(file); - irr_ptr mesh(new CSkinnedMesh()); + irr_ptr mesh(new SkinnedMeshBuilder()); MeshExtractor extractor(std::move(model), mesh.get()); try { extractor.load(); for (const auto &warning : extractor.getWarnings()) { os::Printer::log(filename, warning.c_str(), ELL_WARNING); } - return mesh.release(); + return mesh.release()->finalize(); } catch (const std::runtime_error &e) { os::Printer::log("error converting gltf to irrlicht mesh", e.what(), ELL_ERROR); } @@ -410,7 +412,7 @@ static video::E_TEXTURE_CLAMP convertTextureWrap(const Wrap wrap) { void SelfType::MeshExtractor::addPrimitive( const tiniergltf::MeshPrimitive &primitive, const std::optional skinIdx, - CSkinnedMesh::SJoint *parent) + SkinnedMesh::SJoint *parent) { auto vertices = getVertices(primitive); if (!vertices.has_value()) @@ -493,6 +495,7 @@ void SelfType::MeshExtractor::addPrimitive( const auto weightAccessor = createNormalizedValuesAccessor<4>(m_gltf_model, weights->at(set)); + bool negative_weights = false; for (std::size_t v = 0; v < n_vertices; ++v) { std::array jointIdxs; if (std::holds_alternative>>(jointAccessor)) { @@ -501,21 +504,27 @@ void SelfType::MeshExtractor::addPrimitive( } else if (std::holds_alternative>>(jointAccessor)) { jointIdxs = std::get>>(jointAccessor).get(v); } - std::array strengths = getNormalizedValues(weightAccessor, v); + + // Be lax: We can allow weights that aren't normalized. Irrlicht already normalizes them. + // The glTF spec only requires that these be "as close to 1 as reasonably possible". + auto strengths = getNormalizedValues<4, false>(weightAccessor, v); // 4 joints per set for (std::size_t in_set = 0; in_set < 4; ++in_set) { u16 jointIdx = jointIdxs[in_set]; f32 strength = strengths[in_set]; - if (strength == 0) - continue; + negative_weights = negative_weights || (strength < 0); + if (strength <= 0) + continue; // note: also ignores negative weights - CSkinnedMesh::SWeight *weight = m_irr_model->addWeight(m_loaded_nodes.at(skin.joints.at(jointIdx))); + SkinnedMesh::SWeight *weight = m_irr_model->addWeight(m_loaded_nodes.at(skin.joints.at(jointIdx))); weight->buffer_id = meshbufNr; weight->vertex_id = v; weight->strength = strength; } } + if (negative_weights) + warn("negative weights"); } } @@ -527,7 +536,7 @@ void SelfType::MeshExtractor::addPrimitive( void SelfType::MeshExtractor::deferAddMesh( const std::size_t meshIdx, const std::optional skinIdx, - CSkinnedMesh::SJoint *parent) + SkinnedMesh::SJoint *parent) { m_mesh_loaders.emplace_back([=] { for (std::size_t pi = 0; pi < getPrimitiveCount(meshIdx); ++pi) { @@ -547,7 +556,7 @@ static const core::matrix4 leftToRight = core::matrix4( ); static const core::matrix4 rightToLeft = leftToRight; -static core::matrix4 loadTransform(const tiniergltf::Node::Matrix &m, CSkinnedMesh::SJoint *joint) +static core::matrix4 loadTransform(const tiniergltf::Node::Matrix &m, SkinnedMesh::SJoint *joint) { // Note: Under the hood, this casts these doubles to floats. core::matrix4 mat = convertHandedness(core::matrix4( @@ -576,7 +585,7 @@ static core::matrix4 loadTransform(const tiniergltf::Node::Matrix &m, CSkinnedMe return mat; } -static core::matrix4 loadTransform(const tiniergltf::Node::TRS &trs, CSkinnedMesh::SJoint *joint) +static core::matrix4 loadTransform(const tiniergltf::Node::TRS &trs, SkinnedMesh::SJoint *joint) { const auto &trans = trs.translation; const auto &rot = trs.rotation; @@ -594,7 +603,7 @@ static core::matrix4 loadTransform(const tiniergltf::Node::TRS &trs, CSkinnedMes } static core::matrix4 loadTransform(std::optional> transform, - CSkinnedMesh::SJoint *joint) { + SkinnedMesh::SJoint *joint) { if (!transform.has_value()) { return core::matrix4(); } @@ -603,7 +612,7 @@ static core::matrix4 loadTransform(std::optionalat(nodeIdx); auto *joint = m_irr_model->addJoint(parent); @@ -626,7 +635,7 @@ void SelfType::MeshExtractor::loadNode( void SelfType::MeshExtractor::loadNodes() { - m_loaded_nodes = std::vector(m_gltf_model.nodes->size()); + m_loaded_nodes = std::vector(m_gltf_model.nodes->size()); std::vector isChild(m_gltf_model.nodes->size()); for (const auto &node : *m_gltf_model.nodes) { @@ -668,8 +677,17 @@ void SelfType::MeshExtractor::loadAnimation(const std::size_t animIdx) for (const auto &channel : anim.channels) { const auto &sampler = anim.samplers.at(channel.sampler); - if (sampler.interpolation != tiniergltf::AnimationSampler::Interpolation::LINEAR) - throw std::runtime_error("unsupported interpolation, only linear interpolation is supported"); + + bool interpolate = ([&]() { + switch (sampler.interpolation) { + case tiniergltf::AnimationSampler::Interpolation::STEP: + return false; + case tiniergltf::AnimationSampler::Interpolation::LINEAR: + return true; + default: + throw std::runtime_error("Only STEP and LINEAR keyframe interpolation are supported"); + } + })(); const auto inputAccessor = Accessor::make(m_gltf_model, sampler.input); const auto n_frames = inputAccessor.getCount(); @@ -677,32 +695,38 @@ void SelfType::MeshExtractor::loadAnimation(const std::size_t animIdx) if (!channel.target.node.has_value()) throw std::runtime_error("no animated node"); - const auto &joint = m_loaded_nodes.at(*channel.target.node); + auto *joint = m_loaded_nodes.at(*channel.target.node); switch (channel.target.path) { case tiniergltf::AnimationChannelTarget::Path::TRANSLATION: { const auto outputAccessor = Accessor::make(m_gltf_model, sampler.output); + auto &channel = joint->keys.position; + channel.interpolate = interpolate; for (std::size_t i = 0; i < n_frames; ++i) { - auto *key = m_irr_model->addPositionKey(joint); - key->frame = inputAccessor.get(i); - key->position = convertHandedness(outputAccessor.get(i)); + f32 frame = inputAccessor.get(i); + core::vector3df position = outputAccessor.get(i); + channel.pushBack(frame, convertHandedness(position)); } break; } case tiniergltf::AnimationChannelTarget::Path::ROTATION: { const auto outputAccessor = Accessor::make(m_gltf_model, sampler.output); + auto &channel = joint->keys.rotation; + channel.interpolate = interpolate; for (std::size_t i = 0; i < n_frames; ++i) { - auto *key = m_irr_model->addRotationKey(joint); - key->frame = inputAccessor.get(i); - key->rotation = convertHandedness(outputAccessor.get(i)); + f32 frame = inputAccessor.get(i); + core::quaternion rotation = outputAccessor.get(i); + channel.pushBack(frame, convertHandedness(rotation)); } break; } case tiniergltf::AnimationChannelTarget::Path::SCALE: { const auto outputAccessor = Accessor::make(m_gltf_model, sampler.output); + auto &channel = joint->keys.scale; + channel.interpolate = interpolate; for (std::size_t i = 0; i < n_frames; ++i) { - auto *key = m_irr_model->addScaleKey(joint); - key->frame = inputAccessor.get(i); - key->scale = outputAccessor.get(i); + f32 frame = inputAccessor.get(i); + core::vector3df scale = outputAccessor.get(i); + channel.pushBack(frame, scale); } break; } @@ -747,8 +771,6 @@ void SelfType::MeshExtractor::load() } catch (const std::bad_optional_access &e) { throw std::runtime_error(e.what()); } - - m_irr_model->finalize(); } /** @@ -791,7 +813,8 @@ std::optional> SelfType::MeshExtractor::getIndices( index = std::get>(accessor).get(elemIdx); if (index == std::numeric_limits::max()) throw std::runtime_error("invalid index"); - } else if (std::holds_alternative>(accessor)) { + } else { + _IRR_DEBUG_BREAK_IF(!std::holds_alternative>(accessor)); u32 indexWide = std::get>(accessor).get(elemIdx); // Use >= here for consistency. if (indexWide >= std::numeric_limits::max()) diff --git a/irr/src/CGLTFMeshFileLoader.h b/irr/src/CGLTFMeshFileLoader.h index ae178565d..a4eac8baa 100644 --- a/irr/src/CGLTFMeshFileLoader.h +++ b/irr/src/CGLTFMeshFileLoader.h @@ -3,7 +3,7 @@ #pragma once -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" #include "IMeshLoader.h" #include "IReadFile.h" #include "irrTypes.h" @@ -91,7 +91,7 @@ private: const tiniergltf::GlTF &model, const std::size_t accessorIdx); - template + template static std::array getNormalizedValues( const NormalizedValuesAccessor &accessor, const std::size_t i); @@ -100,7 +100,7 @@ private: { public: MeshExtractor(tiniergltf::GlTF &&model, - CSkinnedMesh *mesh) noexcept + SkinnedMeshBuilder *mesh) noexcept : m_gltf_model(std::move(model)), m_irr_model(mesh) {}; /* Gets indices for the given mesh/primitive. @@ -118,20 +118,20 @@ private: std::size_t getPrimitiveCount(const std::size_t meshIdx) const; void load(); - const std::vector &getWarnings() { + const std::unordered_set &getWarnings() { return warnings; } private: const tiniergltf::GlTF m_gltf_model; - CSkinnedMesh *m_irr_model; + SkinnedMeshBuilder *m_irr_model; std::vector> m_mesh_loaders; - std::vector m_loaded_nodes; + std::vector m_loaded_nodes; - std::vector warnings; + std::unordered_set warnings; void warn(const std::string &warning) { - warnings.push_back(warning); + warnings.insert(warning); } void copyPositions(const std::size_t accessorIdx, @@ -145,13 +145,13 @@ private: void addPrimitive(const tiniergltf::MeshPrimitive &primitive, const std::optional skinIdx, - CSkinnedMesh::SJoint *parent); + SkinnedMesh::SJoint *parent); void deferAddMesh(const std::size_t meshIdx, const std::optional skinIdx, - CSkinnedMesh::SJoint *parentJoint); + SkinnedMesh::SJoint *parentJoint); - void loadNode(const std::size_t nodeIdx, CSkinnedMesh::SJoint *parentJoint); + void loadNode(const std::size_t nodeIdx, SkinnedMesh::SJoint *parentJoint); void loadNodes(); diff --git a/irr/src/CGLXManager.cpp b/irr/src/CGLXManager.cpp index 8593621b7..89a5cac20 100644 --- a/irr/src/CGLXManager.cpp +++ b/irr/src/CGLXManager.cpp @@ -23,10 +23,6 @@ namespace video CGLXManager::CGLXManager(const SIrrlichtCreationParameters ¶ms, const SExposedVideoData &videodata, int screennr) : Params(params), PrimaryContext(videodata), VisualInfo(0), glxFBConfig(0), GlxWin(0) { -#ifdef _DEBUG - setDebugName("CGLXManager"); -#endif - CurrentContext.OpenGLLinux.X11Display = PrimaryContext.OpenGLLinux.X11Display; int major, minor; diff --git a/irr/src/CGUIButton.cpp b/irr/src/CGUIButton.cpp index 60bab5f83..ea685be94 100644 --- a/irr/src/CGUIButton.cpp +++ b/irr/src/CGUIButton.cpp @@ -26,9 +26,6 @@ CGUIButton::CGUIButton(IGUIEnvironment *environment, IGUIElement *parent, IsPushButton(false), Pressed(false), UseAlphaChannel(false), DrawBorder(true), ScaleImage(false) { -#ifdef _DEBUG - setDebugName("CGUIButton"); -#endif setNotClipped(noclip); // This element can be tabbed. diff --git a/irr/src/CGUICheckBox.cpp b/irr/src/CGUICheckBox.cpp index 18dd6856a..4d407e676 100644 --- a/irr/src/CGUICheckBox.cpp +++ b/irr/src/CGUICheckBox.cpp @@ -19,10 +19,6 @@ namespace gui CGUICheckBox::CGUICheckBox(bool checked, IGUIEnvironment *environment, IGUIElement *parent, s32 id, core::rect rectangle) : IGUICheckBox(environment, parent, id, rectangle), CheckTime(0), Pressed(false), Checked(checked), Border(false), Background(false) { -#ifdef _DEBUG - setDebugName("CGUICheckBox"); -#endif - // this element can be tabbed into setTabStop(true); setTabOrder(-1); diff --git a/irr/src/CGUIComboBox.cpp b/irr/src/CGUIComboBox.cpp index 0088641b5..b55602b0c 100644 --- a/irr/src/CGUIComboBox.cpp +++ b/irr/src/CGUIComboBox.cpp @@ -26,10 +26,6 @@ CGUIComboBox::CGUIComboBox(IGUIEnvironment *environment, IGUIElement *parent, Selected(-1), HAlign(EGUIA_UPPERLEFT), VAlign(EGUIA_CENTER), MaxSelectionRows(5), HasFocus(false), ActiveFont(nullptr) { -#ifdef _DEBUG - setDebugName("CGUIComboBox"); -#endif - IGUISkin *skin = Environment->getSkin(); ListButton = Environment->addButton(core::recti(0, 0, 1, 1), this, -1, L""); diff --git a/irr/src/CGUIEditBox.cpp b/irr/src/CGUIEditBox.cpp index 8d03caf4a..6c29e89a9 100644 --- a/irr/src/CGUIEditBox.cpp +++ b/irr/src/CGUIEditBox.cpp @@ -39,10 +39,6 @@ CGUIEditBox::CGUIEditBox(const wchar_t *text, bool border, PasswordChar(L'*'), HAlign(EGUIA_UPPERLEFT), VAlign(EGUIA_CENTER), CurrentTextRect(0, 0, 1, 1), FrameRect(rectangle) { -#ifdef _DEBUG - setDebugName("CGUIEditBox"); -#endif - Text = text; if (Environment) @@ -792,9 +788,9 @@ void CGUIEditBox::draw() mbegin = font->getDimension(s.c_str()).Width; // deal with kerning - mbegin += font->getKerningWidth( - &((*txtLine)[realmbgn - startPos]), - realmbgn - startPos > 0 ? &((*txtLine)[realmbgn - startPos - 1]) : 0); + mbegin += font->getKerning( + (*txtLine)[realmbgn - startPos], + realmbgn - startPos > 0 ? (*txtLine)[realmbgn - startPos - 1] : 0).X; lineStartPos = realmbgn - startPos; } @@ -836,7 +832,8 @@ void CGUIEditBox::draw() } s = txtLine->subString(0, CursorPos - startPos); charcursorpos = font->getDimension(s.c_str()).Width + - font->getKerningWidth(CursorChar.c_str(), CursorPos - startPos > 0 ? &((*txtLine)[CursorPos - startPos - 1]) : 0); + font->getKerning(CursorChar[0], + CursorPos - startPos > 0 ? (*txtLine)[CursorPos - startPos - 1] : 0).X; if (focus && (CursorBlinkTime == 0 || (os::Timer::getTime() - BlinkStartTime) % (2 * CursorBlinkTime) < CursorBlinkTime)) { setTextRect(cursorLine); @@ -1198,7 +1195,7 @@ void CGUIEditBox::setTextRect(s32 line) d = font->getDimension(Text.c_str()); d.Height = AbsoluteRect.getHeight(); } - d.Height += font->getKerningHeight(); + d.Height += font->getKerning(L'A').Y; // justification switch (HAlign) { @@ -1386,7 +1383,7 @@ void CGUIEditBox::calculateScrollPos() // calculate vertical scrolling if (hasBrokenText) { - irr::u32 lineHeight = font->getDimension(L"A").Height + font->getKerningHeight(); + irr::u32 lineHeight = font->getDimension(L"A").Height + font->getKerning(L'A').Y; // only up to 1 line fits? if (lineHeight >= (irr::u32)FrameRect.getHeight()) { VScrollPos = 0; diff --git a/irr/src/CGUIEnvironment.cpp b/irr/src/CGUIEnvironment.cpp index 80115ab11..31e7038f4 100644 --- a/irr/src/CGUIEnvironment.cpp +++ b/irr/src/CGUIEnvironment.cpp @@ -50,10 +50,6 @@ CGUIEnvironment::CGUIEnvironment(io::IFileSystem *fs, video::IVideoDriver *drive if (Operator) Operator->grab(); -#ifdef _DEBUG - IGUIEnvironment::setDebugName("CGUIEnvironment"); -#endif - loadBuiltInFont(); IGUISkin *skin = createSkin(gui::EGST_WINDOWS_METALLIC); @@ -952,7 +948,7 @@ IGUIElement *CGUIEnvironment::getNextElement(bool reverse, bool group) // this element is not part of the tab cycle, // but its parent might be... IGUIElement *el = Focus; - while (el && el->getParent() && startOrder == -1) { + while (el->getParent() && startOrder == -1) { el = el->getParent(); startOrder = el->getTabOrder(); } diff --git a/irr/src/CGUIFileOpenDialog.cpp b/irr/src/CGUIFileOpenDialog.cpp index 1e669b255..7add9d8e1 100644 --- a/irr/src/CGUIFileOpenDialog.cpp +++ b/irr/src/CGUIFileOpenDialog.cpp @@ -33,10 +33,6 @@ CGUIFileOpenDialog::CGUIFileOpenDialog(const wchar_t *title, (parent->getAbsolutePosition().getHeight() - FOD_HEIGHT) / 2 + FOD_HEIGHT)), FileNameText(0), FileList(0), Dragging(false) { -#ifdef _DEBUG - IGUIElement::setDebugName("CGUIFileOpenDialog"); -#endif - Text = title; FileSystem = Environment ? Environment->getFileSystem() : 0; diff --git a/irr/src/CGUIFont.cpp b/irr/src/CGUIFont.cpp index 4d85702f5..951304476 100644 --- a/irr/src/CGUIFont.cpp +++ b/irr/src/CGUIFont.cpp @@ -21,10 +21,6 @@ CGUIFont::CGUIFont(IGUIEnvironment *env, const io::path &filename) : Driver(0), SpriteBank(0), Environment(env), WrongCharacter(0), MaxHeight(0), GlobalKerningWidth(0), GlobalKerningHeight(0) { -#ifdef _DEBUG - setDebugName("CGUIFont"); -#endif - if (Environment) { // don't grab environment, to avoid circular references Driver = Environment->getVideoDriver(); @@ -57,141 +53,6 @@ CGUIFont::~CGUIFont() } } -#if 0 -//! loads a font file from xml -bool CGUIFont::load(io::IXMLReader* xml, const io::path& directory) -{ - if (!SpriteBank) - return false; - - SpriteBank->clear(); - - while (xml->read()) - { - if (io::EXN_ELEMENT == xml->getNodeType()) - { - if (core::stringw(L"Texture") == xml->getNodeName()) - { - // add a texture - core::stringc fn = xml->getAttributeValue(L"filename"); - u32 i = (u32)xml->getAttributeValueAsInt(L"index"); - core::stringw alpha = xml->getAttributeValue(L"hasAlpha"); - - while (i+1 > SpriteBank->getTextureCount()) - SpriteBank->addTexture(0); - - bool flags[3]; - pushTextureCreationFlags(flags); - - // load texture - io::path textureFullName = core::mergeFilename(directory, fn); - SpriteBank->setTexture(i, Driver->getTexture(textureFullName)); - - popTextureCreationFlags(flags); - - // couldn't load texture, abort. - if (!SpriteBank->getTexture(i)) - { - os::Printer::log("Unable to load all textures in the font, aborting", ELL_ERROR); - return false; - } - else - { - // colorkey texture rather than alpha channel? - if (alpha == core::stringw("false")) - Driver->makeColorKeyTexture(SpriteBank->getTexture(i), core::position2di(0,0)); - } - } - else if (core::stringw(L"c") == xml->getNodeName()) - { - // adding a character to this font - SFontArea a; - SGUISpriteFrame f; - SGUISprite s; - core::rect rectangle; - - a.underhang = xml->getAttributeValueAsInt(L"u"); - a.overhang = xml->getAttributeValueAsInt(L"o"); - a.spriteno = SpriteBank->getSprites().size(); - s32 texno = xml->getAttributeValueAsInt(L"i"); - - // parse rectangle - core::stringc rectstr = xml->getAttributeValue(L"r"); - wchar_t ch = xml->getAttributeValue(L"c")[0]; - - const c8 *c = rectstr.c_str(); - s32 val; - val = 0; - while (*c >= '0' && *c <= '9') - { - val *= 10; - val += *c - '0'; - c++; - } - rectangle.UpperLeftCorner.X = val; - while (*c == L' ' || *c == L',') c++; - - val = 0; - while (*c >= '0' && *c <= '9') - { - val *= 10; - val += *c - '0'; - c++; - } - rectangle.UpperLeftCorner.Y = val; - while (*c == L' ' || *c == L',') c++; - - val = 0; - while (*c >= '0' && *c <= '9') - { - val *= 10; - val += *c - '0'; - c++; - } - rectangle.LowerRightCorner.X = val; - while (*c == L' ' || *c == L',') c++; - - val = 0; - while (*c >= '0' && *c <= '9') - { - val *= 10; - val += *c - '0'; - c++; - } - rectangle.LowerRightCorner.Y = val; - - CharacterMap.emplace(ch, Areas.size()); - - // make frame - f.rectNumber = SpriteBank->getPositions().size(); - f.textureNumber = texno; - - // add frame to sprite - s.Frames.push_back(f); - s.frameTime = 0; - - // add rectangle to sprite bank - SpriteBank->getPositions().push_back(rectangle); - a.width = rectangle.getWidth(); - - // add sprite to sprite bank - SpriteBank->getSprites().push_back(s); - - // add character to font - Areas.push_back(a); - } - } - } - - // set bad character - WrongCharacter = getAreaFromCharacter(L' '); - - setMaxHeight(); - - return true; -} -#endif - void CGUIFont::setMaxHeight() { if (!SpriteBank) @@ -369,17 +230,15 @@ void CGUIFont::setKerningWidth(s32 kerning) GlobalKerningWidth = kerning; } -//! set an Pixel Offset on Drawing ( scale position on width ) -s32 CGUIFont::getKerningWidth(const wchar_t *thisLetter, const wchar_t *previousLetter) const +core::vector2di CGUIFont::getKerning(const wchar_t thisLetter, const wchar_t previousLetter) const { - s32 ret = GlobalKerningWidth; + core::vector2di ret(GlobalKerningWidth, GlobalKerningHeight); if (thisLetter) { - ret += Areas[getAreaFromCharacter(*thisLetter)].overhang; + ret.X += Areas[getAreaFromCharacter(thisLetter)].overhang; - if (previousLetter) { - ret += Areas[getAreaFromCharacter(*previousLetter)].underhang; - } + if (previousLetter) + ret.X += Areas[getAreaFromCharacter(previousLetter)].underhang; } return ret; @@ -391,12 +250,6 @@ void CGUIFont::setKerningHeight(s32 kerning) GlobalKerningHeight = kerning; } -//! set an Pixel Offset on Drawing ( scale position on height ) -s32 CGUIFont::getKerningHeight() const -{ - return GlobalKerningHeight; -} - //! returns the sprite number from a given character u32 CGUIFont::getSpriteNoFromChar(const wchar_t *c) const { diff --git a/irr/src/CGUIFont.h b/irr/src/CGUIFont.h index 2f383a5f7..8a3b8100b 100644 --- a/irr/src/CGUIFont.h +++ b/irr/src/CGUIFont.h @@ -58,8 +58,7 @@ public: void setKerningHeight(s32 kerning) override; //! set an Pixel Offset on Drawing ( scale position on width ) - s32 getKerningWidth(const wchar_t *thisLetter = 0, const wchar_t *previousLetter = 0) const override; - s32 getKerningHeight() const override; + core::vector2di getKerning(const wchar_t thisLetter, const wchar_t previousLetter) const override; //! gets the sprite bank IGUISpriteBank *getSpriteBank() const override; diff --git a/irr/src/CGUIImage.cpp b/irr/src/CGUIImage.cpp index 5f7bb8e26..a17e8f2d0 100644 --- a/irr/src/CGUIImage.cpp +++ b/irr/src/CGUIImage.cpp @@ -17,11 +17,7 @@ namespace gui CGUIImage::CGUIImage(IGUIEnvironment *environment, IGUIElement *parent, s32 id, core::rect rectangle) : IGUIImage(environment, parent, id, rectangle), Texture(0), Color(255, 255, 255, 255), UseAlphaChannel(false), ScaleImage(false), DrawBounds(0.f, 0.f, 1.f, 1.f), DrawBackground(true) -{ -#ifdef _DEBUG - setDebugName("CGUIImage"); -#endif -} +{} //! destructor CGUIImage::~CGUIImage() diff --git a/irr/src/CGUIImageList.cpp b/irr/src/CGUIImageList.cpp index 3bd30d913..b11f10b0c 100644 --- a/irr/src/CGUIImageList.cpp +++ b/irr/src/CGUIImageList.cpp @@ -18,10 +18,6 @@ CGUIImageList::CGUIImageList(video::IVideoDriver *driver) : ImagesPerRow(0), UseAlphaChannel(false) { -#ifdef _DEBUG - setDebugName("CGUIImageList"); -#endif - if (Driver) { Driver->grab(); } diff --git a/irr/src/CGUIListBox.cpp b/irr/src/CGUIListBox.cpp index 78cb96ecf..f8db2cf80 100644 --- a/irr/src/CGUIListBox.cpp +++ b/irr/src/CGUIListBox.cpp @@ -29,10 +29,6 @@ CGUIListBox::CGUIListBox(IGUIEnvironment *environment, IGUIElement *parent, ScrollBar(0), selectTime(0), LastKeyTime(0), Selecting(false), DrawBack(drawBack), MoveOverSelect(moveOverSelect), AutoScroll(true), HighlightWhenNotFocused(true) { -#ifdef _DEBUG - setDebugName("CGUIListBox"); -#endif - IGUISkin *skin = Environment->getSkin(); ScrollBar = new CGUIScrollBar(false, Environment, this, -1, diff --git a/irr/src/CGUIScrollBar.cpp b/irr/src/CGUIScrollBar.cpp index f9ebad09e..5e7737bc1 100644 --- a/irr/src/CGUIScrollBar.cpp +++ b/irr/src/CGUIScrollBar.cpp @@ -28,10 +28,6 @@ CGUIScrollBar::CGUIScrollBar(bool horizontal, IGUIEnvironment *environment, DrawHeight(0), Min(0), Max(100), SmallStep(10), LargeStep(50), DesiredPos(0), LastChange(0) { -#ifdef _DEBUG - setDebugName("CGUIScrollBar"); -#endif - refreshControls(); setNotClipped(noclip); diff --git a/irr/src/CGUISkin.cpp b/irr/src/CGUISkin.cpp index e9721a5fa..3c130f7a1 100644 --- a/irr/src/CGUISkin.cpp +++ b/irr/src/CGUISkin.cpp @@ -20,10 +20,6 @@ namespace gui CGUISkin::CGUISkin(EGUI_SKIN_TYPE type, video::IVideoDriver* driver) : SpriteBank(0), Driver(driver), Type(type) { - #ifdef _DEBUG - setDebugName("CGUISkin"); - #endif - if ((Type == EGST_WINDOWS_CLASSIC) || (Type == EGST_WINDOWS_METALLIC)) { Colors[EGDC_3D_DARK_SHADOW] = video::SColor(101,50,50,50); diff --git a/irr/src/CGUISpriteBank.cpp b/irr/src/CGUISpriteBank.cpp index fe0c087b8..ea3fe8788 100644 --- a/irr/src/CGUISpriteBank.cpp +++ b/irr/src/CGUISpriteBank.cpp @@ -16,10 +16,6 @@ namespace gui CGUISpriteBank::CGUISpriteBank(IGUIEnvironment *env) : Environment(env), Driver(0) { -#ifdef _DEBUG - setDebugName("CGUISpriteBank"); -#endif - if (Environment) { Driver = Environment->getVideoDriver(); if (Driver) diff --git a/irr/src/CGUIStaticText.cpp b/irr/src/CGUIStaticText.cpp index 035847583..4cd3f7905 100644 --- a/irr/src/CGUIStaticText.cpp +++ b/irr/src/CGUIStaticText.cpp @@ -27,10 +27,6 @@ CGUIStaticText::CGUIStaticText(const wchar_t *text, bool border, OverrideColor(video::SColor(101, 255, 255, 255)), BGColor(video::SColor(101, 210, 210, 210)), OverrideFont(0), LastBreakFont(0) { -#ifdef _DEBUG - setDebugName("CGUIStaticText"); -#endif - Text = text; if (environment && environment->getSkin()) { BGColor = environment->getSkin()->getColor(gui::EGDC_3D_FACE); @@ -78,10 +74,12 @@ void CGUIStaticText::draw() IGUIFont *font = getActiveFont(); if (font) { + s32 kerningHeight = font->getKerning(L'A').Y; + if (!WordWrap) { if (VAlign == EGUIA_LOWERRIGHT) { frameRect.UpperLeftCorner.Y = frameRect.LowerRightCorner.Y - - font->getDimension(L"A").Height - font->getKerningHeight(); + font->getDimension(L"A").Height - kerningHeight; } if (HAlign == EGUIA_LOWERRIGHT) { frameRect.UpperLeftCorner.X = frameRect.LowerRightCorner.X - @@ -96,7 +94,7 @@ void CGUIStaticText::draw() breakText(); core::rect r = frameRect; - s32 height = font->getDimension(L"A").Height + font->getKerningHeight(); + s32 height = font->getDimension(L"A").Height + kerningHeight; s32 totalHeight = height * BrokenText.size(); if (VAlign == EGUIA_CENTER) { r.UpperLeftCorner.Y = r.getCenter().Y - (totalHeight / 2); @@ -475,7 +473,7 @@ s32 CGUIStaticText::getTextHeight() const return 0; if (WordWrap) { - s32 height = font->getDimension(L"A").Height + font->getKerningHeight(); + s32 height = font->getDimension(L"A").Height + font->getKerning(L'A').Y; return height * BrokenText.size(); } else { // TODO: Text can have multiple lines which are not in BrokenText diff --git a/irr/src/CGUITabControl.cpp b/irr/src/CGUITabControl.cpp index 3e02773db..bca7f0f21 100644 --- a/irr/src/CGUITabControl.cpp +++ b/irr/src/CGUITabControl.cpp @@ -29,10 +29,6 @@ CGUITab::CGUITab(IGUIEnvironment *environment, BackColor(0, 0, 0, 0), OverrideTextColorEnabled(false), TextColor(255, 0, 0, 0), DrawBackground(false) { -#ifdef _DEBUG - setDebugName("CGUITab"); -#endif - const IGUISkin *const skin = environment->getSkin(); if (skin) TextColor = skin->getColor(EGDC_BUTTON_TEXT); @@ -104,10 +100,6 @@ CGUITabControl::CGUITabControl(IGUIEnvironment *environment, Border(border), FillBackground(fillbackground), ScrollControl(false), TabHeight(0), VerticalAlignment(EGUIA_UPPERLEFT), UpButton(0), DownButton(0), TabMaxWidth(0), CurrentScrollTabIndex(0), TabExtraWidth(20) { -#ifdef _DEBUG - setDebugName("CGUITabControl"); -#endif - IGUISkin *skin = Environment->getSkin(); IGUISpriteBank *sprites = 0; diff --git a/irr/src/CImage.cpp b/irr/src/CImage.cpp index 209590174..0c6d705f3 100644 --- a/irr/src/CImage.cpp +++ b/irr/src/CImage.cpp @@ -95,6 +95,8 @@ SColor CImage::getPixel(u32 x, u32 y) const case ECF_A8R8G8B8: return ((u32 *)Data)[y * Size.Width + x]; case ECF_R8G8B8: { + // FIXME this interprets the memory as [R][G][B], whereas SColor is stored as + // 0xAARRGGBB, meaning it is lies in memory as [B][G][R][A] on a little endian machine. u8 *p = Data + (y * 3) * Size.Width + (x * 3); return SColor(255, p[0], p[1], p[2]); } diff --git a/irr/src/CImageLoaderBMP.cpp b/irr/src/CImageLoaderBMP.cpp deleted file mode 100644 index 40989882e..000000000 --- a/irr/src/CImageLoaderBMP.cpp +++ /dev/null @@ -1,402 +0,0 @@ -// Copyright (C) 2002-2012 Nikolaus Gebhardt -// This file is part of the "Irrlicht Engine". -// For conditions of distribution and use, see copyright notice in irrlicht.h - -#include "CImageLoaderBMP.h" - -#include "IReadFile.h" -#include "SColor.h" -#include "CColorConverter.h" -#include "CImage.h" -#include "coreutil.h" -#include "os.h" - -namespace irr -{ -namespace video -{ - -//! constructor -CImageLoaderBMP::CImageLoaderBMP() -{ -#ifdef _DEBUG - setDebugName("CImageLoaderBMP"); -#endif -} - -//! returns true if the file maybe is able to be loaded by this class -//! based on the file extension (e.g. ".tga") -bool CImageLoaderBMP::isALoadableFileExtension(const io::path &filename) const -{ - return core::hasFileExtension(filename, "bmp"); -} - -//! returns true if the file maybe is able to be loaded by this class -bool CImageLoaderBMP::isALoadableFileFormat(io::IReadFile *file) const -{ - u16 headerID; - file->read(&headerID, sizeof(u16)); -#ifdef __BIG_ENDIAN__ - headerID = os::Byteswap::byteswap(headerID); -#endif - return headerID == 0x4d42; -} - -// UB-safe overflow check -static inline bool overflowCheck(const void *base, size_t offset, const void *end) -{ - auto baseI = reinterpret_cast(base), - endI = reinterpret_cast(end); - return baseI > endI || offset >= (endI - baseI); -} -// check whether &p[0] to &p[_off - 1] can be accessed -#define CHECKP(_off) \ - if ((_off) < 0 || overflowCheck(p, _off, pEnd)) \ - goto exit -// same for d -#define CHECKD(_off) \ - if ((_off) < 0 || overflowCheck(d, _off, destEnd)) \ - goto exit - -void CImageLoaderBMP::decompress8BitRLE(u8 *&bmpData, s32 size, s32 width, s32 height, s32 pitch) const -{ - u8 *p = bmpData; - const u8 *pEnd = bmpData + size; - u8 *newBmp = new u8[(width + pitch) * height]; - u8 *d = newBmp; - const u8 *destEnd = newBmp + (width + pitch) * height; - s32 line = 0; - - while (p < pEnd && d < destEnd) { - if (*p == 0) { - ++p; - CHECKP(1); - - switch (*p) { - case 0: // end of line - ++p; - ++line; - d = newBmp + (line * (width + pitch)); - break; - case 1: // end of bmp - goto exit; - case 2: - ++p; - CHECKP(2); - d += (u8)*p; - ++p; // delta - d += ((u8)*p) * (width + pitch); - ++p; - break; - default: { - // absolute mode - s32 count = (u8)*p; - ++p; - s32 readAdditional = ((2 - (count % 2)) % 2); - - CHECKP(count); - CHECKD(count); - for (s32 i = 0; i < count; ++i) { - *d = *p; - ++p; - ++d; - } - - CHECKP(readAdditional); - for (s32 i = 0; i < readAdditional; ++i) - ++p; - } - } - } else { - s32 count = (u8)*p; - ++p; - CHECKP(1); - u8 color = *p; - ++p; - CHECKD(count); - for (s32 i = 0; i < count; ++i) { - *d = color; - ++d; - } - } - } - -exit: - delete[] bmpData; - bmpData = newBmp; -} - -// how many bytes will be touched given the current state of decompress4BitRLE -static inline u32 shiftedCount(s32 count, s32 shift) -{ - _IRR_DEBUG_BREAK_IF(count < 0) - u32 ret = count / 2; - if (shift == 0 || count % 2 == 1) - ++ret; - return ret; -} - -void CImageLoaderBMP::decompress4BitRLE(u8 *&bmpData, s32 size, s32 width, s32 height, s32 pitch) const -{ - const s32 lineWidth = (width + 1) / 2 + pitch; - u8 *p = bmpData; - const u8 *pEnd = bmpData + size; - u8 *newBmp = new u8[lineWidth * height]; - u8 *d = newBmp; - const u8 *destEnd = newBmp + lineWidth * height; - s32 line = 0; - s32 shift = 4; - - while (p < pEnd && d < destEnd) { - if (*p == 0) { - ++p; - CHECKP(1); - - switch (*p) { - case 0: // end of line - ++p; - ++line; - d = newBmp + (line * lineWidth); - shift = 4; - break; - case 1: // end of bmp - goto exit; - case 2: { - ++p; - CHECKP(2); - s32 x = (u8)*p; - ++p; - s32 y = (u8)*p; - ++p; - d += x / 2 + y * lineWidth; - shift = x % 2 == 0 ? 4 : 0; - } break; - default: { - // absolute mode - s32 count = (u8)*p; - ++p; - s32 readAdditional = ((2 - ((count) % 2)) % 2); - s32 readShift = 4; - - CHECKP(shiftedCount(count, readShift)); - CHECKD(shiftedCount(count, shift)); - for (s32 i = 0; i < count; ++i) { - s32 color = (((u8)*p) >> readShift) & 0x0f; - readShift -= 4; - if (readShift < 0) { - ++*p; // <- bug? - readShift = 4; - } - - u8 mask = 0x0f << shift; - *d = (*d & (~mask)) | ((color << shift) & mask); - - shift -= 4; - if (shift < 0) { - shift = 4; - ++d; - } - } - - CHECKP(readAdditional); - for (s32 i = 0; i < readAdditional; ++i) - ++p; - } - } - } else { - s32 count = (u8)*p; - ++p; - CHECKP(1); - s32 color1 = (u8)*p; - color1 = color1 & 0x0f; - s32 color2 = (u8)*p; - color2 = (color2 >> 4) & 0x0f; - ++p; - - CHECKD(shiftedCount(count, shift)); - for (s32 i = 0; i < count; ++i) { - u8 mask = 0x0f << shift; - u8 toSet = (shift == 0 ? color1 : color2) << shift; - *d = (*d & (~mask)) | (toSet & mask); - - shift -= 4; - if (shift < 0) { - shift = 4; - ++d; - } - } - } - } - -exit: - delete[] bmpData; - bmpData = newBmp; -} - -#undef CHECKOFF -#undef CHECKP -#undef CHECKD - -//! creates a surface from the file -IImage *CImageLoaderBMP::loadImage(io::IReadFile *file) const -{ - SBMPHeader header; - - file->read(&header, sizeof(header)); - -#ifdef __BIG_ENDIAN__ - header.Id = os::Byteswap::byteswap(header.Id); - header.FileSize = os::Byteswap::byteswap(header.FileSize); - header.BitmapDataOffset = os::Byteswap::byteswap(header.BitmapDataOffset); - header.BitmapHeaderSize = os::Byteswap::byteswap(header.BitmapHeaderSize); - header.Width = os::Byteswap::byteswap(header.Width); - header.Height = os::Byteswap::byteswap(header.Height); - header.Planes = os::Byteswap::byteswap(header.Planes); - header.BPP = os::Byteswap::byteswap(header.BPP); - header.Compression = os::Byteswap::byteswap(header.Compression); - header.BitmapDataSize = os::Byteswap::byteswap(header.BitmapDataSize); - header.PixelPerMeterX = os::Byteswap::byteswap(header.PixelPerMeterX); - header.PixelPerMeterY = os::Byteswap::byteswap(header.PixelPerMeterY); - header.Colors = os::Byteswap::byteswap(header.Colors); - header.ImportantColors = os::Byteswap::byteswap(header.ImportantColors); -#endif - - s32 pitch = 0; - - //! return if the header is false - - if (header.Id != 0x4d42) - return 0; - - if (header.Compression > 2) { // we'll only handle RLE-Compression - os::Printer::log("Compression mode not supported.", ELL_ERROR); - return 0; - } - - if (header.BPP > 32 || !checkImageDimensions(header.Width, header.Height)) { - os::Printer::log("Rejecting BMP with unreasonable size or BPP.", ELL_ERROR); - return 0; - } - - // adjust bitmap data size to dword boundary - header.BitmapDataSize += (4 - (header.BitmapDataSize % 4)) % 4; - - // read palette - - long pos = file->getPos(); - constexpr s32 paletteAllocSize = 256; - s32 paletteSize = (header.BitmapDataOffset - pos) / 4; - paletteSize = core::clamp(paletteSize, 0, paletteAllocSize); - - s32 *paletteData = 0; - if (paletteSize) { - // always allocate an 8-bit palette to ensure enough space - paletteData = new s32[paletteAllocSize]; - memset(paletteData, 0, paletteAllocSize * sizeof(s32)); - file->read(paletteData, paletteSize * sizeof(s32)); -#ifdef __BIG_ENDIAN__ - for (s32 i = 0; i < paletteSize; ++i) - paletteData[i] = os::Byteswap::byteswap(paletteData[i]); -#endif - } - - // read image data - - if (!header.BitmapDataSize) { - // okay, lets guess the size - // some tools simply don't set it - header.BitmapDataSize = static_cast(file->getSize()) - header.BitmapDataOffset; - } - - file->seek(header.BitmapDataOffset); - - s32 widthInBytes; - { - f32 t = (header.Width) * (header.BPP / 8.0f); - widthInBytes = (s32)t; - t -= widthInBytes; - if (t != 0.0f) - ++widthInBytes; - } - - const s32 lineSize = widthInBytes + ((4 - (widthInBytes % 4))) % 4; - pitch = lineSize - widthInBytes; - - u8 *bmpData = new u8[header.BitmapDataSize]; - file->read(bmpData, header.BitmapDataSize); - - // decompress data if needed - switch (header.Compression) { - case 1: // 8 bit rle - decompress8BitRLE(bmpData, header.BitmapDataSize, header.Width, header.Height, pitch); - header.BitmapDataSize = (header.Width + pitch) * header.Height; - break; - case 2: // 4 bit rle - decompress4BitRLE(bmpData, header.BitmapDataSize, header.Width, header.Height, pitch); - header.BitmapDataSize = ((header.Width + 1) / 2 + pitch) * header.Height; - break; - } - - if (header.BitmapDataSize < lineSize * header.Height) { - os::Printer::log("Bitmap data is cut off.", ELL_ERROR); - - delete[] paletteData; - delete[] bmpData; - return 0; - } - - // create surface - core::dimension2d dim; - dim.Width = header.Width; - dim.Height = header.Height; - - IImage *image = 0; - switch (header.BPP) { - case 1: - image = new CImage(ECF_A1R5G5B5, dim); - if (image) - CColorConverter::convert1BitTo16Bit(bmpData, (s16 *)image->getData(), header.Width, header.Height, pitch, true); - break; - case 4: - image = new CImage(ECF_A1R5G5B5, dim); - if (image) - CColorConverter::convert4BitTo16Bit(bmpData, (s16 *)image->getData(), header.Width, header.Height, paletteData, pitch, true); - break; - case 8: - image = new CImage(ECF_A1R5G5B5, dim); - if (image) - CColorConverter::convert8BitTo16Bit(bmpData, (s16 *)image->getData(), header.Width, header.Height, paletteData, pitch, true); - break; - case 16: - image = new CImage(ECF_A1R5G5B5, dim); - if (image) - CColorConverter::convert16BitTo16Bit((s16 *)bmpData, (s16 *)image->getData(), header.Width, header.Height, pitch, true); - break; - case 24: - image = new CImage(ECF_R8G8B8, dim); - if (image) - CColorConverter::convert24BitTo24Bit(bmpData, (u8 *)image->getData(), header.Width, header.Height, pitch, true, true); - break; - case 32: // thx to Reinhard Ostermeier - image = new CImage(ECF_A8R8G8B8, dim); - if (image) - CColorConverter::convert32BitTo32Bit((s32 *)bmpData, (s32 *)image->getData(), header.Width, header.Height, pitch, true); - break; - }; - - // clean up - - delete[] paletteData; - delete[] bmpData; - - return image; -} - -//! creates a loader which is able to load windows bitmaps -IImageLoader *createImageLoaderBMP() -{ - return new CImageLoaderBMP; -} - -} // end namespace video -} // end namespace irr diff --git a/irr/src/CImageLoaderBMP.h b/irr/src/CImageLoaderBMP.h deleted file mode 100644 index e7ef8ed2b..000000000 --- a/irr/src/CImageLoaderBMP.h +++ /dev/null @@ -1,81 +0,0 @@ -// Copyright (C) 2002-2012 Nikolaus Gebhardt -// This file is part of the "Irrlicht Engine". -// For conditions of distribution and use, see copyright notice in irrlicht.h - -#pragma once - -#include "IImageLoader.h" - -namespace irr -{ -namespace video -{ - -// byte-align structures -#include "irrpack.h" - -struct SBMPHeader -{ - u16 Id; // BM - Windows 3.1x, 95, NT, 98, 2000, ME, XP - // BA - OS/2 Bitmap Array - // CI - OS/2 Color Icon - // CP - OS/2 Color Pointer - // IC - OS/2 Icon - // PT - OS/2 Pointer - u32 FileSize; - u32 Reserved; - u32 BitmapDataOffset; - u32 BitmapHeaderSize; // should be 28h for windows bitmaps or - // 0Ch for OS/2 1.x or F0h for OS/2 2.x - u32 Width; - u32 Height; - u16 Planes; - u16 BPP; // 1: Monochrome bitmap - // 4: 16 color bitmap - // 8: 256 color bitmap - // 16: 16bit (high color) bitmap - // 24: 24bit (true color) bitmap - // 32: 32bit (true color) bitmap - - u32 Compression; // 0: none (Also identified by BI_RGB) - // 1: RLE 8-bit / pixel (Also identified by BI_RLE4) - // 2: RLE 4-bit / pixel (Also identified by BI_RLE8) - // 3: Bitfields (Also identified by BI_BITFIELDS) - - u32 BitmapDataSize; // Size of the bitmap data in bytes. This number must be rounded to the next 4 byte boundary. - u32 PixelPerMeterX; - u32 PixelPerMeterY; - u32 Colors; - u32 ImportantColors; -} PACK_STRUCT; - -// Default alignment -#include "irrunpack.h" - -/*! - Surface Loader for Windows bitmaps -*/ -class CImageLoaderBMP : public IImageLoader -{ -public: - //! constructor - CImageLoaderBMP(); - - //! returns true if the file maybe is able to be loaded by this class - //! based on the file extension (e.g. ".tga") - bool isALoadableFileExtension(const io::path &filename) const override; - - //! returns true if the file maybe is able to be loaded by this class - bool isALoadableFileFormat(io::IReadFile *file) const override; - - //! creates a surface from the file - IImage *loadImage(io::IReadFile *file) const override; - -private: - void decompress8BitRLE(u8 *&BmpData, s32 size, s32 width, s32 height, s32 pitch) const; - - void decompress4BitRLE(u8 *&BmpData, s32 size, s32 width, s32 height, s32 pitch) const; -}; - -} // end namespace video -} // end namespace irr diff --git a/irr/src/CImageLoaderJPG.cpp b/irr/src/CImageLoaderJPG.cpp index 5b7978a4b..ec1a998b9 100644 --- a/irr/src/CImageLoaderJPG.cpp +++ b/irr/src/CImageLoaderJPG.cpp @@ -19,9 +19,6 @@ namespace video //! constructor CImageLoaderJPG::CImageLoaderJPG() { -#ifdef _DEBUG - setDebugName("CImageLoaderJPG"); -#endif } //! destructor diff --git a/irr/src/CImageLoaderTGA.cpp b/irr/src/CImageLoaderTGA.cpp index 274b15543..75b0b5679 100644 --- a/irr/src/CImageLoaderTGA.cpp +++ b/irr/src/CImageLoaderTGA.cpp @@ -93,6 +93,25 @@ bool CImageLoaderTGA::isALoadableFileFormat(io::IReadFile *file) const return (!strcmp(footer.Signature, "TRUEVISION-XFILE.")); // very old tgas are refused. } +/// Converts *byte order* BGR to *endianness order* ARGB (SColor "=" u32) +static void convert_BGR8_to_SColor(const u8 *src, u32 n, u32 *dst) +{ + for (u32 i = 0; i < n; ++i) { + const u8 *bgr = &src[3 * i]; + dst[i] = 0xff000000 | (bgr[2] << 16) | (bgr[1] << 8) | bgr[0]; + } +} + +/// Converts *byte order* BGRA to *endianness order* ARGB (SColor "=" u32) +/// Note: This just copies from src to dst on little endian. +static void convert_BGRA8_to_SColor(const u8 *src, u32 n, u32 *dst) +{ + for (u32 i = 0; i < n; ++i) { + const u8 *bgra = &src[4 * i]; + dst[i] = (bgra[3] << 24) | (bgra[2] << 16) | (bgra[1] << 8) | bgra[0]; + } +} + //! creates a surface from the file IImage *CImageLoaderTGA::loadImage(io::IReadFile *file) const { @@ -139,10 +158,10 @@ IImage *CImageLoaderTGA::loadImage(io::IReadFile *file) const CColorConverter::convert_A1R5G5B5toA8R8G8B8(colorMap, header.ColorMapLength, palette); break; case 24: - CColorConverter::convert_B8G8R8toA8R8G8B8(colorMap, header.ColorMapLength, palette); + convert_BGR8_to_SColor(colorMap, header.ColorMapLength, palette); break; case 32: - CColorConverter::convert_B8G8R8A8toA8R8G8B8(colorMap, header.ColorMapLength, palette); + convert_BGRA8_to_SColor(colorMap, header.ColorMapLength, palette); break; } delete[] colorMap; diff --git a/irr/src/CImageWriterJPG.cpp b/irr/src/CImageWriterJPG.cpp index fa8ad64bc..778d1fb74 100644 --- a/irr/src/CImageWriterJPG.cpp +++ b/irr/src/CImageWriterJPG.cpp @@ -10,6 +10,7 @@ #include "os.h" #include // IWYU pragma: keep (required for jpeglib.h) +#include #include #include @@ -130,32 +131,28 @@ static bool writeJPEGFile(io::IWriteFile *file, IImage *image, u32 quality) jpeg_set_quality(&cinfo, quality, TRUE); jpeg_start_compress(&cinfo, TRUE); - u8 *dest = new u8[dim.Width * 3]; + std::unique_ptr dest{new u8[dim.Width * 3]}; - if (dest) { - const u32 pitch = image->getPitch(); - JSAMPROW row_pointer[1]; /* pointer to JSAMPLE row[s] */ - row_pointer[0] = dest; + const u32 pitch = image->getPitch(); + JSAMPROW row_pointer[1]; /* pointer to JSAMPLE row[s] */ + row_pointer[0] = dest.get(); - u8 *src = (u8 *)image->getData(); + u8 *src = (u8 *)image->getData(); - while (cinfo.next_scanline < cinfo.image_height) { - // convert next line - format(src, dim.Width, dest); - src += pitch; - jpeg_write_scanlines(&cinfo, row_pointer, 1); - } - - delete[] dest; - - /* Step 6: Finish compression */ - jpeg_finish_compress(&cinfo); + while (cinfo.next_scanline < cinfo.image_height) { + // convert next line + format(src, dim.Width, dest.get()); + src += pitch; + jpeg_write_scanlines(&cinfo, row_pointer, 1); } + /* Step 6: Finish compression */ + jpeg_finish_compress(&cinfo); + /* Step 7: Destroy */ jpeg_destroy_compress(&cinfo); - return (dest != 0); + return true; } } // namespace video @@ -172,11 +169,7 @@ IImageWriter *createImageWriterJPG() } CImageWriterJPG::CImageWriterJPG() -{ -#ifdef _DEBUG - setDebugName("CImageWriterJPG"); -#endif -} +{} bool CImageWriterJPG::isAWriteableFileExtension(const io::path &filename) const { diff --git a/irr/src/CImageWriterPNG.cpp b/irr/src/CImageWriterPNG.cpp index 14c9f2d9c..51332d285 100644 --- a/irr/src/CImageWriterPNG.cpp +++ b/irr/src/CImageWriterPNG.cpp @@ -10,6 +10,7 @@ #include "os.h" // for logging #include // use system lib png +#include namespace irr { @@ -53,11 +54,7 @@ void PNGAPI user_write_data_fcn(png_structp png_ptr, png_bytep data, png_size_t } CImageWriterPNG::CImageWriterPNG() -{ -#ifdef _DEBUG - setDebugName("CImageWriterPNG"); -#endif -} +{} bool CImageWriterPNG::isAWriteableFileExtension(const io::path &filename) const { @@ -94,22 +91,23 @@ bool CImageWriterPNG::writeImage(io::IWriteFile *file, IImage *image, u32 param) png_set_write_fn(png_ptr, file, user_write_data_fcn, NULL); // Set info + core::dimension2d img_dim = image->getDimension(); switch (image->getColorFormat()) { case ECF_A8R8G8B8: case ECF_A1R5G5B5: png_set_IHDR(png_ptr, info_ptr, - image->getDimension().Width, image->getDimension().Height, + img_dim.Width, img_dim.Height, 8, PNG_COLOR_TYPE_RGB_ALPHA, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); break; default: png_set_IHDR(png_ptr, info_ptr, - image->getDimension().Width, image->getDimension().Height, + img_dim.Width, img_dim.Height, 8, PNG_COLOR_TYPE_RGB, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); } - s32 lineWidth = image->getDimension().Width; + s32 lineWidth = img_dim.Width; switch (image->getColorFormat()) { case ECF_R8G8B8: case ECF_R5G6B5: @@ -123,61 +121,52 @@ bool CImageWriterPNG::writeImage(io::IWriteFile *file, IImage *image, u32 param) default: break; } - u8 *tmpImage = new u8[image->getDimension().Height * lineWidth]; - if (!tmpImage) { - os::Printer::log("PNGWriter: Internal PNG create image failure", file->getFileName(), ELL_ERROR); - png_destroy_write_struct(&png_ptr, &info_ptr); - return false; - } + std::unique_ptr tmpImage{new u8[img_dim.Height * lineWidth]}; + auto num_pixels = img_dim.Height * img_dim.Width; u8 *data = (u8 *)image->getData(); switch (image->getColorFormat()) { case ECF_R8G8B8: - CColorConverter::convert_R8G8B8toR8G8B8(data, image->getDimension().Height * image->getDimension().Width, tmpImage); + CColorConverter::convert_R8G8B8toR8G8B8(data, num_pixels, + tmpImage.get()); break; case ECF_A8R8G8B8: - CColorConverter::convert_A8R8G8B8toA8R8G8B8(data, image->getDimension().Height * image->getDimension().Width, tmpImage); + CColorConverter::convert_A8R8G8B8toA8R8G8B8(data, num_pixels, + tmpImage.get()); break; case ECF_R5G6B5: - CColorConverter::convert_R5G6B5toR8G8B8(data, image->getDimension().Height * image->getDimension().Width, tmpImage); + CColorConverter::convert_R5G6B5toR8G8B8(data, num_pixels, + tmpImage.get()); break; case ECF_A1R5G5B5: - CColorConverter::convert_A1R5G5B5toA8R8G8B8(data, image->getDimension().Height * image->getDimension().Width, tmpImage); + CColorConverter::convert_A1R5G5B5toA8R8G8B8(data, num_pixels, + tmpImage.get()); break; // TODO: Error handling in case of unsupported color format default: os::Printer::log("CImageWriterPNG does not support image format", ColorFormatNames[image->getColorFormat()], ELL_WARNING); png_destroy_write_struct(&png_ptr, &info_ptr); - delete[] tmpImage; return false; } // Create array of pointers to rows in image data // Used to point to image rows - u8 **RowPointers = new png_bytep[image->getDimension().Height]; - if (!RowPointers) { - os::Printer::log("PNGWriter: Internal PNG create row pointers failure", file->getFileName(), ELL_ERROR); - png_destroy_write_struct(&png_ptr, &info_ptr); - delete[] tmpImage; - return false; - } + std::unique_ptr RowPointers{new u8*[img_dim.Height]}; - data = tmpImage; + data = tmpImage.get(); // Fill array of pointers to rows in image data - for (u32 i = 0; i < image->getDimension().Height; ++i) { + for (u32 i = 0; i < img_dim.Height; ++i) { RowPointers[i] = data; data += lineWidth; } // for proper error handling if (setjmp(png_jmpbuf(png_ptr))) { png_destroy_write_struct(&png_ptr, &info_ptr); - delete[] RowPointers; - delete[] tmpImage; return false; } - png_set_rows(png_ptr, info_ptr, RowPointers); + png_set_rows(png_ptr, info_ptr, RowPointers.get()); if (image->getColorFormat() == ECF_A8R8G8B8 || image->getColorFormat() == ECF_A1R5G5B5) png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_BGR, NULL); @@ -185,8 +174,6 @@ bool CImageWriterPNG::writeImage(io::IWriteFile *file, IImage *image, u32 param) png_write_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, NULL); } - delete[] RowPointers; - delete[] tmpImage; png_destroy_write_struct(&png_ptr, &info_ptr); return true; } diff --git a/irr/src/CIrrDeviceLinux.cpp b/irr/src/CIrrDeviceLinux.cpp index f20be36f7..7c5d9cf0b 100644 --- a/irr/src/CIrrDeviceLinux.cpp +++ b/irr/src/CIrrDeviceLinux.cpp @@ -38,7 +38,7 @@ #include "CEGLManager.h" #endif -#if defined(_IRR_COMPILE_WITH_OPENGL_) +#if defined(_IRR_COMPILE_WITH_GLX_MANAGER_) #include "CGLXManager.h" #endif @@ -69,24 +69,6 @@ #endif // _IRR_COMPILE_WITH_JOYSTICK_EVENTS_ -namespace irr -{ -namespace video -{ -#ifdef _IRR_COMPILE_WITH_OPENGL_ -IVideoDriver *createOpenGLDriver(const irr::SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#endif - -#ifdef _IRR_COMPILE_WITH_OGLES2_ -IVideoDriver *createOGLES2Driver(const irr::SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#endif - -#ifdef _IRR_COMPILE_WITH_WEBGL1_ -IVideoDriver *createWebGL1Driver(const irr::SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#endif -} -} // end namespace irr - namespace { Atom X_ATOM_CLIPBOARD; @@ -123,10 +105,6 @@ CIrrDeviceLinux::CIrrDeviceLinux(const SIrrlichtCreationParameters ¶m) : WindowHasFocus(false), WindowMinimized(false), WindowMaximized(param.WindowMaximized), ExternalWindow(false), AutorepeatSupport(0) { -#ifdef _DEBUG - setDebugName("CIrrDeviceLinux"); -#endif - // print version, distribution etc. // thx to LynxLuna for pointing me to the uname function core::stringc linuxversion; @@ -397,10 +375,11 @@ bool CIrrDeviceLinux::createWindow() if (WMCheck != None) HasNetWM = true; -#if defined(_IRR_COMPILE_WITH_OPENGL_) +#if defined(_IRR_COMPILE_WITH_GLX_MANAGER_) // don't use the XVisual with OpenGL, because it ignores all requested // properties of the CreationParams - if (CreationParams.DriverType == video::EDT_OPENGL) { + if (CreationParams.DriverType == video::EDT_OPENGL + || CreationParams.DriverType == video::EDT_OPENGL3) { video::SExposedVideoData data; data.OpenGLLinux.X11Display = XDisplay; ContextManager = new video::CGLXManager(CreationParams, data, Screennr); @@ -539,51 +518,54 @@ void CIrrDeviceLinux::createDriver() switch (CreationParams.DriverType) { #ifdef _IRR_COMPILE_WITH_X11_ case video::EDT_OPENGL: -#ifdef _IRR_COMPILE_WITH_OPENGL_ { +#ifdef _IRR_COMPILE_WITH_OPENGL_ video::SExposedVideoData data; data.OpenGLLinux.X11Window = XWindow; data.OpenGLLinux.X11Display = XDisplay; ContextManager->initialize(CreationParams, data); - +#endif VideoDriver = video::createOpenGLDriver(CreationParams, FileSystem, ContextManager); } -#else - os::Printer::log("No OpenGL support compiled in.", ELL_ERROR); + break; + case video::EDT_OPENGL3: + { +#ifdef ENABLE_OPENGL3 + video::SExposedVideoData data; + data.OpenGLLinux.X11Window = XWindow; + data.OpenGLLinux.X11Display = XDisplay; + + ContextManager->initialize(CreationParams, data); #endif + VideoDriver = video::createOpenGL3Driver(CreationParams, FileSystem, ContextManager); + } break; case video::EDT_OGLES2: -#ifdef _IRR_COMPILE_WITH_OGLES2_ { +#ifdef _IRR_COMPILE_WITH_OGLES2_ video::SExposedVideoData data; data.OpenGLLinux.X11Window = XWindow; data.OpenGLLinux.X11Display = XDisplay; ContextManager = new video::CEGLManager(); ContextManager->initialize(CreationParams, data); - +#endif VideoDriver = video::createOGLES2Driver(CreationParams, FileSystem, ContextManager); } -#else - os::Printer::log("No OpenGL-ES2 support compiled in.", ELL_ERROR); -#endif break; case video::EDT_WEBGL1: -#ifdef _IRR_COMPILE_WITH_WEBGL1_ { +#ifdef _IRR_COMPILE_WITH_WEBGL1_ video::SExposedVideoData data; data.OpenGLLinux.X11Window = XWindow; data.OpenGLLinux.X11Display = XDisplay; ContextManager = new video::CEGLManager(); ContextManager->initialize(CreationParams, data); - +#endif VideoDriver = video::createWebGL1Driver(CreationParams, FileSystem, ContextManager); } -#else - os::Printer::log("No WebGL1 support compiled in.", ELL_ERROR); -#endif break; case video::EDT_NULL: VideoDriver = video::createNullDriver(FileSystem, CreationParams.WindowSize); @@ -591,7 +573,7 @@ void CIrrDeviceLinux::createDriver() default: os::Printer::log("Unable to create video driver of unknown type.", ELL_ERROR); break; -#else +#else // no X11 case video::EDT_NULL: VideoDriver = video::createNullDriver(FileSystem, CreationParams.WindowSize); break; @@ -1965,7 +1947,8 @@ Cursor CIrrDeviceLinux::TextureToMonochromeCursor(irr::video::ITexture *tex, con XPutPixel(sourceImage, x, y, 0); } else // color { - if (pixelCol.getAverage() >= 127) + if ((pixelCol.getRed() + pixelCol.getGreen() + + pixelCol.getBlue()) / 3 >= 127) XPutPixel(sourceImage, x, y, 1); else XPutPixel(sourceImage, x, y, 0); diff --git a/irr/src/CIrrDeviceOSX.mm b/irr/src/CIrrDeviceOSX.mm index 43c1c81b6..859d9b752 100644 --- a/irr/src/CIrrDeviceOSX.mm +++ b/irr/src/CIrrDeviceOSX.mm @@ -433,14 +433,6 @@ long GetDictionaryLong(CFDictionaryRef theDict, const void *key) return value; } -namespace irr -{ -namespace video -{ -IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶m, io::IFileSystem *io, IContextManager *contextManager); -} -} // end namespace irr - static bool firstLaunch = true; @implementation CIrrDelegateOSX { @@ -532,10 +524,6 @@ CIrrDeviceMacOSX::CIrrDeviceMacOSX(const SIrrlichtCreationParameters ¶m) : { struct utsname name; -#ifdef _DEBUG - setDebugName("CIrrDeviceMacOSX"); -#endif - if (firstLaunch) { firstLaunch = false; @@ -721,6 +709,7 @@ void CIrrDeviceMacOSX::createDriver() #endif break; + case video::EDT_OPENGL3: case video::EDT_OGLES2: os::Printer::log("This driver is not available on OSX.", ELL_ERROR); break; diff --git a/irr/src/CIrrDeviceSDL.cpp b/irr/src/CIrrDeviceSDL.cpp index 60cf54d04..bcf5415c3 100644 --- a/irr/src/CIrrDeviceSDL.cpp +++ b/irr/src/CIrrDeviceSDL.cpp @@ -29,53 +29,6 @@ static int SDLDeviceInstances = 0; -namespace irr -{ -namespace video -{ -#ifdef _IRR_COMPILE_WITH_OPENGL_ -IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#else -static IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) -{ - os::Printer::log("No OpenGL support compiled in.", ELL_ERROR); - return nullptr; -} -#endif - -#ifdef ENABLE_OPENGL3 -IVideoDriver *createOpenGL3Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#else -static IVideoDriver *createOpenGL3Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) -{ - os::Printer::log("No OpenGL 3 support compiled in.", ELL_ERROR); - return nullptr; -} -#endif - -#ifdef _IRR_COMPILE_WITH_OGLES2_ -IVideoDriver *createOGLES2Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#else -static IVideoDriver *createOGLES2Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) -{ - os::Printer::log("No OpenGL ES 2 support compiled in.", ELL_ERROR); - return nullptr; -} -#endif - -#ifdef _IRR_COMPILE_WITH_WEBGL1_ -IVideoDriver *createWebGL1Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#else -static IVideoDriver *createWebGL1Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) -{ - os::Printer::log("No WebGL 1 support compiled in.", ELL_ERROR); - return nullptr; -} -#endif -} // end namespace video - -} // end namespace irr - namespace irr { #ifdef _IRR_EMSCRIPTEN_PLATFORM_ @@ -300,14 +253,10 @@ CIrrDeviceSDL::CIrrDeviceSDL(const SIrrlichtCreationParameters ¶m) : Resizable(param.WindowResizable == 1 ? true : false), CurrentTouchCount(0), IsInBackground(false) { -#ifdef _DEBUG - setDebugName("CIrrDeviceSDL"); -#endif - if (++SDLDeviceInstances == 1) { #ifdef __ANDROID__ // Blocking on pause causes problems with multiplayer. - // See https://github.com/minetest/minetest/issues/10842. + // see SDL_SetHint(SDL_HINT_ANDROID_BLOCK_ON_PAUSE, "0"); SDL_SetHint(SDL_HINT_ANDROID_BLOCK_ON_PAUSE_PAUSEAUDIO, "0"); @@ -321,7 +270,7 @@ CIrrDeviceSDL::CIrrDeviceSDL(const SIrrlichtCreationParameters ¶m) : SDL_SetHint(SDL_HINT_NO_SIGNAL_HANDLERS, "1"); // Disabling the compositor is not a good idea in windowed mode. - // See https://github.com/minetest/minetest/issues/14596 + // see SDL_SetHint(SDL_HINT_VIDEO_X11_NET_WM_BYPASS_COMPOSITOR, "0"); #if defined(_IRR_COMPILE_WITH_JOYSTICK_EVENTS_) @@ -713,7 +662,7 @@ bool CIrrDeviceSDL::run() while (!Close && wrap_PollEvent(&SDL_event)) { // os::Printer::log("event: ", core::stringc((int)SDL_event.type).c_str(), ELL_INFORMATION); // just for debugging - memset(&irrevent, 0, sizeof(irrevent)); + irrevent = {}; switch (SDL_event.type) { case SDL_MOUSEMOTION: { @@ -1299,6 +1248,15 @@ bool CIrrDeviceSDL::supportsTouchEvents() const return true; } +//! Checks whether windowing uses the Wayland protocol. +bool CIrrDeviceSDL::isUsingWayland() const +{ + if (!Window) + return false; + auto *name = SDL_GetCurrentVideoDriver(); + return name && !strcmp(name, "wayland"); +} + //! returns if window is active. if not, nothing need to be drawn bool CIrrDeviceSDL::isWindowActive() const { diff --git a/irr/src/CIrrDeviceSDL.h b/irr/src/CIrrDeviceSDL.h index b52422423..eb2250f2a 100644 --- a/irr/src/CIrrDeviceSDL.h +++ b/irr/src/CIrrDeviceSDL.h @@ -96,6 +96,9 @@ public: //! Checks if the Irrlicht device supports touch events. bool supportsTouchEvents() const override; + //! Checks whether windowing uses the Wayland protocol. + bool isUsingWayland() const override; + //! Get the position of this window on screen core::position2di getWindowPosition() override; diff --git a/irr/src/CIrrDeviceStub.cpp b/irr/src/CIrrDeviceStub.cpp index fd8e458c8..2bd0fb1d0 100644 --- a/irr/src/CIrrDeviceStub.cpp +++ b/irr/src/CIrrDeviceStub.cpp @@ -17,6 +17,42 @@ namespace irr { +namespace video +{ +#ifndef _IRR_COMPILE_WITH_OPENGL_ +IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) +{ + os::Printer::log("No OpenGL support compiled in.", ELL_ERROR); + return nullptr; +} +#endif + +#ifndef ENABLE_OPENGL3 +IVideoDriver *createOpenGL3Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) +{ + os::Printer::log("No OpenGL 3 support compiled in.", ELL_ERROR); + return nullptr; +} +#endif + +#ifndef _IRR_COMPILE_WITH_OGLES2_ +IVideoDriver *createOGLES2Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) +{ + os::Printer::log("No OpenGL ES 2 support compiled in.", ELL_ERROR); + return nullptr; +} +#endif + +#ifndef _IRR_COMPILE_WITH_WEBGL1_ +IVideoDriver *createWebGL1Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) +{ + os::Printer::log("No WebGL 1 support compiled in.", ELL_ERROR); + return nullptr; +} +#endif +} + + //! constructor CIrrDeviceStub::CIrrDeviceStub(const SIrrlichtCreationParameters ¶ms) : IrrlichtDevice(), VideoDriver(0), GUIEnvironment(0), SceneManager(0), diff --git a/irr/src/CIrrDeviceStub.h b/irr/src/CIrrDeviceStub.h index 9a1966f01..c46fd64fc 100644 --- a/irr/src/CIrrDeviceStub.h +++ b/irr/src/CIrrDeviceStub.h @@ -33,7 +33,15 @@ IFileSystem *createFileSystem(); namespace video { -IVideoDriver *createNullDriver(io::IFileSystem *io, const core::dimension2d &screenSize); + IVideoDriver *createNullDriver(io::IFileSystem *io, const core::dimension2d &screenSize); + + IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); + + IVideoDriver *createOpenGL3Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); + + IVideoDriver *createOGLES2Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); + + IVideoDriver *createWebGL1Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); } //! Stub for an Irrlicht Device implementation diff --git a/irr/src/CIrrDeviceWin32.cpp b/irr/src/CIrrDeviceWin32.cpp index 366be8013..f0947163d 100644 --- a/irr/src/CIrrDeviceWin32.cpp +++ b/irr/src/CIrrDeviceWin32.cpp @@ -34,24 +34,10 @@ #include "CEGLManager.h" #endif -#if defined(_IRR_COMPILE_WITH_OPENGL_) +#if defined(_IRR_COMPILE_WITH_WGL_MANAGER_) #include "CWGLManager.h" #endif -namespace irr -{ -namespace video -{ -#ifdef _IRR_COMPILE_WITH_OPENGL_ -IVideoDriver *createOpenGLDriver(const irr::SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#endif - -#ifdef _IRR_COMPILE_WITH_OGLES2_ -IVideoDriver *createOGLES2Driver(const irr::SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); -#endif -} -} // end namespace irr - namespace irr { struct SJoystickWin32Control @@ -727,10 +713,6 @@ CIrrDeviceWin32::CIrrDeviceWin32(const SIrrlichtCreationParameters ¶ms) : ExternalWindow(false), Win32CursorControl(0), JoyControl(0), WindowMaximized(params.WindowMaximized) { -#ifdef _DEBUG - setDebugName("CIrrDeviceWin32"); -#endif - // get windows version and create OS operator core::stringc winversion; getWindowsVersion(winversion); @@ -880,14 +862,23 @@ void CIrrDeviceWin32::createDriver() ContextManager = new video::CWGLManager(); ContextManager->initialize(CreationParams, video::SExposedVideoData(HWnd)); - +#endif VideoDriver = video::createOpenGLDriver(CreationParams, FileSystem, ContextManager); if (!VideoDriver) os::Printer::log("Could not create OpenGL driver.", ELL_ERROR); -#else - os::Printer::log("OpenGL driver was not compiled in.", ELL_ERROR); + break; + case video::EDT_OPENGL3: +#ifdef ENABLE_OPENGL3 + switchToFullScreen(); + + ContextManager = new video::CWGLManager(); + ContextManager->initialize(CreationParams, video::SExposedVideoData(HWnd)); #endif + VideoDriver = video::createOpenGL3Driver(CreationParams, FileSystem, ContextManager); + + if (!VideoDriver) + os::Printer::log("Could not create OpenGL 3 driver.", ELL_ERROR); break; case video::EDT_OGLES2: #ifdef _IRR_COMPILE_WITH_OGLES2_ @@ -895,14 +886,11 @@ void CIrrDeviceWin32::createDriver() ContextManager = new video::CEGLManager(); ContextManager->initialize(CreationParams, video::SExposedVideoData(HWnd)); - +#endif VideoDriver = video::createOGLES2Driver(CreationParams, FileSystem, ContextManager); if (!VideoDriver) os::Printer::log("Could not create OpenGL-ES2 driver.", ELL_ERROR); -#else - os::Printer::log("OpenGL-ES2 driver was not compiled in.", ELL_ERROR); -#endif break; case video::EDT_WEBGL1: os::Printer::log("WebGL1 driver not supported on Win32 device.", ELL_ERROR); diff --git a/irr/src/CLimitReadFile.cpp b/irr/src/CLimitReadFile.cpp index de9bf9ec3..b13120194 100644 --- a/irr/src/CLimitReadFile.cpp +++ b/irr/src/CLimitReadFile.cpp @@ -17,10 +17,6 @@ CLimitReadFile::CLimitReadFile(IReadFile *alreadyOpenedFile, long pos, AreaStart(0), AreaEnd(0), Pos(0), File(alreadyOpenedFile) { -#ifdef _DEBUG - setDebugName("CLimitReadFile"); -#endif - if (File) { File->grab(); AreaStart = pos; diff --git a/irr/src/CLogger.cpp b/irr/src/CLogger.cpp index 70d06b36a..2bb589a99 100644 --- a/irr/src/CLogger.cpp +++ b/irr/src/CLogger.cpp @@ -9,11 +9,7 @@ namespace irr CLogger::CLogger(IEventReceiver *r) : LogLevel(ELL_INFORMATION), Receiver(r) -{ -#ifdef _DEBUG - setDebugName("CLogger"); -#endif -} +{} //! Returns the current set log level. ELOG_LEVEL CLogger::getLogLevel() const diff --git a/irr/src/CMakeLists.txt b/irr/src/CMakeLists.txt index 1d2996734..e591d2396 100644 --- a/irr/src/CMakeLists.txt +++ b/irr/src/CMakeLists.txt @@ -9,7 +9,7 @@ option(USE_SDL2 "Use the SDL2 backend" ${DEFAULT_SDL2}) # Compiler flags if(CMAKE_BUILD_TYPE STREQUAL "Debug") - add_definitions(-D_DEBUG) + add_compile_definitions(_DEBUG) endif() set(CMAKE_POSITION_INDEPENDENT_CODE TRUE) @@ -43,9 +43,7 @@ elseif(MSVC) endif() # Platform-independent configuration (hard-coded currently) -add_definitions( - -DIRR_ENABLE_BUILTIN_FONT -) +add_compile_definitions(IRR_ENABLE_BUILTIN_FONT) # Platform-specific configuration @@ -56,35 +54,35 @@ endif() # Device if(WIN32) - add_definitions(-D_IRR_WINDOWS_ -D_IRR_WINDOWS_API_) + add_compile_definitions(_IRR_WINDOWS_ _IRR_WINDOWS_API_) set(DEVICE "WINDOWS") elseif(APPLE) - add_definitions(-D_IRR_OSX_PLATFORM_) + add_compile_definitions(_IRR_OSX_PLATFORM_) set(DEVICE "OSX") elseif(ANDROID) - add_definitions(-D_IRR_ANDROID_PLATFORM_) + add_compile_definitions(_IRR_ANDROID_PLATFORM_) if(NOT USE_SDL2) message(FATAL_ERROR "The Android build requires SDL2") endif() elseif(EMSCRIPTEN) - add_definitions(-D_IRR_EMSCRIPTEN_PLATFORM_ -D_IRR_COMPILE_WITH_EGL_MANAGER_) + add_compile_definitions(_IRR_EMSCRIPTEN_PLATFORM_ _IRR_COMPILE_WITH_EGL_MANAGER_) set(LINUX_PLATFORM TRUE) set(DEVICE "SDL") elseif(SOLARIS) - add_definitions(-D_IRR_SOLARIS_PLATFORM_ -D_IRR_POSIX_API_) + add_compile_definitions(_IRR_SOLARIS_PLATFORM_ _IRR_POSIX_API_) set(DEVICE "X11") else() - add_definitions(-D_IRR_POSIX_API_) + add_compile_definitions(_IRR_POSIX_API_) set(LINUX_PLATFORM TRUE) set(DEVICE "X11") endif() if(LINUX_PLATFORM) - add_definitions(-D_IRR_LINUX_PLATFORM_) + add_compile_definitions(_IRR_LINUX_PLATFORM_) endif() if(MSVC) - add_definitions(-D_CRT_SECURE_NO_WARNINGS) + add_compile_definitions(_CRT_SECURE_NO_WARNINGS) endif() if(USE_SDL2) @@ -93,7 +91,7 @@ elseif(DEVICE STREQUAL "SDL") message(FATAL_ERROR "SDL was used but not enabled?!") endif() -add_definitions("-D_IRR_COMPILE_WITH_${DEVICE}_DEVICE_") +add_compile_definitions("_IRR_COMPILE_WITH_${DEVICE}_DEVICE_") # X11 @@ -114,7 +112,7 @@ endif() # Joystick if(NOT (BSD OR SOLARIS OR EMSCRIPTEN)) - add_definitions(-D_IRR_COMPILE_WITH_JOYSTICK_EVENTS_) + add_compile_definitions(_IRR_COMPILE_WITH_JOYSTICK_EVENTS_) endif() # OpenGL @@ -123,10 +121,10 @@ if(USE_SDL2) if(NOT ANDROID) set(DEFAULT_OPENGL3 TRUE) endif() - option(ENABLE_OPENGL3 "Enable OpenGL 3+" ${DEFAULT_OPENGL3}) else() - set(ENABLE_OPENGL3 FALSE) + set(DEFAULT_OPENGL3 FALSE) endif() +option(ENABLE_OPENGL3 "Enable OpenGL 3+" ${DEFAULT_OPENGL3}) if(ANDROID OR EMSCRIPTEN) set(ENABLE_OPENGL FALSE) @@ -152,33 +150,39 @@ else() endif() endif() -if(ENABLE_OPENGL) - add_definitions(-D_IRR_COMPILE_WITH_OPENGL_) - set(OPENGL_DIRECT_LINK TRUE) # driver relies on this +if(ENABLE_OPENGL OR (ENABLE_OPENGL3 AND NOT USE_SDL2)) + if(ENABLE_OPENGL) + add_compile_definitions(_IRR_COMPILE_WITH_OPENGL_) + set(OPENGL_DIRECT_LINK TRUE) # driver relies on this + endif() if(DEVICE STREQUAL "WINDOWS") - add_definitions(-D_IRR_COMPILE_WITH_WGL_MANAGER_) + add_compile_definitions(_IRR_COMPILE_WITH_WGL_MANAGER_) elseif(DEVICE STREQUAL "X11") - add_definitions(-D_IRR_COMPILE_WITH_GLX_MANAGER_) + add_compile_definitions(_IRR_COMPILE_WITH_GLX_MANAGER_) elseif(DEVICE STREQUAL "OSX") - add_definitions(-D_IRR_COMPILE_WITH_NSOGL_MANAGER_) + add_compile_definitions(_IRR_COMPILE_WITH_NSOGL_MANAGER_) endif() endif() if(ENABLE_OPENGL3) - if (NOT USE_SDL2) + if(DEVICE STREQUAL "WINDOWS") + # supported + elseif(DEVICE STREQUAL "X11") + # supported + elseif (NOT USE_SDL2) message(FATAL_ERROR "OpenGL 3 driver requires SDL2") endif() endif() if(ENABLE_GLES2) - add_definitions(-D_IRR_COMPILE_WITH_OGLES2_) + add_compile_definitions(_IRR_COMPILE_WITH_OGLES2_) if(DEVICE MATCHES "^(WINDOWS|X11)$" OR EMSCRIPTEN) - add_definitions(-D_IRR_COMPILE_WITH_EGL_MANAGER_) + add_compile_definitions(_IRR_COMPILE_WITH_EGL_MANAGER_) endif() endif() if(ENABLE_WEBGL1) - add_definitions(-D_IRR_COMPILE_WITH_WEBGL1_) + add_compile_definitions(_IRR_COMPILE_WITH_WEBGL1_) endif() # Misc @@ -186,7 +190,7 @@ endif() include(TestBigEndian) TEST_BIG_ENDIAN(BIG_ENDIAN) if(BIG_ENDIAN) - add_definitions(-D__BIG_ENDIAN__) + add_compile_definitions(__BIG_ENDIAN__) endif() # Configuration report @@ -257,7 +261,7 @@ if(ENABLE_OPENGL AND DEVICE STREQUAL "SDL") #endif\n\ int main() {}" CHECK_GL_VERSION_4_5) if(CHECK_GL_VERSION_4_5) - add_definitions(-DIRR_PREFER_SDL_GL_HEADER) + add_compile_definitions(IRR_PREFER_SDL_GL_HEADER) endif() endif() @@ -269,7 +273,7 @@ elseif(APPLE) find_library(COCOA_LIB Cocoa REQUIRED) find_library(IOKIT_LIB IOKit REQUIRED) - add_definitions(-DGL_SILENCE_DEPRECATION) + add_compile_definitions(GL_SILENCE_DEPRECATION) elseif(NOT USE_SDL2) # Unix probably find_package(X11 REQUIRED) @@ -304,7 +308,7 @@ set(IRRMESHLOADER ) add_library(IRRMESHOBJ OBJECT - CSkinnedMesh.cpp + SkinnedMesh.cpp CBoneSceneNode.cpp CMeshSceneNode.cpp CAnimatedMeshSceneNode.cpp @@ -344,6 +348,7 @@ if(ENABLE_OPENGL3 OR ENABLE_GLES2) OpenGL/FixedPipelineRenderer.cpp OpenGL/MaterialRenderer.cpp OpenGL/Renderer2D.cpp + OpenGL/VBO.cpp ) endif() @@ -364,7 +369,6 @@ endif() set(IRRIMAGEOBJ CColorConverter.cpp CImage.cpp - CImageLoaderBMP.cpp CImageLoaderJPG.cpp CImageLoaderPNG.cpp CImageLoaderTGA.cpp diff --git a/irr/src/CMemoryFile.cpp b/irr/src/CMemoryFile.cpp index 6d7906b91..4e6baa99c 100644 --- a/irr/src/CMemoryFile.cpp +++ b/irr/src/CMemoryFile.cpp @@ -12,11 +12,7 @@ namespace io CMemoryReadFile::CMemoryReadFile(const void *memory, long len, const io::path &fileName, bool d) : Buffer(memory), Len(len), Pos(0), Filename(fileName), deleteMemoryWhenDropped(d) -{ -#ifdef _DEBUG - setDebugName("CMemoryReadFile"); -#endif -} +{} CMemoryReadFile::~CMemoryReadFile() { @@ -82,11 +78,7 @@ const io::path &CMemoryReadFile::getFileName() const CMemoryWriteFile::CMemoryWriteFile(void *memory, long len, const io::path &fileName, bool d) : Buffer(memory), Len(len), Pos(0), Filename(fileName), deleteMemoryWhenDropped(d) -{ -#ifdef _DEBUG - setDebugName("CMemoryWriteFile"); -#endif -} +{} CMemoryWriteFile::~CMemoryWriteFile() { diff --git a/irr/src/CMeshManipulator.cpp b/irr/src/CMeshManipulator.cpp index 67b22a07e..63157403b 100644 --- a/irr/src/CMeshManipulator.cpp +++ b/irr/src/CMeshManipulator.cpp @@ -3,7 +3,7 @@ // For conditions of distribution and use, see copyright notice in irrlicht.h #include "CMeshManipulator.h" -#include "ISkinnedMesh.h" +#include "SkinnedMesh.h" #include "SMesh.h" #include "CMeshBuffer.h" #include "SAnimatedMesh.h" @@ -101,7 +101,7 @@ void CMeshManipulator::recalculateNormals(scene::IMesh *mesh, bool smooth, bool return; if (mesh->getMeshType() == EAMT_SKINNED) { - ISkinnedMesh *smesh = (ISkinnedMesh *)mesh; + auto *smesh = (SkinnedMesh *)mesh; smesh->resetAnimation(); } @@ -110,7 +110,7 @@ void CMeshManipulator::recalculateNormals(scene::IMesh *mesh, bool smooth, bool recalculateNormals(mesh->getMeshBuffer(b), smooth, angleWeighted); if (mesh->getMeshType() == EAMT_SKINNED) { - ISkinnedMesh *smesh = (ISkinnedMesh *)mesh; + auto *smesh = (SkinnedMesh *)mesh; smesh->refreshJointCache(); } } diff --git a/irr/src/CMeshSceneNode.cpp b/irr/src/CMeshSceneNode.cpp index 030e1fd15..89220cdc7 100644 --- a/irr/src/CMeshSceneNode.cpp +++ b/irr/src/CMeshSceneNode.cpp @@ -5,10 +5,8 @@ #include "CMeshSceneNode.h" #include "IVideoDriver.h" #include "ISceneManager.h" -#include "S3DVertex.h" -#include "ICameraSceneNode.h" #include "IMeshCache.h" -#include "IAnimatedMesh.h" +#include "IMeshBuffer.h" #include "IMaterialRenderer.h" #include "IFileSystem.h" @@ -25,10 +23,6 @@ CMeshSceneNode::CMeshSceneNode(IMesh *mesh, ISceneNode *parent, ISceneManager *m Mesh(0), PassCount(0), ReadOnlyMaterials(false) { -#ifdef _DEBUG - setDebugName("CMeshSceneNode"); -#endif - setMesh(mesh); } @@ -115,12 +109,10 @@ void CMeshSceneNode::render() // for debug purposes only: if (DebugDataVisible && PassCount == 1) { video::SMaterial m; - m.AntiAliasing = 0; + m.AntiAliasing = video::EAAM_OFF; + m.ZBuffer = video::ECFN_DISABLED; driver->setMaterial(m); - if (DebugDataVisible & scene::EDS_BBOX) { - driver->draw3DBox(Box, video::SColor(255, 255, 255, 255)); - } if (DebugDataVisible & scene::EDS_BBOX_BUFFERS) { for (u32 g = 0; g < Mesh->getMeshBufferCount(); ++g) { driver->draw3DBox( @@ -129,6 +121,10 @@ void CMeshSceneNode::render() } } + if (DebugDataVisible & scene::EDS_BBOX) { + driver->draw3DBox(Box, video::SColor(255, 255, 255, 255)); + } + if (DebugDataVisible & scene::EDS_NORMALS) { // draw normals const f32 debugNormalLength = 1.f; diff --git a/irr/src/CMeshSceneNode.h b/irr/src/CMeshSceneNode.h index a00928748..6791a3484 100644 --- a/irr/src/CMeshSceneNode.h +++ b/irr/src/CMeshSceneNode.h @@ -72,7 +72,7 @@ protected: void copyMaterials(); core::array Materials; - core::aabbox3d Box; + core::aabbox3d Box{{0, 0, 0}}; video::SMaterial ReadOnlyMaterial; IMesh *Mesh; diff --git a/irr/src/CNSOGLManager.mm b/irr/src/CNSOGLManager.mm index c1e543e53..b550df20e 100644 --- a/irr/src/CNSOGLManager.mm +++ b/irr/src/CNSOGLManager.mm @@ -16,11 +16,7 @@ namespace video CNSOGLManager::CNSOGLManager() : PrimaryContext(SExposedVideoData(0)), PixelFormat(nil) -{ -#ifdef _DEBUG - setDebugName("CNSOGLManager"); -#endif -} +{} CNSOGLManager::~CNSOGLManager() { diff --git a/irr/src/CNullDriver.cpp b/irr/src/CNullDriver.cpp index 74e8cb0f4..c87d5ae93 100644 --- a/irr/src/CNullDriver.cpp +++ b/irr/src/CNullDriver.cpp @@ -22,9 +22,6 @@ namespace irr namespace video { -//! creates a loader which is able to load windows bitmaps -IImageLoader *createImageLoaderBMP(); - //! creates a loader which is able to load jpeg images IImageLoader *createImageLoaderJPG(); @@ -56,10 +53,6 @@ CNullDriver::CNullDriver(io::IFileSystem *io, const core::dimension2d &scre ViewPort(0, 0, 0, 0), ScreenSize(screenSize), MinVertexCountForVBO(500), TextureCreationFlags(0), OverrideMaterial2DEnabled(false), AllowZWriteOnTransparent(false) { -#ifdef _DEBUG - setDebugName("CNullDriver"); -#endif - DriverAttributes = new io::CAttributes(); DriverAttributes->addInt("MaxTextures", MATERIAL_MAX_TEXTURES); DriverAttributes->addInt("MaxSupportedTextures", MATERIAL_MAX_TEXTURES); @@ -79,7 +72,7 @@ CNullDriver::CNullDriver(io::IFileSystem *io, const core::dimension2d &scre setTextureCreationFlag(ETCF_ALWAYS_32_BIT, true); setTextureCreationFlag(ETCF_CREATE_MIP_MAPS, true); setTextureCreationFlag(ETCF_AUTO_GENERATE_MIP_MAPS, true); - setTextureCreationFlag(ETCF_ALLOW_MEMORY_COPY, true); + setTextureCreationFlag(ETCF_ALLOW_MEMORY_COPY, false); ViewPort = core::rect(core::position2d(0, 0), core::dimension2di(screenSize)); @@ -93,7 +86,6 @@ CNullDriver::CNullDriver(io::IFileSystem *io, const core::dimension2d &scre SurfaceLoader.push_back(video::createImageLoaderTGA()); SurfaceLoader.push_back(video::createImageLoaderPNG()); SurfaceLoader.push_back(video::createImageLoaderJPG()); - SurfaceLoader.push_back(video::createImageLoaderBMP()); SurfaceWriter.push_back(video::createImageWriterJPG()); SurfaceWriter.push_back(video::createImageWriterPNG()); @@ -226,7 +218,7 @@ bool CNullDriver::beginScene(u16 clearFlag, SColor clearColor, f32 clearDepth, u bool CNullDriver::endScene() { FPSCounter.registerFrame(os::Timer::getRealTime()); - updateAllHardwareBuffers(); + expireHardwareBuffers(); updateAllOcclusionQueries(); return true; } @@ -627,20 +619,17 @@ void CNullDriver::draw3DBox(const core::aabbox3d &box, SColor color) core::vector3df edges[8]; box.getEdges(edges); - // TODO: optimize into one big drawIndexPrimitive call. + video::S3DVertex v[8]; + for (u32 i = 0; i < 8; i++) { + v[i].Pos = edges[i]; + v[i].Color = color; + } - draw3DLine(edges[5], edges[1], color); - draw3DLine(edges[1], edges[3], color); - draw3DLine(edges[3], edges[7], color); - draw3DLine(edges[7], edges[5], color); - draw3DLine(edges[0], edges[2], color); - draw3DLine(edges[2], edges[6], color); - draw3DLine(edges[6], edges[4], color); - draw3DLine(edges[4], edges[0], color); - draw3DLine(edges[1], edges[0], color); - draw3DLine(edges[3], edges[2], color); - draw3DLine(edges[7], edges[6], color); - draw3DLine(edges[5], edges[4], color); + const static u16 box_indices[24] = { + 5, 1, 1, 3, 3, 7, 7, 5, 0, 2, 2, 6, 6, 4, 4, 0, 1, 0, 3, 2, 7, 6, 5, 4 + }; + + drawVertexPrimitiveList(v, 8, box_indices, 12, EVT_STANDARD, scene::EPT_LINES); } //! draws an 2d image @@ -747,19 +736,6 @@ SFrameStats CNullDriver::getFrameStats() const return FrameStats; } -//! Sets the dynamic ambient light color. The default color is -//! (0,0,0,0) which means it is dark. -//! \param color: New color of the ambient light. -void CNullDriver::setAmbientLight(const SColorf &color) -{ - AmbientLight = color; -} - -const SColorf &CNullDriver::getAmbientLight() const -{ - return AmbientLight; -} - //! \return Returns the name of the video driver. Example: In case of the DIRECT3D8 //! driver, it would return "Direct3D8". @@ -940,9 +916,10 @@ void CNullDriver::setTextureCreationFlag(E_TEXTURE_CREATION_FLAG flag, bool enab setTextureCreationFlag(ETCF_OPTIMIZED_FOR_SPEED, false); } - // set flag - TextureCreationFlags = (TextureCreationFlags & (~flag)) | - ((((u32)!enabled) - 1) & flag); + if (enabled) + TextureCreationFlags |= flag; + else + TextureCreationFlags &= ~flag; } //! Returns if a texture creation flag is enabled or disabled. @@ -1161,32 +1138,68 @@ CNullDriver::SHWBufferLink *CNullDriver::getBufferLink(const scene::IIndexBuffer return createHardwareBuffer(ib); // no hardware links, and mesh wants one, create it } -//! Update all hardware buffers, remove unused ones -void CNullDriver::updateAllHardwareBuffers() +void CNullDriver::registerHardwareBuffer(SHWBufferLink *HWBuffer) { - auto it = HWBufferList.begin(); - while (it != HWBufferList.end()) { - SHWBufferLink *Link = *it; - ++it; + _IRR_DEBUG_BREAK_IF(!HWBuffer) + HWBuffer->ListPosition = HWBufferList.size(); + HWBufferList.push_back(HWBuffer); +} - if (Link->IsVertex) { - if (!Link->VertexBuffer || Link->VertexBuffer->getReferenceCount() == 1) - deleteHardwareBuffer(Link); - } else { - if (!Link->IndexBuffer || Link->IndexBuffer->getReferenceCount() == 1) - deleteHardwareBuffer(Link); - } +void CNullDriver::expireHardwareBuffers() +{ + for (size_t i = 0; i < HWBufferList.size(); ) { + auto *Link = HWBufferList[i]; + + bool del; + if (Link->IsVertex) + del = !Link->VertexBuffer || Link->VertexBuffer->getReferenceCount() == 1; + else + del = !Link->IndexBuffer || Link->IndexBuffer->getReferenceCount() == 1; + // deleting can reorder, so don't advance in list + if (del) + deleteHardwareBuffer(Link); + else + i++; } + + FrameStats.HWBuffersActive = HWBufferList.size(); } void CNullDriver::deleteHardwareBuffer(SHWBufferLink *HWBuffer) { if (!HWBuffer) return; - HWBufferList.erase(HWBuffer->listPosition); + const size_t pos = HWBuffer->ListPosition; + _IRR_DEBUG_BREAK_IF(HWBufferList.at(pos) != HWBuffer) + if (HWBufferList.size() < 2 || pos == HWBufferList.size() - 1) { + HWBufferList.erase(HWBufferList.begin() + pos); + } else { + // swap with last + std::swap(HWBufferList[pos], HWBufferList.back()); + HWBufferList.pop_back(); + HWBufferList[pos]->ListPosition = pos; + } delete HWBuffer; } +void CNullDriver::updateHardwareBuffer(const scene::IVertexBuffer *vb) +{ + if (!vb) + return; + auto *link = getBufferLink(vb); + if (link) + updateHardwareBuffer(link); +} + +void CNullDriver::updateHardwareBuffer(const scene::IIndexBuffer *ib) +{ + if (!ib) + return; + auto *link = getBufferLink(ib); + if (link) + updateHardwareBuffer(link); +} + void CNullDriver::removeHardwareBuffer(const scene::IVertexBuffer *vb) { if (!vb) @@ -1298,7 +1311,7 @@ void CNullDriver::runOcclusionQuery(scene::ISceneNode *node, bool visible) OcclusionQueries[index].Run = 0; if (!visible) { SMaterial mat; - mat.AntiAliasing = 0; + mat.AntiAliasing = video::EAAM_OFF; mat.ColorMask = ECP_NONE; mat.ZWriteEnable = EZW_OFF; setMaterial(mat); @@ -1504,34 +1517,24 @@ IGPUProgrammingServices *CNullDriver::getGPUProgrammingServices() //! Adds a new material renderer to the VideoDriver, based on a high level shading language. s32 CNullDriver::addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, + const c8 *shaderName, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, IShaderConstantSetCallBack *callback, E_MATERIAL_TYPE baseMaterial, s32 userData) { - os::Printer::log("High level shader materials not available (yet) in this driver, sorry"); + os::Printer::log("Shader materials not available in this driver", ELL_ERROR); return -1; } s32 CNullDriver::addHighLevelShaderMaterialFromFiles( const io::path &vertexShaderProgramFileName, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const io::path &pixelShaderProgramFileName, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const io::path &geometryShaderProgramFileName, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, + const c8 *shaderName, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, IShaderConstantSetCallBack *callback, @@ -1567,9 +1570,7 @@ s32 CNullDriver::addHighLevelShaderMaterialFromFiles( } s32 result = addHighLevelShaderMaterialFromFiles( - vsfile, vertexShaderEntryPointName, vsCompileTarget, - psfile, pixelShaderEntryPointName, psCompileTarget, - gsfile, geometryShaderEntryPointName, gsCompileTarget, + vsfile, psfile, gsfile, shaderName, inType, outType, verticesOut, callback, baseMaterial, userData); @@ -1587,14 +1588,9 @@ s32 CNullDriver::addHighLevelShaderMaterialFromFiles( s32 CNullDriver::addHighLevelShaderMaterialFromFiles( io::IReadFile *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, io::IReadFile *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, io::IReadFile *geometryShaderProgram, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, + const c8 *shaderName, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, IShaderConstantSetCallBack *callback, @@ -1640,9 +1636,7 @@ s32 CNullDriver::addHighLevelShaderMaterialFromFiles( } s32 result = this->addHighLevelShaderMaterial( - vs, vertexShaderEntryPointName, vsCompileTarget, - ps, pixelShaderEntryPointName, psCompileTarget, - gs, geometryShaderEntryPointName, gsCompileTarget, + vs, ps, gs, shaderName, inType, outType, verticesOut, callback, baseMaterial, userData); @@ -1681,6 +1675,12 @@ ITexture *CNullDriver::addRenderTargetTexture(const core::dimension2d &size return 0; } +ITexture *CNullDriver::addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name, const ECOLOR_FORMAT format) +{ + return 0; +} + ITexture *CNullDriver::addRenderTargetTextureCubemap(const irr::u32 sideLen, const io::path &name, const ECOLOR_FORMAT format) { @@ -1771,21 +1771,5 @@ bool CNullDriver::needsTransparentRenderPass(const irr::video::SMaterial &materi return false; } -//! Color conversion convenience function -/** Convert an image (as array of pixels) from source to destination -array, thereby converting the color format. The pixel size is -determined by the color formats. -\param sP Pointer to source -\param sF Color format of source -\param sN Number of pixels to convert, both array must be large enough -\param dP Pointer to destination -\param dF Color format of destination -*/ -void CNullDriver::convertColor(const void *sP, ECOLOR_FORMAT sF, s32 sN, - void *dP, ECOLOR_FORMAT dF) const -{ - video::CColorConverter::convert_viaFormat(sP, sF, sN, dP, dF); -} - } // end namespace } // end namespace diff --git a/irr/src/CNullDriver.h b/irr/src/CNullDriver.h index b8d45118f..0b4167e83 100644 --- a/irr/src/CNullDriver.h +++ b/irr/src/CNullDriver.h @@ -17,7 +17,6 @@ #include "S3DVertex.h" #include "SVertexIndex.h" #include "SExposedVideoData.h" -#include namespace irr { @@ -201,14 +200,6 @@ public: //! driver, it would return "Direct3D8.1". const char *getName() const override; - //! Sets the dynamic ambient light color. The default color is - //! (0,0,0,0) which means it is dark. - //! \param color: New color of the ambient light. - void setAmbientLight(const SColorf &color) override; - - //! Get the global ambient light currently used by the driver - const SColorf &getAmbientLight() const override; - //! Adds an external image loader to the engine. void addExternalImageLoader(IImageLoader *loader) override; @@ -227,6 +218,10 @@ public: virtual ITexture *addRenderTargetTexture(const core::dimension2d &size, const io::path &name, const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + //! Creates a multisampled render target texture. + virtual ITexture *addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name, const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + //! Creates a render target texture for a cubemap ITexture *addRenderTargetTextureCubemap(const irr::u32 sideLen, const io::path &name, const ECOLOR_FORMAT format) override; @@ -297,7 +292,7 @@ protected: struct SHWBufferLink { SHWBufferLink(const scene::IVertexBuffer *vb) : - VertexBuffer(vb), ChangedID(0), IsVertex(true) + VertexBuffer(vb), IsVertex(true) { if (VertexBuffer) { VertexBuffer->grab(); @@ -305,7 +300,7 @@ protected: } } SHWBufferLink(const scene::IIndexBuffer *ib) : - IndexBuffer(ib), ChangedID(0), IsVertex(false) + IndexBuffer(ib), IsVertex(false) { if (IndexBuffer) { IndexBuffer->grab(); @@ -328,9 +323,9 @@ protected: const scene::IVertexBuffer *VertexBuffer; const scene::IIndexBuffer *IndexBuffer; }; - u32 ChangedID; + size_t ListPosition = static_cast(-1); + u32 ChangedID = 0; bool IsVertex; - std::list::iterator listPosition; }; //! Gets hardware buffer link from a vertex buffer (may create or update buffer) @@ -352,6 +347,10 @@ protected: virtual SHWBufferLink *createHardwareBuffer(const scene::IIndexBuffer *ib) { return 0; } public: + virtual void updateHardwareBuffer(const scene::IVertexBuffer *vb) override; + + virtual void updateHardwareBuffer(const scene::IIndexBuffer *ib) override; + //! Remove hardware buffer void removeHardwareBuffer(const scene::IVertexBuffer *vb) override; @@ -361,8 +360,8 @@ public: //! Remove all hardware buffers void removeAllHardwareBuffers() override; - //! Update all hardware buffers, remove unused ones - virtual void updateAllHardwareBuffers(); + //! Run garbage-collection on all HW buffers + void expireHardwareBuffers(); //! is vbo recommended? virtual bool isHardwareBufferRecommend(const scene::IVertexBuffer *mb); @@ -410,6 +409,8 @@ public: //! Create render target. IRenderTarget *addRenderTarget() override; + void blitRenderTarget(IRenderTarget *from, IRenderTarget *to) override {} + //! Remove render target. void removeRenderTarget(IRenderTarget *renderTarget) override; @@ -448,54 +449,39 @@ public: //! Adds a new material renderer to the VideoDriver, based on a high level shading language. virtual s32 addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName = 0, - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - const c8 *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = 0, - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - const c8 *geometryShaderProgram = 0, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *pixelShaderProgram, + const c8 *geometryShaderProgram, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) override; + s32 userData = 0)override; virtual s32 addHighLevelShaderMaterialFromFiles( - const io::path &vertexShaderProgramFile, - const c8 *vertexShaderEntryPointName = "main", - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - const io::path &pixelShaderProgramFile = "", - const c8 *pixelShaderEntryPointName = "main", - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - const io::path &geometryShaderProgramFileName = "", - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const io::path &vertexShaderProgramFileName, + const io::path &pixelShaderProgramFileName, + const io::path &geometryShaderProgramFileName, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) override; - virtual s32 addHighLevelShaderMaterialFromFiles( + s32 addHighLevelShaderMaterialFromFiles( io::IReadFile *vertexShaderProgram, - const c8 *vertexShaderEntryPointName = "main", - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, io::IReadFile *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = "main", - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, io::IReadFile *geometryShaderProgram = 0, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, - s32 userData = 0) override; + s32 userData = 0); virtual void deleteShaderMaterial(s32 material) override; @@ -553,19 +539,6 @@ public: //! Used by some SceneNodes to check if a material should be rendered in the transparent render pass bool needsTransparentRenderPass(const irr::video::SMaterial &material) const override; - //! Color conversion convenience function - /** Convert an image (as array of pixels) from source to destination - array, thereby converting the color format. The pixel size is - determined by the color formats. - \param sP Pointer to source - \param sF Color format of source - \param sN Number of pixels to convert, both array must be large enough - \param dP Pointer to destination - \param dF Color format of destination - */ - virtual void convertColor(const void *sP, ECOLOR_FORMAT sF, s32 sN, - void *dP, ECOLOR_FORMAT dF) const override; - protected: //! deletes all textures void deleteAllTextures(); @@ -593,13 +566,16 @@ protected: //! deletes all material renderers void deleteMaterialRenders(); + // adds a created hardware buffer to the relevant data structure + void registerHardwareBuffer(SHWBufferLink *HWBuffer); + // prints renderer version void printVersion(); inline void accountHWBufferUpload(u32 size) { FrameStats.HWBuffersUploaded++; - FrameStats.HWBuffersUploadedSize += size; + (void)size; } inline bool getWriteZBuffer(const SMaterial &material) const @@ -716,7 +692,7 @@ protected: core::array SurfaceWriter; core::array MaterialRenderers; - std::list HWBufferList; + std::vector HWBufferList; io::IFileSystem *FileSystem; @@ -753,8 +729,6 @@ protected: bool AllowZWriteOnTransparent; bool FeatureEnabled[video::EVDF_COUNT]; - - SColorf AmbientLight; }; } // end namespace video diff --git a/irr/src/COBJMeshFileLoader.cpp b/irr/src/COBJMeshFileLoader.cpp index 97e90c322..fdbcbd1d0 100644 --- a/irr/src/COBJMeshFileLoader.cpp +++ b/irr/src/COBJMeshFileLoader.cpp @@ -26,11 +26,7 @@ namespace scene //! Constructor COBJMeshFileLoader::COBJMeshFileLoader(scene::ISceneManager *smgr) : SceneManager(smgr) -{ -#ifdef _DEBUG - setDebugName("COBJMeshFileLoader"); -#endif -} +{} //! destructor COBJMeshFileLoader::~COBJMeshFileLoader() diff --git a/irr/src/COSOperator.cpp b/irr/src/COSOperator.cpp index d53223916..9abca636c 100644 --- a/irr/src/COSOperator.cpp +++ b/irr/src/COSOperator.cpp @@ -43,11 +43,7 @@ COSOperator::COSOperator(const core::stringc &osVersion, CIrrDeviceLinux *device // constructor COSOperator::COSOperator(const core::stringc &osVersion) : OperatingSystem(osVersion) -{ -#ifdef _DEBUG - setDebugName("COSOperator"); -#endif -} +{} COSOperator::~COSOperator() { @@ -101,8 +97,8 @@ void COSOperator::copyToClipboard(const c8 *text) const if ((text != NULL) && (strlen(text) > 0)) { str = [NSString stringWithCString:text encoding:NSUTF8StringEncoding]; board = [NSPasteboard generalPasteboard]; - [board declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:NSApp]; - [board setString:str forType:NSStringPboardType]; + [board declareTypes:[NSArray arrayWithObject:NSPasteboardTypeString] owner:NSApp]; + [board setString:str forType:NSPasteboardTypeString]; } #elif defined(_IRR_COMPILE_WITH_X11_DEVICE_) @@ -159,7 +155,7 @@ const c8 *COSOperator::getTextFromClipboard() const char *result = 0; board = [NSPasteboard generalPasteboard]; - str = [board stringForType:NSStringPboardType]; + str = [board stringForType:NSPasteboardTypeString]; if (str != nil) result = (char *)[str cStringUsingEncoding:NSUTF8StringEncoding]; diff --git a/irr/src/COpenGLCoreCacheHandler.h b/irr/src/COpenGLCoreCacheHandler.h index a1277bfed..744511629 100644 --- a/irr/src/COpenGLCoreCacheHandler.h +++ b/irr/src/COpenGLCoreCacheHandler.h @@ -85,13 +85,19 @@ class COpenGLCoreCacheHandler GL.BindTexture(prevTextureType, 0); #if defined(IRR_COMPILE_GL_COMMON) - GL.Disable(prevTextureType); - GL.Enable(curTextureType); + // The "enable/disable texture" stuff is so legacy that + // it's not even allowed for multisample textures. + // (IRR_COMPILE_GL_COMMON is for the legacy driver.) + if (prevTextureType != GL_TEXTURE_2D_MULTISAMPLE) + GL.Disable(prevTextureType); + if (curTextureType != GL_TEXTURE_2D_MULTISAMPLE) + GL.Enable(curTextureType); #endif } #if defined(IRR_COMPILE_GL_COMMON) else if (!prevTexture) - GL.Enable(curTextureType); + if (curTextureType != GL_TEXTURE_2D_MULTISAMPLE) + GL.Enable(curTextureType); #endif GL.BindTexture(curTextureType, static_cast(texture)->getOpenGLTextureName()); @@ -110,7 +116,8 @@ class COpenGLCoreCacheHandler GL.BindTexture(prevTextureType, 0); #if defined(IRR_COMPILE_GL_COMMON) - GL.Disable(prevTextureType); + if (prevTextureType != GL_TEXTURE_2D_MULTISAMPLE) + GL.Disable(prevTextureType); #endif } diff --git a/irr/src/COpenGLCoreRenderTarget.h b/irr/src/COpenGLCoreRenderTarget.h index 6bfc98cc0..50656ce1f 100644 --- a/irr/src/COpenGLCoreRenderTarget.h +++ b/irr/src/COpenGLCoreRenderTarget.h @@ -5,6 +5,7 @@ #pragma once #include "IRenderTarget.h" +#include #ifndef GL_FRAMEBUFFER_INCOMPLETE_FORMATS #define GL_FRAMEBUFFER_INCOMPLETE_FORMATS GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT @@ -27,10 +28,6 @@ public: AssignedDepth(false), AssignedStencil(false), RequestTextureUpdate(false), RequestDepthStencilUpdate(false), BufferID(0), ColorAttachment(0), MultipleRenderTarget(0), Driver(driver) { -#ifdef _DEBUG - setDebugName("COpenGLCoreRenderTarget"); -#endif - DriverType = Driver->getDriverType(); Size = Driver->getScreenSize(); @@ -122,7 +119,7 @@ public: TOpenGLTexture *currentTexture = (depthStencil && depthStencil->getDriverType() == DriverType) ? static_cast(depthStencil) : 0; if (currentTexture) { - if (currentTexture->getType() == ETT_2D) { + if (currentTexture->getType() == ETT_2D || currentTexture->getType() == ETT_2D_MS) { GLuint textureID = currentTexture->getOpenGLTextureName(); const ECOLOR_FORMAT textureFormat = (textureID != 0) ? depthStencil->getColorFormat() : ECF_UNKNOWN; @@ -172,7 +169,20 @@ public: if (textureID != 0) { AssignedTextures[i] = GL_COLOR_ATTACHMENT0 + i; - GLenum textarget = currentTexture->getType() == ETT_2D ? GL_TEXTURE_2D : GL_TEXTURE_CUBE_MAP_POSITIVE_X + (int)CubeSurfaces[i]; + GLenum textarget; + switch (currentTexture->getType()) { + case ETT_2D: + textarget = GL_TEXTURE_2D; + break; + case ETT_2D_MS: + textarget = GL_TEXTURE_2D_MULTISAMPLE; + break; + case ETT_CUBEMAP: + textarget = GL_TEXTURE_CUBE_MAP_POSITIVE_X + (int)CubeSurfaces[i]; + break; + default: + throw std::logic_error("not reachable"); + } Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, AssignedTextures[i], textarget, textureID, 0); TEST_GL_ERROR(Driver); } else if (AssignedTextures[i] != GL_NONE) { @@ -198,36 +208,50 @@ public: // Set depth and stencil attachments. if (RequestDepthStencilUpdate) { - const ECOLOR_FORMAT textureFormat = (DepthStencil) ? DepthStencil->getColorFormat() : ECF_UNKNOWN; + const ECOLOR_FORMAT textureFormat = DepthStencil ? DepthStencil->getColorFormat() : ECF_UNKNOWN; if (IImage::isDepthFormat(textureFormat)) { + GLenum textarget; + switch (DepthStencil->getType()) { + case ETT_2D: + textarget = GL_TEXTURE_2D; + break; + case ETT_2D_MS: + textarget = GL_TEXTURE_2D_MULTISAMPLE; + break; + default: + // ETT_CUBEMAP is rejected for depth/stencil by setTextures + throw std::logic_error("not reachable"); + } + GLuint textureID = static_cast(DepthStencil)->getOpenGLTextureName(); #ifdef _IRR_EMSCRIPTEN_PLATFORM_ // The WEBGL_depth_texture extension does not allow attaching stencil+depth separate. if (textureFormat == ECF_D24S8) { GLenum attachment = 0x821A; // GL_DEPTH_STENCIL_ATTACHMENT - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, attachment, GL_TEXTURE_2D, textureID, 0); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, attachment, textarget, textureID, 0); AssignedStencil = true; } else { - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, textureID, 0); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, textarget, textureID, 0); AssignedStencil = false; } #else - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, textureID, 0); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, textarget, textureID, 0); if (textureFormat == ECF_D24S8) { - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_TEXTURE_2D, textureID, 0); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, textarget, textureID, 0); AssignedStencil = true; } else { if (AssignedStencil) - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, GL_TEXTURE_2D, 0, 0); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_STENCIL_ATTACHMENT, textarget, 0, 0); AssignedStencil = false; } #endif AssignedDepth = true; } else { + // No (valid) depth/stencil texture. if (AssignedDepth) Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_TEXTURE_2D, 0, 0); diff --git a/irr/src/COpenGLCoreTexture.h b/irr/src/COpenGLCoreTexture.h index 86ed4f73a..63551cc0a 100644 --- a/irr/src/COpenGLCoreTexture.h +++ b/irr/src/COpenGLCoreTexture.h @@ -45,12 +45,13 @@ public: COpenGLCoreTexture(const io::path &name, const std::vector &srcImages, E_TEXTURE_TYPE type, TOpenGLDriver *driver) : ITexture(name, type), Driver(driver), TextureType(GL_TEXTURE_2D), - TextureName(0), InternalFormat(GL_RGBA), PixelFormat(GL_RGBA), PixelType(GL_UNSIGNED_BYTE), Converter(0), LockReadOnly(false), LockImage(0), LockLayer(0), + TextureName(0), InternalFormat(GL_RGBA), PixelFormat(GL_RGBA), PixelType(GL_UNSIGNED_BYTE), MSAA(0), Converter(0), LockReadOnly(false), LockImage(0), LockLayer(0), KeepImage(false), MipLevelStored(0), LegacyAutoGenerateMipMaps(false) { _IRR_DEBUG_BREAK_IF(srcImages.empty()) DriverType = Driver->getDriverType(); + _IRR_DEBUG_BREAK_IF(Type == ETT_2D_MS); // not supported by this constructor TextureType = TextureTypeIrrToGL(Type); HasMipMaps = Driver->getTextureCreationFlag(ETCF_CREATE_MIP_MAPS); KeepImage = Driver->getTextureCreationFlag(ETCF_ALLOW_MEMORY_COPY); @@ -136,15 +137,18 @@ public: Images.clear(); } + if (!name.empty()) + Driver->irrGlObjectLabel(GL_TEXTURE, TextureName, name.c_str()); + Driver->getCacheHandler()->getTextureCache().set(0, prevTexture); TEST_GL_ERROR(Driver); } - COpenGLCoreTexture(const io::path &name, const core::dimension2d &size, E_TEXTURE_TYPE type, ECOLOR_FORMAT format, TOpenGLDriver *driver) : + COpenGLCoreTexture(const io::path &name, const core::dimension2d &size, E_TEXTURE_TYPE type, ECOLOR_FORMAT format, TOpenGLDriver *driver, u8 msaa = 0) : ITexture(name, type), Driver(driver), TextureType(GL_TEXTURE_2D), - TextureName(0), InternalFormat(GL_RGBA), PixelFormat(GL_RGBA), PixelType(GL_UNSIGNED_BYTE), Converter(0), LockReadOnly(false), LockImage(0), LockLayer(0), KeepImage(false), + TextureName(0), InternalFormat(GL_RGBA), PixelFormat(GL_RGBA), PixelType(GL_UNSIGNED_BYTE), MSAA(msaa), Converter(0), LockReadOnly(false), LockImage(0), LockLayer(0), KeepImage(false), MipLevelStored(0), LegacyAutoGenerateMipMaps(false) { DriverType = Driver->getDriverType(); @@ -169,6 +173,17 @@ public: return; } +#ifndef IRR_COMPILE_GL_COMMON + // On GLES 3.0 we must use sized internal formats for textures in certain + // cases (e.g. with ETT_2D_MS). However ECF_A8R8G8B8 is mapped to GL_BGRA + // (an unsized format). + // Since we don't upload to RTT we can safely pick a different combo that works. + if (InternalFormat == GL_BGRA && Driver->Version.Major >= 3) { + InternalFormat = GL_RGBA8; + PixelFormat = GL_RGBA; + } +#endif + #ifdef _DEBUG char lbuf[100]; snprintf_irr(lbuf, sizeof(lbuf), @@ -184,23 +199,47 @@ public: const COpenGLCoreTexture *prevTexture = Driver->getCacheHandler()->getTextureCache().get(0); Driver->getCacheHandler()->getTextureCache().set(0, this); - GL.TexParameteri(TextureType, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - GL.TexParameteri(TextureType, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); - GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); + // An INVALID_ENUM error is generated by TexParameter* if target is either + // TEXTURE_2D_MULTISAMPLE or TEXTURE_2D_MULTISAMPLE_ARRAY, and pname is any + // sampler state from table 23.18. + // ~ https://registry.khronos.org/OpenGL/specs/gl/glspec46.core.pdf + if (Type != ETT_2D_MS) { + GL.TexParameteri(TextureType, GL_TEXTURE_MIN_FILTER, GL_NEAREST); + GL.TexParameteri(TextureType, GL_TEXTURE_MAG_FILTER, GL_NEAREST); + GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE); + GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE); #if defined(GL_VERSION_1_2) - GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); + GL.TexParameteri(TextureType, GL_TEXTURE_WRAP_R, GL_CLAMP_TO_EDGE); #endif - StatesCache.WrapU = ETC_CLAMP_TO_EDGE; - StatesCache.WrapV = ETC_CLAMP_TO_EDGE; - StatesCache.WrapW = ETC_CLAMP_TO_EDGE; + StatesCache.WrapU = ETC_CLAMP_TO_EDGE; + StatesCache.WrapV = ETC_CLAMP_TO_EDGE; + StatesCache.WrapW = ETC_CLAMP_TO_EDGE; + } switch (Type) { case ETT_2D: GL.TexImage2D(GL_TEXTURE_2D, 0, InternalFormat, Size.Width, Size.Height, 0, PixelFormat, PixelType, 0); break; + case ETT_2D_MS: { + // glTexImage2DMultisample is supported by OpenGL 3.2+ + // glTexStorage2DMultisample is supported by OpenGL 4.3+ and OpenGL ES 3.1+ +#ifdef IRR_COMPILE_GL_COMMON // legacy driver + constexpr bool use_gl_impl = true; +#else + const bool use_gl_impl = Driver->Version.Spec != OpenGLSpec::ES; +#endif + GLint max_samples = 0; + GL.GetIntegerv(GL_MAX_SAMPLES, &max_samples); + MSAA = core::min_(MSAA, (u8)max_samples); + + if (use_gl_impl) + GL.TexImage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, MSAA, InternalFormat, Size.Width, Size.Height, GL_TRUE); + else + GL.TexStorage2DMultisample(GL_TEXTURE_2D_MULTISAMPLE, MSAA, InternalFormat, Size.Width, Size.Height, GL_TRUE); + break; + } case ETT_CUBEMAP: GL.TexImage2D(GL_TEXTURE_CUBE_MAP_POSITIVE_X, 0, InternalFormat, Size.Width, Size.Height, 0, PixelFormat, PixelType, 0); GL.TexImage2D(GL_TEXTURE_CUBE_MAP_NEGATIVE_X, 0, InternalFormat, Size.Width, Size.Height, 0, PixelFormat, PixelType, 0); @@ -211,6 +250,9 @@ public: break; } + if (!name.empty()) + Driver->irrGlObjectLabel(GL_TEXTURE, TextureName, name.c_str()); + Driver->getCacheHandler()->getTextureCache().set(0, prevTexture); if (TEST_GL_ERROR(Driver)) { char msg[256]; @@ -261,7 +303,14 @@ public: if (LockImage && mode != ETLM_WRITE_ONLY) { bool passed = true; -#ifdef IRR_COMPILE_GL_COMMON +#ifdef IRR_COMPILE_GL_COMMON // legacy driver + constexpr bool use_gl_impl = true; +#else + const bool use_gl_impl = Driver->Version.Spec != OpenGLSpec::ES; +#endif + + if (use_gl_impl) { + IImage *tmpImage = LockImage; // not sure yet if the size required by glGetTexImage is always correct, if not we might have to allocate a different tmpImage and convert colors later on. Driver->getCacheHandler()->getTextureCache().set(0, this); @@ -296,38 +345,26 @@ public: delete[] tmpBuffer; } -#elif defined(IRR_COMPILE_GLES2_COMMON) - // TODO: revive this code - COpenGLCoreTexture *tmpTexture = new COpenGLCoreTexture("OGL_CORE_LOCK_TEXTURE", Size, ETT_2D, ColorFormat, Driver); + + } else { GLuint tmpFBO = 0; Driver->irrGlGenFramebuffers(1, &tmpFBO); - GLint prevViewportX = 0; - GLint prevViewportY = 0; - GLsizei prevViewportWidth = 0; - GLsizei prevViewportHeight = 0; - Driver->getCacheHandler()->getViewport(prevViewportX, prevViewportY, prevViewportWidth, prevViewportHeight); - Driver->getCacheHandler()->setViewport(0, 0, Size.Width, Size.Height); - GLuint prevFBO = 0; Driver->getCacheHandler()->getFBO(prevFBO); Driver->getCacheHandler()->setFBO(tmpFBO); - Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, tmpTexture->getOpenGLTextureName(), 0); - - GL.Clear(GL_COLOR_BUFFER_BIT); - - Driver->draw2DImage(this, layer, true); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, getOpenGLTextureName(), 0); IImage *tmpImage = Driver->createImage(ECF_A8R8G8B8, Size); GL.ReadPixels(0, 0, Size.Width, Size.Height, GL_RGBA, GL_UNSIGNED_BYTE, tmpImage->getData()); + Driver->irrGlFramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, 0, 0); + Driver->getCacheHandler()->setFBO(prevFBO); - Driver->getCacheHandler()->setViewport(prevViewportX, prevViewportY, prevViewportWidth, prevViewportHeight); Driver->irrGlDeleteFramebuffers(1, &tmpFBO); - delete tmpTexture; void *src = tmpImage->getData(); void *dest = LockImage->getData(); @@ -350,7 +387,8 @@ public: break; } tmpImage->drop(); -#endif + + } if (!passed) { LockImage->drop(); @@ -599,6 +637,8 @@ protected: switch (type) { case ETT_2D: return GL_TEXTURE_2D; + case ETT_2D_MS: + return GL_TEXTURE_2D_MULTISAMPLE; case ETT_CUBEMAP: return GL_TEXTURE_CUBE_MAP; } @@ -614,6 +654,7 @@ protected: GLint InternalFormat; GLenum PixelFormat; GLenum PixelType; + u8 MSAA; void (*Converter)(const void *, s32, void *); bool LockReadOnly; diff --git a/irr/src/COpenGLDriver.cpp b/irr/src/COpenGLDriver.cpp index ee63fc845..e9cd10b49 100644 --- a/irr/src/COpenGLDriver.cpp +++ b/irr/src/COpenGLDriver.cpp @@ -32,11 +32,7 @@ COpenGLDriver::COpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFil CNullDriver(io, params.WindowSize), COpenGLExtensionHandler(), CacheHandler(0), CurrentRenderMode(ERM_NONE), ResetRenderStates(true), Transformation3DChanged(true), AntiAlias(params.AntiAlias), ColorFormat(ECF_R8G8B8), FixedPipelineState(EOFPS_ENABLE), Params(params), ContextManager(contextManager) -{ -#ifdef _DEBUG - setDebugName("COpenGLDriver"); -#endif -} +{} bool COpenGLDriver::initDriver() { @@ -122,7 +118,6 @@ bool COpenGLDriver::genericDriverInit() os::Printer::log("GLSL not available.", ELL_INFORMATION); DriverAttributes->setAttribute("MaxTextures", (s32)Feature.MaxTextureUnits); DriverAttributes->setAttribute("MaxSupportedTextures", (s32)Feature.MaxTextureUnits); - DriverAttributes->setAttribute("MaxLights", MaxLights); DriverAttributes->setAttribute("MaxAnisotropy", MaxAnisotropy); DriverAttributes->setAttribute("MaxAuxBuffers", MaxAuxBuffers); DriverAttributes->setAttribute("MaxMultipleRenderTargets", (s32)Feature.MultipleRenderTarget); @@ -139,13 +134,6 @@ bool COpenGLDriver::genericDriverInit() for (i = 0; i < ETS_COUNT; ++i) setTransform(static_cast(i), core::IdentityMatrix); - setAmbientLight(SColorf(0.0f, 0.0f, 0.0f, 0.0f)); -#ifdef GL_EXT_separate_specular_color - if (FeatureAvailable[IRR_EXT_separate_specular_color]) - glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR); -#endif - glLightModeli(GL_LIGHT_MODEL_LOCAL_VIEWER, 1); - // This is a fast replacement for NORMALIZE_NORMALS // if ((Version>101) || FeatureAvailable[IRR_EXT_rescale_normal]) // glEnable(GL_RESCALE_NORMAL_EXT); @@ -442,9 +430,7 @@ COpenGLDriver::SHWBufferLink *COpenGLDriver::createHardwareBuffer(const scene::I return 0; SHWBufferLink_opengl *HWBuffer = new SHWBufferLink_opengl(vb); - - // add to map - HWBuffer->listPosition = HWBufferList.insert(HWBufferList.end(), HWBuffer); + registerHardwareBuffer(HWBuffer); if (!updateVertexHardwareBuffer(HWBuffer)) { deleteHardwareBuffer(HWBuffer); @@ -465,9 +451,7 @@ COpenGLDriver::SHWBufferLink *COpenGLDriver::createHardwareBuffer(const scene::I return 0; SHWBufferLink_opengl *HWBuffer = new SHWBufferLink_opengl(ib); - - // add to map - HWBuffer->listPosition = HWBufferList.insert(HWBufferList.end(), HWBuffer); + registerHardwareBuffer(HWBuffer); if (!updateIndexHardwareBuffer(HWBuffer)) { deleteHardwareBuffer(HWBuffer); @@ -651,6 +635,29 @@ IRenderTarget *COpenGLDriver::addRenderTarget() return renderTarget; } +void COpenGLDriver::blitRenderTarget(IRenderTarget *from, IRenderTarget *to) +{ + if (Version < 300) { + os::Printer::log("glBlitFramebuffer not supported by OpenGL < 3.0", ELL_ERROR); + return; + } + + GLuint prev_fbo_id; + CacheHandler->getFBO(prev_fbo_id); + + COpenGLRenderTarget *src = static_cast(from); + COpenGLRenderTarget *dst = static_cast(to); + GL.BindFramebuffer(GL.READ_FRAMEBUFFER, src->getBufferID()); + GL.BindFramebuffer(GL.DRAW_FRAMEBUFFER, dst->getBufferID()); + GL.BlitFramebuffer( + 0, 0, src->getSize().Width, src->getSize().Height, + 0, 0, dst->getSize().Width, dst->getSize().Height, + GL.COLOR_BUFFER_BIT | GL.DEPTH_BUFFER_BIT | GL.STENCIL_BUFFER_BIT, GL.NEAREST); + + // This resets both read and draw framebuffer. Note that we bypass CacheHandler here. + GL.BindFramebuffer(GL.FRAMEBUFFER, prev_fbo_id); +} + // small helper function to create vertex buffer object address offsets static inline const GLvoid *buffer_offset(const size_t offset) { @@ -2091,7 +2098,9 @@ void COpenGLDriver::setBasicRenderStates(const SMaterial &material, const SMater else if (lastmaterial.AntiAliasing & EAAM_ALPHA_TO_COVERAGE) glDisable(GL_SAMPLE_ALPHA_TO_COVERAGE_ARB); - if ((AntiAlias >= 2) && (material.AntiAliasing & (EAAM_SIMPLE | EAAM_QUALITY))) { + // Enable MSAA even if it's not enabled in the OpenGL context, we might + // be rendering to an FBO with multisampling. + if (material.AntiAliasing & (EAAM_SIMPLE | EAAM_QUALITY)) { glEnable(GL_MULTISAMPLE_ARB); #ifdef GL_NV_multisample_filter_hint if (FeatureAvailable[IRR_NV_multisample_filter_hint]) { @@ -2395,16 +2404,6 @@ const char *COpenGLDriver::getName() const return Name.c_str(); } -//! Sets the dynamic ambient light color. The default color is -//! (0,0,0,0) which means it is dark. -//! \param color: New color of the ambient light. -void COpenGLDriver::setAmbientLight(const SColorf &color) -{ - CNullDriver::setAmbientLight(color); - GLfloat data[4] = {color.r, color.g, color.b, color.a}; - glLightModelfv(GL_LIGHT_MODEL_AMBIENT, data); -} - // this code was sent in by Oliver Klems, thank you! (I modified the glViewport // method just a bit. void COpenGLDriver::setViewPort(const core::rect &area) @@ -2463,66 +2462,6 @@ void COpenGLDriver::setFog(SColor c, E_FOG_TYPE fogType, f32 start, glFogfv(GL_FOG_COLOR, data); } -//! Draws a 3d box. -void COpenGLDriver::draw3DBox(const core::aabbox3d &box, SColor color) -{ - core::vector3df edges[8]; - box.getEdges(edges); - - setRenderStates3DMode(); - - video::S3DVertex v[24]; - - for (u32 i = 0; i < 24; i++) - v[i].Color = color; - - v[0].Pos = edges[5]; - v[1].Pos = edges[1]; - v[2].Pos = edges[1]; - v[3].Pos = edges[3]; - v[4].Pos = edges[3]; - v[5].Pos = edges[7]; - v[6].Pos = edges[7]; - v[7].Pos = edges[5]; - v[8].Pos = edges[0]; - v[9].Pos = edges[2]; - v[10].Pos = edges[2]; - v[11].Pos = edges[6]; - v[12].Pos = edges[6]; - v[13].Pos = edges[4]; - v[14].Pos = edges[4]; - v[15].Pos = edges[0]; - v[16].Pos = edges[1]; - v[17].Pos = edges[0]; - v[18].Pos = edges[3]; - v[19].Pos = edges[2]; - v[20].Pos = edges[7]; - v[21].Pos = edges[6]; - v[22].Pos = edges[5]; - v[23].Pos = edges[4]; - - if (!FeatureAvailable[IRR_ARB_vertex_array_bgra] && !FeatureAvailable[IRR_EXT_vertex_array_bgra]) - getColorBuffer(v, 24, EVT_STANDARD); - - CacheHandler->setClientState(true, false, true, false); - - glVertexPointer(3, GL_FLOAT, sizeof(S3DVertex), &(static_cast(v))[0].Pos); - -#ifdef GL_BGRA - const GLint colorSize = (FeatureAvailable[IRR_ARB_vertex_array_bgra] || FeatureAvailable[IRR_EXT_vertex_array_bgra]) ? GL_BGRA : 4; -#else - const GLint colorSize = 4; -#endif - if (FeatureAvailable[IRR_ARB_vertex_array_bgra] || FeatureAvailable[IRR_EXT_vertex_array_bgra]) - glColorPointer(colorSize, GL_UNSIGNED_BYTE, sizeof(S3DVertex), &(static_cast(v))[0].Color); - else { - _IRR_DEBUG_BREAK_IF(ColorBuffer.size() == 0); - glColorPointer(colorSize, GL_UNSIGNED_BYTE, 0, &ColorBuffer[0]); - } - - glDrawArrays(GL_LINES, 0, 24); -} - //! Draws a 3d line. void COpenGLDriver::draw3DLine(const core::vector3df &start, const core::vector3df &end, SColor color) @@ -2655,14 +2594,9 @@ bool COpenGLDriver::setPixelShaderConstant(s32 index, const u32 *ints, int count //! Adds a new material renderer to the VideoDriver, using GLSL to render geometry. s32 COpenGLDriver::addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, + const c8 *shaderName, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, @@ -2674,9 +2608,9 @@ s32 COpenGLDriver::addHighLevelShaderMaterial( COpenGLSLMaterialRenderer *r = new COpenGLSLMaterialRenderer( this, nr, - vertexShaderProgram, vertexShaderEntryPointName, vsCompileTarget, - pixelShaderProgram, pixelShaderEntryPointName, psCompileTarget, - geometryShaderProgram, geometryShaderEntryPointName, gsCompileTarget, + vertexShaderProgram, + pixelShaderProgram, + geometryShaderProgram, inType, outType, verticesOut, callback, baseMaterial, userData); @@ -2694,6 +2628,12 @@ IVideoDriver *COpenGLDriver::getVideoDriver() ITexture *COpenGLDriver::addRenderTargetTexture(const core::dimension2d &size, const io::path &name, const ECOLOR_FORMAT format) +{ + return addRenderTargetTextureMs(size, 0, name, format); +} + +ITexture *COpenGLDriver::addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name, const ECOLOR_FORMAT format) { if (IImage::isCompressedFormat(format)) return 0; @@ -2711,7 +2651,7 @@ ITexture *COpenGLDriver::addRenderTargetTexture(const core::dimension2d &si destSize = destSize.getOptimalSize((size == size.getOptimalSize()), false, false); } - COpenGLTexture *renderTargetTexture = new COpenGLTexture(name, destSize, ETT_2D, format, this); + COpenGLTexture *renderTargetTexture = new COpenGLTexture(name, destSize, msaa > 0 ? ETT_2D_MS : ETT_2D, format, this, msaa); addTexture(renderTargetTexture); renderTargetTexture->drop(); @@ -3239,19 +3179,9 @@ COpenGLCacheHandler *COpenGLDriver::getCacheHandler() const return CacheHandler; } -} // end namespace -} // end namespace - -#endif // _IRR_COMPILE_WITH_OPENGL_ - -namespace irr -{ -namespace video -{ IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager) { -#ifdef _IRR_COMPILE_WITH_OPENGL_ COpenGLDriver *ogl = new COpenGLDriver(params, io, contextManager); if (!ogl->initDriver()) { @@ -3260,10 +3190,8 @@ IVideoDriver *createOpenGLDriver(const SIrrlichtCreationParameters ¶ms, io:: } return ogl; -#else - return 0; -#endif } -} // end namespace -} // end namespace +} // end namespace video +} // end namespace irr +#endif // opengl diff --git a/irr/src/COpenGLDriver.h b/irr/src/COpenGLDriver.h index 9c4ecd3b3..1b5c0c6d3 100644 --- a/irr/src/COpenGLDriver.h +++ b/irr/src/COpenGLDriver.h @@ -108,6 +108,8 @@ public: //! Create render target. IRenderTarget *addRenderTarget() override; + void blitRenderTarget(IRenderTarget *from, IRenderTarget *to) override; + //! draws a vertex primitive list virtual void drawVertexPrimitiveList(const void *vertices, u32 vertexCount, const void *indexList, u32 primitiveCount, @@ -168,9 +170,6 @@ public: const core::position2d &end, SColor color = SColor(255, 255, 255, 255)) override; - //! Draws a 3d box - void draw3DBox(const core::aabbox3d &box, SColor color = SColor(255, 255, 255, 255)) override; - //! Draws a 3d line. virtual void draw3DLine(const core::vector3df &start, const core::vector3df &end, @@ -180,11 +179,6 @@ public: //! driver, it would return "Direct3D8.1". const char *getName() const override; - //! Sets the dynamic ambient light color. The default color is - //! (0,0,0,0) which means it is dark. - //! \param color: New color of the ambient light. - void setAmbientLight(const SColorf &color) override; - //! sets a viewport void setViewPort(const core::rect &area) override; @@ -243,18 +237,13 @@ public: //! Adds a new material renderer to the VideoDriver, using GLSL to render geometry. virtual s32 addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) override; @@ -270,6 +259,9 @@ public: virtual ITexture *addRenderTargetTexture(const core::dimension2d &size, const io::path &name, const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + virtual ITexture *addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name = "rt", const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + //! Creates a render target texture for a cubemap ITexture *addRenderTargetTextureCubemap(const irr::u32 sideLen, const io::path &name, const ECOLOR_FORMAT format) override; diff --git a/irr/src/COpenGLExtensionHandler.cpp b/irr/src/COpenGLExtensionHandler.cpp index 6127d6e46..7eb4252a6 100644 --- a/irr/src/COpenGLExtensionHandler.cpp +++ b/irr/src/COpenGLExtensionHandler.cpp @@ -19,7 +19,7 @@ namespace video bool COpenGLExtensionHandler::needsDSAFramebufferHack = true; COpenGLExtensionHandler::COpenGLExtensionHandler() : - StencilBuffer(false), TextureCompressionExtension(false), MaxLights(1), + StencilBuffer(false), TextureCompressionExtension(false), MaxAnisotropy(1), MaxAuxBuffers(0), MaxIndices(65535), MaxTextureSize(1), MaxGeometryVerticesOut(0), MaxTextureLODBias(0.f), Version(0), ShaderLanguageVersion(0), @@ -130,10 +130,10 @@ void COpenGLExtensionHandler::initExtensions(video::IContextManager *cmgr, bool { const f32 ogl_ver = core::fast_atof(reinterpret_cast(glGetString(GL_VERSION))); Version = static_cast(core::floor32(ogl_ver) * 100 + core::round32(core::fract(ogl_ver) * 10.0f)); - if (Version >= 102) - os::Printer::log("OpenGL driver version is 1.2 or better.", ELL_INFORMATION); + if (Version >= 200) + os::Printer::log("OpenGL driver version is 2.0 or newer.", ELL_INFORMATION); else - os::Printer::log("OpenGL driver version is not 1.2 or better.", ELL_WARNING); + os::Printer::log("OpenGL driver version is older than 2.0.", ELL_WARNING); { const char *t = reinterpret_cast(glGetString(GL_EXTENSIONS)); @@ -399,8 +399,6 @@ void COpenGLExtensionHandler::initExtensions(video::IContextManager *cmgr, bool Feature.MaxTextureUnits = core::max_(Feature.MaxTextureUnits, static_cast(num)); } #endif - glGetIntegerv(GL_MAX_LIGHTS, &num); - MaxLights = static_cast(num); #ifdef GL_EXT_texture_filter_anisotropic if (FeatureAvailable[IRR_EXT_texture_filter_anisotropic]) { glGetIntegerv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, &num); @@ -612,6 +610,8 @@ bool COpenGLExtensionHandler::queryFeature(E_VIDEO_DRIVER_FEATURE feature) const return FeatureAvailable[IRR_ARB_seamless_cube_map]; case EVDF_DEPTH_CLAMP: return FeatureAvailable[IRR_NV_depth_clamp] || FeatureAvailable[IRR_ARB_depth_clamp]; + case EVDF_TEXTURE_MULTISAMPLE: + return (Version >= 302) || FeatureAvailable[IRR_ARB_texture_multisample]; default: return false; diff --git a/irr/src/COpenGLExtensionHandler.h b/irr/src/COpenGLExtensionHandler.h index cdff911b9..63c55f26c 100644 --- a/irr/src/COpenGLExtensionHandler.h +++ b/irr/src/COpenGLExtensionHandler.h @@ -1015,8 +1015,6 @@ public: bool TextureCompressionExtension; // Some non-boolean properties - //! Maximum hardware lights supported - u8 MaxLights; //! Maximal Anisotropy u8 MaxAnisotropy; //! Number of auxiliary buffers @@ -1067,6 +1065,10 @@ public: void irrGlCompressedTexSubImage2D(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); + inline void irrGlObjectLabel(GLenum identifier, GLuint name, const char *label) + { + // unimplemented + } // shader programming void extGlGenPrograms(GLsizei n, GLuint *programs); diff --git a/irr/src/COpenGLSLMaterialRenderer.cpp b/irr/src/COpenGLSLMaterialRenderer.cpp index 27393adeb..60c5f9204 100644 --- a/irr/src/COpenGLSLMaterialRenderer.cpp +++ b/irr/src/COpenGLSLMaterialRenderer.cpp @@ -34,14 +34,8 @@ namespace video //! Constructor COpenGLSLMaterialRenderer::COpenGLSLMaterialRenderer(video::COpenGLDriver *driver, s32 &outMaterialTypeNr, const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, IShaderConstantSetCallBack *callback, @@ -50,10 +44,6 @@ COpenGLSLMaterialRenderer::COpenGLSLMaterialRenderer(video::COpenGLDriver *drive Driver(driver), CallBack(callback), Alpha(false), Blending(false), AlphaTest(false), Program(0), Program2(0), UserData(userData) { -#ifdef _DEBUG - setDebugName("COpenGLSLMaterialRenderer"); -#endif - switch (baseMaterial) { case EMT_TRANSPARENT_VERTEX_ALPHA: case EMT_TRANSPARENT_ALPHA_CHANNEL: diff --git a/irr/src/COpenGLSLMaterialRenderer.h b/irr/src/COpenGLSLMaterialRenderer.h index 2f4a485d2..2914b3956 100644 --- a/irr/src/COpenGLSLMaterialRenderer.h +++ b/irr/src/COpenGLSLMaterialRenderer.h @@ -33,14 +33,8 @@ public: COpenGLDriver *driver, s32 &outMaterialTypeNr, const c8 *vertexShaderProgram = 0, - const c8 *vertexShaderEntryPointName = 0, - E_VERTEX_SHADER_TYPE vsCompileTarget = video::EVST_VS_1_1, const c8 *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = 0, - E_PIXEL_SHADER_TYPE psCompileTarget = video::EPST_PS_1_1, const c8 *geometryShaderProgram = 0, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, diff --git a/irr/src/CReadFile.cpp b/irr/src/CReadFile.cpp index 6c6e49d55..3ef90e715 100644 --- a/irr/src/CReadFile.cpp +++ b/irr/src/CReadFile.cpp @@ -12,10 +12,6 @@ namespace io CReadFile::CReadFile(const io::path &fileName) : File(0), FileSize(0), Filename(fileName) { -#ifdef _DEBUG - setDebugName("CReadFile"); -#endif - openFile(); } diff --git a/irr/src/CSDLManager.cpp b/irr/src/CSDLManager.cpp index 855c8c9e4..56fe9e0d7 100644 --- a/irr/src/CSDLManager.cpp +++ b/irr/src/CSDLManager.cpp @@ -15,11 +15,7 @@ namespace video CSDLManager::CSDLManager(CIrrDeviceSDL *device) : IContextManager(), SDLDevice(device) -{ -#ifdef _DEBUG - setDebugName("CSDLManager"); -#endif -} +{} bool CSDLManager::initialize(const SIrrlichtCreationParameters ¶ms, const SExposedVideoData &data) { diff --git a/irr/src/CSceneCollisionManager.cpp b/irr/src/CSceneCollisionManager.cpp index 77549a7dc..3d8f1091f 100644 --- a/irr/src/CSceneCollisionManager.cpp +++ b/irr/src/CSceneCollisionManager.cpp @@ -17,10 +17,6 @@ namespace scene CSceneCollisionManager::CSceneCollisionManager(ISceneManager *smanager, video::IVideoDriver *driver) : SceneManager(smanager), Driver(driver) { -#ifdef _DEBUG - setDebugName("CSceneCollisionManager"); -#endif - if (Driver) Driver->grab(); } diff --git a/irr/src/CSceneManager.cpp b/irr/src/CSceneManager.cpp index d75abc284..23e5335ce 100644 --- a/irr/src/CSceneManager.cpp +++ b/irr/src/CSceneManager.cpp @@ -16,7 +16,7 @@ #include "os.h" -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" #include "CXMeshFileLoader.h" #include "COBJMeshFileLoader.h" #include "CB3DMeshFileLoader.h" @@ -41,14 +41,9 @@ CSceneManager::CSceneManager(video::IVideoDriver *driver, ISceneNode(0, 0), Driver(driver), CursorControl(cursorControl), - ActiveCamera(0), ShadowColor(150, 0, 0, 0), AmbientLight(0, 0, 0, 0), Parameters(0), + ActiveCamera(0), Parameters(0), MeshCache(cache), CurrentRenderPass(ESNRP_NONE) { -#ifdef _DEBUG - ISceneManager::setDebugName("CSceneManager ISceneManager"); - ISceneNode::setDebugName("CSceneManager ISceneNode"); -#endif - // root node's scene manager SceneManager = this; @@ -312,7 +307,7 @@ const core::aabbox3d &CSceneManager::getBoundingBox() const { _IRR_DEBUG_BREAK_IF(true) // Bounding Box of Scene Manager should never be used. - static const core::aabbox3d dummy; + static const core::aabbox3d dummy{{0.0f, 0.0f, 0.0f}}; return dummy; } @@ -445,9 +440,6 @@ u32 CSceneManager::registerNodeForRendering(ISceneNode *node, E_SCENE_NODE_RENDE taken = 1; } - // as of yet unused - case ESNRP_LIGHT: - case ESNRP_SHADOW: case ESNRP_NONE: // ignore this one break; } @@ -472,14 +464,12 @@ void CSceneManager::drawAll() if (!Driver) return; - u32 i; // new ISO for scoping problem in some compilers - // reset all transforms Driver->setMaterial(video::SMaterial()); Driver->setTransform(video::ETS_PROJECTION, core::IdentityMatrix); Driver->setTransform(video::ETS_VIEW, core::IdentityMatrix); Driver->setTransform(video::ETS_WORLD, core::IdentityMatrix); - for (i = video::ETS_COUNT - 1; i >= video::ETS_TEXTURE_0; --i) + for (u32 i = video::ETS_COUNT - 1; i >= video::ETS_TEXTURE_0; --i) Driver->setTransform((video::E_TRANSFORMATION_STATE)i, core::IdentityMatrix); // TODO: This should not use an attribute here but a real parameter when necessary (too slow!) Driver->setAllowZWriteOnTransparent(Parameters->getAttributeAsBool(ALLOW_ZWRITE_ON_TRANSPARENT)); @@ -500,13 +490,19 @@ void CSceneManager::drawAll() // let all nodes register themselves OnRegisterSceneNode(); + const auto &render_node = [this] (ISceneNode *node) { + u32 flags = node->isDebugDataVisible(); + node->setDebugDataVisible((flags & DebugDataMask) | DebugDataBits); + node->render(); + }; + // render camera scenes { CurrentRenderPass = ESNRP_CAMERA; Driver->getOverrideMaterial().Enabled = ((Driver->getOverrideMaterial().EnablePasses & CurrentRenderPass) != 0); for (auto *node : CameraList) - node->render(); + render_node(node); CameraList.clear(); } @@ -517,7 +513,7 @@ void CSceneManager::drawAll() Driver->getOverrideMaterial().Enabled = ((Driver->getOverrideMaterial().EnablePasses & CurrentRenderPass) != 0); for (auto *node : SkyBoxList) - node->render(); + render_node(node); SkyBoxList.clear(); } @@ -530,7 +526,7 @@ void CSceneManager::drawAll() std::sort(SolidNodeList.begin(), SolidNodeList.end()); for (auto &it : SolidNodeList) - it.Node->render(); + render_node(it.Node); SolidNodeList.clear(); } @@ -543,7 +539,7 @@ void CSceneManager::drawAll() std::sort(TransparentNodeList.begin(), TransparentNodeList.end()); for (auto &it : TransparentNodeList) - it.Node->render(); + render_node(it.Node); TransparentNodeList.clear(); } @@ -556,7 +552,7 @@ void CSceneManager::drawAll() std::sort(TransparentEffectNodeList.begin(), TransparentEffectNodeList.end()); for (auto &it : TransparentEffectNodeList) - it.Node->render(); + render_node(it.Node); TransparentEffectNodeList.clear(); } @@ -567,7 +563,7 @@ void CSceneManager::drawAll() Driver->getOverrideMaterial().Enabled = ((Driver->getOverrideMaterial().EnablePasses & CurrentRenderPass) != 0); for (auto *node : GuiNodeList) - node->render(); + render_node(node); GuiNodeList.clear(); } @@ -775,22 +771,10 @@ ISceneManager *CSceneManager::createNewSceneManager(bool cloneContent) return manager; } -//! Sets ambient color of the scene -void CSceneManager::setAmbientLight(const video::SColorf &ambientColor) -{ - AmbientLight = ambientColor; -} - -//! Returns ambient color of the scene -const video::SColorf &CSceneManager::getAmbientLight() const -{ - return AmbientLight; -} - //! Get a skinned mesh, which is not available as header-only code -ISkinnedMesh *CSceneManager::createSkinnedMesh() +SkinnedMesh *CSceneManager::createSkinnedMesh() { - return new CSkinnedMesh(); + return new SkinnedMesh(); } // creates a scenemanager diff --git a/irr/src/CSceneManager.h b/irr/src/CSceneManager.h index 4ef6d64b0..8f03a1fec 100644 --- a/irr/src/CSceneManager.h +++ b/irr/src/CSceneManager.h @@ -4,6 +4,7 @@ #pragma once +#include "SkinnedMesh.h" #include "ISceneManager.h" #include "ISceneNode.h" #include "ICursorControl.h" @@ -22,6 +23,8 @@ namespace scene { class IMeshCache; +class SkinnedMesh; + /*! The Scene Manager manages scene nodes, mesh resources, cameras and all the other stuff. */ @@ -167,14 +170,8 @@ public: //! Returns type of the scene node ESCENE_NODE_TYPE getType() const override { return ESNT_SCENE_MANAGER; } - //! Get a skinned mesh, which is not available as header-only code - ISkinnedMesh *createSkinnedMesh() override; - - //! Sets ambient color of the scene - void setAmbientLight(const video::SColorf &ambientColor) override; - - //! Returns ambient color of the scene - const video::SColorf &getAmbientLight() const override; + //! Get a skinned mesh + SkinnedMesh *createSkinnedMesh() override; //! Get current render time. E_SCENE_NODE_RENDER_PASS getCurrentRenderPass() const override { return CurrentRenderPass; } @@ -182,6 +179,11 @@ public: //! Set current render time. void setCurrentRenderPass(E_SCENE_NODE_RENDER_PASS nextPass) override { CurrentRenderPass = nextPass; } + void setGlobalDebugData(u16 setBits, u16 unsetBits) override { + DebugDataMask = ~unsetBits; + DebugDataBits = setBits; + } + //! returns if node is culled bool isCulled(const ISceneNode *node) const override; @@ -199,21 +201,21 @@ private: } DefaultNodeEntry(ISceneNode *n) : - Node(n), TextureValue(0) + Node(n) { if (n->getMaterialCount()) - TextureValue = (n->getMaterial(0).getTexture(0)); + Hash = std::hash{}(n->getMaterial(0)); } - bool operator<(const DefaultNodeEntry &other) const + bool operator<(const DefaultNodeEntry &other) const noexcept { - return (TextureValue < other.TextureValue); + return Hash < other.Hash; } - ISceneNode *Node; + ISceneNode *Node = nullptr; private: - void *TextureValue; + size_t Hash = 0; }; //! sort on distance (center) to camera @@ -229,42 +231,15 @@ private: Distance = Node->getAbsoluteTransformation().getTranslation().getDistanceFromSQ(camera); } - bool operator<(const TransparentNodeEntry &other) const + bool operator<(const TransparentNodeEntry &other) const noexcept { return Distance > other.Distance; } - ISceneNode *Node; + ISceneNode *Node = nullptr; private: - f64 Distance; - }; - - //! sort on distance (sphere) to camera - struct DistanceNodeEntry - { - DistanceNodeEntry(ISceneNode *n, const core::vector3df &cameraPos) : - Node(n) - { - setNodeAndDistanceFromPosition(n, cameraPos); - } - - bool operator<(const DistanceNodeEntry &other) const - { - return Distance < other.Distance; - } - - void setNodeAndDistanceFromPosition(ISceneNode *n, const core::vector3df &fromPosition) - { - Node = n; - Distance = Node->getAbsoluteTransformation().getTranslation().getDistanceFromSQ(fromPosition); - Distance -= Node->getBoundingBox().getExtent().getLengthSQ() * 0.5; - } - - ISceneNode *Node; - - private: - f64 Distance; + f32 Distance = 0; }; //! video driver @@ -291,9 +266,6 @@ private: ICameraSceneNode *ActiveCamera; core::vector3df camWorldPos; // Position of camera for transparent nodes. - video::SColor ShadowColor; - video::SColorf AmbientLight; - //! String parameters // NOTE: Attributes are slow and should only be used for debug-info and not in release io::CAttributes *Parameters; @@ -301,6 +273,9 @@ private: //! Mesh cache IMeshCache *MeshCache; + //! Global debug render state + u16 DebugDataMask = 0, DebugDataBits = 0; + E_SCENE_NODE_RENDER_PASS CurrentRenderPass; }; diff --git a/irr/src/CSkinnedMesh.cpp b/irr/src/CSkinnedMesh.cpp deleted file mode 100644 index 875fd8e7e..000000000 --- a/irr/src/CSkinnedMesh.cpp +++ /dev/null @@ -1,1354 +0,0 @@ -// Copyright (C) 2002-2012 Nikolaus Gebhardt -// This file is part of the "Irrlicht Engine". -// For conditions of distribution and use, see copyright notice in irrlicht.h - -#include "CSkinnedMesh.h" -#include -#include "CBoneSceneNode.h" -#include "IAnimatedMeshSceneNode.h" -#include "SSkinMeshBuffer.h" -#include "os.h" - -namespace -{ -// Frames must always be increasing, so we remove objects where this isn't the case -// return number of kicked keys -template // T = objects containing a "frame" variable -irr::u32 dropBadKeys(irr::core::array &array) -{ - if (array.size() < 2) - return 0; - - irr::u32 n = 1; // new index - for (irr::u32 j = 1; j < array.size(); ++j) { - if (array[j].frame < array[n - 1].frame) - continue; // bad frame, unneeded and may cause problems - if (n != j) - array[n] = array[j]; - ++n; - } - irr::u32 d = array.size() - n; // remove already copied keys - if (d > 0) { - array.erase(n, d); - } - return d; -} - -// drop identical middle keys - we only need the first and last -// return number of kicked keys -template // Cmp = comparison for keys of type T -irr::u32 dropMiddleKeys(irr::core::array &array, Cmp &cmp) -{ - if (array.size() < 3) - return 0; - - irr::u32 s = 0; // old index for current key - irr::u32 n = 1; // new index for next key - for (irr::u32 j = 1; j < array.size(); ++j) { - if (cmp(array[j], array[s])) - continue; // same key, handle later - - if (j > s + 1) // had there been identical keys? - array[n++] = array[j - 1]; // keep the last - array[n++] = array[j]; // keep the new one - s = j; - } - if (array.size() > s + 1) // identical keys at the array end? - array[n++] = array[array.size() - 1]; // keep the last - - irr::u32 d = array.size() - n; // remove already copied keys - if (d > 0) { - array.erase(n, d); - } - return d; -} - -bool identicalPos(const irr::scene::ISkinnedMesh::SPositionKey &a, const irr::scene::ISkinnedMesh::SPositionKey &b) -{ - return a.position == b.position; -} - -bool identicalScale(const irr::scene::ISkinnedMesh::SScaleKey &a, const irr::scene::ISkinnedMesh::SScaleKey &b) -{ - return a.scale == b.scale; -} - -bool identicalRotation(const irr::scene::ISkinnedMesh::SRotationKey &a, const irr::scene::ISkinnedMesh::SRotationKey &b) -{ - return a.rotation == b.rotation; -} -} - -namespace irr -{ -namespace scene -{ - -//! constructor -CSkinnedMesh::CSkinnedMesh() : - SkinningBuffers(0), EndFrame(0.f), FramesPerSecond(25.f), - LastAnimatedFrame(-1), SkinnedLastFrame(false), - InterpolationMode(EIM_LINEAR), - HasAnimation(false), PreparedForSkinning(false), - AnimateNormals(true), HardwareSkinning(false) -{ -#ifdef _DEBUG - setDebugName("CSkinnedMesh"); -#endif - - SkinningBuffers = &LocalBuffers; -} - -//! destructor -CSkinnedMesh::~CSkinnedMesh() -{ - for (u32 i = 0; i < AllJoints.size(); ++i) - delete AllJoints[i]; - - for (u32 j = 0; j < LocalBuffers.size(); ++j) { - if (LocalBuffers[j]) - LocalBuffers[j]->drop(); - } -} - -f32 CSkinnedMesh::getMaxFrameNumber() const -{ - return EndFrame; -} - -//! Gets the default animation speed of the animated mesh. -/** \return Amount of frames per second. If the amount is 0, it is a static, non animated mesh. */ -f32 CSkinnedMesh::getAnimationSpeed() const -{ - return FramesPerSecond; -} - -//! Gets the frame count of the animated mesh. -/** \param fps Frames per second to play the animation with. If the amount is 0, it is not animated. -The actual speed is set in the scene node the mesh is instantiated in.*/ -void CSkinnedMesh::setAnimationSpeed(f32 fps) -{ - FramesPerSecond = fps; -} - -//! returns the animated mesh based -IMesh *CSkinnedMesh::getMesh(f32 frame) -{ - // animate(frame,startFrameLoop, endFrameLoop); - if (frame == -1) - return this; - - animateMesh(frame, 1.0f); - skinMesh(); - return this; -} - -//-------------------------------------------------------------------------- -// Keyframe Animation -//-------------------------------------------------------------------------- - -//! Animates this mesh's joints based on frame input -//! blend: {0-old position, 1-New position} -void CSkinnedMesh::animateMesh(f32 frame, f32 blend) -{ - if (!HasAnimation || LastAnimatedFrame == frame) - return; - - LastAnimatedFrame = frame; - SkinnedLastFrame = false; - - if (blend <= 0.f) - return; // No need to animate - - for (u32 i = 0; i < AllJoints.size(); ++i) { - // The joints can be animated here with no input from their - // parents, but for setAnimationMode extra checks are needed - // to their parents - SJoint *joint = AllJoints[i]; - - const core::vector3df oldPosition = joint->Animatedposition; - const core::vector3df oldScale = joint->Animatedscale; - const core::quaternion oldRotation = joint->Animatedrotation; - - core::vector3df position = oldPosition; - core::vector3df scale = oldScale; - core::quaternion rotation = oldRotation; - - getFrameData(frame, joint, - position, joint->positionHint, - scale, joint->scaleHint, - rotation, joint->rotationHint); - - if (blend == 1.0f) { - // No blending needed - joint->Animatedposition = position; - joint->Animatedscale = scale; - joint->Animatedrotation = rotation; - } else { - // Blend animation - joint->Animatedposition = core::lerp(oldPosition, position, blend); - joint->Animatedscale = core::lerp(oldScale, scale, blend); - joint->Animatedrotation.slerp(oldRotation, rotation, blend); - } - } - - // Note: - // LocalAnimatedMatrix needs to be built at some point, but this function may be called lots of times for - // one render (to play two animations at the same time) LocalAnimatedMatrix only needs to be built once. - // a call to buildAllLocalAnimatedMatrices is needed before skinning the mesh, and before the user gets the joints to move - - //---------------- - // Temp! - buildAllLocalAnimatedMatrices(); - //----------------- - - updateBoundingBox(); -} - -void CSkinnedMesh::buildAllLocalAnimatedMatrices() -{ - for (u32 i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - - // Could be faster: - - if (joint->UseAnimationFrom && - (joint->UseAnimationFrom->PositionKeys.size() || - joint->UseAnimationFrom->ScaleKeys.size() || - joint->UseAnimationFrom->RotationKeys.size())) { - joint->GlobalSkinningSpace = false; - - // IRR_TEST_BROKEN_QUATERNION_USE: TODO - switched to getMatrix_transposed instead of getMatrix for downward compatibility. - // Not tested so far if this was correct or wrong before quaternion fix! - // Note that using getMatrix_transposed inverts the rotation. - joint->Animatedrotation.getMatrix_transposed(joint->LocalAnimatedMatrix); - - // --- joint->LocalAnimatedMatrix *= joint->Animatedrotation.getMatrix() --- - f32 *m1 = joint->LocalAnimatedMatrix.pointer(); - core::vector3df &Pos = joint->Animatedposition; - m1[0] += Pos.X * m1[3]; - m1[1] += Pos.Y * m1[3]; - m1[2] += Pos.Z * m1[3]; - m1[4] += Pos.X * m1[7]; - m1[5] += Pos.Y * m1[7]; - m1[6] += Pos.Z * m1[7]; - m1[8] += Pos.X * m1[11]; - m1[9] += Pos.Y * m1[11]; - m1[10] += Pos.Z * m1[11]; - m1[12] += Pos.X * m1[15]; - m1[13] += Pos.Y * m1[15]; - m1[14] += Pos.Z * m1[15]; - // ----------------------------------- - - if (joint->ScaleKeys.size()) { - /* - core::matrix4 scaleMatrix; - scaleMatrix.setScale(joint->Animatedscale); - joint->LocalAnimatedMatrix *= scaleMatrix; - */ - - // -------- joint->LocalAnimatedMatrix *= scaleMatrix ----------------- - core::matrix4 &mat = joint->LocalAnimatedMatrix; - mat[0] *= joint->Animatedscale.X; - mat[1] *= joint->Animatedscale.X; - mat[2] *= joint->Animatedscale.X; - mat[3] *= joint->Animatedscale.X; - mat[4] *= joint->Animatedscale.Y; - mat[5] *= joint->Animatedscale.Y; - mat[6] *= joint->Animatedscale.Y; - mat[7] *= joint->Animatedscale.Y; - mat[8] *= joint->Animatedscale.Z; - mat[9] *= joint->Animatedscale.Z; - mat[10] *= joint->Animatedscale.Z; - mat[11] *= joint->Animatedscale.Z; - // ----------------------------------- - } - } else { - joint->LocalAnimatedMatrix = joint->LocalMatrix; - } - } - SkinnedLastFrame = false; -} - -void CSkinnedMesh::buildAllGlobalAnimatedMatrices(SJoint *joint, SJoint *parentJoint) -{ - if (!joint) { - for (u32 i = 0; i < RootJoints.size(); ++i) - buildAllGlobalAnimatedMatrices(RootJoints[i], 0); - return; - } else { - // Find global matrix... - if (!parentJoint || joint->GlobalSkinningSpace) - joint->GlobalAnimatedMatrix = joint->LocalAnimatedMatrix; - else - joint->GlobalAnimatedMatrix = parentJoint->GlobalAnimatedMatrix * joint->LocalAnimatedMatrix; - } - - for (u32 j = 0; j < joint->Children.size(); ++j) - buildAllGlobalAnimatedMatrices(joint->Children[j], joint); -} - -void CSkinnedMesh::getFrameData(f32 frame, SJoint *joint, - core::vector3df &position, s32 &positionHint, - core::vector3df &scale, s32 &scaleHint, - core::quaternion &rotation, s32 &rotationHint) -{ - s32 foundPositionIndex = -1; - s32 foundScaleIndex = -1; - s32 foundRotationIndex = -1; - - if (joint->UseAnimationFrom) { - const core::array &PositionKeys = joint->UseAnimationFrom->PositionKeys; - const core::array &ScaleKeys = joint->UseAnimationFrom->ScaleKeys; - const core::array &RotationKeys = joint->UseAnimationFrom->RotationKeys; - - if (PositionKeys.size()) { - foundPositionIndex = -1; - - // Test the Hints... - if (positionHint >= 0 && (u32)positionHint < PositionKeys.size()) { - // check this hint - if (positionHint > 0 && PositionKeys[positionHint].frame >= frame && PositionKeys[positionHint - 1].frame < frame) - foundPositionIndex = positionHint; - else if (positionHint + 1 < (s32)PositionKeys.size()) { - // check the next index - if (PositionKeys[positionHint + 1].frame >= frame && - PositionKeys[positionHint + 0].frame < frame) { - positionHint++; - foundPositionIndex = positionHint; - } - } - } - - // The hint test failed, do a full scan... - if (foundPositionIndex == -1) { - for (u32 i = 0; i < PositionKeys.size(); ++i) { - if (PositionKeys[i].frame >= frame) { // Keys should to be sorted by frame - foundPositionIndex = i; - positionHint = i; - break; - } - } - } - - // Do interpolation... - if (foundPositionIndex != -1) { - if (InterpolationMode == EIM_CONSTANT || foundPositionIndex == 0) { - position = PositionKeys[foundPositionIndex].position; - } else if (InterpolationMode == EIM_LINEAR) { - const SPositionKey &KeyA = PositionKeys[foundPositionIndex]; - const SPositionKey &KeyB = PositionKeys[foundPositionIndex - 1]; - - const f32 fd1 = frame - KeyA.frame; - const f32 fd2 = KeyB.frame - frame; - position = ((KeyB.position - KeyA.position) / (fd1 + fd2)) * fd1 + KeyA.position; - } - } - } - - //------------------------------------------------------------ - - if (ScaleKeys.size()) { - foundScaleIndex = -1; - - // Test the Hints... - if (scaleHint >= 0 && (u32)scaleHint < ScaleKeys.size()) { - // check this hint - if (scaleHint > 0 && ScaleKeys[scaleHint].frame >= frame && ScaleKeys[scaleHint - 1].frame < frame) - foundScaleIndex = scaleHint; - else if (scaleHint + 1 < (s32)ScaleKeys.size()) { - // check the next index - if (ScaleKeys[scaleHint + 1].frame >= frame && - ScaleKeys[scaleHint + 0].frame < frame) { - scaleHint++; - foundScaleIndex = scaleHint; - } - } - } - - // The hint test failed, do a full scan... - if (foundScaleIndex == -1) { - for (u32 i = 0; i < ScaleKeys.size(); ++i) { - if (ScaleKeys[i].frame >= frame) { // Keys should to be sorted by frame - foundScaleIndex = i; - scaleHint = i; - break; - } - } - } - - // Do interpolation... - if (foundScaleIndex != -1) { - if (InterpolationMode == EIM_CONSTANT || foundScaleIndex == 0) { - scale = ScaleKeys[foundScaleIndex].scale; - } else if (InterpolationMode == EIM_LINEAR) { - const SScaleKey &KeyA = ScaleKeys[foundScaleIndex]; - const SScaleKey &KeyB = ScaleKeys[foundScaleIndex - 1]; - - const f32 fd1 = frame - KeyA.frame; - const f32 fd2 = KeyB.frame - frame; - scale = ((KeyB.scale - KeyA.scale) / (fd1 + fd2)) * fd1 + KeyA.scale; - } - } - } - - //------------------------------------------------------------- - - if (RotationKeys.size()) { - foundRotationIndex = -1; - - // Test the Hints... - if (rotationHint >= 0 && (u32)rotationHint < RotationKeys.size()) { - // check this hint - if (rotationHint > 0 && RotationKeys[rotationHint].frame >= frame && RotationKeys[rotationHint - 1].frame < frame) - foundRotationIndex = rotationHint; - else if (rotationHint + 1 < (s32)RotationKeys.size()) { - // check the next index - if (RotationKeys[rotationHint + 1].frame >= frame && - RotationKeys[rotationHint + 0].frame < frame) { - rotationHint++; - foundRotationIndex = rotationHint; - } - } - } - - // The hint test failed, do a full scan... - if (foundRotationIndex == -1) { - for (u32 i = 0; i < RotationKeys.size(); ++i) { - if (RotationKeys[i].frame >= frame) { // Keys should be sorted by frame - foundRotationIndex = i; - rotationHint = i; - break; - } - } - } - - // Do interpolation... - if (foundRotationIndex != -1) { - if (InterpolationMode == EIM_CONSTANT || foundRotationIndex == 0) { - rotation = RotationKeys[foundRotationIndex].rotation; - } else if (InterpolationMode == EIM_LINEAR) { - const SRotationKey &KeyA = RotationKeys[foundRotationIndex]; - const SRotationKey &KeyB = RotationKeys[foundRotationIndex - 1]; - - const f32 fd1 = frame - KeyA.frame; - const f32 fd2 = KeyB.frame - frame; - const f32 t = fd1 / (fd1 + fd2); - - /* - f32 t = 0; - if (KeyA.frame!=KeyB.frame) - t = (frame-KeyA.frame) / (KeyB.frame - KeyA.frame); - */ - - rotation.slerp(KeyA.rotation, KeyB.rotation, t); - } - } - } - } -} - -//-------------------------------------------------------------------------- -// Software Skinning -//-------------------------------------------------------------------------- - -//! Preforms a software skin on this mesh based of joint positions -void CSkinnedMesh::skinMesh() -{ - if (!HasAnimation || SkinnedLastFrame) - return; - - //---------------- - // This is marked as "Temp!". A shiny dubloon to whomever can tell me why. - buildAllGlobalAnimatedMatrices(); - //----------------- - - SkinnedLastFrame = true; - if (!HardwareSkinning) { - // Software skin.... - u32 i; - - // rigid animation - for (i = 0; i < AllJoints.size(); ++i) { - for (u32 j = 0; j < AllJoints[i]->AttachedMeshes.size(); ++j) { - SSkinMeshBuffer *Buffer = (*SkinningBuffers)[AllJoints[i]->AttachedMeshes[j]]; - Buffer->Transformation = AllJoints[i]->GlobalAnimatedMatrix; - } - } - - // clear skinning helper array - for (i = 0; i < Vertices_Moved.size(); ++i) - for (u32 j = 0; j < Vertices_Moved[i].size(); ++j) - Vertices_Moved[i][j] = false; - - // skin starting with the root joints - for (i = 0; i < RootJoints.size(); ++i) - skinJoint(RootJoints[i], 0); - - for (i = 0; i < SkinningBuffers->size(); ++i) - (*SkinningBuffers)[i]->setDirty(EBT_VERTEX); - } - updateBoundingBox(); -} - -void CSkinnedMesh::skinJoint(SJoint *joint, SJoint *parentJoint) -{ - if (joint->Weights.size()) { - // Find this joints pull on vertices... - // Note: It is assumed that the global inversed matrix has been calculated at this point. - core::matrix4 jointVertexPull = joint->GlobalAnimatedMatrix * joint->GlobalInversedMatrix.value(); - - core::vector3df thisVertexMove, thisNormalMove; - - core::array &buffersUsed = *SkinningBuffers; - - // Skin Vertices Positions and Normals... - for (u32 i = 0; i < joint->Weights.size(); ++i) { - SWeight &weight = joint->Weights[i]; - - // Pull this vertex... - jointVertexPull.transformVect(thisVertexMove, weight.StaticPos); - - if (AnimateNormals) { - thisNormalMove = jointVertexPull.rotateAndScaleVect(weight.StaticNormal); - thisNormalMove.normalize(); // must renormalize after potentially scaling - } - - if (!(*(weight.Moved))) { - *(weight.Moved) = true; - - buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Pos = thisVertexMove * weight.strength; - - if (AnimateNormals) - buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Normal = thisNormalMove * weight.strength; - - //*(weight._Pos) = thisVertexMove * weight.strength; - } else { - buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Pos += thisVertexMove * weight.strength; - - if (AnimateNormals) - buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Normal += thisNormalMove * weight.strength; - - //*(weight._Pos) += thisVertexMove * weight.strength; - } - - buffersUsed[weight.buffer_id]->boundingBoxNeedsRecalculated(); - } - } - - // Skin all children - for (u32 j = 0; j < joint->Children.size(); ++j) - skinJoint(joint->Children[j], joint); -} - -E_ANIMATED_MESH_TYPE CSkinnedMesh::getMeshType() const -{ - return EAMT_SKINNED; -} - -//! Gets joint count. -u32 CSkinnedMesh::getJointCount() const -{ - return AllJoints.size(); -} - -//! Gets the name of a joint. -const std::optional &CSkinnedMesh::getJointName(u32 number) const -{ - if (number >= getJointCount()) { - static const std::optional nullopt; - return nullopt; - } - return AllJoints[number]->Name; -} - -//! Gets a joint number from its name -std::optional CSkinnedMesh::getJointNumber(const std::string &name) const -{ - for (u32 i = 0; i < AllJoints.size(); ++i) { - if (AllJoints[i]->Name == name) - return i; - } - - return std::nullopt; -} - -//! returns amount of mesh buffers. -u32 CSkinnedMesh::getMeshBufferCount() const -{ - return LocalBuffers.size(); -} - -//! returns pointer to a mesh buffer -IMeshBuffer *CSkinnedMesh::getMeshBuffer(u32 nr) const -{ - if (nr < LocalBuffers.size()) - return LocalBuffers[nr]; - else - return 0; -} - -//! Returns pointer to a mesh buffer which fits a material -IMeshBuffer *CSkinnedMesh::getMeshBuffer(const video::SMaterial &material) const -{ - for (u32 i = 0; i < LocalBuffers.size(); ++i) { - if (LocalBuffers[i]->getMaterial() == material) - return LocalBuffers[i]; - } - return 0; -} - -u32 CSkinnedMesh::getTextureSlot(u32 meshbufNr) const -{ - return TextureSlots.at(meshbufNr); -} - -void CSkinnedMesh::setTextureSlot(u32 meshbufNr, u32 textureSlot) { - TextureSlots.at(meshbufNr) = textureSlot; -} - -//! returns an axis aligned bounding box -const core::aabbox3d &CSkinnedMesh::getBoundingBox() const -{ - return BoundingBox; -} - -//! set user axis aligned bounding box -void CSkinnedMesh::setBoundingBox(const core::aabbox3df &box) -{ - BoundingBox = box; -} - -//! set the hardware mapping hint, for driver -void CSkinnedMesh::setHardwareMappingHint(E_HARDWARE_MAPPING newMappingHint, - E_BUFFER_TYPE buffer) -{ - for (u32 i = 0; i < LocalBuffers.size(); ++i) - LocalBuffers[i]->setHardwareMappingHint(newMappingHint, buffer); -} - -//! flags the meshbuffer as changed, reloads hardware buffers -void CSkinnedMesh::setDirty(E_BUFFER_TYPE buffer) -{ - for (u32 i = 0; i < LocalBuffers.size(); ++i) - LocalBuffers[i]->setDirty(buffer); -} - -//! uses animation from another mesh -bool CSkinnedMesh::useAnimationFrom(const ISkinnedMesh *mesh) -{ - bool unmatched = false; - - for (u32 i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - joint->UseAnimationFrom = 0; - - if (joint->Name == "") - unmatched = true; - else { - for (u32 j = 0; j < mesh->getAllJoints().size(); ++j) { - SJoint *otherJoint = mesh->getAllJoints()[j]; - if (joint->Name == otherJoint->Name) { - joint->UseAnimationFrom = otherJoint; - } - } - if (!joint->UseAnimationFrom) - unmatched = true; - } - } - - checkForAnimation(); - - return !unmatched; -} - -//! Update Normals when Animating -//! False= Don't animate them, faster -//! True= Update normals (default) -void CSkinnedMesh::updateNormalsWhenAnimating(bool on) -{ - AnimateNormals = on; -} - -//! Sets Interpolation Mode -void CSkinnedMesh::setInterpolationMode(E_INTERPOLATION_MODE mode) -{ - InterpolationMode = mode; -} - -core::array &CSkinnedMesh::getMeshBuffers() -{ - return LocalBuffers; -} - -core::array &CSkinnedMesh::getAllJoints() -{ - return AllJoints; -} - -const core::array &CSkinnedMesh::getAllJoints() const -{ - return AllJoints; -} - -//! (This feature is not implemented in irrlicht yet) -bool CSkinnedMesh::setHardwareSkinning(bool on) -{ - if (HardwareSkinning != on) { - if (on) { - - // set mesh to static pose... - for (u32 i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (u32 j = 0; j < joint->Weights.size(); ++j) { - const u16 buffer_id = joint->Weights[j].buffer_id; - const u32 vertex_id = joint->Weights[j].vertex_id; - LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos = joint->Weights[j].StaticPos; - LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal = joint->Weights[j].StaticNormal; - LocalBuffers[buffer_id]->boundingBoxNeedsRecalculated(); - } - } - } - - HardwareSkinning = on; - } - return HardwareSkinning; -} - -void CSkinnedMesh::refreshJointCache() -{ - // copy cache from the mesh... - for (u32 i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (u32 j = 0; j < joint->Weights.size(); ++j) { - const u16 buffer_id = joint->Weights[j].buffer_id; - const u32 vertex_id = joint->Weights[j].vertex_id; - joint->Weights[j].StaticPos = LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos; - joint->Weights[j].StaticNormal = LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal; - } - } -} - -void CSkinnedMesh::resetAnimation() -{ - // copy from the cache to the mesh... - for (u32 i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (u32 j = 0; j < joint->Weights.size(); ++j) { - const u16 buffer_id = joint->Weights[j].buffer_id; - const u32 vertex_id = joint->Weights[j].vertex_id; - LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos = joint->Weights[j].StaticPos; - LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal = joint->Weights[j].StaticNormal; - } - } - SkinnedLastFrame = false; - LastAnimatedFrame = -1; -} - -void CSkinnedMesh::calculateGlobalMatrices(SJoint *joint, SJoint *parentJoint) -{ - if (!joint && parentJoint) // bit of protection from endless loops - return; - - // Go through the root bones - if (!joint) { - for (u32 i = 0; i < RootJoints.size(); ++i) - calculateGlobalMatrices(RootJoints[i], 0); - return; - } - - if (!parentJoint) - joint->GlobalMatrix = joint->LocalMatrix; - else - joint->GlobalMatrix = parentJoint->GlobalMatrix * joint->LocalMatrix; - - joint->LocalAnimatedMatrix = joint->LocalMatrix; - joint->GlobalAnimatedMatrix = joint->GlobalMatrix; - - if (!joint->GlobalInversedMatrix.has_value()) { // might be pre calculated - joint->GlobalInversedMatrix = joint->GlobalMatrix; - joint->GlobalInversedMatrix->makeInverse(); // slow - } - - for (u32 j = 0; j < joint->Children.size(); ++j) - calculateGlobalMatrices(joint->Children[j], joint); - SkinnedLastFrame = false; -} - -void CSkinnedMesh::checkForAnimation() -{ - u32 i, j; - // Check for animation... - HasAnimation = false; - for (i = 0; i < AllJoints.size(); ++i) { - if (AllJoints[i]->UseAnimationFrom) { - if (AllJoints[i]->UseAnimationFrom->PositionKeys.size() || - AllJoints[i]->UseAnimationFrom->ScaleKeys.size() || - AllJoints[i]->UseAnimationFrom->RotationKeys.size()) { - HasAnimation = true; - } - } - } - - // meshes with weights, are still counted as animated for ragdolls, etc - if (!HasAnimation) { - for (i = 0; i < AllJoints.size(); ++i) { - if (AllJoints[i]->Weights.size()) - HasAnimation = true; - } - } - - if (HasAnimation) { - //--- Find the length of the animation --- - EndFrame = 0; - for (i = 0; i < AllJoints.size(); ++i) { - if (AllJoints[i]->UseAnimationFrom) { - if (AllJoints[i]->UseAnimationFrom->PositionKeys.size()) - if (AllJoints[i]->UseAnimationFrom->PositionKeys.getLast().frame > EndFrame) - EndFrame = AllJoints[i]->UseAnimationFrom->PositionKeys.getLast().frame; - - if (AllJoints[i]->UseAnimationFrom->ScaleKeys.size()) - if (AllJoints[i]->UseAnimationFrom->ScaleKeys.getLast().frame > EndFrame) - EndFrame = AllJoints[i]->UseAnimationFrom->ScaleKeys.getLast().frame; - - if (AllJoints[i]->UseAnimationFrom->RotationKeys.size()) - if (AllJoints[i]->UseAnimationFrom->RotationKeys.getLast().frame > EndFrame) - EndFrame = AllJoints[i]->UseAnimationFrom->RotationKeys.getLast().frame; - } - } - } - - if (HasAnimation && !PreparedForSkinning) { - PreparedForSkinning = true; - - // check for bugs: - for (i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (j = 0; j < joint->Weights.size(); ++j) { - const u16 buffer_id = joint->Weights[j].buffer_id; - const u32 vertex_id = joint->Weights[j].vertex_id; - - // check for invalid ids - if (buffer_id >= LocalBuffers.size()) { - os::Printer::log("Skinned Mesh: Weight buffer id too large", ELL_WARNING); - joint->Weights[j].buffer_id = joint->Weights[j].vertex_id = 0; - } else if (vertex_id >= LocalBuffers[buffer_id]->getVertexCount()) { - os::Printer::log("Skinned Mesh: Weight vertex id too large", ELL_WARNING); - joint->Weights[j].buffer_id = joint->Weights[j].vertex_id = 0; - } - } - } - - // An array used in skinning - - for (i = 0; i < Vertices_Moved.size(); ++i) - for (j = 0; j < Vertices_Moved[i].size(); ++j) - Vertices_Moved[i][j] = false; - - // For skinning: cache weight values for speed - - for (i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (j = 0; j < joint->Weights.size(); ++j) { - const u16 buffer_id = joint->Weights[j].buffer_id; - const u32 vertex_id = joint->Weights[j].vertex_id; - - joint->Weights[j].Moved = &Vertices_Moved[buffer_id][vertex_id]; - joint->Weights[j].StaticPos = LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos; - joint->Weights[j].StaticNormal = LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal; - - // joint->Weights[j]._Pos=&Buffers[buffer_id]->getVertex(vertex_id)->Pos; - } - } - - // normalize weights - normalizeWeights(); - } - SkinnedLastFrame = false; -} - -//! called by loader after populating with mesh and bone data -void CSkinnedMesh::finalize() -{ - os::Printer::log("Skinned Mesh - finalize", ELL_DEBUG); - u32 i; - - // Make sure we recalc the next frame - LastAnimatedFrame = -1; - SkinnedLastFrame = false; - - // calculate bounding box - for (i = 0; i < LocalBuffers.size(); ++i) { - LocalBuffers[i]->recalculateBoundingBox(); - } - - if (AllJoints.size() || RootJoints.size()) { - // populate AllJoints or RootJoints, depending on which is empty - if (!RootJoints.size()) { - - for (u32 CheckingIdx = 0; CheckingIdx < AllJoints.size(); ++CheckingIdx) { - - bool foundParent = false; - for (i = 0; i < AllJoints.size(); ++i) { - for (u32 n = 0; n < AllJoints[i]->Children.size(); ++n) { - if (AllJoints[i]->Children[n] == AllJoints[CheckingIdx]) - foundParent = true; - } - } - - if (!foundParent) - RootJoints.push_back(AllJoints[CheckingIdx]); - } - } else { - AllJoints = RootJoints; - } - } - - for (i = 0; i < AllJoints.size(); ++i) { - AllJoints[i]->UseAnimationFrom = AllJoints[i]; - } - - // Set array sizes... - - for (i = 0; i < LocalBuffers.size(); ++i) { - Vertices_Moved.push_back(core::array()); - Vertices_Moved[i].set_used(LocalBuffers[i]->getVertexCount()); - } - - checkForAnimation(); - - if (HasAnimation) { - irr::u32 redundantPosKeys = 0; - irr::u32 unorderedPosKeys = 0; - irr::u32 redundantScaleKeys = 0; - irr::u32 unorderedScaleKeys = 0; - irr::u32 redundantRotationKeys = 0; - irr::u32 unorderedRotationKeys = 0; - - //--- optimize and check keyframes --- - for (i = 0; i < AllJoints.size(); ++i) { - core::array &PositionKeys = AllJoints[i]->PositionKeys; - core::array &ScaleKeys = AllJoints[i]->ScaleKeys; - core::array &RotationKeys = AllJoints[i]->RotationKeys; - - // redundant = identical middle keys - we only need the first and last frame - // unordered = frames which are out of order - we can't handle those - redundantPosKeys += dropMiddleKeys(PositionKeys, identicalPos); - unorderedPosKeys += dropBadKeys(PositionKeys); - redundantScaleKeys += dropMiddleKeys(ScaleKeys, identicalScale); - unorderedScaleKeys += dropBadKeys(ScaleKeys); - redundantRotationKeys += dropMiddleKeys(RotationKeys, identicalRotation); - unorderedRotationKeys += dropBadKeys(RotationKeys); - - // Fill empty keyframe areas - if (PositionKeys.size()) { - SPositionKey *Key; - Key = &PositionKeys[0]; // getFirst - if (Key->frame != 0) { - PositionKeys.push_front(*Key); - Key = &PositionKeys[0]; // getFirst - Key->frame = 0; - } - - Key = &PositionKeys.getLast(); - if (Key->frame != EndFrame) { - PositionKeys.push_back(*Key); - Key = &PositionKeys.getLast(); - Key->frame = EndFrame; - } - } - - if (ScaleKeys.size()) { - SScaleKey *Key; - Key = &ScaleKeys[0]; // getFirst - if (Key->frame != 0) { - ScaleKeys.push_front(*Key); - Key = &ScaleKeys[0]; // getFirst - Key->frame = 0; - } - - Key = &ScaleKeys.getLast(); - if (Key->frame != EndFrame) { - ScaleKeys.push_back(*Key); - Key = &ScaleKeys.getLast(); - Key->frame = EndFrame; - } - } - - if (RotationKeys.size()) { - SRotationKey *Key; - Key = &RotationKeys[0]; // getFirst - if (Key->frame != 0) { - RotationKeys.push_front(*Key); - Key = &RotationKeys[0]; // getFirst - Key->frame = 0; - } - - Key = &RotationKeys.getLast(); - if (Key->frame != EndFrame) { - RotationKeys.push_back(*Key); - Key = &RotationKeys.getLast(); - Key->frame = EndFrame; - } - } - } - - if (redundantPosKeys > 0) { - os::Printer::log("Skinned Mesh - redundant position frames kicked", core::stringc(redundantPosKeys).c_str(), ELL_DEBUG); - } - if (unorderedPosKeys > 0) { - irr::os::Printer::log("Skinned Mesh - unsorted position frames kicked", irr::core::stringc(unorderedPosKeys).c_str(), irr::ELL_DEBUG); - } - if (redundantScaleKeys > 0) { - os::Printer::log("Skinned Mesh - redundant scale frames kicked", core::stringc(redundantScaleKeys).c_str(), ELL_DEBUG); - } - if (unorderedScaleKeys > 0) { - irr::os::Printer::log("Skinned Mesh - unsorted scale frames kicked", irr::core::stringc(unorderedScaleKeys).c_str(), irr::ELL_DEBUG); - } - if (redundantRotationKeys > 0) { - os::Printer::log("Skinned Mesh - redundant rotation frames kicked", core::stringc(redundantRotationKeys).c_str(), ELL_DEBUG); - } - if (unorderedRotationKeys > 0) { - irr::os::Printer::log("Skinned Mesh - unsorted rotation frames kicked", irr::core::stringc(unorderedRotationKeys).c_str(), irr::ELL_DEBUG); - } - } - - // Needed for animation and skinning... - - calculateGlobalMatrices(0, 0); - - // animateMesh(0, 1); - // buildAllLocalAnimatedMatrices(); - // buildAllGlobalAnimatedMatrices(); - - // rigid animation for non animated meshes - for (i = 0; i < AllJoints.size(); ++i) { - for (u32 j = 0; j < AllJoints[i]->AttachedMeshes.size(); ++j) { - SSkinMeshBuffer *Buffer = (*SkinningBuffers)[AllJoints[i]->AttachedMeshes[j]]; - Buffer->Transformation = AllJoints[i]->GlobalAnimatedMatrix; - } - } - - // calculate bounding box - if (LocalBuffers.empty()) - BoundingBox.reset(0, 0, 0); - else { - irr::core::aabbox3df bb(LocalBuffers[0]->BoundingBox); - LocalBuffers[0]->Transformation.transformBoxEx(bb); - BoundingBox.reset(bb); - - for (u32 j = 1; j < LocalBuffers.size(); ++j) { - bb = LocalBuffers[j]->BoundingBox; - LocalBuffers[j]->Transformation.transformBoxEx(bb); - - BoundingBox.addInternalBox(bb); - } - } -} - -void CSkinnedMesh::updateBoundingBox(void) -{ - if (!SkinningBuffers) - return; - - core::array &buffer = *SkinningBuffers; - BoundingBox.reset(0, 0, 0); - - if (!buffer.empty()) { - for (u32 j = 0; j < buffer.size(); ++j) { - buffer[j]->recalculateBoundingBox(); - core::aabbox3df bb = buffer[j]->BoundingBox; - buffer[j]->Transformation.transformBoxEx(bb); - - BoundingBox.addInternalBox(bb); - } - } -} - -scene::SSkinMeshBuffer *CSkinnedMesh::addMeshBuffer() -{ - scene::SSkinMeshBuffer *buffer = new scene::SSkinMeshBuffer(); - TextureSlots.push_back(LocalBuffers.size()); - LocalBuffers.push_back(buffer); - return buffer; -} - -void CSkinnedMesh::addMeshBuffer(SSkinMeshBuffer *meshbuf) -{ - TextureSlots.push_back(LocalBuffers.size()); - LocalBuffers.push_back(meshbuf); -} - -CSkinnedMesh::SJoint *CSkinnedMesh::addJoint(SJoint *parent) -{ - SJoint *joint = new SJoint; - - AllJoints.push_back(joint); - if (!parent) { - // Add root joints to array in finalize() - } else { - // Set parent (Be careful of the mesh loader also setting the parent) - parent->Children.push_back(joint); - } - - return joint; -} - -CSkinnedMesh::SPositionKey *CSkinnedMesh::addPositionKey(SJoint *joint) -{ - if (!joint) - return 0; - - joint->PositionKeys.push_back(SPositionKey()); - return &joint->PositionKeys.getLast(); -} - -CSkinnedMesh::SScaleKey *CSkinnedMesh::addScaleKey(SJoint *joint) -{ - if (!joint) - return 0; - - joint->ScaleKeys.push_back(SScaleKey()); - return &joint->ScaleKeys.getLast(); -} - -CSkinnedMesh::SRotationKey *CSkinnedMesh::addRotationKey(SJoint *joint) -{ - if (!joint) - return 0; - - joint->RotationKeys.push_back(SRotationKey()); - return &joint->RotationKeys.getLast(); -} - -CSkinnedMesh::SWeight *CSkinnedMesh::addWeight(SJoint *joint) -{ - if (!joint) - return 0; - - joint->Weights.push_back(SWeight()); - return &joint->Weights.getLast(); -} - -bool CSkinnedMesh::isStatic() -{ - return !HasAnimation; -} - -void CSkinnedMesh::normalizeWeights() -{ - // note: unsure if weights ids are going to be used. - - // Normalise the weights on bones.... - - u32 i, j; - core::array> verticesTotalWeight; - - verticesTotalWeight.reallocate(LocalBuffers.size()); - for (i = 0; i < LocalBuffers.size(); ++i) { - verticesTotalWeight.push_back(core::array()); - verticesTotalWeight[i].set_used(LocalBuffers[i]->getVertexCount()); - } - - for (i = 0; i < verticesTotalWeight.size(); ++i) - for (j = 0; j < verticesTotalWeight[i].size(); ++j) - verticesTotalWeight[i][j] = 0; - - for (i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (j = 0; j < joint->Weights.size(); ++j) { - if (joint->Weights[j].strength <= 0) { // Check for invalid weights - joint->Weights.erase(j); - --j; - } else { - verticesTotalWeight[joint->Weights[j].buffer_id][joint->Weights[j].vertex_id] += joint->Weights[j].strength; - } - } - } - - for (i = 0; i < AllJoints.size(); ++i) { - SJoint *joint = AllJoints[i]; - for (j = 0; j < joint->Weights.size(); ++j) { - const f32 total = verticesTotalWeight[joint->Weights[j].buffer_id][joint->Weights[j].vertex_id]; - if (total != 0 && total != 1) - joint->Weights[j].strength /= total; - } - } -} - -void CSkinnedMesh::recoverJointsFromMesh(core::array &jointChildSceneNodes) -{ - for (u32 i = 0; i < AllJoints.size(); ++i) { - IBoneSceneNode *node = jointChildSceneNodes[i]; - SJoint *joint = AllJoints[i]; - node->setPosition(joint->LocalAnimatedMatrix.getTranslation()); - node->setRotation(joint->LocalAnimatedMatrix.getRotationDegrees()); - node->setScale(joint->LocalAnimatedMatrix.getScale()); - - node->positionHint = joint->positionHint; - node->scaleHint = joint->scaleHint; - node->rotationHint = joint->rotationHint; - - node->updateAbsolutePosition(); - } -} - -void CSkinnedMesh::transferJointsToMesh(const core::array &jointChildSceneNodes) -{ - for (u32 i = 0; i < AllJoints.size(); ++i) { - const IBoneSceneNode *const node = jointChildSceneNodes[i]; - SJoint *joint = AllJoints[i]; - - joint->LocalAnimatedMatrix.setRotationDegrees(node->getRotation()); - joint->LocalAnimatedMatrix.setTranslation(node->getPosition()); - joint->LocalAnimatedMatrix *= core::matrix4().setScale(node->getScale()); - - joint->positionHint = node->positionHint; - joint->scaleHint = node->scaleHint; - joint->rotationHint = node->rotationHint; - - joint->GlobalSkinningSpace = (node->getSkinningSpace() == EBSS_GLOBAL); - } - // Make sure we recalc the next frame - LastAnimatedFrame = -1; - SkinnedLastFrame = false; -} - -void CSkinnedMesh::transferOnlyJointsHintsToMesh(const core::array &jointChildSceneNodes) -{ - for (u32 i = 0; i < AllJoints.size(); ++i) { - const IBoneSceneNode *const node = jointChildSceneNodes[i]; - SJoint *joint = AllJoints[i]; - - joint->positionHint = node->positionHint; - joint->scaleHint = node->scaleHint; - joint->rotationHint = node->rotationHint; - } - SkinnedLastFrame = false; -} - -void CSkinnedMesh::addJoints(core::array &jointChildSceneNodes, - IAnimatedMeshSceneNode *node, ISceneManager *smgr) -{ - // Create new joints - for (u32 i = 0; i < AllJoints.size(); ++i) { - jointChildSceneNodes.push_back(new CBoneSceneNode(0, smgr, 0, i, AllJoints[i]->Name)); - } - - // Match up parents - for (u32 i = 0; i < jointChildSceneNodes.size(); ++i) { - const SJoint *const joint = AllJoints[i]; // should be fine - - s32 parentID = -1; - - for (u32 j = 0; (parentID == -1) && (j < AllJoints.size()); ++j) { - if (i != j) { - const SJoint *const parentTest = AllJoints[j]; - for (u32 n = 0; n < parentTest->Children.size(); ++n) { - if (parentTest->Children[n] == joint) { - parentID = j; - break; - } - } - } - } - - IBoneSceneNode *bone = jointChildSceneNodes[i]; - if (parentID != -1) - bone->setParent(jointChildSceneNodes[parentID]); - else - bone->setParent(node); - - bone->drop(); - } - SkinnedLastFrame = false; -} - -void CSkinnedMesh::convertMeshToTangents() -{ - // now calculate tangents - for (u32 b = 0; b < LocalBuffers.size(); ++b) { - if (LocalBuffers[b]) { - LocalBuffers[b]->convertToTangents(); - - const s32 idxCnt = LocalBuffers[b]->getIndexCount(); - - u16 *idx = LocalBuffers[b]->getIndices(); - video::S3DVertexTangents *v = - (video::S3DVertexTangents *)LocalBuffers[b]->getVertices(); - - for (s32 i = 0; i < idxCnt; i += 3) { - calculateTangents( - v[idx[i + 0]].Normal, - v[idx[i + 0]].Tangent, - v[idx[i + 0]].Binormal, - v[idx[i + 0]].Pos, - v[idx[i + 1]].Pos, - v[idx[i + 2]].Pos, - v[idx[i + 0]].TCoords, - v[idx[i + 1]].TCoords, - v[idx[i + 2]].TCoords); - - calculateTangents( - v[idx[i + 1]].Normal, - v[idx[i + 1]].Tangent, - v[idx[i + 1]].Binormal, - v[idx[i + 1]].Pos, - v[idx[i + 2]].Pos, - v[idx[i + 0]].Pos, - v[idx[i + 1]].TCoords, - v[idx[i + 2]].TCoords, - v[idx[i + 0]].TCoords); - - calculateTangents( - v[idx[i + 2]].Normal, - v[idx[i + 2]].Tangent, - v[idx[i + 2]].Binormal, - v[idx[i + 2]].Pos, - v[idx[i + 0]].Pos, - v[idx[i + 1]].Pos, - v[idx[i + 2]].TCoords, - v[idx[i + 0]].TCoords, - v[idx[i + 1]].TCoords); - } - } - } -} - -void CSkinnedMesh::calculateTangents( - core::vector3df &normal, - core::vector3df &tangent, - core::vector3df &binormal, - const core::vector3df &vt1, const core::vector3df &vt2, const core::vector3df &vt3, // vertices - const core::vector2df &tc1, const core::vector2df &tc2, const core::vector2df &tc3) // texture coords -{ - core::vector3df v1 = vt1 - vt2; - core::vector3df v2 = vt3 - vt1; - normal = v2.crossProduct(v1); - normal.normalize(); - - // binormal - - f32 deltaX1 = tc1.X - tc2.X; - f32 deltaX2 = tc3.X - tc1.X; - binormal = (v1 * deltaX2) - (v2 * deltaX1); - binormal.normalize(); - - // tangent - - f32 deltaY1 = tc1.Y - tc2.Y; - f32 deltaY2 = tc3.Y - tc1.Y; - tangent = (v1 * deltaY2) - (v2 * deltaY1); - tangent.normalize(); - - // adjust - - core::vector3df txb = tangent.crossProduct(binormal); - if (txb.dotProduct(normal) < 0.0f) { - tangent *= -1.0f; - binormal *= -1.0f; - } -} - -} // end namespace scene -} // end namespace irr diff --git a/irr/src/CSkinnedMesh.h b/irr/src/CSkinnedMesh.h deleted file mode 100644 index 576ae1217..000000000 --- a/irr/src/CSkinnedMesh.h +++ /dev/null @@ -1,223 +0,0 @@ -// Copyright (C) 2002-2012 Nikolaus Gebhardt -// This file is part of the "Irrlicht Engine". -// For conditions of distribution and use, see copyright notice in irrlicht.h - -// New skinned mesh - -#pragma once - -#include "ISceneManager.h" -#include "ISkinnedMesh.h" -#include "SMeshBuffer.h" -#include "quaternion.h" - -namespace irr -{ -namespace scene -{ - -class IAnimatedMeshSceneNode; -class IBoneSceneNode; -class ISceneManager; - -class CSkinnedMesh : public ISkinnedMesh -{ -public: - //! constructor - CSkinnedMesh(); - - //! destructor - virtual ~CSkinnedMesh(); - - //! If the duration is 0, it is a static (=non animated) mesh. - f32 getMaxFrameNumber() const override; - - //! Gets the default animation speed of the animated mesh. - /** \return Amount of frames per second. If the amount is 0, it is a static, non animated mesh. */ - f32 getAnimationSpeed() const override; - - //! Gets the frame count of the animated mesh. - /** \param fps Frames per second to play the animation with. If the amount is 0, it is not animated. - The actual speed is set in the scene node the mesh is instantiated in.*/ - void setAnimationSpeed(f32 fps) override; - - //! returns the animated mesh for the given frame - IMesh *getMesh(f32) override; - - //! Animates this mesh's joints based on frame input - //! blend: {0-old position, 1-New position} - void animateMesh(f32 frame, f32 blend) override; - - //! Preforms a software skin on this mesh based of joint positions - void skinMesh() override; - - //! returns amount of mesh buffers. - u32 getMeshBufferCount() const override; - - //! returns pointer to a mesh buffer - IMeshBuffer *getMeshBuffer(u32 nr) const override; - - //! Returns pointer to a mesh buffer which fits a material - /** \param material: material to search for - \return Returns the pointer to the mesh buffer or - NULL if there is no such mesh buffer. */ - IMeshBuffer *getMeshBuffer(const video::SMaterial &material) const override; - - u32 getTextureSlot(u32 meshbufNr) const override; - - void setTextureSlot(u32 meshbufNr, u32 textureSlot); - - //! returns an axis aligned bounding box - const core::aabbox3d &getBoundingBox() const override; - - //! set user axis aligned bounding box - void setBoundingBox(const core::aabbox3df &box) override; - - //! set the hardware mapping hint, for driver - void setHardwareMappingHint(E_HARDWARE_MAPPING newMappingHint, E_BUFFER_TYPE buffer = EBT_VERTEX_AND_INDEX) override; - - //! flags the meshbuffer as changed, reloads hardware buffers - void setDirty(E_BUFFER_TYPE buffer = EBT_VERTEX_AND_INDEX) override; - - //! Returns the type of the animated mesh. - E_ANIMATED_MESH_TYPE getMeshType() const override; - - //! Gets joint count. - u32 getJointCount() const override; - - //! Gets the name of a joint. - const std::optional &getJointName(u32 number) const override; - - //! Gets a joint number from its name - std::optional getJointNumber(const std::string &name) const override; - - //! uses animation from another mesh - bool useAnimationFrom(const ISkinnedMesh *mesh) override; - - //! Update Normals when Animating - //! False= Don't (default) - //! True = Update normals, slower - void updateNormalsWhenAnimating(bool on) override; - - //! Sets Interpolation Mode - void setInterpolationMode(E_INTERPOLATION_MODE mode) override; - - //! Convertes the mesh to contain tangent information - void convertMeshToTangents() override; - - //! Does the mesh have no animation - bool isStatic() override; - - //! (This feature is not implemented in irrlicht yet) - bool setHardwareSkinning(bool on) override; - - //! Refreshes vertex data cached in joints such as positions and normals - void refreshJointCache() override; - - //! Moves the mesh into static position. - void resetAnimation() override; - - // Interface for the mesh loaders (finalize should lock these functions, and they should have some prefix like loader_ - // these functions will use the needed arrays, set values, etc to help the loaders - - //! exposed for loaders to add mesh buffers - core::array &getMeshBuffers() override; - - //! alternative method for adding joints - core::array &getAllJoints() override; - - //! alternative method for adding joints - const core::array &getAllJoints() const override; - - //! loaders should call this after populating the mesh - void finalize() override; - - //! Adds a new meshbuffer to the mesh, access it as last one - SSkinMeshBuffer *addMeshBuffer() override; - - //! Adds a new meshbuffer to the mesh, access it as last one - void addMeshBuffer(SSkinMeshBuffer *meshbuf) override; - - //! Adds a new joint to the mesh, access it as last one - SJoint *addJoint(SJoint *parent = 0) override; - - //! Adds a new position key to the mesh, access it as last one - SPositionKey *addPositionKey(SJoint *joint) override; - //! Adds a new rotation key to the mesh, access it as last one - SRotationKey *addRotationKey(SJoint *joint) override; - //! Adds a new scale key to the mesh, access it as last one - SScaleKey *addScaleKey(SJoint *joint) override; - - //! Adds a new weight to the mesh, access it as last one - SWeight *addWeight(SJoint *joint) override; - - virtual void updateBoundingBox(void); - - //! Recovers the joints from the mesh - void recoverJointsFromMesh(core::array &jointChildSceneNodes); - - //! Tranfers the joint data to the mesh - void transferJointsToMesh(const core::array &jointChildSceneNodes); - - //! Tranfers the joint hints to the mesh - void transferOnlyJointsHintsToMesh(const core::array &jointChildSceneNodes); - - //! Creates an array of joints from this mesh as children of node - void addJoints(core::array &jointChildSceneNodes, - IAnimatedMeshSceneNode *node, - ISceneManager *smgr); - -private: - void checkForAnimation(); - - void normalizeWeights(); - - void buildAllLocalAnimatedMatrices(); - - void buildAllGlobalAnimatedMatrices(SJoint *Joint = 0, SJoint *ParentJoint = 0); - - void getFrameData(f32 frame, SJoint *Node, - core::vector3df &position, s32 &positionHint, - core::vector3df &scale, s32 &scaleHint, - core::quaternion &rotation, s32 &rotationHint); - - void calculateGlobalMatrices(SJoint *Joint, SJoint *ParentJoint); - - void skinJoint(SJoint *Joint, SJoint *ParentJoint); - - void calculateTangents(core::vector3df &normal, - core::vector3df &tangent, core::vector3df &binormal, - const core::vector3df &vt1, const core::vector3df &vt2, const core::vector3df &vt3, - const core::vector2df &tc1, const core::vector2df &tc2, const core::vector2df &tc3); - - core::array *SkinningBuffers; // Meshbuffer to skin, default is to skin localBuffers - - core::array LocalBuffers; - //! Mapping from meshbuffer number to bindable texture slot - std::vector TextureSlots; - - core::array AllJoints; - core::array RootJoints; - - // bool can't be used here because std::vector - // doesn't allow taking a reference to individual elements. - core::array> Vertices_Moved; - - core::aabbox3d BoundingBox; - - f32 EndFrame; - f32 FramesPerSecond; - - f32 LastAnimatedFrame; - bool SkinnedLastFrame; - - E_INTERPOLATION_MODE InterpolationMode : 8; - - bool HasAnimation; - bool PreparedForSkinning; - bool AnimateNormals; - bool HardwareSkinning; -}; - -} // end namespace scene -} // end namespace irr diff --git a/irr/src/CWGLManager.cpp b/irr/src/CWGLManager.cpp index 785524fbc..d0dc9bf6a 100644 --- a/irr/src/CWGLManager.cpp +++ b/irr/src/CWGLManager.cpp @@ -19,9 +19,6 @@ namespace video CWGLManager::CWGLManager() : PrimaryContext(SExposedVideoData(0)), PixelFormat(0), libHandle(NULL) { -#ifdef _DEBUG - setDebugName("CWGLManager"); -#endif memset(FunctionPointers, 0, sizeof(FunctionPointers)); } diff --git a/irr/src/CWriteFile.cpp b/irr/src/CWriteFile.cpp index 362b284ee..f6a7efd2b 100644 --- a/irr/src/CWriteFile.cpp +++ b/irr/src/CWriteFile.cpp @@ -13,10 +13,6 @@ namespace io CWriteFile::CWriteFile(const io::path &fileName, bool append) : Filename(fileName), FileSize(0) { -#ifdef _DEBUG - setDebugName("CWriteFile"); -#endif - openFile(append); } diff --git a/irr/src/CXMeshFileLoader.cpp b/irr/src/CXMeshFileLoader.cpp index 967fc367c..c09f2e481 100644 --- a/irr/src/CXMeshFileLoader.cpp +++ b/irr/src/CXMeshFileLoader.cpp @@ -3,6 +3,7 @@ // For conditions of distribution and use, see copyright notice in irrlicht.h #include "CXMeshFileLoader.h" +#include "SkinnedMesh.h" #include "os.h" #include "fast_atof.h" @@ -31,11 +32,7 @@ namespace scene CXMeshFileLoader::CXMeshFileLoader(scene::ISceneManager *smgr) : AnimatedMesh(0), Buffer(0), P(0), End(0), BinaryNumCount(0), Line(0), ErrorState(false), CurFrame(0), MajorVersion(0), MinorVersion(0), BinaryFormat(false), FloatSize(0) -{ -#ifdef _DEBUG - setDebugName("CXMeshFileLoader"); -#endif -} +{} //! returns true if the file maybe is able to be loaded by this class //! based on the file extension (e.g. ".bsp") @@ -57,10 +54,11 @@ IAnimatedMesh *CXMeshFileLoader::createMesh(io::IReadFile *file) u32 time = os::Timer::getRealTime(); #endif - AnimatedMesh = new CSkinnedMesh(); + AnimatedMesh = new SkinnedMeshBuilder(); + SkinnedMesh *res = nullptr; if (load(file)) { - AnimatedMesh->finalize(); + res = AnimatedMesh->finalize(); } else { AnimatedMesh->drop(); AnimatedMesh = 0; @@ -92,7 +90,7 @@ IAnimatedMesh *CXMeshFileLoader::createMesh(io::IReadFile *file) delete Meshes[i]; Meshes.clear(); - return AnimatedMesh; + return res; } bool CXMeshFileLoader::load(io::IReadFile *file) @@ -124,7 +122,7 @@ bool CXMeshFileLoader::load(io::IReadFile *file) if (!mesh->HasSkinning) { // Set up rigid animation if (mesh->AttachedJointID != -1) { - AnimatedMesh->getAllJoints()[mesh->AttachedJointID]->AttachedMeshes.push_back(AnimatedMesh->getMeshBuffers().size() - 1); + AnimatedMesh->getAllJoints()[mesh->AttachedJointID]->AttachedMeshes.push_back(AnimatedMesh->getMeshBufferCount() - 1); } } } @@ -203,8 +201,8 @@ bool CXMeshFileLoader::load(io::IReadFile *file) } for (u32 j = 0; j < mesh->WeightJoint.size(); ++j) { - ISkinnedMesh::SJoint *joint = AnimatedMesh->getAllJoints()[mesh->WeightJoint[j]]; - ISkinnedMesh::SWeight &weight = joint->Weights[mesh->WeightNum[j]]; + SkinnedMesh::SJoint *joint = AnimatedMesh->getAllJoints()[mesh->WeightJoint[j]]; + SkinnedMesh::SWeight &weight = joint->Weights[mesh->WeightNum[j]]; u32 id = weight.vertex_id; @@ -219,7 +217,7 @@ bool CXMeshFileLoader::load(io::IReadFile *file) weight.buffer_id = verticesLinkBuffer[id][0]; } else if (verticesLinkBuffer[id].size() != 0) { for (u32 k = 1; k < verticesLinkBuffer[id].size(); ++k) { - ISkinnedMesh::SWeight *WeightClone = AnimatedMesh->addWeight(joint); + SkinnedMesh::SWeight *WeightClone = AnimatedMesh->addWeight(joint); WeightClone->strength = weight.strength; WeightClone->vertex_id = verticesLinkIndex[id][k]; WeightClone->buffer_id = verticesLinkBuffer[id][k]; @@ -314,7 +312,7 @@ bool CXMeshFileLoader::load(io::IReadFile *file) } for (u32 j = 0; j < mesh->WeightJoint.size(); ++j) { - ISkinnedMesh::SWeight &weight = (AnimatedMesh->getAllJoints()[mesh->WeightJoint[j]]->Weights[mesh->WeightNum[j]]); + SkinnedMesh::SWeight &weight = (AnimatedMesh->getAllJoints()[mesh->WeightJoint[j]]->Weights[mesh->WeightNum[j]]); u32 id = weight.vertex_id; @@ -486,7 +484,7 @@ bool CXMeshFileLoader::parseDataObjectTemplate() return true; } -bool CXMeshFileLoader::parseDataObjectFrame(CSkinnedMesh::SJoint *Parent) +bool CXMeshFileLoader::parseDataObjectFrame(SkinnedMesh::SJoint *Parent) { #ifdef _XREADER_DEBUG os::Printer::log("CXFileReader: Reading frame", ELL_DEBUG); @@ -508,7 +506,7 @@ bool CXMeshFileLoader::parseDataObjectFrame(CSkinnedMesh::SJoint *Parent) SET_ERR_AND_RETURN(); } - CSkinnedMesh::SJoint *joint = 0; + SkinnedMesh::SJoint *joint = 0; if (name.size()) { auto n = AnimatedMesh->getJointNumber(name.c_str()); @@ -947,7 +945,7 @@ bool CXMeshFileLoader::parseDataObjectSkinWeights(SXMesh &mesh) mesh.HasSkinning = true; auto n = AnimatedMesh->getJointNumber(TransformNodeName.c_str()); - CSkinnedMesh::SJoint *joint = n.has_value() ? AnimatedMesh->getAllJoints()[*n] : nullptr; + SkinnedMesh::SJoint *joint = n.has_value() ? AnimatedMesh->getAllJoints()[*n] : nullptr; if (!joint) { #ifdef _XREADER_DEBUG @@ -965,16 +963,17 @@ bool CXMeshFileLoader::parseDataObjectSkinWeights(SXMesh &mesh) u32 i; const u32 jointStart = joint->Weights.size(); - joint->Weights.reallocate(jointStart + nWeights); + joint->Weights.reserve(jointStart + nWeights); mesh.WeightJoint.reallocate(mesh.WeightJoint.size() + nWeights); mesh.WeightNum.reallocate(mesh.WeightNum.size() + nWeights); for (i = 0; i < nWeights; ++i) { mesh.WeightJoint.push_back(*n); - mesh.WeightNum.push_back(joint->Weights.size()); + mesh.WeightNum.push_back(joint->Weights.size()); // id of weight - CSkinnedMesh::SWeight *weight = AnimatedMesh->addWeight(joint); + // Note: This adds a weight to joint->Weights + SkinnedMesh::SWeight *weight = AnimatedMesh->addWeight(joint); weight->buffer_id = 0; weight->vertex_id = readInt(); @@ -1358,7 +1357,7 @@ bool CXMeshFileLoader::parseDataObjectAnimation() // anim.closed = true; // anim.linearPositionQuality = true; - CSkinnedMesh::SJoint animationDump; + SkinnedMesh::SJoint animationDump; core::stringc FrameName; @@ -1400,7 +1399,7 @@ bool CXMeshFileLoader::parseDataObjectAnimation() #endif auto n = AnimatedMesh->getJointNumber(FrameName.c_str()); - CSkinnedMesh::SJoint *joint; + SkinnedMesh::SJoint *joint; if (n.has_value()) { joint = AnimatedMesh->getAllJoints()[*n]; } else { @@ -1411,27 +1410,14 @@ bool CXMeshFileLoader::parseDataObjectAnimation() joint->Name = FrameName.c_str(); } - joint->PositionKeys.reallocate(joint->PositionKeys.size() + animationDump.PositionKeys.size()); - for (u32 n = 0; n < animationDump.PositionKeys.size(); ++n) { - joint->PositionKeys.push_back(animationDump.PositionKeys[n]); - } - - joint->ScaleKeys.reallocate(joint->ScaleKeys.size() + animationDump.ScaleKeys.size()); - for (u32 n = 0; n < animationDump.ScaleKeys.size(); ++n) { - joint->ScaleKeys.push_back(animationDump.ScaleKeys[n]); - } - - joint->RotationKeys.reallocate(joint->RotationKeys.size() + animationDump.RotationKeys.size()); - for (u32 n = 0; n < animationDump.RotationKeys.size(); ++n) { - joint->RotationKeys.push_back(animationDump.RotationKeys[n]); - } + joint->keys.append(animationDump.keys); } else os::Printer::log("joint name was never given", ELL_WARNING); return true; } -bool CXMeshFileLoader::parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint) +bool CXMeshFileLoader::parseDataObjectAnimationKey(SkinnedMesh::SJoint *joint) { #ifdef _XREADER_DEBUG os::Printer::log("CXFileReader: reading animation key", ELL_DEBUG); @@ -1488,10 +1474,9 @@ bool CXMeshFileLoader::parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint) os::Printer::log("Line", core::stringc(Line).c_str(), ELL_WARNING); } - ISkinnedMesh::SRotationKey *key = AnimatedMesh->addRotationKey(joint); - key->frame = time; - key->rotation.set(X, Y, Z, W); - key->rotation.normalize(); + core::quaternion rotation(X, Y, Z, W); + rotation.normalize(); + AnimatedMesh->addRotationKey(joint, time, rotation); } break; case 1: // scale case 2: // position @@ -1514,13 +1499,9 @@ bool CXMeshFileLoader::parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint) } if (keyType == 2) { - ISkinnedMesh::SPositionKey *key = AnimatedMesh->addPositionKey(joint); - key->frame = time; - key->position = vector; + AnimatedMesh->addPositionKey(joint, time, vector); } else { - ISkinnedMesh::SScaleKey *key = AnimatedMesh->addScaleKey(joint); - key->frame = time; - key->scale = vector; + AnimatedMesh->addScaleKey(joint, time, vector); } } break; case 3: @@ -1547,16 +1528,8 @@ bool CXMeshFileLoader::parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint) // core::vector3df rotation = mat.getRotationDegrees(); - ISkinnedMesh::SRotationKey *keyR = AnimatedMesh->addRotationKey(joint); - keyR->frame = time; - - // IRR_TEST_BROKEN_QUATERNION_USE: TODO - switched from mat to mat.getTransposed() for downward compatibility. - // Not tested so far if this was correct or wrong before quaternion fix! - keyR->rotation = core::quaternion(mat.getTransposed()); - - ISkinnedMesh::SPositionKey *keyP = AnimatedMesh->addPositionKey(joint); - keyP->frame = time; - keyP->position = mat.getTranslation(); + AnimatedMesh->addRotationKey(joint, time, core::quaternion(mat.getTransposed())); + AnimatedMesh->addPositionKey(joint, time, mat.getTranslation()); /* core::vector3df scale=mat.getScale(); @@ -1567,7 +1540,7 @@ bool CXMeshFileLoader::parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint) scale.Y=1; if (scale.Z==0) scale.Z=1; - ISkinnedMesh::SScaleKey *keyS=AnimatedMesh->addScaleKey(joint); + SkinnedMesh::SScaleKey *keyS=AnimatedMesh->addScaleKey(joint); keyS->frame=time; keyS->scale=scale; */ diff --git a/irr/src/CXMeshFileLoader.h b/irr/src/CXMeshFileLoader.h index 711806270..36610d3b3 100644 --- a/irr/src/CXMeshFileLoader.h +++ b/irr/src/CXMeshFileLoader.h @@ -6,7 +6,7 @@ #include "IMeshLoader.h" #include "irrString.h" -#include "CSkinnedMesh.h" +#include "SkinnedMesh.h" namespace irr { @@ -86,7 +86,7 @@ private: bool parseDataObjectTemplate(); - bool parseDataObjectFrame(CSkinnedMesh::SJoint *parent); + bool parseDataObjectFrame(SkinnedMesh::SJoint *parent); bool parseDataObjectTransformationMatrix(core::matrix4 &mat); @@ -110,7 +110,7 @@ private: bool parseDataObjectAnimation(); - bool parseDataObjectAnimationKey(ISkinnedMesh::SJoint *joint); + bool parseDataObjectAnimationKey(SkinnedMesh::SJoint *joint); bool parseDataObjectTextureFilename(core::stringc &texturename); @@ -155,7 +155,7 @@ private: bool readRGB(video::SColor &color); bool readRGBA(video::SColor &color); - CSkinnedMesh *AnimatedMesh; + SkinnedMeshBuilder *AnimatedMesh; c8 *Buffer; const c8 *P; @@ -167,7 +167,7 @@ private: bool ErrorState; - CSkinnedMesh::SJoint *CurFrame; + SkinnedMesh::SJoint *CurFrame; core::array Meshes; diff --git a/irr/src/CZipReader.cpp b/irr/src/CZipReader.cpp index 036f6302a..dc5c0a4f0 100644 --- a/irr/src/CZipReader.cpp +++ b/irr/src/CZipReader.cpp @@ -24,11 +24,7 @@ namespace io //! Constructor CArchiveLoaderZIP::CArchiveLoaderZIP(io::IFileSystem *fs) : FileSystem(fs) -{ -#ifdef _DEBUG - setDebugName("CArchiveLoaderZIP"); -#endif -} +{} //! returns true if the file maybe is able to be loaded by this class bool CArchiveLoaderZIP::isALoadableFileFormat(const io::path &filename) const @@ -107,10 +103,6 @@ bool CArchiveLoaderZIP::isALoadableFileFormat(io::IReadFile *file) const CZipReader::CZipReader(IFileSystem *fs, IReadFile *file, bool ignoreCase, bool ignorePaths, bool isGZip) : CFileList((file ? file->getFileName() : io::path("")), ignoreCase, ignorePaths), FileSystem(fs), File(file), IsGZip(isGZip) { -#ifdef _DEBUG - setDebugName("CZipReader"); -#endif - if (File) { File->grab(); diff --git a/irr/src/OpenGL/Common.h b/irr/src/OpenGL/Common.h index 84b2ec3e4..7049f6f65 100644 --- a/irr/src/OpenGL/Common.h +++ b/irr/src/OpenGL/Common.h @@ -40,7 +40,9 @@ typedef COpenGLCoreTexture COpenGL3Texture; typedef COpenGLCoreRenderTarget COpenGL3RenderTarget; typedef COpenGLCoreCacheHandler COpenGL3CacheHandler; -enum class OpenGLSpec : u8 +class OpenGLVBO; + +enum OpenGLSpec : u8 { Core, Compat, diff --git a/irr/src/OpenGL/Driver.cpp b/irr/src/OpenGL/Driver.cpp index fe9a24758..25c9a14f6 100644 --- a/irr/src/OpenGL/Driver.cpp +++ b/irr/src/OpenGL/Driver.cpp @@ -27,37 +27,32 @@ namespace irr { namespace video { + struct VertexAttribute { - enum class Mode + enum Mode : u8 { Regular, Normalized, - Integral, + Integer, }; - int Index; - int ComponentCount; + u8 Index; + u8 ComponentCount; GLenum ComponentType; Mode mode; - int Offset; + u32 Offset; }; struct VertexType { - int VertexSize; + u32 VertexSize; std::vector Attributes; + + // allow ranged for loops + inline auto begin() const { return Attributes.begin(); } + inline auto end() const { return Attributes.end(); } }; -static const VertexAttribute *begin(const VertexType &type) -{ - return type.Attributes.data(); -} - -static const VertexAttribute *end(const VertexType &type) -{ - return type.Attributes.data() + type.Attributes.size(); -} - static const VertexType vtStandard = { sizeof(S3DVertex), { @@ -68,6 +63,9 @@ static const VertexType vtStandard = { }, }; +// FIXME: this is actually UB because these vertex classes are not "standard-layout" +// they violate the following requirement: +// - only one class in the hierarchy has non-static data members #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Winvalid-offsetof" @@ -144,7 +142,7 @@ void COpenGL3DriverBase::debugCb(GLenum source, GLenum type, GLuint id, GLenum s ll = ELL_ERROR; else if (severity == GL_DEBUG_SEVERITY_MEDIUM) ll = ELL_WARNING; - char buf[256]; + char buf[300]; snprintf_irr(buf, sizeof(buf), "%04x %04x %.*s", source, type, length, message); os::Printer::log("GL", buf, ll); } @@ -157,10 +155,6 @@ COpenGL3DriverBase::COpenGL3DriverBase(const SIrrlichtCreationParameters ¶ms OGLES2ShaderPath(params.OGLES2ShaderPath), ColorFormat(ECF_R8G8B8), ContextManager(contextManager), EnableErrorTest(params.DriverDebug) { -#ifdef _DEBUG - setDebugName("Driver"); -#endif - if (!ContextManager) return; @@ -170,15 +164,14 @@ COpenGL3DriverBase::COpenGL3DriverBase(const SIrrlichtCreationParameters ¶ms ExposedData = ContextManager->getContext(); ContextManager->activateContext(ExposedData, false); GL.LoadAllProcedures(ContextManager); - if (EnableErrorTest) { - GL.Enable(GL_DEBUG_OUTPUT); - GL.DebugMessageCallback(debugCb, this); - } - initQuadsIndices(); + + TEST_GL_ERROR(this); } COpenGL3DriverBase::~COpenGL3DriverBase() { + QuadIndexVBO.destroy(); + deleteMaterialRenders(); CacheHandler->getTextureCache().clear(); @@ -200,12 +193,16 @@ COpenGL3DriverBase::~COpenGL3DriverBase() } } -void COpenGL3DriverBase::initQuadsIndices(int max_vertex_count) +void COpenGL3DriverBase::initQuadsIndices(u32 max_vertex_count) { - int max_quad_count = max_vertex_count / 4; - std::vector QuadsIndices; - QuadsIndices.reserve(6 * max_quad_count); - for (int k = 0; k < max_quad_count; k++) { + u32 max_quad_count = max_vertex_count / 4; + u32 indices_size = 6 * max_quad_count; + if (indices_size == QuadIndexVBO.getSize() * sizeof(u16)) + return; + // initialize buffer contents + std::vector QuadsIndices; + QuadsIndices.reserve(indices_size); + for (u32 k = 0; k < max_quad_count; k++) { QuadsIndices.push_back(4 * k + 0); QuadsIndices.push_back(4 * k + 1); QuadsIndices.push_back(4 * k + 2); @@ -213,11 +210,8 @@ void COpenGL3DriverBase::initQuadsIndices(int max_vertex_count) QuadsIndices.push_back(4 * k + 2); QuadsIndices.push_back(4 * k + 3); } - GL.GenBuffers(1, &QuadIndexBuffer); - GL.BindBuffer(GL_ARRAY_BUFFER, QuadIndexBuffer); - GL.BufferData(GL_ARRAY_BUFFER, sizeof(QuadsIndices[0]) * QuadsIndices.size(), QuadsIndices.data(), GL_STATIC_DRAW); - GL.BindBuffer(GL_ARRAY_BUFFER, 0); - QuadIndexCount = QuadsIndices.size(); + QuadIndexVBO.upload(QuadsIndices.data(), QuadsIndices.size() * sizeof(u16), + 0, GL_STATIC_DRAW, true); } void COpenGL3DriverBase::initVersion() @@ -226,8 +220,8 @@ void COpenGL3DriverBase::initVersion() printVersion(); // print renderer information - VendorName = GL.GetString(GL_VENDOR); - os::Printer::log("Vendor", VendorName.c_str(), ELL_INFORMATION); + VendorName = GL.GetString(GL_RENDERER); + os::Printer::log("Renderer", VendorName.c_str(), ELL_INFORMATION); Version = getVersionFromOpenGL(); } @@ -247,6 +241,20 @@ bool COpenGL3DriverBase::genericDriverInit(const core::dimension2d &screenS initFeatures(); printTextureFormats(); + if (EnableErrorTest) { + if (KHRDebugSupported) { + GL.Enable(GL_DEBUG_OUTPUT); + GL.DebugMessageCallback(debugCb, this); + } else { + os::Printer::log("GL debug extension not available"); + } + } else { + // don't do debug things if they are not wanted (even if supported) + KHRDebugSupported = false; + } + + initQuadsIndices(); + // reset cache handler delete CacheHandler; CacheHandler = new COpenGL3CacheHandler(this); @@ -267,7 +275,6 @@ bool COpenGL3DriverBase::genericDriverInit(const core::dimension2d &screenS for (s32 i = 0; i < ETS_COUNT; ++i) setTransform(static_cast(i), core::IdentityMatrix); - setAmbientLight(SColorf(0.0f, 0.0f, 0.0f, 0.0f)); GL.ClearDepthf(1.0f); GL.Hint(GL_GENERATE_MIPMAP_HINT, GL_NICEST); @@ -386,28 +393,28 @@ void COpenGL3DriverBase::createMaterialRenderers() // EMT_SOLID core::stringc FragmentShader = OGLES2ShaderPath + "Solid.fsh"; - addHighLevelShaderMaterialFromFiles(VertexShader, "main", EVST_VS_2_0, FragmentShader, "main", EPST_PS_2_0, "", "main", - EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, SolidCB, EMT_SOLID, 0); + addHighLevelShaderMaterialFromFiles(VertexShader, FragmentShader, "", "Solid", + scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, SolidCB, EMT_SOLID, 0); // EMT_TRANSPARENT_ALPHA_CHANNEL FragmentShader = OGLES2ShaderPath + "TransparentAlphaChannel.fsh"; - addHighLevelShaderMaterialFromFiles(VertexShader, "main", EVST_VS_2_0, FragmentShader, "main", EPST_PS_2_0, "", "main", - EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentAlphaChannelCB, EMT_TRANSPARENT_ALPHA_CHANNEL, 0); + addHighLevelShaderMaterialFromFiles(VertexShader, FragmentShader, "", "TransparentAlphaChannel", + scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentAlphaChannelCB, EMT_TRANSPARENT_ALPHA_CHANNEL, 0); // EMT_TRANSPARENT_ALPHA_CHANNEL_REF FragmentShader = OGLES2ShaderPath + "TransparentAlphaChannelRef.fsh"; - addHighLevelShaderMaterialFromFiles(VertexShader, "main", EVST_VS_2_0, FragmentShader, "main", EPST_PS_2_0, "", "main", - EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentAlphaChannelRefCB, EMT_SOLID, 0); + addHighLevelShaderMaterialFromFiles(VertexShader, FragmentShader, "", "TransparentAlphaChannelRef", + scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentAlphaChannelRefCB, EMT_SOLID, 0); // EMT_TRANSPARENT_VERTEX_ALPHA FragmentShader = OGLES2ShaderPath + "TransparentVertexAlpha.fsh"; - addHighLevelShaderMaterialFromFiles(VertexShader, "main", EVST_VS_2_0, FragmentShader, "main", EPST_PS_2_0, "", "main", - EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentVertexAlphaCB, EMT_TRANSPARENT_ALPHA_CHANNEL, 0); + addHighLevelShaderMaterialFromFiles(VertexShader, FragmentShader, "", "TransparentVertexAlpha", + scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, TransparentVertexAlphaCB, EMT_TRANSPARENT_ALPHA_CHANNEL, 0); // EMT_ONETEXTURE_BLEND FragmentShader = OGLES2ShaderPath + "OneTextureBlend.fsh"; - addHighLevelShaderMaterialFromFiles(VertexShader, "main", EVST_VS_2_0, FragmentShader, "main", EPST_PS_2_0, "", "main", - EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, OneTextureBlendCB, EMT_ONETEXTURE_BLEND, 0); + addHighLevelShaderMaterialFromFiles(VertexShader, FragmentShader, "", "OneTextureBlend", + scene::EPT_TRIANGLES, scene::EPT_TRIANGLE_STRIP, 0, OneTextureBlendCB, EMT_ONETEXTURE_BLEND, 0); // Drop callbacks. @@ -477,41 +484,18 @@ void COpenGL3DriverBase::setTransform(E_TRANSFORMATION_STATE state, const core:: Transformation3DChanged = true; } -bool COpenGL3DriverBase::updateHardwareBuffer(SHWBufferLink_opengl *HWBuffer, +bool COpenGL3DriverBase::uploadHardwareBuffer(OpenGLVBO &vbo, const void *buffer, size_t bufferSize, scene::E_HARDWARE_MAPPING hint) { - assert(HWBuffer); - accountHWBufferUpload(bufferSize); - // get or create buffer - bool newBuffer = false; - if (!HWBuffer->vbo_ID) { - GL.GenBuffers(1, &HWBuffer->vbo_ID); - if (!HWBuffer->vbo_ID) - return false; - newBuffer = true; - } else if (HWBuffer->vbo_Size < bufferSize) { - newBuffer = true; - } + GLenum usage = GL_STATIC_DRAW; + if (hint == scene::EHM_STREAM) + usage = GL_STREAM_DRAW; + else if (hint == scene::EHM_DYNAMIC) + usage = GL_DYNAMIC_DRAW; - GL.BindBuffer(GL_ARRAY_BUFFER, HWBuffer->vbo_ID); - - // copy data to graphics card - if (!newBuffer) - GL.BufferSubData(GL_ARRAY_BUFFER, 0, bufferSize, buffer); - else { - HWBuffer->vbo_Size = bufferSize; - - GLenum usage = GL_STATIC_DRAW; - if (hint == scene::EHM_STREAM) - usage = GL_STREAM_DRAW; - else if (hint == scene::EHM_DYNAMIC) - usage = GL_DYNAMIC_DRAW; - GL.BufferData(GL_ARRAY_BUFFER, bufferSize, buffer, usage); - } - - GL.BindBuffer(GL_ARRAY_BUFFER, 0); + vbo.upload(buffer, bufferSize, 0, usage); return (!TEST_GL_ERROR(this)); } @@ -528,7 +512,8 @@ bool COpenGL3DriverBase::updateVertexHardwareBuffer(SHWBufferLink_opengl *HWBuff const u32 vertexSize = getVertexPitchFromType(vb->getType()); const size_t bufferSize = vertexSize * vb->getCount(); - return updateHardwareBuffer(HWBuffer, vb->getData(), bufferSize, vb->getHardwareMappingHint()); + return uploadHardwareBuffer(HWBuffer->Vbo, vb->getData(), + bufferSize, vb->getHardwareMappingHint()); } bool COpenGL3DriverBase::updateIndexHardwareBuffer(SHWBufferLink_opengl *HWBuffer) @@ -554,7 +539,8 @@ bool COpenGL3DriverBase::updateIndexHardwareBuffer(SHWBufferLink_opengl *HWBuffe const size_t bufferSize = ib->getCount() * indexSize; - return updateHardwareBuffer(HWBuffer, ib->getData(), bufferSize, ib->getHardwareMappingHint()); + return uploadHardwareBuffer(HWBuffer->Vbo, ib->getData(), + bufferSize, ib->getHardwareMappingHint()); } bool COpenGL3DriverBase::updateHardwareBuffer(SHWBufferLink *HWBuffer) @@ -566,14 +552,14 @@ bool COpenGL3DriverBase::updateHardwareBuffer(SHWBufferLink *HWBuffer) if (b->IsVertex) { assert(b->VertexBuffer); - if (b->ChangedID != b->VertexBuffer->getChangedID() || !b->vbo_ID) { + if (b->ChangedID != b->VertexBuffer->getChangedID() || !b->Vbo.exists()) { if (!updateVertexHardwareBuffer(b)) return false; b->ChangedID = b->VertexBuffer->getChangedID(); } } else { assert(b->IndexBuffer); - if (b->ChangedID != b->IndexBuffer->getChangedID() || !b->vbo_ID) { + if (b->ChangedID != b->IndexBuffer->getChangedID() || !b->Vbo.exists()) { if (!updateIndexHardwareBuffer(b)) return false; b->ChangedID = b->IndexBuffer->getChangedID(); @@ -587,10 +573,8 @@ COpenGL3DriverBase::SHWBufferLink *COpenGL3DriverBase::createHardwareBuffer(cons if (!vb || vb->getHardwareMappingHint() == scene::EHM_NEVER) return 0; - SHWBufferLink_opengl *HWBuffer = new SHWBufferLink_opengl(vb); - - // add to map - HWBuffer->listPosition = HWBufferList.insert(HWBufferList.end(), HWBuffer); + auto *HWBuffer = new SHWBufferLink_opengl(vb); + registerHardwareBuffer(HWBuffer); if (!updateVertexHardwareBuffer(HWBuffer)) { deleteHardwareBuffer(HWBuffer); @@ -605,10 +589,8 @@ COpenGL3DriverBase::SHWBufferLink *COpenGL3DriverBase::createHardwareBuffer(cons if (!ib || ib->getHardwareMappingHint() == scene::EHM_NEVER) return 0; - SHWBufferLink_opengl *HWBuffer = new SHWBufferLink_opengl(ib); - - // add to map - HWBuffer->listPosition = HWBufferList.insert(HWBufferList.end(), HWBuffer); + auto *HWBuffer = new SHWBufferLink_opengl(ib); + registerHardwareBuffer(HWBuffer); if (!updateIndexHardwareBuffer(HWBuffer)) { deleteHardwareBuffer(HWBuffer); @@ -624,10 +606,7 @@ void COpenGL3DriverBase::deleteHardwareBuffer(SHWBufferLink *HWBuffer) return; auto *b = static_cast(HWBuffer); - if (b->vbo_ID) { - GL.DeleteBuffers(1, &b->vbo_ID); - b->vbo_ID = 0; - } + b->Vbo.destroy(); CNullDriver::deleteHardwareBuffer(HWBuffer); } @@ -647,14 +626,14 @@ void COpenGL3DriverBase::drawBuffers(const scene::IVertexBuffer *vb, const void *vertices = vb->getData(); if (hwvert) { assert(hwvert->IsVertex); - GL.BindBuffer(GL_ARRAY_BUFFER, hwvert->vbo_ID); + GL.BindBuffer(GL_ARRAY_BUFFER, hwvert->Vbo.getName()); vertices = nullptr; } const void *indexList = ib->getData(); if (hwidx) { assert(!hwidx->IsVertex); - GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, hwidx->vbo_ID); + GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, hwidx->Vbo.getName()); indexList = nullptr; } @@ -675,6 +654,29 @@ IRenderTarget *COpenGL3DriverBase::addRenderTarget() return renderTarget; } +void COpenGL3DriverBase::blitRenderTarget(IRenderTarget *from, IRenderTarget *to) +{ + if (Version.Spec == OpenGLSpec::ES && Version.Major < 3) { + os::Printer::log("glBlitFramebuffer not supported by OpenGL ES < 3.0", ELL_ERROR); + return; + } + + GLuint prev_fbo_id; + CacheHandler->getFBO(prev_fbo_id); + + COpenGL3RenderTarget *src = static_cast(from); + COpenGL3RenderTarget *dst = static_cast(to); + GL.BindFramebuffer(GL.READ_FRAMEBUFFER, src->getBufferID()); + GL.BindFramebuffer(GL.DRAW_FRAMEBUFFER, dst->getBufferID()); + GL.BlitFramebuffer( + 0, 0, src->getSize().Width, src->getSize().Height, + 0, 0, dst->getSize().Width, dst->getSize().Height, + GL.COLOR_BUFFER_BIT | GL.DEPTH_BUFFER_BIT | GL.STENCIL_BUFFER_BIT, GL.NEAREST); + + // This resets both read and draw framebuffer. Note that we bypass CacheHandler here. + GL.BindFramebuffer(GL.FRAMEBUFFER, prev_fbo_id); +} + //! draws a vertex primitive list void COpenGL3DriverBase::drawVertexPrimitiveList(const void *vertices, u32 vertexCount, const void *indexList, u32 primitiveCount, @@ -690,59 +692,32 @@ void COpenGL3DriverBase::drawVertexPrimitiveList(const void *vertices, u32 verte setRenderStates3DMode(); - auto &vTypeDesc = getVertexTypeDescription(vType); - beginDraw(vTypeDesc, reinterpret_cast(vertices)); - GLenum indexSize = 0; + drawGeneric(vertices, indexList, primitiveCount, vType, pType, iType); +} - switch (iType) { - case (EIT_16BIT): { - indexSize = GL_UNSIGNED_SHORT; - break; - } - case (EIT_32BIT): { -#ifdef GL_OES_element_index_uint -#ifndef GL_UNSIGNED_INT -#define GL_UNSIGNED_INT 0x1405 -#endif - if (FeatureAvailable[COGLESCoreExtensionHandler::IRR_GL_OES_element_index_uint]) - indexSize = GL_UNSIGNED_INT; - else -#endif - indexSize = GL_UNSIGNED_SHORT; - break; - } - } +//! draws a vertex primitive list in 2d +void COpenGL3DriverBase::draw2DVertexPrimitiveList(const void *vertices, u32 vertexCount, + const void *indexList, u32 primitiveCount, + E_VERTEX_TYPE vType, scene::E_PRIMITIVE_TYPE pType, E_INDEX_TYPE iType) +{ + if (!primitiveCount || !vertexCount) + return; - switch (pType) { - case scene::EPT_POINTS: - case scene::EPT_POINT_SPRITES: - GL.DrawArrays(GL_POINTS, 0, primitiveCount); - break; - case scene::EPT_LINE_STRIP: - GL.DrawElements(GL_LINE_STRIP, primitiveCount + 1, indexSize, indexList); - break; - case scene::EPT_LINE_LOOP: - GL.DrawElements(GL_LINE_LOOP, primitiveCount, indexSize, indexList); - break; - case scene::EPT_LINES: - GL.DrawElements(GL_LINES, primitiveCount * 2, indexSize, indexList); - break; - case scene::EPT_TRIANGLE_STRIP: - GL.DrawElements(GL_TRIANGLE_STRIP, primitiveCount + 2, indexSize, indexList); - break; - case scene::EPT_TRIANGLE_FAN: - GL.DrawElements(GL_TRIANGLE_FAN, primitiveCount + 2, indexSize, indexList); - break; - case scene::EPT_TRIANGLES: - GL.DrawElements((LastMaterial.Wireframe) ? GL_LINES : (LastMaterial.PointCloud) ? GL_POINTS - : GL_TRIANGLES, - primitiveCount * 3, indexSize, indexList); - break; - default: - break; - } + if (!vertices) + return; - endDraw(vTypeDesc); + if (!checkPrimitiveCount(primitiveCount)) + return; + + CNullDriver::draw2DVertexPrimitiveList(vertices, vertexCount, indexList, primitiveCount, vType, pType, iType); + + setRenderStates2DMode( + Material.MaterialType == EMT_TRANSPARENT_VERTEX_ALPHA, + Material.getTexture(0), + Material.MaterialType == EMT_TRANSPARENT_ALPHA_CHANNEL + ); + + drawGeneric(vertices, indexList, primitiveCount, vType, pType, iType); } void COpenGL3DriverBase::draw2DImage(const video::ITexture *texture, const core::position2d &destPos, @@ -805,10 +780,10 @@ void COpenGL3DriverBase::draw2DImage(const video::ITexture *texture, const core: clipRect->getWidth(), clipRect->getHeight()); } - f32 left = (f32)destRect.UpperLeftCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 right = (f32)destRect.LowerRightCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 down = 2.f - (f32)destRect.LowerRightCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - f32 top = 2.f - (f32)destRect.UpperLeftCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; + f32 left = (f32)destRect.UpperLeftCorner.X; + f32 right = (f32)destRect.LowerRightCorner.X; + f32 down = (f32)destRect.LowerRightCorner.Y; + f32 top = (f32)destRect.UpperLeftCorner.Y; S3DVertex vertices[4]; vertices[0] = S3DVertex(left, top, 0, 0, 0, 1, useColor[0], tcoords.UpperLeftCorner.X, tcoords.UpperLeftCorner.Y); @@ -884,7 +859,7 @@ void COpenGL3DriverBase::draw2DImageBatch(const video::ITexture *texture, } const irr::u32 drawCount = core::min_(positions.size(), sourceRects.size()); - assert(6 * drawCount <= QuadIndexCount); // FIXME split the batch? or let it crash? + assert(6 * drawCount * sizeof(u16) <= QuadIndexVBO.getSize()); // FIXME split the batch? or let it crash? std::vector vtx; vtx.reserve(drawCount * 4); @@ -905,10 +880,10 @@ void COpenGL3DriverBase::draw2DImageBatch(const video::ITexture *texture, const core::rect poss(targetPos, sourceSize); - f32 left = (f32)poss.UpperLeftCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 right = (f32)poss.LowerRightCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 down = 2.f - (f32)poss.LowerRightCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - f32 top = 2.f - (f32)poss.UpperLeftCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; + f32 left = (f32)poss.UpperLeftCorner.X; + f32 right = (f32)poss.LowerRightCorner.X; + f32 down = (f32)poss.LowerRightCorner.Y; + f32 top = (f32)poss.UpperLeftCorner.Y; vtx.emplace_back(left, top, 0.0f, 0.0f, 0.0f, 0.0f, color, @@ -924,7 +899,7 @@ void COpenGL3DriverBase::draw2DImageBatch(const video::ITexture *texture, tcoords.UpperLeftCorner.X, tcoords.LowerRightCorner.Y); } - GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, QuadIndexBuffer); + GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, QuadIndexVBO.getName()); drawElements(GL_TRIANGLES, vt2DImage, vtx.data(), vtx.size(), 0, 6 * drawCount); GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); @@ -937,33 +912,7 @@ void COpenGL3DriverBase::draw2DRectangle(SColor color, const core::rect &position, const core::rect *clip) { - chooseMaterial2D(); - setMaterialTexture(0, 0); - - setRenderStates2DMode(color.getAlpha() < 255, false, false); - - core::rect pos = position; - - if (clip) - pos.clipAgainst(*clip); - - if (!pos.isValid()) - return; - - const core::dimension2d &renderTargetSize = getCurrentRenderTargetSize(); - - f32 left = (f32)pos.UpperLeftCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 right = (f32)pos.LowerRightCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 down = 2.f - (f32)pos.LowerRightCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - f32 top = 2.f - (f32)pos.UpperLeftCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - - S3DVertex vertices[4]; - vertices[0] = S3DVertex(left, top, 0, 0, 0, 1, color, 0, 0); - vertices[1] = S3DVertex(right, top, 0, 0, 0, 1, color, 0, 0); - vertices[2] = S3DVertex(right, down, 0, 0, 0, 1, color, 0, 0); - vertices[3] = S3DVertex(left, down, 0, 0, 0, 1, color, 0, 0); - - drawQuad(vtPrimitive, vertices); + draw2DRectangle(position, color, color, color, color, clip); } //! draw an 2d rectangle @@ -989,18 +938,16 @@ void COpenGL3DriverBase::draw2DRectangle(const core::rect &position, colorRightDown.getAlpha() < 255, false, false); - const core::dimension2d &renderTargetSize = getCurrentRenderTargetSize(); - - f32 left = (f32)pos.UpperLeftCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 right = (f32)pos.LowerRightCorner.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 down = 2.f - (f32)pos.LowerRightCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - f32 top = 2.f - (f32)pos.UpperLeftCorner.Y / (f32)renderTargetSize.Height * 2.f - 1.f; + f32 left = (f32)pos.UpperLeftCorner.X; + f32 right = (f32)pos.LowerRightCorner.X; + f32 down = (f32)pos.LowerRightCorner.Y; + f32 top = (f32)pos.UpperLeftCorner.Y; S3DVertex vertices[4]; - vertices[0] = S3DVertex(left, top, 0, 0, 0, 1, colorLeftUp, 0, 0); - vertices[1] = S3DVertex(right, top, 0, 0, 0, 1, colorRightUp, 0, 0); + vertices[0] = S3DVertex(left, top, 0, 0, 0, 1, colorLeftUp, 0, 0); + vertices[1] = S3DVertex(right, top, 0, 0, 0, 1, colorRightUp, 0, 0); vertices[2] = S3DVertex(right, down, 0, 0, 0, 1, colorRightDown, 0, 0); - vertices[3] = S3DVertex(left, down, 0, 0, 0, 1, colorLeftDown, 0, 0); + vertices[3] = S3DVertex(left, down, 0, 0, 0, 1, colorLeftDown, 0, 0); drawQuad(vtPrimitive, vertices); } @@ -1015,12 +962,10 @@ void COpenGL3DriverBase::draw2DLine(const core::position2d &start, setRenderStates2DMode(color.getAlpha() < 255, false, false); - const core::dimension2d &renderTargetSize = getCurrentRenderTargetSize(); - - f32 startX = (f32)start.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 endX = (f32)end.X / (f32)renderTargetSize.Width * 2.f - 1.f; - f32 startY = 2.f - (f32)start.Y / (f32)renderTargetSize.Height * 2.f - 1.f; - f32 endY = 2.f - (f32)end.Y / (f32)renderTargetSize.Height * 2.f - 1.f; + f32 startX = (f32)start.X; + f32 endX = (f32)end.X; + f32 startY = (f32)start.Y; + f32 endY = (f32)end.Y; S3DVertex vertices[2]; vertices[0] = S3DVertex(startX, startY, 0, 0, 0, 1, color, 0, 0); @@ -1049,9 +994,56 @@ void COpenGL3DriverBase::drawElements(GLenum primitiveType, const VertexType &ve endDraw(vertexType); } +void COpenGL3DriverBase::drawGeneric(const void *vertices, const void *indexList, + u32 primitiveCount, + E_VERTEX_TYPE vType, scene::E_PRIMITIVE_TYPE pType, E_INDEX_TYPE iType) +{ + auto &vTypeDesc = getVertexTypeDescription(vType); + beginDraw(vTypeDesc, reinterpret_cast(vertices)); + GLenum indexSize = 0; + + switch (iType) { + case EIT_16BIT: + indexSize = GL_UNSIGNED_SHORT; + break; + case EIT_32BIT: + indexSize = GL_UNSIGNED_INT; + break; + } + + switch (pType) { + case scene::EPT_POINTS: + case scene::EPT_POINT_SPRITES: + GL.DrawArrays(GL_POINTS, 0, primitiveCount); + break; + case scene::EPT_LINE_STRIP: + GL.DrawElements(GL_LINE_STRIP, primitiveCount + 1, indexSize, indexList); + break; + case scene::EPT_LINE_LOOP: + GL.DrawElements(GL_LINE_LOOP, primitiveCount, indexSize, indexList); + break; + case scene::EPT_LINES: + GL.DrawElements(GL_LINES, primitiveCount * 2, indexSize, indexList); + break; + case scene::EPT_TRIANGLE_STRIP: + GL.DrawElements(GL_TRIANGLE_STRIP, primitiveCount + 2, indexSize, indexList); + break; + case scene::EPT_TRIANGLE_FAN: + GL.DrawElements(GL_TRIANGLE_FAN, primitiveCount + 2, indexSize, indexList); + break; + case scene::EPT_TRIANGLES: + GL.DrawElements(GL_TRIANGLES, primitiveCount * 3, indexSize, indexList); + break; + default: + break; + } + + endDraw(vTypeDesc); +} + void COpenGL3DriverBase::beginDraw(const VertexType &vertexType, uintptr_t verticesBase) { - for (auto attr : vertexType) { + for (auto &attr : vertexType) { GL.EnableVertexAttribArray(attr.Index); switch (attr.mode) { case VertexAttribute::Mode::Regular: @@ -1060,7 +1052,7 @@ void COpenGL3DriverBase::beginDraw(const VertexType &vertexType, uintptr_t verti case VertexAttribute::Mode::Normalized: GL.VertexAttribPointer(attr.Index, attr.ComponentCount, attr.ComponentType, GL_TRUE, vertexType.VertexSize, reinterpret_cast(verticesBase + attr.Offset)); break; - case VertexAttribute::Mode::Integral: + case VertexAttribute::Mode::Integer: GL.VertexAttribIPointer(attr.Index, attr.ComponentCount, attr.ComponentType, vertexType.VertexSize, reinterpret_cast(verticesBase + attr.Offset)); break; } @@ -1069,7 +1061,7 @@ void COpenGL3DriverBase::beginDraw(const VertexType &vertexType, uintptr_t verti void COpenGL3DriverBase::endDraw(const VertexType &vertexType) { - for (auto attr : vertexType) + for (auto &attr : vertexType) GL.DisableVertexAttribArray(attr.Index); } @@ -1319,12 +1311,35 @@ void COpenGL3DriverBase::setBasicRenderStates(const SMaterial &material, const S getGLBlend(srcAlphaFact), getGLBlend(dstAlphaFact)); } - // TODO: Polygon Offset. Not sure if it was left out deliberately or if it won't work with this driver. + // fillmode + if (Version.Spec != OpenGLSpec::ES && // not supported in gles + (resetAllRenderStates || + lastmaterial.Wireframe != material.Wireframe || + lastmaterial.PointCloud != material.PointCloud)) { + GL.PolygonMode(GL_FRONT_AND_BACK, + material.Wireframe ? GL_LINE : + material.PointCloud ? GL_POINT : + GL_FILL); + } + + // Polygon Offset + if (resetAllRenderStates || + lastmaterial.PolygonOffsetDepthBias != material.PolygonOffsetDepthBias || + lastmaterial.PolygonOffsetSlopeScale != material.PolygonOffsetSlopeScale) { + if (material.PolygonOffsetDepthBias || material.PolygonOffsetSlopeScale) { + GL.Enable(GL.POLYGON_OFFSET_FILL); + GL.PolygonOffset(material.PolygonOffsetSlopeScale, material.PolygonOffsetDepthBias); + } else { + GL.Disable(GL.POLYGON_OFFSET_FILL); + } + } if (resetAllRenderStates || lastmaterial.Thickness != material.Thickness) GL.LineWidth(core::clamp(static_cast(material.Thickness), DimAliasedLine[0], DimAliasedLine[1])); // Anti aliasing + // Deal with MSAA even if it's not enabled in the OpenGL context, we might be + // rendering to an FBO with multisampling. if (resetAllRenderStates || lastmaterial.AntiAliasing != material.AntiAliasing) { if (material.AntiAliasing & EAAM_ALPHA_TO_COVERAGE) GL.Enable(GL_SAMPLE_ALPHA_TO_COVERAGE); @@ -1351,60 +1366,74 @@ void COpenGL3DriverBase::setTextureRenderStates(const SMaterial &material, bool CacheHandler->setActiveTexture(GL_TEXTURE0 + i); - if (resetAllRenderstates) - tmpTexture->getStatesCache().IsCached = false; + const auto &layer = material.TextureLayers[i]; + auto &states = tmpTexture->getStatesCache(); - if (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].MagFilter != tmpTexture->getStatesCache().MagFilter) { - E_TEXTURE_MAG_FILTER magFilter = material.TextureLayers[i].MagFilter; + if (resetAllRenderstates) + states.IsCached = false; + + if (!states.IsCached || layer.MagFilter != states.MagFilter) { + E_TEXTURE_MAG_FILTER magFilter = layer.MagFilter; GL.TexParameteri(tmpTextureType, GL_TEXTURE_MAG_FILTER, magFilter == ETMAGF_NEAREST ? GL_NEAREST : (assert(magFilter == ETMAGF_LINEAR), GL_LINEAR)); - tmpTexture->getStatesCache().MagFilter = magFilter; + states.MagFilter = magFilter; } if (material.UseMipMaps && tmpTexture->hasMipMaps()) { - if (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].MinFilter != tmpTexture->getStatesCache().MinFilter || - !tmpTexture->getStatesCache().MipMapStatus) { - E_TEXTURE_MIN_FILTER minFilter = material.TextureLayers[i].MinFilter; + if (!states.IsCached || layer.MinFilter != states.MinFilter || + !states.MipMapStatus) { + E_TEXTURE_MIN_FILTER minFilter = layer.MinFilter; GL.TexParameteri(tmpTextureType, GL_TEXTURE_MIN_FILTER, minFilter == ETMINF_NEAREST_MIPMAP_NEAREST ? GL_NEAREST_MIPMAP_NEAREST : minFilter == ETMINF_LINEAR_MIPMAP_NEAREST ? GL_LINEAR_MIPMAP_NEAREST : minFilter == ETMINF_NEAREST_MIPMAP_LINEAR ? GL_NEAREST_MIPMAP_LINEAR : (assert(minFilter == ETMINF_LINEAR_MIPMAP_LINEAR), GL_LINEAR_MIPMAP_LINEAR)); - tmpTexture->getStatesCache().MinFilter = minFilter; - tmpTexture->getStatesCache().MipMapStatus = true; + states.MinFilter = minFilter; + states.MipMapStatus = true; } } else { - if (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].MinFilter != tmpTexture->getStatesCache().MinFilter || - tmpTexture->getStatesCache().MipMapStatus) { - E_TEXTURE_MIN_FILTER minFilter = material.TextureLayers[i].MinFilter; + if (!states.IsCached || layer.MinFilter != states.MinFilter || + states.MipMapStatus) { + E_TEXTURE_MIN_FILTER minFilter = layer.MinFilter; GL.TexParameteri(tmpTextureType, GL_TEXTURE_MIN_FILTER, (minFilter == ETMINF_NEAREST_MIPMAP_NEAREST || minFilter == ETMINF_NEAREST_MIPMAP_LINEAR) ? GL_NEAREST : (assert(minFilter == ETMINF_LINEAR_MIPMAP_NEAREST || minFilter == ETMINF_LINEAR_MIPMAP_LINEAR), GL_LINEAR)); - tmpTexture->getStatesCache().MinFilter = minFilter; - tmpTexture->getStatesCache().MipMapStatus = false; + states.MinFilter = minFilter; + states.MipMapStatus = false; } } + if (LODBiasSupported && + (!states.IsCached || layer.LODBias != states.LODBias)) { + if (layer.LODBias) { + const float tmp = core::clamp(layer.LODBias * 0.125f, -MaxTextureLODBias, MaxTextureLODBias); + GL.TexParameterf(tmpTextureType, GL.TEXTURE_LOD_BIAS, tmp); + } else + GL.TexParameterf(tmpTextureType, GL.TEXTURE_LOD_BIAS, 0.f); + + states.LODBias = layer.LODBias; + } + if (AnisotropicFilterSupported && - (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].AnisotropicFilter != tmpTexture->getStatesCache().AnisotropicFilter)) { + (!states.IsCached || layer.AnisotropicFilter != states.AnisotropicFilter)) { GL.TexParameteri(tmpTextureType, GL.TEXTURE_MAX_ANISOTROPY, - material.TextureLayers[i].AnisotropicFilter > 1 ? core::min_(MaxAnisotropy, material.TextureLayers[i].AnisotropicFilter) : 1); + layer.AnisotropicFilter > 1 ? core::min_(MaxAnisotropy, layer.AnisotropicFilter) : 1); - tmpTexture->getStatesCache().AnisotropicFilter = material.TextureLayers[i].AnisotropicFilter; + states.AnisotropicFilter = layer.AnisotropicFilter; } - if (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].TextureWrapU != tmpTexture->getStatesCache().WrapU) { - GL.TexParameteri(tmpTextureType, GL_TEXTURE_WRAP_S, getTextureWrapMode(material.TextureLayers[i].TextureWrapU)); - tmpTexture->getStatesCache().WrapU = material.TextureLayers[i].TextureWrapU; + if (!states.IsCached || layer.TextureWrapU != states.WrapU) { + GL.TexParameteri(tmpTextureType, GL_TEXTURE_WRAP_S, getTextureWrapMode(layer.TextureWrapU)); + states.WrapU = layer.TextureWrapU; } - if (!tmpTexture->getStatesCache().IsCached || material.TextureLayers[i].TextureWrapV != tmpTexture->getStatesCache().WrapV) { - GL.TexParameteri(tmpTextureType, GL_TEXTURE_WRAP_T, getTextureWrapMode(material.TextureLayers[i].TextureWrapV)); - tmpTexture->getStatesCache().WrapV = material.TextureLayers[i].TextureWrapV; + if (!states.IsCached || layer.TextureWrapV != states.WrapV) { + GL.TexParameteri(tmpTextureType, GL_TEXTURE_WRAP_T, getTextureWrapMode(layer.TextureWrapV)); + states.WrapV = layer.TextureWrapV; } - tmpTexture->getStatesCache().IsCached = true; + states.IsCached = true; } } @@ -1599,14 +1628,9 @@ bool COpenGL3DriverBase::setPixelShaderConstant(s32 index, const u32 *ints, int //! Adds a new material renderer to the VideoDriver, using GLSL to render geometry. s32 COpenGL3DriverBase::addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName, - E_VERTEX_SHADER_TYPE vsCompileTarget, const c8 *pixelShaderProgram, - const c8 *pixelShaderEntryPointName, - E_PIXEL_SHADER_TYPE psCompileTarget, const c8 *geometryShaderProgram, - const c8 *geometryShaderEntryPointName, - E_GEOMETRY_SHADER_TYPE gsCompileTarget, + const c8 *shaderName, scene::E_PRIMITIVE_TYPE inType, scene::E_PRIMITIVE_TYPE outType, u32 verticesOut, @@ -1617,7 +1641,7 @@ s32 COpenGL3DriverBase::addHighLevelShaderMaterial( s32 nr = -1; COpenGL3MaterialRenderer *r = new COpenGL3MaterialRenderer( this, nr, vertexShaderProgram, - pixelShaderProgram, + pixelShaderProgram, shaderName, callback, baseMaterial, userData); r->drop(); @@ -1639,12 +1663,18 @@ IGPUProgrammingServices *COpenGL3DriverBase::getGPUProgrammingServices() ITexture *COpenGL3DriverBase::addRenderTargetTexture(const core::dimension2d &size, const io::path &name, const ECOLOR_FORMAT format) +{ + return addRenderTargetTextureMs(size, 0, name, format); +} + +ITexture *COpenGL3DriverBase::addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name, const ECOLOR_FORMAT format) { // disable mip-mapping bool generateMipLevels = getTextureCreationFlag(ETCF_CREATE_MIP_MAPS); setTextureCreationFlag(ETCF_CREATE_MIP_MAPS, false); - COpenGL3Texture *renderTargetTexture = new COpenGL3Texture(name, size, ETT_2D, format, this); + COpenGL3Texture *renderTargetTexture = new COpenGL3Texture(name, size, msaa > 0 ? ETT_2D_MS : ETT_2D, format, this, msaa); addTexture(renderTargetTexture); renderTargetTexture->drop(); @@ -1683,7 +1713,7 @@ ITexture *COpenGL3DriverBase::addRenderTargetTextureCubemap(const irr::u32 sideL //! Returns the maximum amount of primitives u32 COpenGL3DriverBase::getMaximalPrimitiveCount() const { - return 65535; + return Version.Spec == OpenGLSpec::ES ? 65535 : 0x7fffffff; } bool COpenGL3DriverBase::setRenderTargetEx(IRenderTarget *target, u16 clearFlag, SColor clearColor, f32 clearDepth, u8 clearStencil) diff --git a/irr/src/OpenGL/Driver.h b/irr/src/OpenGL/Driver.h index 3104b164d..6154e3fa9 100644 --- a/irr/src/OpenGL/Driver.h +++ b/irr/src/OpenGL/Driver.h @@ -8,6 +8,7 @@ #include "SIrrCreationParameters.h" #include "Common.h" +#include "VBO.h" #include "CNullDriver.h" #include "IMaterialRendererServices.h" #include "EDriverFeatures.h" @@ -49,8 +50,7 @@ public: SHWBufferLink_opengl(const scene::IVertexBuffer *vb) : SHWBufferLink(vb) {} SHWBufferLink_opengl(const scene::IIndexBuffer *ib) : SHWBufferLink(ib) {} - GLuint vbo_ID = 0; - u32 vbo_Size = 0; + OpenGLVBO Vbo; }; bool updateVertexHardwareBuffer(SHWBufferLink_opengl *HWBuffer); @@ -74,11 +74,18 @@ public: IRenderTarget *addRenderTarget() override; + void blitRenderTarget(IRenderTarget *from, IRenderTarget *to) override; + //! draws a vertex primitive list virtual void drawVertexPrimitiveList(const void *vertices, u32 vertexCount, const void *indexList, u32 primitiveCount, E_VERTEX_TYPE vType, scene::E_PRIMITIVE_TYPE pType, E_INDEX_TYPE iType) override; + //! draws a vertex primitive list in 2d + virtual void draw2DVertexPrimitiveList(const void *vertices, u32 vertexCount, + const void *indexList, u32 primitiveCount, + E_VERTEX_TYPE vType, scene::E_PRIMITIVE_TYPE pType, E_INDEX_TYPE iType) override; + //! queries the features of the driver, returns true if feature is available bool queryFeature(E_VIDEO_DRIVER_FEATURE feature) const override { @@ -182,18 +189,13 @@ public: //! Adds a new material renderer to the VideoDriver virtual s32 addHighLevelShaderMaterial( const c8 *vertexShaderProgram, - const c8 *vertexShaderEntryPointName = 0, - E_VERTEX_SHADER_TYPE vsCompileTarget = EVST_VS_1_1, - const c8 *pixelShaderProgram = 0, - const c8 *pixelShaderEntryPointName = 0, - E_PIXEL_SHADER_TYPE psCompileTarget = EPST_PS_1_1, - const c8 *geometryShaderProgram = 0, - const c8 *geometryShaderEntryPointName = "main", - E_GEOMETRY_SHADER_TYPE gsCompileTarget = EGST_GS_4_0, + const c8 *pixelShaderProgram, + const c8 *geometryShaderProgram = nullptr, + const c8 *shaderName = nullptr, scene::E_PRIMITIVE_TYPE inType = scene::EPT_TRIANGLES, scene::E_PRIMITIVE_TYPE outType = scene::EPT_TRIANGLE_STRIP, u32 verticesOut = 0, - IShaderConstantSetCallBack *callback = 0, + IShaderConstantSetCallBack *callback = nullptr, E_MATERIAL_TYPE baseMaterial = video::EMT_SOLID, s32 userData = 0) override; @@ -209,6 +211,9 @@ public: virtual ITexture *addRenderTargetTexture(const core::dimension2d &size, const io::path &name, const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + virtual ITexture *addRenderTargetTextureMs(const core::dimension2d &size, u8 msaa, + const io::path &name, const ECOLOR_FORMAT format = ECF_UNKNOWN) override; + //! Creates a render target texture for a cubemap ITexture *addRenderTargetTextureCubemap(const irr::u32 sideLen, const io::path &name, const ECOLOR_FORMAT format) override; @@ -290,7 +295,7 @@ protected: LockRenderStateMode = false; } - bool updateHardwareBuffer(SHWBufferLink_opengl *b, const void *buffer, size_t bufferSize, scene::E_HARDWARE_MAPPING hint); + bool uploadHardwareBuffer(OpenGLVBO &vbo, const void *buffer, size_t bufferSize, scene::E_HARDWARE_MAPPING hint); void createMaterialRenderers(); @@ -306,6 +311,9 @@ protected: void drawElements(GLenum primitiveType, const VertexType &vertexType, const void *vertices, int vertexCount, const u16 *indices, int indexCount); void drawElements(GLenum primitiveType, const VertexType &vertexType, uintptr_t vertices, uintptr_t indices, int indexCount); + void drawGeneric(const void *vertices, const void *indexList, u32 primitiveCount, + E_VERTEX_TYPE vType, scene::E_PRIMITIVE_TYPE pType, E_INDEX_TYPE iType); + void beginDraw(const VertexType &vertexType, uintptr_t verticesBase); void endDraw(const VertexType &vertexType); @@ -362,9 +370,8 @@ private: bool EnableErrorTest; - unsigned QuadIndexCount; - GLuint QuadIndexBuffer = 0; - void initQuadsIndices(int max_vertex_count = 65536); + OpenGLVBO QuadIndexVBO; + void initQuadsIndices(u32 max_vertex_count = 65536); void debugCb(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message); static void APIENTRY debugCb(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam); diff --git a/irr/src/OpenGL/ExtensionHandler.h b/irr/src/OpenGL/ExtensionHandler.h index 8f76c0eea..209fd415b 100644 --- a/irr/src/OpenGL/ExtensionHandler.h +++ b/irr/src/OpenGL/ExtensionHandler.h @@ -74,6 +74,8 @@ public: return false; case EVDF_STENCIL_BUFFER: return StencilBuffer; + case EVDF_TEXTURE_MULTISAMPLE: + return TextureMultisampleSupported; default: return false; }; @@ -159,8 +161,23 @@ public: GL.BlendEquation(mode); } + inline void irrGlObjectLabel(GLenum identifier, GLuint name, const char *label) + { + if (KHRDebugSupported) { + u32 len = strlen(label); + // Since our texture strings can get quite long we also truncate + // to a hardcoded limit of 82 + len = std::min(len, std::min(MaxLabelLength, 82U)); + GL.ObjectLabel(identifier, name, len, label); + } + } + + bool LODBiasSupported = false; bool AnisotropicFilterSupported = false; bool BlendMinMaxSupported = false; + bool TextureMultisampleSupported = false; + bool KHRDebugSupported = false; + u32 MaxLabelLength = 0; }; } diff --git a/irr/src/OpenGL/MaterialRenderer.cpp b/irr/src/OpenGL/MaterialRenderer.cpp index 3c32ba318..269f28ae9 100644 --- a/irr/src/OpenGL/MaterialRenderer.cpp +++ b/irr/src/OpenGL/MaterialRenderer.cpp @@ -24,16 +24,13 @@ COpenGL3MaterialRenderer::COpenGL3MaterialRenderer(COpenGL3DriverBase *driver, s32 &outMaterialTypeNr, const c8 *vertexShaderProgram, const c8 *pixelShaderProgram, + const c8 *debugName, IShaderConstantSetCallBack *callback, E_MATERIAL_TYPE baseMaterial, s32 userData) : Driver(driver), CallBack(callback), Alpha(false), Blending(false), Program(0), UserData(userData) { -#ifdef _DEBUG - setDebugName("MaterialRenderer"); -#endif - switch (baseMaterial) { case EMT_TRANSPARENT_VERTEX_ALPHA: case EMT_TRANSPARENT_ALPHA_CHANNEL: @@ -49,7 +46,7 @@ COpenGL3MaterialRenderer::COpenGL3MaterialRenderer(COpenGL3DriverBase *driver, if (CallBack) CallBack->grab(); - init(outMaterialTypeNr, vertexShaderProgram, pixelShaderProgram); + init(outMaterialTypeNr, vertexShaderProgram, pixelShaderProgram, debugName); } COpenGL3MaterialRenderer::COpenGL3MaterialRenderer(COpenGL3DriverBase *driver, @@ -102,6 +99,7 @@ GLuint COpenGL3MaterialRenderer::getProgram() const void COpenGL3MaterialRenderer::init(s32 &outMaterialTypeNr, const c8 *vertexShaderProgram, const c8 *pixelShaderProgram, + const c8 *debugName, bool addMaterial) { outMaterialTypeNr = -1; @@ -125,6 +123,9 @@ void COpenGL3MaterialRenderer::init(s32 &outMaterialTypeNr, if (!linkProgram()) return; + if (debugName) + Driver->irrGlObjectLabel(GL_PROGRAM, Program, debugName); + if (addMaterial) outMaterialTypeNr = Driver->addMaterialRenderer(this); } @@ -411,7 +412,7 @@ bool COpenGL3MaterialRenderer::setPixelShaderConstant(s32 index, const s32 *ints bool COpenGL3MaterialRenderer::setPixelShaderConstant(s32 index, const u32 *ints, int count) { - os::Printer::log("Unsigned int support needs at least GLES 3.0", ELL_WARNING); + os::Printer::log("Unsigned int support is unimplemented", ELL_WARNING); return false; } diff --git a/irr/src/OpenGL/MaterialRenderer.h b/irr/src/OpenGL/MaterialRenderer.h index fca71478a..0916f1ad5 100644 --- a/irr/src/OpenGL/MaterialRenderer.h +++ b/irr/src/OpenGL/MaterialRenderer.h @@ -28,6 +28,7 @@ public: s32 &outMaterialTypeNr, const c8 *vertexShaderProgram = 0, const c8 *pixelShaderProgram = 0, + const c8 *debugName = nullptr, IShaderConstantSetCallBack *callback = 0, E_MATERIAL_TYPE baseMaterial = EMT_SOLID, s32 userData = 0); @@ -66,7 +67,9 @@ protected: E_MATERIAL_TYPE baseMaterial = EMT_SOLID, s32 userData = 0); - void init(s32 &outMaterialTypeNr, const c8 *vertexShaderProgram, const c8 *pixelShaderProgram, bool addMaterial = true); + void init(s32 &outMaterialTypeNr, const c8 *vertexShaderProgram, + const c8 *pixelShaderProgram, const c8 *debugName = nullptr, + bool addMaterial = true); bool createShader(GLenum shaderType, const char *shader); bool linkProgram(); diff --git a/irr/src/OpenGL/Renderer2D.cpp b/irr/src/OpenGL/Renderer2D.cpp index b625feda4..ec53cc9f9 100644 --- a/irr/src/OpenGL/Renderer2D.cpp +++ b/irr/src/OpenGL/Renderer2D.cpp @@ -22,13 +22,9 @@ COpenGL3Renderer2D::COpenGL3Renderer2D(const c8 *vertexShaderProgram, const c8 * COpenGL3MaterialRenderer(driver, 0, EMT_SOLID), WithTexture(withTexture) { -#ifdef _DEBUG - setDebugName("Renderer2D"); -#endif - int Temp = 0; - - init(Temp, vertexShaderProgram, pixelShaderProgram, false); + init(Temp, vertexShaderProgram, pixelShaderProgram, + withTexture ? "2DTexture" : "2DNoTexture", false); COpenGL3CacheHandler *cacheHandler = Driver->getCacheHandler(); @@ -36,6 +32,7 @@ COpenGL3Renderer2D::COpenGL3Renderer2D(const c8 *vertexShaderProgram, const c8 * // These states don't change later. + ProjectionID = getPixelShaderConstantID("uProjection"); ThicknessID = getPixelShaderConstantID("uThickness"); if (WithTexture) { TextureUsageID = getPixelShaderConstantID("uTextureUsage"); @@ -66,6 +63,17 @@ void COpenGL3Renderer2D::OnSetMaterial(const video::SMaterial &material, f32 Thickness = (material.Thickness > 0.f) ? material.Thickness : 1.f; setPixelShaderConstant(ThicknessID, &Thickness, 1); + { + // Update projection matrix + const core::dimension2d renderTargetSize = Driver->getCurrentRenderTargetSize(); + core::matrix4 proj; + float xInv2 = 2.0f / renderTargetSize.Width; + float yInv2 = 2.0f / renderTargetSize.Height; + proj.setScale({ xInv2, -yInv2, 0.0f }); + proj.setTranslation({ -1.0f, 1.0f, 0.0f }); + setPixelShaderConstant(ProjectionID, proj.pointer(), 4 * 4); + } + if (WithTexture) { s32 TextureUsage = material.TextureLayers[0].Texture ? 1 : 0; setPixelShaderConstant(TextureUsageID, &TextureUsage, 1); diff --git a/irr/src/OpenGL/Renderer2D.h b/irr/src/OpenGL/Renderer2D.h index 6cfc7029d..8cc8fe6ca 100644 --- a/irr/src/OpenGL/Renderer2D.h +++ b/irr/src/OpenGL/Renderer2D.h @@ -24,6 +24,7 @@ public: protected: bool WithTexture; + s32 ProjectionID; s32 ThicknessID; s32 TextureUsageID; }; diff --git a/irr/src/OpenGL/VBO.cpp b/irr/src/OpenGL/VBO.cpp new file mode 100644 index 000000000..d374c7b02 --- /dev/null +++ b/irr/src/OpenGL/VBO.cpp @@ -0,0 +1,51 @@ +// Copyright (C) 2024 sfan5 +// This file is part of the "Irrlicht Engine". +// For conditions of distribution and use, see copyright notice in irrlicht.h + +#include "VBO.h" + +#include +#include + +namespace irr +{ +namespace video +{ + +void OpenGLVBO::upload(const void *data, size_t size, size_t offset, + GLenum usage, bool mustShrink) +{ + bool newBuffer = false; + assert(!(mustShrink && offset > 0)); // forbidden usage + if (!m_name) { + GL.GenBuffers(1, &m_name); + if (!m_name) + return; + newBuffer = true; + } else if (size > m_size || mustShrink) { + newBuffer = size != m_size; + } + + GL.BindBuffer(GL_ARRAY_BUFFER, m_name); + + if (newBuffer) { + assert(offset == 0); + GL.BufferData(GL_ARRAY_BUFFER, size, data, usage); + m_size = size; + } else { + GL.BufferSubData(GL_ARRAY_BUFFER, offset, size, data); + } + + GL.BindBuffer(GL_ARRAY_BUFFER, 0); +} + +void OpenGLVBO::destroy() +{ + if (m_name) + GL.DeleteBuffers(1, &m_name); + m_name = 0; + m_size = 0; +} + +} +} diff --git a/irr/src/OpenGL/VBO.h b/irr/src/OpenGL/VBO.h new file mode 100644 index 000000000..85c005df2 --- /dev/null +++ b/irr/src/OpenGL/VBO.h @@ -0,0 +1,57 @@ +// Copyright (C) 2024 sfan5 +// This file is part of the "Irrlicht Engine". +// For conditions of distribution and use, see copyright notice in irrlicht.h + +#pragma once + +#include "Common.h" +#include + +namespace irr +{ +namespace video +{ + +class OpenGLVBO +{ +public: + /// @note does not create on GL side + OpenGLVBO() = default; + /// @note does not free on GL side + ~OpenGLVBO() = default; + + /// @return "name" (ID) of this buffer in GL + GLuint getName() const { return m_name; } + /// @return does this refer to an existing GL buffer? + bool exists() const { return m_name != 0; } + + /// @return size of this buffer in bytes + size_t getSize() const { return m_size; } + + /** + * Upload buffer data to GL. + * + * Changing the size of the buffer is only possible when `offset == 0`. + * @param data data pointer + * @param size number of bytes + * @param offset offset to upload at + * @param usage usage pattern passed to GL (only if buffer is new) + * @param mustShrink force re-create of buffer if it became smaller + * @note modifies GL_ARRAY_BUFFER binding + */ + void upload(const void *data, size_t size, size_t offset, + GLenum usage, bool mustShrink = false); + + /** + * Free buffer in GL. + * @note modifies GL_ARRAY_BUFFER binding + */ + void destroy(); + +private: + GLuint m_name = 0; + size_t m_size = 0; +}; + +} +} diff --git a/irr/src/OpenGL3/Driver.cpp b/irr/src/OpenGL3/Driver.cpp index fd018b91d..7a62f4a12 100644 --- a/irr/src/OpenGL3/Driver.cpp +++ b/irr/src/OpenGL3/Driver.cpp @@ -4,6 +4,7 @@ #include "Driver.h" #include +#include #include "mt_opengl.h" namespace irr @@ -18,7 +19,7 @@ E_DRIVER_TYPE COpenGL3Driver::getDriverType() const OpenGLVersion COpenGL3Driver::getVersionFromOpenGL() const { - GLint major, minor, profile; + GLint major = 0, minor = 0, profile = 0; GL.GetIntegerv(GL_MAJOR_VERSION, &major); GL.GetIntegerv(GL_MINOR_VERSION, &minor); GL.GetIntegerv(GL_CONTEXT_PROFILE_MASK, &profile); @@ -34,13 +35,22 @@ OpenGLVersion COpenGL3Driver::getVersionFromOpenGL() const void COpenGL3Driver::initFeatures() { - assert(Version.Spec == OpenGLSpec::Compat); - assert(isVersionAtLeast(3, 2)); + if (Version.Spec != OpenGLSpec::Compat) { + auto msg = "OpenGL 3 driver requires Compatibility context"; + os::Printer::log(msg, ELL_ERROR); + throw std::runtime_error(msg); + } + if (!isVersionAtLeast(3, 2)) { + auto msg = "OpenGL 3 driver requires OpenGL >= 3.2"; + os::Printer::log(msg, ELL_ERROR); + throw std::runtime_error(msg); + } initExtensions(); TextureFormats[ECF_A1R5G5B5] = {GL_RGB5_A1, GL_BGRA, GL_UNSIGNED_SHORT_1_5_5_5_REV}; // WARNING: may not be renderable TextureFormats[ECF_R5G6B5] = {GL_RGB, GL_RGB, GL_UNSIGNED_SHORT_5_6_5}; // GL_RGB565 is an extension until 4.1 TextureFormats[ECF_R8G8B8] = {GL_RGB8, GL_RGB, GL_UNSIGNED_BYTE}; // WARNING: may not be renderable + // FIXME: shouldn't this simply be GL_UNSIGNED_BYTE? TextureFormats[ECF_A8R8G8B8] = {GL_RGBA8, GL_BGRA, GL_UNSIGNED_INT_8_8_8_8_REV}; TextureFormats[ECF_R16F] = {GL_R16F, GL_RED, GL_HALF_FLOAT}; TextureFormats[ECF_G16R16F] = {GL_RG16F, GL_RG, GL_HALF_FLOAT}; @@ -52,12 +62,19 @@ void COpenGL3Driver::initFeatures() TextureFormats[ECF_R8G8] = {GL_RG8, GL_RG, GL_UNSIGNED_BYTE}; TextureFormats[ECF_R16] = {GL_R16, GL_RED, GL_UNSIGNED_SHORT}; TextureFormats[ECF_R16G16] = {GL_RG16, GL_RG, GL_UNSIGNED_SHORT}; + TextureFormats[ECF_A2R10G10B10] = {GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV}; TextureFormats[ECF_D16] = {GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT, GL_UNSIGNED_SHORT}; + TextureFormats[ECF_D24] = {GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT}; TextureFormats[ECF_D32] = {GL_DEPTH_COMPONENT32, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT}; // WARNING: may not be renderable (?!) TextureFormats[ECF_D24S8] = {GL_DEPTH24_STENCIL8, GL_DEPTH_STENCIL, GL_UNSIGNED_INT_24_8}; AnisotropicFilterSupported = isVersionAtLeast(4, 6) || queryExtension("GL_ARB_texture_filter_anisotropic") || queryExtension("GL_EXT_texture_filter_anisotropic"); + LODBiasSupported = true; BlendMinMaxSupported = true; + TextureMultisampleSupported = true; + KHRDebugSupported = isVersionAtLeast(4, 6) || queryExtension("GL_KHR_debug"); + if (KHRDebugSupported) + MaxLabelLength = GetInteger(GL.MAX_LABEL_LENGTH); // COGLESCoreExtensionHandler::Feature static_assert(MATERIAL_MAX_TEXTURES <= 16, "Only up to 16 textures are guaranteed"); diff --git a/irr/src/OpenGL3/Driver.h b/irr/src/OpenGL3/Driver.h index f4934051e..e11c11a42 100644 --- a/irr/src/OpenGL3/Driver.h +++ b/irr/src/OpenGL3/Driver.h @@ -13,7 +13,7 @@ namespace video /// OpenGL 3+ driver /// /// For OpenGL 3.2 and higher. Compatibility profile is required currently. -class COpenGL3Driver : public COpenGL3DriverBase +class COpenGL3Driver final : public COpenGL3DriverBase { friend IVideoDriver *createOpenGL3Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); diff --git a/irr/src/OpenGLES2/Driver.cpp b/irr/src/OpenGLES2/Driver.cpp index 9a99601fd..6b234842a 100644 --- a/irr/src/OpenGLES2/Driver.cpp +++ b/irr/src/OpenGLES2/Driver.cpp @@ -3,8 +3,10 @@ // For conditions of distribution and use, see copyright notice in Irrlicht.h #include "Driver.h" +#include #include -#include +#include "mt_opengl.h" +#include "CColorConverter.h" namespace irr { @@ -19,7 +21,7 @@ E_DRIVER_TYPE COpenGLES2Driver::getDriverType() const OpenGLVersion COpenGLES2Driver::getVersionFromOpenGL() const { auto version_string = reinterpret_cast(GL.GetString(GL_VERSION)); - int major, minor; + int major = 0, minor = 0; if (sscanf(version_string, "OpenGL ES %d.%d", &major, &minor) != 2) { os::Printer::log("Failed to parse OpenGL ES version string", version_string, ELL_ERROR); return {OpenGLSpec::ES, 0, 0, 0}; @@ -29,12 +31,18 @@ OpenGLVersion COpenGLES2Driver::getVersionFromOpenGL() const void COpenGLES2Driver::initFeatures() { - assert(Version.Spec == OpenGLSpec::ES); - assert(Version.Major >= 2); + if (Version.Spec != OpenGLSpec::ES) { + auto msg = "Context isn't OpenGL ES"; + os::Printer::log(msg, ELL_ERROR); + throw std::runtime_error(msg); + } + if (!isVersionAtLeast(2, 0)) { + auto msg = "Open GL ES 2.0 is required"; + os::Printer::log(msg, ELL_ERROR); + throw std::runtime_error(msg); + } initExtensions(); - static const GLenum BGRA8_EXT = 0x93A1; - if (Version.Major >= 3) { // NOTE floating-point formats may not be suitable for render targets. TextureFormats[ECF_A1R5G5B5] = {GL_RGB5_A1, GL_RGBA, GL_UNSIGNED_SHORT_5_5_5_1, CColorConverter::convert_A1R5G5B5toR5G5B5A1}; @@ -49,13 +57,16 @@ void COpenGLES2Driver::initFeatures() TextureFormats[ECF_A32B32G32R32F] = {GL_RGBA32F, GL_RGBA, GL_FLOAT}; TextureFormats[ECF_R8] = {GL_R8, GL_RED, GL_UNSIGNED_BYTE}; TextureFormats[ECF_R8G8] = {GL_RG8, GL_RG, GL_UNSIGNED_BYTE}; + TextureFormats[ECF_A2R10G10B10] = {GL_RGB10_A2, GL_RGBA, GL_UNSIGNED_INT_2_10_10_10_REV}; TextureFormats[ECF_D16] = {GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT, GL_UNSIGNED_SHORT}; + TextureFormats[ECF_D24] = {GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT}; TextureFormats[ECF_D24S8] = {GL_DEPTH24_STENCIL8, GL_DEPTH_STENCIL, GL_UNSIGNED_INT_24_8}; - if (FeatureAvailable[IRR_GL_EXT_texture_format_BGRA8888]) + // NOTE a recent (2024) revision of EXT_texture_format_BGRA8888 also + // adds a sized format GL_BGRA8_EXT. We have a workaround in place to + // fix up the InternalFormat in case of render targets. + if (FeatureAvailable[IRR_GL_EXT_texture_format_BGRA8888] || FeatureAvailable[IRR_GL_APPLE_texture_format_BGRA8888]) TextureFormats[ECF_A8R8G8B8] = {GL_BGRA, GL_BGRA, GL_UNSIGNED_BYTE}; - else if (FeatureAvailable[IRR_GL_APPLE_texture_format_BGRA8888]) - TextureFormats[ECF_A8R8G8B8] = {BGRA8_EXT, GL_BGRA, GL_UNSIGNED_BYTE}; // OpenGL ES 3 doesn't include a GL_DEPTH_COMPONENT32, so still use // OES_depth_texture for 32-bit depth texture support. @@ -75,10 +86,8 @@ void COpenGLES2Driver::initFeatures() TextureFormats[ECF_R8G8B8] = {GL_RGB, GL_RGB, GL_UNSIGNED_BYTE}; TextureFormats[ECF_A8R8G8B8] = {GL_RGBA, GL_RGBA, GL_UNSIGNED_BYTE, CColorConverter::convert_A8R8G8B8toA8B8G8R8}; - if (FeatureAvailable[IRR_GL_EXT_texture_format_BGRA8888]) + if (FeatureAvailable[IRR_GL_EXT_texture_format_BGRA8888] || FeatureAvailable[IRR_GL_APPLE_texture_format_BGRA8888]) TextureFormats[ECF_A8R8G8B8] = {GL_BGRA, GL_BGRA, GL_UNSIGNED_BYTE}; - else if (FeatureAvailable[IRR_GL_APPLE_texture_format_BGRA8888]) - TextureFormats[ECF_A8R8G8B8] = {BGRA8_EXT, GL_BGRA, GL_UNSIGNED_BYTE}; if (FeatureAvailable[IRR_GL_OES_texture_half_float]) { TextureFormats[ECF_A16B16G16R16F] = {GL_RGBA, GL_RGBA, HALF_FLOAT_OES}; @@ -111,9 +120,13 @@ void COpenGLES2Driver::initFeatures() } const bool MRTSupported = Version.Major >= 3 || queryExtension("GL_EXT_draw_buffers"); + LODBiasSupported = queryExtension("GL_EXT_texture_lod_bias"); AnisotropicFilterSupported = queryExtension("GL_EXT_texture_filter_anisotropic"); BlendMinMaxSupported = (Version.Major >= 3) || FeatureAvailable[IRR_GL_EXT_blend_minmax]; - const bool TextureLODBiasSupported = queryExtension("GL_EXT_texture_lod_bias"); + TextureMultisampleSupported = isVersionAtLeast(3, 1); + KHRDebugSupported = queryExtension("GL_KHR_debug"); + if (KHRDebugSupported) + MaxLabelLength = GetInteger(GL.MAX_LABEL_LENGTH); // COGLESCoreExtensionHandler::Feature static_assert(MATERIAL_MAX_TEXTURES <= 8, "Only up to 8 textures are guaranteed"); @@ -131,7 +144,7 @@ void COpenGLES2Driver::initFeatures() if (Version.Major >= 3 || queryExtension("GL_EXT_draw_range_elements")) MaxIndices = GetInteger(GL_MAX_ELEMENTS_INDICES); MaxTextureSize = GetInteger(GL_MAX_TEXTURE_SIZE); - if (TextureLODBiasSupported) + if (LODBiasSupported) GL.GetFloatv(GL_MAX_TEXTURE_LOD_BIAS, &MaxTextureLODBias); GL.GetFloatv(GL_ALIASED_LINE_WIDTH_RANGE, DimAliasedLine); // NOTE: this is not in the OpenGL ES 2.0 spec... GL.GetFloatv(GL_ALIASED_POINT_SIZE_RANGE, DimAliasedPoint); diff --git a/irr/src/OpenGLES2/Driver.h b/irr/src/OpenGLES2/Driver.h index 003f6d454..78cad23fc 100644 --- a/irr/src/OpenGLES2/Driver.h +++ b/irr/src/OpenGLES2/Driver.h @@ -13,7 +13,7 @@ namespace video /// OpenGL ES 2+ driver /// /// For OpenGL ES 2.0 and higher. -class COpenGLES2Driver : public COpenGL3DriverBase +class COpenGLES2Driver final : public COpenGL3DriverBase { friend IVideoDriver *createOGLES2Driver(const SIrrlichtCreationParameters ¶ms, io::IFileSystem *io, IContextManager *contextManager); diff --git a/irr/src/SkinnedMesh.cpp b/irr/src/SkinnedMesh.cpp new file mode 100644 index 000000000..ebf84cec5 --- /dev/null +++ b/irr/src/SkinnedMesh.cpp @@ -0,0 +1,840 @@ +// Copyright (C) 2002-2012 Nikolaus Gebhardt +// This file is part of the "Irrlicht Engine". +// For conditions of distribution and use, see copyright notice in irrlicht.h + +#include "SkinnedMesh.h" +#include "IBoneSceneNode.h" +#include "CBoneSceneNode.h" +#include "IAnimatedMeshSceneNode.h" +#include "SSkinMeshBuffer.h" +#include "os.h" +#include + +namespace irr +{ +namespace scene +{ + +//! destructor +SkinnedMesh::~SkinnedMesh() +{ + for (auto *joint : AllJoints) + delete joint; + + for (auto *buffer : LocalBuffers) { + if (buffer) + buffer->drop(); + } +} + +f32 SkinnedMesh::getMaxFrameNumber() const +{ + return EndFrame; +} + +//! Gets the default animation speed of the animated mesh. +/** \return Amount of frames per second. If the amount is 0, it is a static, non animated mesh. */ +f32 SkinnedMesh::getAnimationSpeed() const +{ + return FramesPerSecond; +} + +//! Gets the frame count of the animated mesh. +/** \param fps Frames per second to play the animation with. If the amount is 0, it is not animated. +The actual speed is set in the scene node the mesh is instantiated in.*/ +void SkinnedMesh::setAnimationSpeed(f32 fps) +{ + FramesPerSecond = fps; +} + +//! returns the animated mesh based +IMesh *SkinnedMesh::getMesh(f32 frame) +{ + // animate(frame,startFrameLoop, endFrameLoop); + if (frame == -1) + return this; + + animateMesh(frame); + skinMesh(); + return this; +} + +//-------------------------------------------------------------------------- +// Keyframe Animation +//-------------------------------------------------------------------------- + +//! Animates joints based on frame input +void SkinnedMesh::animateMesh(f32 frame) +{ + if (!HasAnimation || LastAnimatedFrame == frame) + return; + + LastAnimatedFrame = frame; + SkinnedLastFrame = false; + + for (auto *joint : AllJoints) { + // The joints can be animated here with no input from their + // parents, but for setAnimationMode extra checks are needed + // to their parents + joint->keys.updateTransform(frame, + joint->Animatedposition, + joint->Animatedrotation, + joint->Animatedscale); + } + + // Note: + // LocalAnimatedMatrix needs to be built at some point, but this function may be called lots of times for + // one render (to play two animations at the same time) LocalAnimatedMatrix only needs to be built once. + // a call to buildAllLocalAnimatedMatrices is needed before skinning the mesh, and before the user gets the joints to move + + //---------------- + // Temp! + buildAllLocalAnimatedMatrices(); + //----------------- + + updateBoundingBox(); +} + +void SkinnedMesh::buildAllLocalAnimatedMatrices() +{ + for (auto *joint : AllJoints) { + // Could be faster: + + if (!joint->keys.empty()) { + joint->GlobalSkinningSpace = false; + + // IRR_TEST_BROKEN_QUATERNION_USE: TODO - switched to getMatrix_transposed instead of getMatrix for downward compatibility. + // Not tested so far if this was correct or wrong before quaternion fix! + // Note that using getMatrix_transposed inverts the rotation. + joint->Animatedrotation.getMatrix_transposed(joint->LocalAnimatedMatrix); + + // --- joint->LocalAnimatedMatrix *= joint->Animatedrotation.getMatrix() --- + f32 *m1 = joint->LocalAnimatedMatrix.pointer(); + core::vector3df &Pos = joint->Animatedposition; + m1[0] += Pos.X * m1[3]; + m1[1] += Pos.Y * m1[3]; + m1[2] += Pos.Z * m1[3]; + m1[4] += Pos.X * m1[7]; + m1[5] += Pos.Y * m1[7]; + m1[6] += Pos.Z * m1[7]; + m1[8] += Pos.X * m1[11]; + m1[9] += Pos.Y * m1[11]; + m1[10] += Pos.Z * m1[11]; + m1[12] += Pos.X * m1[15]; + m1[13] += Pos.Y * m1[15]; + m1[14] += Pos.Z * m1[15]; + // ----------------------------------- + + if (!joint->keys.scale.empty()) { + /* + core::matrix4 scaleMatrix; + scaleMatrix.setScale(joint->Animatedscale); + joint->LocalAnimatedMatrix *= scaleMatrix; + */ + + // -------- joint->LocalAnimatedMatrix *= scaleMatrix ----------------- + core::matrix4 &mat = joint->LocalAnimatedMatrix; + mat[0] *= joint->Animatedscale.X; + mat[1] *= joint->Animatedscale.X; + mat[2] *= joint->Animatedscale.X; + mat[3] *= joint->Animatedscale.X; + mat[4] *= joint->Animatedscale.Y; + mat[5] *= joint->Animatedscale.Y; + mat[6] *= joint->Animatedscale.Y; + mat[7] *= joint->Animatedscale.Y; + mat[8] *= joint->Animatedscale.Z; + mat[9] *= joint->Animatedscale.Z; + mat[10] *= joint->Animatedscale.Z; + mat[11] *= joint->Animatedscale.Z; + // ----------------------------------- + } + } else { + joint->LocalAnimatedMatrix = joint->LocalMatrix; + } + } + SkinnedLastFrame = false; +} + +void SkinnedMesh::buildAllGlobalAnimatedMatrices(SJoint *joint, SJoint *parentJoint) +{ + if (!joint) { + for (auto *rootJoint : RootJoints) + buildAllGlobalAnimatedMatrices(rootJoint, 0); + return; + } else { + // Find global matrix... + if (!parentJoint || joint->GlobalSkinningSpace) + joint->GlobalAnimatedMatrix = joint->LocalAnimatedMatrix; + else + joint->GlobalAnimatedMatrix = parentJoint->GlobalAnimatedMatrix * joint->LocalAnimatedMatrix; + } + + for (auto *childJoint : joint->Children) + buildAllGlobalAnimatedMatrices(childJoint, joint); +} + +//-------------------------------------------------------------------------- +// Software Skinning +//-------------------------------------------------------------------------- + +//! Preforms a software skin on this mesh based of joint positions +void SkinnedMesh::skinMesh() +{ + if (!HasAnimation || SkinnedLastFrame) + return; + + //---------------- + // This is marked as "Temp!". A shiny dubloon to whomever can tell me why. + buildAllGlobalAnimatedMatrices(); + //----------------- + + SkinnedLastFrame = true; + if (!HardwareSkinning) { + // rigid animation + for (auto *joint : AllJoints) { + for (u32 attachedMeshIdx : joint->AttachedMeshes) { + SSkinMeshBuffer *Buffer = (*SkinningBuffers)[attachedMeshIdx]; + Buffer->Transformation = joint->GlobalAnimatedMatrix; + } + } + + // clear skinning helper array + for (std::vector &buf : Vertices_Moved) + std::fill(buf.begin(), buf.end(), false); + + // skin starting with the root joints + for (auto *rootJoint : RootJoints) + skinJoint(rootJoint, 0); + + for (auto *buffer : *SkinningBuffers) + buffer->setDirty(EBT_VERTEX); + } + updateBoundingBox(); +} + +void SkinnedMesh::skinJoint(SJoint *joint, SJoint *parentJoint) +{ + if (joint->Weights.size()) { + // Find this joints pull on vertices... + // Note: It is assumed that the global inversed matrix has been calculated at this point. + core::matrix4 jointVertexPull = joint->GlobalAnimatedMatrix * joint->GlobalInversedMatrix.value(); + + core::vector3df thisVertexMove, thisNormalMove; + + auto &buffersUsed = *SkinningBuffers; + + // Skin Vertices Positions and Normals... + for (const auto &weight : joint->Weights) { + // Pull this vertex... + jointVertexPull.transformVect(thisVertexMove, weight.StaticPos); + + if (AnimateNormals) { + thisNormalMove = jointVertexPull.rotateAndScaleVect(weight.StaticNormal); + thisNormalMove.normalize(); // must renormalize after potentially scaling + } + + if (!(*(weight.Moved))) { + *(weight.Moved) = true; + + buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Pos = thisVertexMove * weight.strength; + + if (AnimateNormals) + buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Normal = thisNormalMove * weight.strength; + + //*(weight._Pos) = thisVertexMove * weight.strength; + } else { + buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Pos += thisVertexMove * weight.strength; + + if (AnimateNormals) + buffersUsed[weight.buffer_id]->getVertex(weight.vertex_id)->Normal += thisNormalMove * weight.strength; + + //*(weight._Pos) += thisVertexMove * weight.strength; + } + + buffersUsed[weight.buffer_id]->boundingBoxNeedsRecalculated(); + } + } + + // Skin all children + for (auto *childJoint : joint->Children) + skinJoint(childJoint, joint); +} + +//! Gets joint count. +u32 SkinnedMesh::getJointCount() const +{ + return AllJoints.size(); +} + +//! Gets the name of a joint. +const std::optional &SkinnedMesh::getJointName(u32 number) const +{ + if (number >= getJointCount()) { + static const std::optional nullopt; + return nullopt; + } + return AllJoints[number]->Name; +} + +//! Gets a joint number from its name +std::optional SkinnedMesh::getJointNumber(const std::string &name) const +{ + for (u32 i = 0; i < AllJoints.size(); ++i) { + if (AllJoints[i]->Name == name) + return i; + } + + return std::nullopt; +} + +//! returns amount of mesh buffers. +u32 SkinnedMesh::getMeshBufferCount() const +{ + return LocalBuffers.size(); +} + +//! returns pointer to a mesh buffer +IMeshBuffer *SkinnedMesh::getMeshBuffer(u32 nr) const +{ + if (nr < LocalBuffers.size()) + return LocalBuffers[nr]; + else + return 0; +} + +//! Returns pointer to a mesh buffer which fits a material +IMeshBuffer *SkinnedMesh::getMeshBuffer(const video::SMaterial &material) const +{ + for (u32 i = 0; i < LocalBuffers.size(); ++i) { + if (LocalBuffers[i]->getMaterial() == material) + return LocalBuffers[i]; + } + return 0; +} + +u32 SkinnedMesh::getTextureSlot(u32 meshbufNr) const +{ + return TextureSlots.at(meshbufNr); +} + +void SkinnedMesh::setTextureSlot(u32 meshbufNr, u32 textureSlot) { + TextureSlots.at(meshbufNr) = textureSlot; +} + +//! set the hardware mapping hint, for driver +void SkinnedMesh::setHardwareMappingHint(E_HARDWARE_MAPPING newMappingHint, + E_BUFFER_TYPE buffer) +{ + for (u32 i = 0; i < LocalBuffers.size(); ++i) + LocalBuffers[i]->setHardwareMappingHint(newMappingHint, buffer); +} + +//! flags the meshbuffer as changed, reloads hardware buffers +void SkinnedMesh::setDirty(E_BUFFER_TYPE buffer) +{ + for (u32 i = 0; i < LocalBuffers.size(); ++i) + LocalBuffers[i]->setDirty(buffer); +} + +//! (This feature is not implemented in irrlicht yet) +bool SkinnedMesh::setHardwareSkinning(bool on) +{ + if (HardwareSkinning != on) { + if (on) { + + // set mesh to static pose... + for (auto *joint : AllJoints) { + for (const auto &weight : joint->Weights) { + const u16 buffer_id = weight.buffer_id; + const u32 vertex_id = weight.vertex_id; + LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos = weight.StaticPos; + LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal = weight.StaticNormal; + LocalBuffers[buffer_id]->boundingBoxNeedsRecalculated(); + } + } + } + + HardwareSkinning = on; + } + return HardwareSkinning; +} + +void SkinnedMesh::refreshJointCache() +{ + // copy cache from the mesh... + for (auto *joint : AllJoints) { + for (auto &weight : joint->Weights) { + const u16 buffer_id = weight.buffer_id; + const u32 vertex_id = weight.vertex_id; + weight.StaticPos = LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos; + weight.StaticNormal = LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal; + } + } +} + +void SkinnedMesh::resetAnimation() +{ + // copy from the cache to the mesh... + for (auto *joint : AllJoints) { + for (const auto &weight : joint->Weights) { + const u16 buffer_id = weight.buffer_id; + const u32 vertex_id = weight.vertex_id; + LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos = weight.StaticPos; + LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal = weight.StaticNormal; + } + } + SkinnedLastFrame = false; + LastAnimatedFrame = -1; +} + +void SkinnedMesh::calculateGlobalMatrices(SJoint *joint, SJoint *parentJoint) +{ + if (!joint && parentJoint) // bit of protection from endless loops + return; + + // Go through the root bones + if (!joint) { + for (auto *rootJoint : RootJoints) + calculateGlobalMatrices(rootJoint, nullptr); + return; + } + + if (!parentJoint) + joint->GlobalMatrix = joint->LocalMatrix; + else + joint->GlobalMatrix = parentJoint->GlobalMatrix * joint->LocalMatrix; + + joint->LocalAnimatedMatrix = joint->LocalMatrix; + joint->GlobalAnimatedMatrix = joint->GlobalMatrix; + + if (!joint->GlobalInversedMatrix.has_value()) { // might be pre calculated + joint->GlobalInversedMatrix = joint->GlobalMatrix; + joint->GlobalInversedMatrix->makeInverse(); // slow + } + + for (auto *childJoint : joint->Children) + calculateGlobalMatrices(childJoint, joint); + SkinnedLastFrame = false; +} + +void SkinnedMesh::checkForAnimation() +{ + // Check for animation... + HasAnimation = false; + for (auto *joint : AllJoints) { + if (!joint->keys.empty()) { + HasAnimation = true; + break; + } + } + + // meshes with weights, are still counted as animated for ragdolls, etc + if (!HasAnimation) { + for (auto *joint : AllJoints) { + if (joint->Weights.size()) { + HasAnimation = true; + break; + } + } + } + + if (HasAnimation) { + EndFrame = 0.0f; + for (const auto *joint : AllJoints) { + EndFrame = std::max(EndFrame, joint->keys.getEndFrame()); + } + } + + if (HasAnimation && !PreparedForSkinning) { + PreparedForSkinning = true; + + // check for bugs: + for (auto *joint : AllJoints) { + for (auto &weight : joint->Weights) { + const u16 buffer_id = weight.buffer_id; + const u32 vertex_id = weight.vertex_id; + + // check for invalid ids + if (buffer_id >= LocalBuffers.size()) { + os::Printer::log("Skinned Mesh: Weight buffer id too large", ELL_WARNING); + weight.buffer_id = weight.vertex_id = 0; + } else if (vertex_id >= LocalBuffers[buffer_id]->getVertexCount()) { + os::Printer::log("Skinned Mesh: Weight vertex id too large", ELL_WARNING); + weight.buffer_id = weight.vertex_id = 0; + } + } + } + + // An array used in skinning + + for (u32 i = 0; i < Vertices_Moved.size(); ++i) + for (u32 j = 0; j < Vertices_Moved[i].size(); ++j) + Vertices_Moved[i][j] = false; + + // For skinning: cache weight values for speed + + for (auto *joint : AllJoints) { + for (auto &weight : joint->Weights) { + const u16 buffer_id = weight.buffer_id; + const u32 vertex_id = weight.vertex_id; + + weight.Moved = &Vertices_Moved[buffer_id][vertex_id]; + weight.StaticPos = LocalBuffers[buffer_id]->getVertex(vertex_id)->Pos; + weight.StaticNormal = LocalBuffers[buffer_id]->getVertex(vertex_id)->Normal; + + // weight._Pos=&Buffers[buffer_id]->getVertex(vertex_id)->Pos; + } + } + + // normalize weights + normalizeWeights(); + } + SkinnedLastFrame = false; +} + +//! called by loader after populating with mesh and bone data +SkinnedMesh *SkinnedMeshBuilder::finalize() +{ + os::Printer::log("Skinned Mesh - finalize", ELL_DEBUG); + + // Make sure we recalc the next frame + LastAnimatedFrame = -1; + SkinnedLastFrame = false; + + // calculate bounding box + for (auto *buffer : LocalBuffers) { + buffer->recalculateBoundingBox(); + } + + if (AllJoints.size() || RootJoints.size()) { + // populate AllJoints or RootJoints, depending on which is empty + if (RootJoints.empty()) { + + for (auto *joint : AllJoints) { + + bool foundParent = false; + for (const auto *parentJoint : AllJoints) { + for (const auto *childJoint : parentJoint->Children) { + if (childJoint == joint) + foundParent = true; + } + } + + if (!foundParent) + RootJoints.push_back(joint); + } + } else { + AllJoints = RootJoints; + } + } + + // Set array sizes... + + for (u32 i = 0; i < LocalBuffers.size(); ++i) { + Vertices_Moved.emplace_back(LocalBuffers[i]->getVertexCount()); + } + + checkForAnimation(); + + if (HasAnimation) { + for (auto *joint : AllJoints) { + joint->keys.cleanup(); + } + } + + // Needed for animation and skinning... + + calculateGlobalMatrices(0, 0); + + // rigid animation for non animated meshes + for (auto *joint : AllJoints) { + for (u32 attachedMeshIdx : joint->AttachedMeshes) { + SSkinMeshBuffer *Buffer = (*SkinningBuffers)[attachedMeshIdx]; + Buffer->Transformation = joint->GlobalAnimatedMatrix; + } + } + + // calculate bounding box + if (LocalBuffers.empty()) + BoundingBox.reset(0, 0, 0); + else { + irr::core::aabbox3df bb(LocalBuffers[0]->BoundingBox); + LocalBuffers[0]->Transformation.transformBoxEx(bb); + BoundingBox.reset(bb); + + for (u32 j = 1; j < LocalBuffers.size(); ++j) { + bb = LocalBuffers[j]->BoundingBox; + LocalBuffers[j]->Transformation.transformBoxEx(bb); + + BoundingBox.addInternalBox(bb); + } + } + + return this; +} + +void SkinnedMesh::updateBoundingBox() +{ + if (!SkinningBuffers) + return; + + BoundingBox.reset(0, 0, 0); + + for (auto *buffer : *SkinningBuffers) { + buffer->recalculateBoundingBox(); + core::aabbox3df bb = buffer->BoundingBox; + buffer->Transformation.transformBoxEx(bb); + + BoundingBox.addInternalBox(bb); + } +} + +scene::SSkinMeshBuffer *SkinnedMeshBuilder::addMeshBuffer() +{ + scene::SSkinMeshBuffer *buffer = new scene::SSkinMeshBuffer(); + TextureSlots.push_back(LocalBuffers.size()); + LocalBuffers.push_back(buffer); + return buffer; +} + +void SkinnedMeshBuilder::addMeshBuffer(SSkinMeshBuffer *meshbuf) +{ + TextureSlots.push_back(LocalBuffers.size()); + LocalBuffers.push_back(meshbuf); +} + +SkinnedMesh::SJoint *SkinnedMeshBuilder::addJoint(SJoint *parent) +{ + SJoint *joint = new SJoint; + + AllJoints.push_back(joint); + if (!parent) { + // Add root joints to array in finalize() + } else { + // Set parent (Be careful of the mesh loader also setting the parent) + parent->Children.push_back(joint); + } + + return joint; +} + +void SkinnedMeshBuilder::addPositionKey(SJoint *joint, f32 frame, core::vector3df pos) +{ + _IRR_DEBUG_BREAK_IF(!joint); + joint->keys.position.pushBack(frame, pos); +} + +void SkinnedMeshBuilder::addScaleKey(SJoint *joint, f32 frame, core::vector3df scale) +{ + _IRR_DEBUG_BREAK_IF(!joint); + joint->keys.scale.pushBack(frame, scale); +} + +void SkinnedMeshBuilder::addRotationKey(SJoint *joint, f32 frame, core::quaternion rot) +{ + _IRR_DEBUG_BREAK_IF(!joint); + joint->keys.rotation.pushBack(frame, rot); +} + +SkinnedMesh::SWeight *SkinnedMeshBuilder::addWeight(SJoint *joint) +{ + if (!joint) + return nullptr; + + joint->Weights.emplace_back(); + return &joint->Weights.back(); +} + +void SkinnedMesh::normalizeWeights() +{ + // note: unsure if weights ids are going to be used. + + // Normalise the weights on bones.... + + std::vector> verticesTotalWeight; + + verticesTotalWeight.reserve(LocalBuffers.size()); + for (u32 i = 0; i < LocalBuffers.size(); ++i) { + verticesTotalWeight.emplace_back(LocalBuffers[i]->getVertexCount()); + } + + for (u32 i = 0; i < verticesTotalWeight.size(); ++i) + for (u32 j = 0; j < verticesTotalWeight[i].size(); ++j) + verticesTotalWeight[i][j] = 0; + + for (auto *joint : AllJoints) { + auto &weights = joint->Weights; + + weights.erase(std::remove_if(weights.begin(), weights.end(), [](const auto &weight) { + return weight.strength <= 0; + }), weights.end()); + + for (const auto &weight : weights) { + verticesTotalWeight[weight.buffer_id][weight.vertex_id] += weight.strength; + } + } + + for (auto *joint : AllJoints) { + for (auto &weight : joint->Weights) { + const f32 total = verticesTotalWeight[weight.buffer_id][weight.vertex_id]; + if (total != 0 && total != 1) + weight.strength /= total; + } + } +} + +void SkinnedMesh::recoverJointsFromMesh(std::vector &jointChildSceneNodes) +{ + for (u32 i = 0; i < AllJoints.size(); ++i) { + IBoneSceneNode *node = jointChildSceneNodes[i]; + SJoint *joint = AllJoints[i]; + node->setPosition(joint->LocalAnimatedMatrix.getTranslation()); + node->setRotation(joint->LocalAnimatedMatrix.getRotationDegrees()); + node->setScale(joint->LocalAnimatedMatrix.getScale()); + + node->updateAbsolutePosition(); + } +} + +void SkinnedMesh::transferJointsToMesh(const std::vector &jointChildSceneNodes) +{ + for (u32 i = 0; i < AllJoints.size(); ++i) { + const IBoneSceneNode *const node = jointChildSceneNodes[i]; + SJoint *joint = AllJoints[i]; + + joint->LocalAnimatedMatrix.setRotationDegrees(node->getRotation()); + joint->LocalAnimatedMatrix.setTranslation(node->getPosition()); + joint->LocalAnimatedMatrix *= core::matrix4().setScale(node->getScale()); + + joint->GlobalSkinningSpace = (node->getSkinningSpace() == EBSS_GLOBAL); + } + // Make sure we recalc the next frame + LastAnimatedFrame = -1; + SkinnedLastFrame = false; +} + +void SkinnedMesh::addJoints(std::vector &jointChildSceneNodes, + IAnimatedMeshSceneNode *node, ISceneManager *smgr) +{ + // Create new joints + for (u32 i = 0; i < AllJoints.size(); ++i) { + jointChildSceneNodes.push_back(new CBoneSceneNode(0, smgr, 0, i, AllJoints[i]->Name)); + } + + // Match up parents + for (u32 i = 0; i < jointChildSceneNodes.size(); ++i) { + const SJoint *const joint = AllJoints[i]; // should be fine + + s32 parentID = -1; + + for (u32 j = 0; (parentID == -1) && (j < AllJoints.size()); ++j) { + if (i != j) { + const SJoint *const parentTest = AllJoints[j]; + for (u32 n = 0; n < parentTest->Children.size(); ++n) { + if (parentTest->Children[n] == joint) { + parentID = j; + break; + } + } + } + } + + IBoneSceneNode *bone = jointChildSceneNodes[i]; + if (parentID != -1) + bone->setParent(jointChildSceneNodes[parentID]); + else + bone->setParent(node); + + bone->drop(); + } + SkinnedLastFrame = false; +} + +void SkinnedMesh::convertMeshToTangents() +{ + // now calculate tangents + for (u32 b = 0; b < LocalBuffers.size(); ++b) { + if (LocalBuffers[b]) { + LocalBuffers[b]->convertToTangents(); + + const s32 idxCnt = LocalBuffers[b]->getIndexCount(); + + u16 *idx = LocalBuffers[b]->getIndices(); + video::S3DVertexTangents *v = + (video::S3DVertexTangents *)LocalBuffers[b]->getVertices(); + + for (s32 i = 0; i < idxCnt; i += 3) { + calculateTangents( + v[idx[i + 0]].Normal, + v[idx[i + 0]].Tangent, + v[idx[i + 0]].Binormal, + v[idx[i + 0]].Pos, + v[idx[i + 1]].Pos, + v[idx[i + 2]].Pos, + v[idx[i + 0]].TCoords, + v[idx[i + 1]].TCoords, + v[idx[i + 2]].TCoords); + + calculateTangents( + v[idx[i + 1]].Normal, + v[idx[i + 1]].Tangent, + v[idx[i + 1]].Binormal, + v[idx[i + 1]].Pos, + v[idx[i + 2]].Pos, + v[idx[i + 0]].Pos, + v[idx[i + 1]].TCoords, + v[idx[i + 2]].TCoords, + v[idx[i + 0]].TCoords); + + calculateTangents( + v[idx[i + 2]].Normal, + v[idx[i + 2]].Tangent, + v[idx[i + 2]].Binormal, + v[idx[i + 2]].Pos, + v[idx[i + 0]].Pos, + v[idx[i + 1]].Pos, + v[idx[i + 2]].TCoords, + v[idx[i + 0]].TCoords, + v[idx[i + 1]].TCoords); + } + } + } +} + +void SkinnedMesh::calculateTangents( + core::vector3df &normal, + core::vector3df &tangent, + core::vector3df &binormal, + const core::vector3df &vt1, const core::vector3df &vt2, const core::vector3df &vt3, // vertices + const core::vector2df &tc1, const core::vector2df &tc2, const core::vector2df &tc3) // texture coords +{ + core::vector3df v1 = vt1 - vt2; + core::vector3df v2 = vt3 - vt1; + normal = v2.crossProduct(v1); + normal.normalize(); + + // binormal + + f32 deltaX1 = tc1.X - tc2.X; + f32 deltaX2 = tc3.X - tc1.X; + binormal = (v1 * deltaX2) - (v2 * deltaX1); + binormal.normalize(); + + // tangent + + f32 deltaY1 = tc1.Y - tc2.Y; + f32 deltaY2 = tc3.Y - tc1.Y; + tangent = (v1 * deltaY2) - (v2 * deltaY1); + tangent.normalize(); + + // adjust + + core::vector3df txb = tangent.crossProduct(binormal); + if (txb.dotProduct(normal) < 0.0f) { + tangent *= -1.0f; + binormal *= -1.0f; + } +} + +} // end namespace scene +} // end namespace irr diff --git a/irr/src/mt_opengl_loader.cpp b/irr/src/mt_opengl_loader.cpp index 084f83118..2b7184036 100755 --- a/irr/src/mt_opengl_loader.cpp +++ b/irr/src/mt_opengl_loader.cpp @@ -5,7 +5,7 @@ #include #include -OpenGLProcedures GL = OpenGLProcedures(); +OpenGLProcedures GL; void OpenGLProcedures::LoadAllProcedures(irr::video::IContextManager *cmgr) { @@ -758,9 +758,11 @@ void OpenGLProcedures::LoadAllProcedures(irr::video::IContextManager *cmgr) if (!NamedBufferPageCommitment) NamedBufferPageCommitment = (PFNGLNAMEDBUFFERPAGECOMMITMENTPROC_MT)cmgr->getProcAddress("glNamedBufferPageCommitmentARB"); if (!TexPageCommitment) TexPageCommitment = (PFNGLTEXPAGECOMMITMENTPROC_MT)cmgr->getProcAddress("glTexPageCommitmentARB"); - // OpenGL 3 way to enumerate extensions + /* OpenGL 3 & ES 3 way to enumerate extensions */ GLint ext_count = 0; GetIntegerv(NUM_EXTENSIONS, &ext_count); + // clear error which is raised if unsupported + while (GetError() != GL.NO_ERROR) {} extensions.reserve(ext_count); for (GLint k = 0; k < ext_count; k++) { auto tmp = GetStringi(EXTENSIONS, k); @@ -770,14 +772,13 @@ void OpenGLProcedures::LoadAllProcedures(irr::video::IContextManager *cmgr) if (!extensions.empty()) return; - // OpenGL 2 / ES 2 way to enumerate extensions + /* OpenGL 2 / ES 2 way to enumerate extensions */ auto ext_str = GetString(EXTENSIONS); if (!ext_str) return; // get the extension string, chop it up - std::stringstream ext_ss((char*)ext_str); + std::istringstream ext_ss((char*)ext_str); std::string tmp; while (std::getline(ext_ss, tmp, ' ')) extensions.emplace(tmp); - } diff --git a/irr/src/os.cpp b/irr/src/os.cpp index 96be8dd63..8762c8c54 100644 --- a/irr/src/os.cpp +++ b/irr/src/os.cpp @@ -160,11 +160,12 @@ void Printer::print(const c8 *message, ELOG_LEVEL ll) // Android logcat restricts log-output and cuts the rest of the message away. But we want it all. // On my device max-len is 1023 (+ 0 byte). Some websites claim a limit of 4096 so maybe different numbers on different devices. - const size_t maxLogLen = 1023; + constexpr size_t maxLogLen = 1023; size_t msgLen = strlen(message); size_t start = 0; while (msgLen - start > maxLogLen) { - __android_log_print(LogLevel, "Irrlicht", "%.*s\n", maxLogLen, &message[start]); + __android_log_print(LogLevel, "Irrlicht", "%.*s\n", + static_cast(maxLogLen), &message[start]); start += maxLogLen; } __android_log_print(LogLevel, "Irrlicht", "%s\n", &message[start]); diff --git a/lib/tiniergltf/Readme.md b/lib/tiniergltf/Readme.md index a8cc65c93..58873277e 100644 --- a/lib/tiniergltf/Readme.md +++ b/lib/tiniergltf/Readme.md @@ -6,7 +6,7 @@ What this is: * A tiny glTF deserializer which maps JSON objects to appropriate C++ structures. * Intended to be safe for loading untrusted input. -* Slightly tailored to the needs of [Minetest](https://github.com/minetest/minetest). +* Slightly tailored to the needs of Luanti What this doesn't and shouldn't do: diff --git a/misc/macos/Info.plist.in b/misc/macos/Info.plist.in index bbada7871..8b80c55e5 100644 --- a/misc/macos/Info.plist.in +++ b/misc/macos/Info.plist.in @@ -2,6 +2,8 @@ + CFBundlePackageType + APPL CFBundleDevelopmentRegion English CFBundleExecutable diff --git a/misc/org.freeminer.freeminer.desktop b/misc/org.freeminer.freeminer.desktop index 2bc4de287..276d134eb 100644 --- a/misc/org.freeminer.freeminer.desktop +++ b/misc/org.freeminer.freeminer.desktop @@ -15,4 +15,4 @@ PrefersNonDefaultGPU=true Type=Application Categories=Game;Simulation; StartupNotify=false -Keywords=sandbox;world;mining;crafting;blocks;nodes;multiplayer;roleplaying; +Keywords=sandbox;world;mining;crafting;blocks;nodes;multiplayer;roleplaying;minetest; diff --git a/misc/org.freeminer.freeminer.metainfo.xml b/misc/org.freeminer.freeminer.metainfo.xml index 2f49d291c..17d13f604 100644 --- a/misc/org.freeminer.freeminer.metainfo.xml +++ b/misc/org.freeminer.freeminer.metainfo.xml @@ -103,13 +103,13 @@ org.freeminer.freeminer.desktop - https://www.minetest.net/media/gallery/1.jpg + https://www.luanti.org/media/gallery/1.jpg - https://www.minetest.net/media/gallery/3.jpg + https://www.luanti.org/media/gallery/3.jpg - https://www.minetest.net/media/gallery/5.jpg + https://www.luanti.org/media/gallery/5.jpg @@ -132,13 +132,13 @@ https://freeminer.org - https://www.minetest.net/get-involved/#reporting-issues - https://dev.minetest.net/Translation - https://www.minetest.net/get-involved/#donate - https://wiki.minetest.net/FAQ - https://wiki.minetest.net + https://www.luanti.org/get-involved/#reporting-issues + https://dev.luanti.org/Translation/ + https://www.luanti.org/get-involved/#donate + https://wiki.luanti.org/FAQ + https://wiki.luanti.org https://github.com/freeminer/freeminer - https://www.minetest.net/get-involved + https://www.luanti.org/get-involved luanti @@ -149,6 +149,6 @@ - + diff --git a/po/ar/luanti.po b/po/ar/luanti.po index a80365b54..ddb4cda18 100644 --- a/po/ar/luanti.po +++ b/po/ar/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-05-21 09:01+0000\n" "Last-Translator: Jamil Mohamad Alhussein \n" "Language-Team: Arabic ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "استعرض" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "حرر" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "إختر الدليل" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "إختر ملف" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(الإعداد بدون وصف)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "ضوضاء 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ألغِ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "المُعادل" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "استمرار" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "إحفظ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "تكبير/تصغير" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "البذرة" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "التوزع على محور X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Y spread" +msgstr "التوزع على محور Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "التوزع على محور Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "القيمة المطلقة" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "إفتراضي" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "مخفف" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(استخدم لغة النظام)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "إمكانية الوصول" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "دردشة" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "امسح" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "التحكم" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "عطِّل" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "مُفعل" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "عام" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "حركة" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "بدون نتائج" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "إستعِد الإفتراضي" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "إعادة تعيين الإعداد إلى الافتراضي (1$)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "إبحث" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "أظهر الاعدادات المتقدمة" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "إعرض الأسماء التقنية" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "اختر التعديلات" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "المحتوى: ألعاب" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "المحتوى: تعديلات" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "مخصص" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "ظلال ديناميكية" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "عالي" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "منخفضة" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "واسطة" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "عالية جدا" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "منخفضة جدًا" + #: builtin/fstk/ui.lua msgid "" msgstr "<ليس متاحًا>" @@ -164,7 +411,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "عُد" @@ -201,11 +447,6 @@ msgstr "التعديلات" msgid "No packages could be retrieved" msgstr "تعذر استيراد الحزم" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "بدون نتائج" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "لا توجد تحديثات" @@ -251,18 +492,6 @@ msgstr "مثبت مسبقا" msgid "Base Game:" msgstr "اللعبة القاعدية :" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "ألغِ" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -391,6 +620,12 @@ msgstr "فشل تثبيت التعديل كـ $1" msgid "Unable to install a $1 as a texture pack" msgstr "فشل تثبيت $1 كحزمة إكساء" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(مفعل، به خطأ)" @@ -455,12 +690,6 @@ msgstr "بدون إعتماديات إختيارية" msgid "Optional dependencies:" msgstr "الإعتماديات الإختيارية:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "إحفظ" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "العالم:" @@ -611,11 +840,6 @@ msgstr "أنهار" msgid "Sea level rivers" msgstr "أنهار بمستوى البحر" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "البذرة" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "تغيير سلس للمناطق البيئية" @@ -758,6 +982,23 @@ msgid "" msgstr "" "اسم حزمة التعديلات هذه مصرح في modpack.conf لذا أي تسمية سيتم استبدالها." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "فعِل الكل" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "إصدار جديد ل 1$ متوفر" @@ -786,7 +1027,7 @@ msgstr "أبدًا" msgid "Visit website" msgstr "زر الموقع" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "إعدادات" @@ -798,234 +1039,6 @@ msgstr "قائمة الخوادم العمومية معطلة" msgid "Try reenabling public serverlist and check your internet connection." msgstr "جرب إعادة تمكين قائمة الحوادم العامة وتحقق من إتصالك بالانترنت." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "استعرض" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "حرر" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "إختر الدليل" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "إختر ملف" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(الإعداد بدون وصف)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "ضوضاء 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "المُعادل" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "استمرار" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "تكبير/تصغير" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "التوزع على محور X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Y spread" -msgstr "التوزع على محور Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "التوزع على محور Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "القيمة المطلقة" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "إفتراضي" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "مخفف" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(استخدم لغة النظام)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "إمكانية الوصول" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "دردشة" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "امسح" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "التحكم" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "عطِّل" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "مُفعل" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "عام" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "حركة" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "إستعِد الإفتراضي" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "إعادة تعيين الإعداد إلى الافتراضي (1$)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "إبحث" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "أظهر الاعدادات المتقدمة" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "إعرض الأسماء التقنية" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "اختر التعديلات" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "المحتوى: ألعاب" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "المحتوى: تعديلات" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "مُفعل" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "تحديث الكاميرا معطل" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(ستحتاج اللعبة إلى تمكين الظلال أيضًا)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "مخصص" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "ظلال ديناميكية" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "عالي" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "منخفضة" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "واسطة" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "عالية جدا" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "منخفضة جدًا" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "حول" @@ -1046,10 +1059,6 @@ msgstr "المطورون الرئيسيون" msgid "Core Team" msgstr "الفريق الأساسي" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "افتح دليل بيانات المستخدم" @@ -1202,10 +1211,22 @@ msgstr "ابدأ اللعبة" msgid "You need to install a game before you can create a world." msgstr "يجب عليك تنزيل اللعبة قبل إضافة التعديلات" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "حذف المفضلة" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "عنوان" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "عميل" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "النمط الإبداعي" @@ -1219,6 +1240,11 @@ msgstr "الضرر / قتال اللاعبين" msgid "Favorites" msgstr "المفضلة" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "اللعبة" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "خوادم غير متوافقة" @@ -1231,10 +1257,26 @@ msgstr "انضم للعبة" msgid "Login" msgstr "تسجيل الدخول" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "خوادم عمومية" @@ -1320,23 +1362,6 @@ msgstr "" "\n" "راجع debug.txt لمزيد من التفاصيل." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- النمط: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- عام: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- قتال اللاعبين: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- اسم الخادم: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1347,6 +1372,11 @@ msgstr "حدث خطأ في التسلسل:" msgid "Access denied. Reason: %s" msgstr "رُفض النفاذ. السبب: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "معلومات التنقيح مرئية" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "المشي التلقائي معطل" @@ -1367,6 +1397,10 @@ msgstr "حدود الكتلة الحالية ظاهرة" msgid "Block bounds shown for nearby blocks" msgstr "حدود الكتل القريبة ظاهرة" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "تحديث الكاميرا معطل" @@ -1380,10 +1414,6 @@ msgstr "تحديث الكاميرا مفعل" msgid "Can't show block bounds (disabled by game or mod)" msgstr "تعذر إظهار حدود الكتل (غير مفعل من طرف تعديل أو لعبة)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "غير كلمة المرور" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "الوضع السينمائي معطل" @@ -1412,39 +1442,6 @@ msgstr "خطأ في الاتصال (انتهاء المهلة؟)" msgid "Connection failed for unknown reason" msgstr "فشل الاتصال لسبب مجهول" -#: src/client/game.cpp -msgid "Continue" -msgstr "تابع" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"اعدادات التحكم الافتراضية: \n" -"بدون قائمة مرئية: \n" -"- لمسة واحدة: زر تفعيل\n" -"- لمسة مزدوجة: ضع/استخدم\n" -"- تحريك إصبع: دوران\n" -"المخزن أو قائمة مرئية: \n" -"- لمسة مزدوجة (خارج القائمة): \n" -" --> اغلق القائمة\n" -"- لمس خانة أو تكديس: \n" -" --> حرك التكديس\n" -"- لمس وسحب, ولمس باصبع ثان: \n" -" --> وضع عنصر واحد في خانة\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1458,31 +1455,15 @@ msgstr "ينشىء عميلا…" msgid "Creating server..." msgstr "ينشىء خادوما…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "معلومات التنقيح ومنحنى محلل البيانات مخفيان" - #: src/client/game.cpp msgid "Debug info shown" msgstr "معلومات التنقيح مرئية" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "معلومات التصحيح ، الرسم البياني لملف التعريف ، والإطار السلكي مخفي" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "ينشىء عميلا…" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "اخرج للقائمة" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "اخرج لنظام التشغيل" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "نمط السرعة معطل" @@ -1520,18 +1501,6 @@ msgstr "الضباب مفعل" msgid "Fog enabled by game or mod" msgstr "التكبير معطل من قبل لعبة أو تعديل" -#: src/client/game.cpp -msgid "Game info:" -msgstr "معلومات اللعبة:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "اللعبة موقفة مؤقتا" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "استضافة خادوم" - #: src/client/game.cpp msgid "Item definitions..." msgstr "تعريف العنصر…" @@ -1568,14 +1537,6 @@ msgstr "تم تمكين وضع Noclip (ملاحظة: لا يوجد امتياز msgid "Node definitions..." msgstr "تعريفات العقدة..." -#: src/client/game.cpp -msgid "Off" -msgstr "معطّل" - -#: src/client/game.cpp -msgid "On" -msgstr "مفعل" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1588,38 +1549,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "منحنى محلل البيانات ظاهر" -#: src/client/game.cpp -msgid "Remote server" -msgstr "خادوم بعيد" - #: src/client/game.cpp msgid "Resolving address..." msgstr "يستورد العناوين…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "أعِد الإحياء" - #: src/client/game.cpp msgid "Shutting down..." msgstr "يغلق…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "لاعب منفرد" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "حجم الصوت" - #: src/client/game.cpp msgid "Sound muted" msgstr "الصوت مكتوم" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "نظام الصوت معطل" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "نظام الصوت غير مدمج أثناء البناء" @@ -1698,18 +1643,116 @@ msgstr "غُيرَ مدى الرؤية الى %d" msgid "Volume changed to %d%%" msgstr "غُير الحجم الى %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "تم إظهار الإطار السلكي" -#: src/client/game.cpp -msgid "You died" -msgstr "لقد مُتْ" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "التكبير معطل من قبل لعبة أو تعديل" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- النمط: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- عام: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- قتال اللاعبين: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- اسم الخادم: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "غير كلمة المرور" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "تابع" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"اعدادات التحكم الافتراضية: \n" +"بدون قائمة مرئية: \n" +"- لمسة واحدة: زر تفعيل\n" +"- لمسة مزدوجة: ضع/استخدم\n" +"- تحريك إصبع: دوران\n" +"المخزن أو قائمة مرئية: \n" +"- لمسة مزدوجة (خارج القائمة): \n" +" --> اغلق القائمة\n" +"- لمس خانة أو تكديس: \n" +" --> حرك التكديس\n" +"- لمس وسحب, ولمس باصبع ثان: \n" +" --> وضع عنصر واحد في خانة\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "اخرج للقائمة" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "اخرج لنظام التشغيل" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "معلومات اللعبة:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "اللعبة موقفة مؤقتا" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "استضافة خادوم" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "معطّل" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "مفعل" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "خادوم بعيد" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "أعِد الإحياء" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "حجم الصوت" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "لقد مُتْ" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2090,8 +2133,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "فشل فتح صفحة الويب" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "نظام الصوت غير مدمج أثناء البناء" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2144,7 +2188,7 @@ msgstr "المشي التلقائي" msgid "Automatic jumping" msgstr "القفز التلقائي" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2156,7 +2200,7 @@ msgstr "للخلف" msgid "Block bounds" msgstr "حدود الكتلة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "غير الكاميرا" @@ -2180,7 +2224,7 @@ msgstr "قلل الحجم" msgid "Double tap \"jump\" to toggle fly" msgstr "اضغط مرتين على \"اقفز\" لتفعيل الطيران" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "اسقاط" @@ -2196,11 +2240,11 @@ msgstr "زد المدى" msgid "Inc. volume" msgstr "زد الحجم" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "المخزن" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "اقفز" @@ -2232,7 +2276,7 @@ msgstr "العنصر التالي" msgid "Prev. item" msgstr "العنصر السابق" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "حدد المدى" @@ -2245,7 +2289,7 @@ msgstr "Right" msgid "Screenshot" msgstr "صوّر الشاشة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "تسلل" @@ -2253,15 +2297,15 @@ msgstr "تسلل" msgid "Toggle HUD" msgstr "بدّل عرض الواجهة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "بدّل عرض سجل المحادثة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "بدّل وضع السرعة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "بدّل حالة الطيران" @@ -2269,11 +2313,11 @@ msgstr "بدّل حالة الطيران" msgid "Toggle fog" msgstr "بدّل ظهور الضباب" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "بدّل ظهور الخريطة المصغرة" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2281,7 +2325,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "كبِر" @@ -2318,7 +2362,7 @@ msgstr "كلمة المرور القديمة" msgid "Passwords do not match!" msgstr "كلمتا المرور غير متطابقتين!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "أخرج" @@ -2331,15 +2375,46 @@ msgstr "مكتوم" msgid "Sound Volume: %d%%" msgstr "حجم الصوت: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "الزر الأوسط" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "تم!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "خادوم بعيد" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "بدّل ظهور الضباب" @@ -2539,8 +2614,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2593,10 +2667,6 @@ msgstr "مدى الكتل النشطة" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "يضيف جزيئات عند حفر العقدة." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "اضبط كثافة العرض المكتشفة المستخدمة لقياس عناصر واجهة المستخدم." @@ -2626,6 +2696,16 @@ msgstr "ضمّن اسم العنصر" msgid "Advanced" msgstr "متقدم" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3009,14 +3089,14 @@ msgstr "تفاصيل السحاب" msgid "Clouds" msgstr "سحاب" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "الغيوم هي تأثير من جانب العميل." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "سحب في القائمة" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "ضباب ملون" @@ -3039,7 +3119,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3190,6 +3270,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3342,19 +3430,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "المطورون الرئيسيون" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3382,6 +3462,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3457,8 +3545,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3531,8 +3619,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3547,12 +3634,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3859,10 +3940,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4107,12 +4184,6 @@ msgstr "" "إذا فُعّل ، سيستخدم مفتاح \"Aux1\" بدلاً من مفتاح \"التسلل\" للتحرك للتسلق " "والنزول." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4131,6 +4202,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4225,10 +4303,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4850,10 +4924,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4886,6 +4956,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4976,7 +5050,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5420,17 +5494,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5628,16 +5704,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "مُظللات" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5803,10 +5869,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6085,10 +6150,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6147,6 +6208,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6197,7 +6262,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6220,16 +6288,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6467,20 +6533,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6491,10 +6549,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6517,8 +6571,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6673,6 +6726,9 @@ msgstr "" #~ "أدرك أن هذه القيمة ستُتجاوز إذا كان حقل العنوان في القائمة الرئيسية يحوي " #~ "عنوانًا." +#~ msgid "Adds particles when digging a node." +#~ msgstr "يضيف جزيئات عند حفر العقدة." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6733,6 +6789,9 @@ msgstr "" #~ msgid "Cinematic mode key" #~ msgstr "مفتاح الوضع السنيمائي" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "الغيوم هي تأثير من جانب العميل." + #~ msgid "Config mods" #~ msgstr "اضبط التعديلات" @@ -6789,6 +6848,12 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "الضرر ممكن" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "معلومات التنقيح ومنحنى محلل البيانات مخفيان" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "معلومات التصحيح ، الرسم البياني لملف التعريف ، والإطار السلكي مخفي" + #~ msgid "Dec. volume key" #~ msgstr "مفتاح تقليل الحجم" @@ -6820,6 +6885,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "ظلال ديناميكية:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "مُفعل" + #~ msgid "Enter " #~ msgstr "أدخل " @@ -6835,9 +6904,6 @@ msgstr "" #~ msgid "Fog toggle key" #~ msgstr "مفتاح تبديل ظهور الضباب" -#~ msgid "Game" -#~ msgstr "اللعبة" - #~ msgid "Generate Normal Maps" #~ msgstr "ولِد خرائط عادية" @@ -7025,15 +7091,25 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "الشاشة:" +#~ msgid "Shaders" +#~ msgstr "مُظللات" + #~ msgid "Shaders (experimental)" #~ msgstr "المظللات (تجريبية)" #~ msgid "Shaders (unavailable)" #~ msgstr "مظللات (غير متوفر)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "تحديث الكاميرا معطل" + #~ msgid "Simple Leaves" #~ msgstr "أوراق بسيطة" +#~ msgid "Sound system is disabled" +#~ msgstr "نظام الصوت معطل" + #~ msgid "Special" #~ msgstr "خاص" diff --git a/po/be/luanti.po b/po/be/luanti.po index 1c296d27c..3652297ac 100644 --- a/po/be/luanti.po +++ b/po/be/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Belarusian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2019-11-19 23:04+0000\n" "Last-Translator: Viktar Vauchkevich \n" "Language-Team: Belarusian ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Праглядзець" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Рэдагаваць" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Абраць каталог" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Абраць файл" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Абраць" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Няма апісання)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-шум" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Скасаваць" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Лакунарнасць" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Актавы" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Зрух" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Сталасць" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Захаваць" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Маштаб" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Зерне" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X распаўсюджвання" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y распаўсюджвання" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z распаўсюджвання" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "абсалютная велічыня" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "прадвызначаны" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "паслаблены" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Размова" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Ачысціць" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Кіраванне" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Адключаны" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Уключаны" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Шпаркае перамяшчэнне" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Вынікі адсутнічаюць" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Аднавіць прадвызначанае" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Пошук" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Паказваць тэхнічныя назвы" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Парог сэнсарнага экрана" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS у меню паўзы" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Абраць свет:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Змесціва" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Змесціва" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Dynamic shadows" +msgstr "Цень шрыфту" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -169,7 +417,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Назад" @@ -206,11 +453,6 @@ msgstr "Мадыфікацыі" msgid "No packages could be retrieved" msgstr "Немагчыма атрымаць пакункі" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Вынікі адсутнічаюць" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -259,18 +501,6 @@ msgstr "Клавіша ўжо выкарыстоўваецца" msgid "Base Game:" msgstr "Гуляць (сервер)" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Скасаваць" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -404,6 +634,12 @@ msgstr "Не атрымалася ўсталяваць мадыфікацыю я msgid "Unable to install a $1 as a texture pack" msgstr "Не атрымалася ўсталяваць $1 як пакунак тэкстур" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -468,12 +704,6 @@ msgstr "Няма неабавязковых залежнасцей" msgid "Optional dependencies:" msgstr "Неабавязковыя залежнасці:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Захаваць" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Свет:" @@ -639,11 +869,6 @@ msgstr "Памер рэк" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Зерне" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -787,6 +1012,23 @@ msgstr "" "Гэты пакунак мадыфікацый мае назву ў modpack.conf, якая не зменіцца, калі яе " "змяніць тут." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Уключыць усё" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -811,7 +1053,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Налады" @@ -826,233 +1068,6 @@ msgstr "" "Паспрабуйце паўторна ўключыць спіс публічных сервераў і праверце злучэнне з " "сецівам." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Праглядзець" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Рэдагаваць" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Абраць каталог" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Абраць файл" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Абраць" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Няма апісання)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-шум" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Лакунарнасць" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Актавы" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Зрух" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Сталасць" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Маштаб" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X распаўсюджвання" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y распаўсюджвання" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z распаўсюджвання" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "абсалютная велічыня" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "прадвызначаны" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "паслаблены" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Размова" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Ачысціць" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Кіраванне" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Адключаны" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Уключаны" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Шпаркае перамяшчэнне" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Аднавіць прадвызначанае" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Пошук" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Паказваць тэхнічныя назвы" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Абраць свет:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Змесціва" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Змесціва" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Уключаны" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Абнаўленне камеры адключана" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Dynamic shadows" -msgstr "Цень шрыфту" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1074,10 +1089,6 @@ msgstr "Асноўныя распрацоўшчыкі" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1229,11 +1240,23 @@ msgstr "Пачаць гульню" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Адлеглы порт" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- Адрас: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Кліент" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Творчы рэжым" @@ -1249,6 +1272,11 @@ msgstr "Пашкоджанні" msgid "Favorites" msgstr "Упадабанае" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Гульня" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1261,10 +1289,28 @@ msgstr "Далучыцца да гульні" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Колькасць узнікаючых патокаў" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Крок адведзенага сервера" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Пінг" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1354,23 +1400,6 @@ msgstr "" "\n" "Падрабязней у файле debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Рэжым: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Публічны: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Назва сервера: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1381,6 +1410,11 @@ msgstr "Адбылася памылка:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Адладачная інфармацыя паказваецца" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Аўтаматычны рух наперад адключаны" @@ -1401,6 +1435,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Абнаўленне камеры адключана" @@ -1414,10 +1452,6 @@ msgstr "Абнаўленне камеры ўключана" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Павелічэнне зараз выключана гульнёй альбо мадыфікацыяй" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Змяніць пароль" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Кінематаграфічны рэжым адключаны" @@ -1447,39 +1481,6 @@ msgstr "Памылка злучэння (таймаут?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Працягнуць" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Прадвызначанае кіраванне:\n" -"Не ў меню:\n" -"- адзін націск: кнопка актывізацыі\n" -"- падвойны націск: пакласці/выкарыстаць\n" -"- слізганне пальцам: аглядзецца\n" -"У меню/інвентары:\n" -"- падвойны націск па-за меню:\n" -" --> закрыць\n" -"- крануць стос, крануць слот:\n" -" --> рухаць стос\n" -"- крануць і валачы, націснуць другім пальцам:\n" -" --> пакласці адзін прадмет у слот\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1493,31 +1494,15 @@ msgstr "Стварэнне кліента…" msgid "Creating server..." msgstr "Стварэнне сервера…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Адладачная інфармацыя і графік прафіліроўшчыка схаваныя" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Адладачная інфармацыя паказваецца" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Адладачная інфармацыя, графік прафіліроўшчыка і каркас схаваныя" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Стварэнне кліента…" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Выхад у меню" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Выхад у сістэму" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Шпаркі рэжым адключаны" @@ -1555,18 +1540,6 @@ msgstr "Туман уключаны" msgid "Fog enabled by game or mod" msgstr "Павелічэнне зараз выключана гульнёй альбо мадыфікацыяй" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Інфармацыя пра гульню:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Гульня прыпыненая" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Сервер (хост)" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Апісанне прадметаў…" @@ -1604,14 +1577,6 @@ msgstr "Рэжым руху скрозь сцены ўключаны (прыві msgid "Node definitions..." msgstr "Апісанне вузлоў…" -#: src/client/game.cpp -msgid "Off" -msgstr "Адключана" - -#: src/client/game.cpp -msgid "On" -msgstr "Уключана" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Рэжым нахілення руху выключаны" @@ -1624,38 +1589,22 @@ msgstr "Рэжым нахілення руху ўключаны" msgid "Profiler graph shown" msgstr "Графік прафіліроўшчыка паказваецца" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Адлеглы сервер" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Распазнаванне адраса…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Адрадзіцца" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Выключэнне…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Адзіночная гульня" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Гучнасць" - #: src/client/game.cpp msgid "Sound muted" msgstr "Гук адключаны" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1729,18 +1678,116 @@ msgstr "Бачнасць змененая на %d" msgid "Volume changed to %d%%" msgstr "Гучнасць змененая на %d %%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Каркас паказваецца" -#: src/client/game.cpp -msgid "You died" -msgstr "Вы загінулі" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Павелічэнне зараз выключана гульнёй альбо мадыфікацыяй" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Рэжым: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Публічны: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Назва сервера: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Змяніць пароль" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Працягнуць" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Прадвызначанае кіраванне:\n" +"Не ў меню:\n" +"- адзін націск: кнопка актывізацыі\n" +"- падвойны націск: пакласці/выкарыстаць\n" +"- слізганне пальцам: аглядзецца\n" +"У меню/інвентары:\n" +"- падвойны націск па-за меню:\n" +" --> закрыць\n" +"- крануць стос, крануць слот:\n" +" --> рухаць стос\n" +"- крануць і валачы, націснуць другім пальцам:\n" +" --> пакласці адзін прадмет у слот\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Выхад у меню" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Выхад у сістэму" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Інфармацыя пра гульню:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Гульня прыпыненая" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Сервер (хост)" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Адключана" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Уключана" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Адлеглы сервер" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Адрадзіцца" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Гучнасць" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Вы загінулі" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2082,7 +2129,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Не атрымалася спампаваць $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2133,7 +2180,7 @@ msgstr "Аўтабег" msgid "Automatic jumping" msgstr "Аўтаскок" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2145,7 +2192,7 @@ msgstr "Назад" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Змяніць камеру" @@ -2169,7 +2216,7 @@ msgstr "Паменшыць гучнасць" msgid "Double tap \"jump\" to toggle fly" msgstr "Падвойны \"скок\" = палёт" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Выкінуць" @@ -2185,11 +2232,11 @@ msgstr "Павялічыць бачнасць" msgid "Inc. volume" msgstr "Павялічыць гучнасць" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Інвентар" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Скакаць" @@ -2221,7 +2268,7 @@ msgstr "Наступны прадмет" msgid "Prev. item" msgstr "Папярэдні прадмет" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Адлегласць бачнасці" @@ -2233,7 +2280,7 @@ msgstr "Управа" msgid "Screenshot" msgstr "Здымак экрана" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Красціся" @@ -2241,15 +2288,15 @@ msgstr "Красціся" msgid "Toggle HUD" msgstr "HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Размова" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Шпаркасць" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Палёт" @@ -2257,11 +2304,11 @@ msgstr "Палёт" msgid "Toggle fog" msgstr "Туман" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Мінімапа" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Рух скрозь сцены" @@ -2269,7 +2316,7 @@ msgstr "Рух скрозь сцены" msgid "Toggle pitchmove" msgstr "Нахіленне руху" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Павялічыць" @@ -2306,7 +2353,7 @@ msgstr "Стары пароль" msgid "Passwords do not match!" msgstr "Паролі не супадаюць!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Выхад" @@ -2319,16 +2366,47 @@ msgstr "Сцішаны" msgid "Sound Volume: %d%%" msgstr "Гучнасць: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Сярэдняя кнопка" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Завершана!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Адлеглы сервер" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID джойсціка" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Туман" @@ -2548,8 +2626,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D-падтрымка.\n" "Зараз падтрымліваюцца:\n" @@ -2615,10 +2692,6 @@ msgstr "Адлегласць узаемадзеяння з блокамі" msgid "Active object send range" msgstr "Адлегласць адпраўлення актыўнага аб'екта" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Дадае часціцы пры капанні блока." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2642,6 +2715,17 @@ msgstr "Дадаваць назвы прадметаў" msgid "Advanced" msgstr "Пашыраныя" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Аб'ёмныя аблокі замест плоскіх." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3050,15 +3134,14 @@ msgstr "Радыус аблокаў" msgid "Clouds" msgstr "Аблокі" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Аблокі — эфект на баку кліента." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Аблокі ў меню" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Каляровы туман" @@ -3083,7 +3166,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Падзелены коскамі спіс пазнак, якія можна хаваць у рэпазіторыі.\n" "\"nonfree\" можна выкарыстоўвацца, каб схаваць пакункі, якія з’яўляюцца " @@ -3234,6 +3317,14 @@ msgstr "Узровень журнала адладкі" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Крок адведзенага сервера" @@ -3402,19 +3493,11 @@ msgstr "" "Пустыні з'яўляюцца, калі np_biome перавысіць гэтае значэнне.\n" "Ігнаруецца, калі ўключаны сцяжок snowbiomes." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Дэсінхранізаваць анімацыю блока" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Ітэрацыі" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Часціцы пры капанні" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Забараніць пустыя паролі" @@ -3442,6 +3525,14 @@ msgstr "Падвойны націск \"скока\" пераключае рэж msgid "Double-tapping the jump key toggles fly mode." msgstr "Палвойны націск клавішы скока пераключае рэжым палёту." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Зводка адладачных даных генератара мапы." @@ -3521,8 +3612,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3609,8 +3700,7 @@ msgstr "" #, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Уключыць/выключыць падтрымку IPv6. Сервер IPv6 можа быць абмежаваны IPv6-" "кліентамі ў залежнасці ад сістэмнай канфігурацыі.\n" @@ -3628,13 +3718,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Уключае анімацыю прадметаў інвентару." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Уключае кэшаванне павернутых вонкі сетак." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3970,10 +4053,6 @@ msgstr "Маштабаванне графічнага інтэрфейсу" msgid "GUI scaling filter" msgstr "Фільтр маштабавання графічнага інтэрфейсу" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "txr2img-фільтр маштабавання графічнага інтэрфейсу" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4239,15 +4318,6 @@ msgstr "" "Калі ўключана, то для спускання і апускання будзе выкарыстоўвацца клавіша " "\"special\" замест \"sneak\"." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Уключае пацвярджэнне рэгістрацыі пры злучэнні з серверам.\n" -"Калі выключана, новы акаўнт будзе рэгістравацца аўтаматычна." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4272,6 +4342,16 @@ msgid "" "empty password." msgstr "Калі ўключана, то гульцы не змогуць далучыцца з пустым паролем." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Уключае пацвярджэнне рэгістрацыі пры злучэнні з серверам.\n" +"Калі выключана, новы акаўнт будзе рэгістравацца аўтаматычна." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4389,11 +4469,6 @@ msgstr "Інструмент метадаў сутнасці пры рэгіст msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Інтэрвал захавання важных змен свету, вызначаны ў секундах." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Інтэрвал адпраўлення кліентам часу." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Анімацыя прадметаў інвентару" @@ -5125,10 +5200,6 @@ msgstr "" msgid "Maximum users" msgstr "Максімальная колькасць карыстальнікаў" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Кэш сетак" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Паведамленне дня" @@ -5163,6 +5234,10 @@ msgstr "3D-шум, што вызначае колькасць падзямелл msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "MIP-тэкстураванне" @@ -5262,9 +5337,10 @@ msgstr "" "- Неабавясковыя плаваючыя выспы 7 (звычайна адключаны)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Імя гульца.\n" @@ -5781,17 +5857,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6029,16 +6107,6 @@ msgstr "" msgid "Shader path" msgstr "Шлях да шэйдэраў" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Шэйдэры" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -6228,10 +6296,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6574,10 +6641,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Час дня пры запуску новага свету ў мілігадзінах (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Інтэрвал адпраўлення часу" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Хуткасць часу" @@ -6647,6 +6710,10 @@ msgstr "Непразрыстыя вадкасці" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Шум дрэў" @@ -6696,12 +6763,16 @@ msgid "Undersampling" msgstr "Субдыскрэтызацыя" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Субдыскрэтызацыя падобная на выкарыстанне нізкай раздзяляльнай здольнасці " "экрана,\n" @@ -6731,17 +6802,15 @@ msgstr "Верхні ліміт Y для падзямелляў." msgid "Upper Y limit of floatlands." msgstr "Верхні ліміт Y для падзямелляў." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Аб'ёмныя аблокі замест плоскіх." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Выкарыстоўваць анімацыю аблокаў для фона галоўнага меню." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Выкарыстоўваць анізатропную фільтрацыю пры праглядзе тэкстуры пад вуглом." @@ -7010,27 +7079,15 @@ msgstr "" "быць адфільтраваныя праграмна, але некаторыя выявы генеруюцца апаратна " "(напрыклад, рэндэрынг у тэкстуру для элементаў інвентару)." -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Калі gui_scaling_filter_txr2img уключаны, выявы капіююцца\n" -"з апаратуры ў праграмнае асяроддзе для маштабавання.\n" -"Калі не, то вярнуцца да старога метаду маштабавання для відэадрайвераў,\n" -"якія не падтрымліваюць перадачу тэкстур з апаратуры назад." - #: src/settings_translation_file.cpp #, fuzzy msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7052,11 +7109,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Ці павінна быць паміж блокамі мапы дэсінхранізацыя анімацыі тэкстур блокаў." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7083,8 +7135,7 @@ msgstr "Ці размяшчаць туманы па-за зонай бачнас #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7263,6 +7314,9 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ "Майце на ўвазе, што поле адраса ў галоўным меню перавызначае гэты " #~ "параметр." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Дадае часціцы пры капанні блока." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7386,6 +7440,10 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Clean transparent textures" #~ msgstr "Чыстыя празрыстыя тэкстуры" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Аблокі — эфект на баку кліента." + #~ msgid "Command key" #~ msgstr "Клавіша загаду" @@ -7481,9 +7539,15 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Darkness sharpness" #~ msgstr "Рэзкасць цемры" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Адладачная інфармацыя і графік прафіліроўшчыка схаваныя" + #~ msgid "Debug info toggle key" #~ msgstr "Клавіша пераключэння адладачных даных" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Адладачная інфармацыя, графік прафіліроўшчыка і каркас схаваныя" + #~ msgid "Dec. volume key" #~ msgstr "Кнопка памяншэння гучнасці" @@ -7530,10 +7594,16 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ "азначэнняў біёму.\n" #~ "Y верхняй мяжы лавы ў вялікіх пячорах." +#~ msgid "Desynchronize block animation" +#~ msgstr "Дэсінхранізаваць анімацыю блока" + #, fuzzy #~ msgid "Dig key" #~ msgstr "Клавіша ўправа" +#~ msgid "Digging particles" +#~ msgstr "Часціцы пры капанні" + #~ msgid "Disable anticheat" #~ msgstr "Выключыць антычыт" @@ -7559,6 +7629,10 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Цень шрыфту" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Уключаны" + #~ msgid "Enable VBO" #~ msgstr "Уключыць VBO" @@ -7586,6 +7660,12 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ "тэкстур ці створанымі аўтаматычна.\n" #~ "Патрабуюцца ўключаныя шэйдэры." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Уключае кэшаванне павернутых вонкі сетак." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Уключае кінематаграфічнае танальнае адлюстраванне" @@ -7616,9 +7696,6 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ "Эксперыментальны параметр, які можа прывесці да візуальных прагалаў\n" #~ "паміж блокамі пры значэнні большым за 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS у меню паўзы" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7700,8 +7777,8 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Full screen BPP" #~ msgstr "Глыбіня колеру ў поўнаэкранным рэжыме (бітаў на піксель)" -#~ msgid "Game" -#~ msgstr "Гульня" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "txr2img-фільтр маштабавання графічнага інтэрфейсу" #~ msgid "Gamma" #~ msgstr "Гама" @@ -7872,6 +7949,10 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Instrumentation" #~ msgstr "Інструменты" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Інтэрвал адпраўлення кліентам часу." + #~ msgid "Invalid gamespec." #~ msgstr "Хібная спецыфікацыя гульні." @@ -7883,652 +7964,652 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша памяншэння дыяпазону бачнасці.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша памяншэння гучнасці.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша скока.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выкідання абранага прадмета.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша павелічэння дыяпазону бачнасці.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Кнопка павелічэння гучнасці.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша скока.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша паскарэння руху ў шпаркім рэжыме.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для руху назад.\n" #~ "Таксама выключае аўтабег, калі той актыўны.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша руху ўперад.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша руху ўлева.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша руху ўправа.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выключэння гуку.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша адкрыцця акна размовы для ўводу загадаў.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Кнопка адкрыцця акна размовы для ўводу лакальных загадаў.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша адкрыцця акна размовы.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша адкрыцця інвентару.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша скока.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 11 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 12 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 13 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 14 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 15 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 16 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 17 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 18 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 19 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 20 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 21 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 22 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 23 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 24 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 25 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 26 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 27 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 28 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 29 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 30 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 31 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 32 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 8 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 5 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 1 прадмета панэлі хуткага доступу..\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 4 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару наступнага прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 9 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару папярэдняга прадмета панэлі хуткага доступу..\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 2 прадмета панэлі хуткага доступу..\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 7 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 6 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 10 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выбару 3 прадмета панэлі хуткага доступу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша \"красціся\".\n" #~ "Таксама выкарыстоўваецца для спускання і апускання ў ваду, калі " #~ "aux1_descends выключана.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння паміж камерамі ад першай асобы і ад трэцяй асобы.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша стварэння здымкаў экрана.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння аўтабегу.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння кінематаграфічнага рэжыму.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання мінімапы.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння шпаркага рэжыму.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння рэжыму палёту.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння рэжыму руху скрозь сцены.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для пераключэння рэжыму нахілення руху.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння абнаўлення камеры. Выкарыстоўваецца толькі для " #~ "распрацоўкі.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання размовы.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання адладачных даных.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання туману.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання HUD.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання буйной размовы.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння адлюстравання прафіліроўшчыка. Выкарыстоўваецца для " #~ "распрацоўкі.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша пераключэння абмежавання дыяпазону бачнасці.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша выкарыстання набліжэння калі гэта магчыма.\n" -#~ "Глядзіце http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Глядзіце http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8622,6 +8703,9 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Menus" #~ msgstr "Меню" +#~ msgid "Mesh cache" +#~ msgstr "Кэш сетак" + #~ msgid "Minimap" #~ msgstr "Мінімапа" @@ -8820,6 +8904,9 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Сервер / Адзіночная гульня" +#~ msgid "Shaders" +#~ msgstr "Шэйдэры" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Узровень лятучых астравоў" @@ -8835,6 +8922,10 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ "прадукцыйнасць на некаторых відэакартах.\n" #~ "Працуюць толькі з OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Абнаўленне камеры адключана" + #~ msgid "Shadow limit" #~ msgstr "Ліміт ценяў" @@ -8908,6 +8999,9 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Гэты шрыфт будзе выкарыстоўваецца для некаторых моў." +#~ msgid "Time send interval" +#~ msgstr "Інтэрвал адпраўлення часу" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Для ўключэння шэйдэраў неабходна выкарыстоўваць OpenGL." @@ -8988,6 +9082,17 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Waving water" #~ msgstr "Хваляванне вады" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Калі gui_scaling_filter_txr2img уключаны, выявы капіююцца\n" +#~ "з апаратуры ў праграмнае асяроддзе для маштабавання.\n" +#~ "Калі не, то вярнуцца да старога метаду маштабавання для відэадрайвераў,\n" +#~ "якія не падтрымліваюць перадачу тэкстур з апаратуры назад." + #, fuzzy #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " @@ -9000,6 +9105,12 @@ msgstr "Ліміт адначасовых злучэнняў cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Выступ падзямелляў па-над рэльефам." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Ці павінна быць паміж блокамі мапы дэсінхранізацыя анімацыі тэкстур " +#~ "блокаў." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Ці дазваляць гульцам прычыняць шкоду і забіваць іншых." diff --git a/po/bg/luanti.po b/po/bg/luanti.po index 05f92b8c4..c2ea7c245 100644 --- a/po/bg/luanti.po +++ b/po/bg/luanti.po @@ -2,9 +2,10 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-08-25 05:09+0000\n" -"Last-Translator: 109247019824 \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-11 02:02+0000\n" +"Last-Translator: 109247019824 <109247019824@users.noreply.hosted.weblate.org>" +"\n" "Language-Team: Bulgarian \n" "Language: bg\n" @@ -12,7 +13,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.7.1-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +78,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | <команда>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Избиране" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Редактиране" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Избор на папка" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Избор на файл" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Задаване" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Настройката няма описание)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Двуизмерен шум" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Отказ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Лакунарност" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октави" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Отместване" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Упоритост" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Запазване" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Мащаб" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Семе" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Разпределение по X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Разпределение по Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Разпределение по Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "абсолютна стойност" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "подразбирани" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "загладено" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(В играта трябва да включите и автоматичната експозиция)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(В играта трябва да включите и размиването)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(В играта трябва да включите и обемното осветление)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Системен език)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Достъпност" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Автоматично" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Разговори" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Изчистване" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Управление" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Изключено" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Включено" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Общи" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Придвижване" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Няма резултати" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Подразбирани настройки" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Нулиране до подразбирана стойност ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Търсене" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Разширени настройки" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Технически наименования" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Подредба на сензорния екран" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "pause_menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Модификации на клиента" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Съдържание: Игри" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Съдържание: Модификации" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(В играта трябва да включите и сенките)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "По избор" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Динамични сенки" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Силни" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Слаби" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Средни" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Много високи" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Много ниски" + #: builtin/fstk/ui.lua msgid "" msgstr "<няма достъпни>" @@ -159,19 +398,18 @@ msgstr "$1 се изтеглят…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Всички" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Назад" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" msgstr "" -"Съдържанието от ContentDB не е налично, когато Minetest е компилиран без cURL" +"Съдържанието от ContentDB не е налично, когато приложението Luanti е " +"компилирано без cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -179,7 +417,7 @@ msgstr "Изтегляне…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Препоръчани" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +439,6 @@ msgstr "Модификации" msgid "No packages could be retrieved" msgstr "Пакетите не могат да бъдат получени" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Няма резултати" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Няма обновяване" @@ -215,7 +448,6 @@ msgid "Queued" msgstr "Изчакващи" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" msgstr "Пакети с текстури" @@ -251,27 +483,14 @@ msgstr "Вече инсталирано" msgid "Base Game:" msgstr "Основна игра:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Отказ" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "Зависимости:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Грешка при получаване на зависимостите на пакет" +msgstr "Грешка при получаване на зависимостите на пакета $1" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -306,44 +525,40 @@ msgid "Overwrite" msgstr "Презаписване" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" -msgstr "Съдържание: Игри" +msgstr "Страница в ContentDB" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Описание на сървър" +msgstr "Описание" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Даряване" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Страница на форума" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Описание:" +msgstr "Сведения" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" -msgstr "Инсталиране $1" +msgstr "Инсталиране [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Дефекти" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Изходен код" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Превеждане" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -354,13 +569,12 @@ msgid "Update" msgstr "Обновяване" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Към страницата" +msgstr "Страница" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "автор $1 – $2 изтегляния – +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -392,6 +606,14 @@ msgstr "Грешка при инсталиране на $1 като $2" msgid "Unable to install a $1 as a texture pack" msgstr "$1 не може да бъде инсталирано като пакет с текстури" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Това е списък на клиентите свързани с\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Включено, има грешки)" @@ -456,12 +678,6 @@ msgstr "Няма незадължителни зависимости" msgid "Optional dependencies:" msgstr "Незадължителни зависимости:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Запазване" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Свят:" @@ -572,11 +788,11 @@ msgstr "Ниската влажност и горещините причиняв #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Mapgen" -msgstr "Генератор на карти" +msgstr "Създаване на карти" #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Mapgen flags" -msgstr "Настройки на генератора" +msgstr "Настройки за карти" #: builtin/mainmenu/dlg_create_world.lua msgid "Mapgen-specific flags" @@ -614,11 +830,6 @@ msgstr "Реки" msgid "Sea level rivers" msgstr "Реки на морското ниво" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Семе" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Плавен преход между биомите" @@ -723,13 +934,12 @@ msgid "Dismiss" msgstr "Пропускане" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Дълго време двигателят на играта Minetest се предоставяше с игра на име " -"„Minetest Game“. От Minetest 5.8.0, Minetest ще се предоставя без игра по " +"Дълго време двигателят на играта Luanti се предоставяше с игра на име " +"„Minetest Game“. От издание 5.8.0, Luanti ще се предоставя без игра по " "подразбиране." #: builtin/mainmenu/dlg_reinstall_mtg.lua @@ -764,6 +974,23 @@ msgstr "" "Този пакет с модификации има изрично зададено име в modpack.conf, което ще " "отмени всяко преименуване." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Включване всички" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Налично е издание $1" @@ -792,7 +1019,7 @@ msgstr "Никога" msgid "Visit website" msgstr "Към страницата" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Настройки" @@ -805,228 +1032,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Включете списъка на обществени сървъри и проверете връзката с интернет." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Разглеждане" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Редактиране" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Избор на папка" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Избор на файл" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Задаване" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Настройката няма описание)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Двуизмерен шум" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Лакунарност" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октави" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Отместване" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Упоритост" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Мащаб" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Разпределение по X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Разпределение по Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Разпределение по Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "абсолютна стойност" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "подразбирани" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "загладено" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Също, трябва да влючите сенките в играта)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Също, трябва да влючите сенките в играта)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Също, трябва да влючите сенките в играта)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Системен език)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Достъпност" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Разговори" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Изчистване" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Управление" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Изключено" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Включено" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Общи" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Придвижване" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Подразбирани настройки" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Нулиране до подразбирана стойност ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Търсене" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Разширени настройки" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Технически наименования" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Модификации за клиента" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Съдържание: Игри" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Съдържание: Модификации" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Включено" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Опресняването на екрана при движение е изключено" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Също, трябва да влючите сенките в играта)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "По избор" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Динамични сенки" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Силни" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Слаби" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Нормални" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Много високи" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Много слаби" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Относно" @@ -1047,10 +1052,6 @@ msgstr "Основни разработчици" msgid "Core Team" msgstr "Основен екип" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Устройство на Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Папка с данни" @@ -1153,13 +1154,15 @@ msgstr "Инсталиране на игри от ContentDB" #: builtin/mainmenu/tab_local.lua msgid "Luanti doesn't come with a game by default." -msgstr "" +msgstr "Luanti не идва с игра по подразбиране." #: builtin/mainmenu/tab_local.lua msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" +"Luanti е платформа за създаване на игри, която дава възможност за игра на " +"много различни игри и модификации." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1197,10 +1200,22 @@ msgstr "Създаване на игра" msgid "You need to install a game before you can create a world." msgstr "Необходимо е да инсталирате игра преди да създадете свят." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Премахване от избраните" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Адрес" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Клиент" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Творчески режим" @@ -1214,6 +1229,11 @@ msgstr "Щети / PvP" msgid "Favorites" msgstr "Избрани" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Игра" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Несъвместими сървъри" @@ -1226,10 +1246,26 @@ msgstr "Включване към игра" msgid "Login" msgstr "Вход" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Забавяне" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Обществени сървъри" @@ -1260,11 +1296,11 @@ msgstr "Готово!" #: src/client/client.cpp msgid "Initializing nodes" -msgstr "Иницииране на възли" +msgstr "Подготвяне на възли" #: src/client/client.cpp msgid "Initializing nodes..." -msgstr "Иницииране на възли…" +msgstr "Подготвяне на възли…" #: src/client/client.cpp msgid "Loading textures..." @@ -1272,7 +1308,7 @@ msgstr "Зареждане на текстури…" #: src/client/client.cpp msgid "Rebuilding shaders..." -msgstr "" +msgstr "Пресъздаване на шейдери…" #: src/client/clientlauncher.cpp msgid "Could not find or load game: " @@ -1314,23 +1350,6 @@ msgstr "" "\n" "Прегледайте debug.txt за повече информация." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Режим: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Обществен: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Име на сървър: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Възникна грешка при сериализиране:" @@ -1340,6 +1359,11 @@ msgstr "Възникна грешка при сериализиране:" msgid "Access denied. Reason: %s" msgstr "Достъпът е отказан. Причина: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Показана е информацията за отстраняване на дефекти" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Автоматичното движение напред е изключено" @@ -1360,6 +1384,10 @@ msgstr "Контурите на текущия блок са видими" msgid "Block bounds shown for nearby blocks" msgstr "Контурите на близките блокове са видими" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Опресняването на екрана при движение е изключено" @@ -1374,10 +1402,6 @@ msgstr "" "Контурите на блоковете не могат да бъдат показани (забранено от игра или " "модификация)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Промяна на парола" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Кинематографичният режим е изключен" @@ -1406,26 +1430,6 @@ msgstr "Грешка при свързване (изтекло време?)" msgid "Connection failed for unknown reason" msgstr "Грешка във връзката поради неизвестна причина" -#: src/client/game.cpp -msgid "Continue" -msgstr "Продължаване" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1439,31 +1443,15 @@ msgstr "Създаване на клиент…" msgid "Creating server..." msgstr "Създаване на сървър…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Показана е информацията за отстраняване на дефекти" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Грешка при създаване на клиент: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Изход към менюто" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Изход към ОС" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Режимът на бързо движение е изключен" @@ -1500,18 +1488,6 @@ msgstr "Мъглата е включена" msgid "Fog enabled by game or mod" msgstr "Мъглата е включена от игра или модификация" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Информация за играта:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Играта е на пауза" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Домакин на играта" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Дефиниции на предмети…" @@ -1548,14 +1524,6 @@ msgstr "Режимът „без изрязване“ е включен (заб msgid "Node definitions..." msgstr "Дефиниции на възли…" -#: src/client/game.cpp -msgid "Off" -msgstr "Изключено" - -#: src/client/game.cpp -msgid "On" -msgstr "Включено" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Режимът „промяна на височината“ е изключен" @@ -1568,38 +1536,22 @@ msgstr "Режимът „промяна на височината“ е вкл msgid "Profiler graph shown" msgstr "Графиката на профилатора е показана" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Отдалечен сървър" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Намиране на адрес…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Прераждане" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Изключване…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Един играч" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Сила на звука" - #: src/client/game.cpp msgid "Sound muted" msgstr "Звукът е заглушен" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Системата за звук е изключена" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "В това издание не се поддържа звукова система" @@ -1616,24 +1568,25 @@ msgstr "Сървърът вероятно използва друго издан #: src/client/game.cpp #, c-format msgid "Unable to connect to %s because IPv6 is disabled" -msgstr "" +msgstr "Грешка при свързване с %s, защото протоколът IPv6 е изключен" #: src/client/game.cpp #, c-format msgid "Unable to listen on %s because IPv6 is disabled" -msgstr "" +msgstr "Грешка при слушане на %s, защото протоколът IPv6 е изключен" #: src/client/game.cpp msgid "Unlimited viewing range disabled" -msgstr "Неограниченият обхват на видимост е изключен" +msgstr "Неограничената видимост е изключена" #: src/client/game.cpp msgid "Unlimited viewing range enabled" -msgstr "Неограниченият обхват на видимост е включен" +msgstr "Неограничената видимост е включена" #: src/client/game.cpp msgid "Unlimited viewing range enabled, but forbidden by game or mod" msgstr "" +"Неограничената видимост е включена, но е забранена от игра или модификация" #: src/client/game.cpp #, c-format @@ -1644,11 +1597,13 @@ msgstr "Видимостта е променена на %d (минимум)" #, c-format msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" msgstr "" +"Видимостта е променена на %d (минимум), но е ограничена до %d от игра или " +"модификация" #: src/client/game.cpp #, c-format msgid "Viewing range changed to %d" -msgstr "Обхватът на видимостта е променен на %d" +msgstr "Видимостта е променена на %d" #: src/client/game.cpp #, c-format @@ -1660,31 +1615,132 @@ msgstr "Видимостта е променена на %d (максимум)" msgid "" "Viewing range changed to %d (the maximum), but limited to %d by game or mod" msgstr "" +"Видимостта е променена на %d (максимум), но е ограничена до %d от игра или " +"модификация" #: src/client/game.cpp #, c-format msgid "Viewing range changed to %d, but limited to %d by game or mod" msgstr "" -"Обхватът на видимостта е променен на %d, но е ограничен до %d от игра или " -"модификация" +"Видимостта е променена на %d, но е ограничена до %d от игра или модификация" #: src/client/game.cpp #, c-format msgid "Volume changed to %d%%" -msgstr "Силата на звука е променена на %d%%" +msgstr "Силата на звука е променена на %d %%" + +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "" +"Шейдърите са включени, но GLSL не се поддържа от софтуера за управление на " +"устройството." #: src/client/game.cpp msgid "Wireframe shown" msgstr "Показани са телените рамки" -#: src/client/game.cpp -msgid "You died" -msgstr "Умряхте" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Мащабирането е спряно или от играта, или от модификация" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Режим: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Обществен: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Име на сървър: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Промяна на парола" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Продължаване" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Контроли:\n" +"При затворено меню:\n" +"- плъзгане на пръст: оглеждане\n" +"- докосване: поставяне/нанасяне на удар/използване (по подразбиране)\n" +"- дълго докосване: копаене/използване (по подразбиране)\n" +"При отворено меню/инвентар:\n" +"- двойно докосване (отвън):\n" +" → затваряне\n" +"- докосване на купчина, докосване на празно място:\n" +" → преместване на купчината\n" +"- докосване и плъзгане, докосване с втори пръст\n" +" → поставяне на единичен елемент в празно място\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Изход към менюто" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Изход към ОС" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Информация за играта:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Играта е на пауза" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Домакин на играта" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Изключено" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Включено" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Отдалечен сървър" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Прераждане" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Сила на звука" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Умряхте" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Разговорите са спрени от игра или модификация" @@ -1699,11 +1755,11 @@ msgstr "Разговорите са видими" #: src/client/gameui.cpp msgid "HUD hidden" -msgstr "HUD скрит" +msgstr "Игровият интерфейс е скрит" #: src/client/gameui.cpp msgid "HUD shown" -msgstr "HUD видим" +msgstr "Игровият интерфейс е видим" #: src/client/gameui.cpp msgid "Profiler hidden" @@ -1725,7 +1781,7 @@ msgstr "Backspace" #. ~ Usually paired with the Pause key #: src/client/keycode.cpp msgid "Break Key" -msgstr "" +msgstr "Break" #: src/client/keycode.cpp msgid "Caps Lock" @@ -1745,55 +1801,55 @@ msgstr "Delete" #: src/client/keycode.cpp msgid "Down Arrow" -msgstr "" +msgstr "Надолу" #: src/client/keycode.cpp msgid "End" -msgstr "" +msgstr "End" #: src/client/keycode.cpp msgid "Erase EOF" -msgstr "" +msgstr "Премахване EOF" #: src/client/keycode.cpp msgid "Execute" -msgstr "" +msgstr "Изпълняване" #: src/client/keycode.cpp msgid "Help" -msgstr "" +msgstr "Help" #: src/client/keycode.cpp msgid "Home" -msgstr "" +msgstr "Home" #: src/client/keycode.cpp msgid "IME Accept" -msgstr "" +msgstr "IME: Приемане" #: src/client/keycode.cpp msgid "IME Convert" -msgstr "" +msgstr "IME: Превъщане" #: src/client/keycode.cpp msgid "IME Escape" -msgstr "" +msgstr "IME: Избягване" #: src/client/keycode.cpp msgid "IME Mode Change" -msgstr "" +msgstr "IME: Смяна на режима" #: src/client/keycode.cpp msgid "IME Nonconvert" -msgstr "" +msgstr "IME: Без преобразуване" #: src/client/keycode.cpp msgid "Insert" -msgstr "" +msgstr "Insert" #: src/client/keycode.cpp msgid "Left Arrow" -msgstr "Лява стрелка" +msgstr "Наляво" #: src/client/keycode.cpp msgid "Left Button" @@ -1818,7 +1874,7 @@ msgstr "Ляв Windows" #. ~ Key name, common on Windows keyboards #: src/client/keycode.cpp msgid "Menu Key" -msgstr "" +msgstr "Клавиш Меню" #: src/client/keycode.cpp msgid "Middle Button" @@ -1826,71 +1882,71 @@ msgstr "Среден бутон" #: src/client/keycode.cpp msgid "Num Lock" -msgstr "" +msgstr "Num Lock" #: src/client/keycode.cpp msgid "Numpad *" -msgstr "" +msgstr "Цифрова клавиатура *" #: src/client/keycode.cpp msgid "Numpad +" -msgstr "" +msgstr "Цифрова клавиатура +" #: src/client/keycode.cpp msgid "Numpad -" -msgstr "" +msgstr "Цифрова клавиатура -" #: src/client/keycode.cpp msgid "Numpad ." -msgstr "" +msgstr "Цифрова клавиатура ." #: src/client/keycode.cpp msgid "Numpad /" -msgstr "" +msgstr "Цифрова клавиатура /" #: src/client/keycode.cpp msgid "Numpad 0" -msgstr "" +msgstr "Цифрова клавиатура 0" #: src/client/keycode.cpp msgid "Numpad 1" -msgstr "" +msgstr "Цифрова клавиатура 1" #: src/client/keycode.cpp msgid "Numpad 2" -msgstr "" +msgstr "Цифрова клавиатура 2" #: src/client/keycode.cpp msgid "Numpad 3" -msgstr "" +msgstr "Цифрова клавиатура 3" #: src/client/keycode.cpp msgid "Numpad 4" -msgstr "" +msgstr "Цифрова клавиатура 4" #: src/client/keycode.cpp msgid "Numpad 5" -msgstr "" +msgstr "Цифрова клавиатура 5" #: src/client/keycode.cpp msgid "Numpad 6" -msgstr "" +msgstr "Цифрова клавиатура 6" #: src/client/keycode.cpp msgid "Numpad 7" -msgstr "" +msgstr "Цифрова клавиатура 7" #: src/client/keycode.cpp msgid "Numpad 8" -msgstr "" +msgstr "Цифрова клавиатура 8" #: src/client/keycode.cpp msgid "Numpad 9" -msgstr "" +msgstr "Цифрова клавиатура 9" #: src/client/keycode.cpp msgid "OEM Clear" -msgstr "" +msgstr "OEM Изчистване" #: src/client/keycode.cpp msgid "Page Down" @@ -1898,7 +1954,7 @@ msgstr "Page Down" #: src/client/keycode.cpp msgid "Page Up" -msgstr "" +msgstr "Page Up" #. ~ Usually paired with the Break key #: src/client/keycode.cpp @@ -1907,20 +1963,20 @@ msgstr "Pause" #: src/client/keycode.cpp msgid "Play" -msgstr "" +msgstr "Изпълняване" #. ~ "Print screen" key #: src/client/keycode.cpp msgid "Print" -msgstr "" +msgstr "PrtSc" #: src/client/keycode.cpp msgid "Return Key" -msgstr "" +msgstr "Enter" #: src/client/keycode.cpp msgid "Right Arrow" -msgstr "Дясна стрелка" +msgstr "Надясно" #: src/client/keycode.cpp msgid "Right Button" @@ -1949,7 +2005,7 @@ msgstr "Scroll Lock" #. ~ Key name #: src/client/keycode.cpp msgid "Select" -msgstr "" +msgstr "Избиране" #: src/client/keycode.cpp msgid "Shift Key" @@ -1957,7 +2013,7 @@ msgstr "Shift" #: src/client/keycode.cpp msgid "Sleep" -msgstr "Sleep" +msgstr "Сън" #: src/client/keycode.cpp msgid "Snapshot" @@ -1973,15 +2029,15 @@ msgstr "Табулатор" #: src/client/keycode.cpp msgid "Up Arrow" -msgstr "" +msgstr "Нагоре" #: src/client/keycode.cpp msgid "X Button 1" -msgstr "" +msgstr "Доп. бутон 1" #: src/client/keycode.cpp msgid "X Button 2" -msgstr "" +msgstr "Доп. бутон 2" #: src/client/keycode.cpp msgid "Zoom Key" @@ -2011,29 +2067,36 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Грешка при компилиране на шейдъра „%s“." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "" +"Шейдърите са включени, но GLSL не се поддържа от софтуера за управление на " +"устройството." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp #, c-format msgid "%s is missing:" -msgstr "" +msgstr "Модификацията %s има липсващи зависимости:" #: src/content/mod_configuration.cpp msgid "" "Install and enable the required mods, or disable the mods causing errors." msgstr "" +"Инсталирайте и включете необходимите модификации или изключете тези, които " +"причиняват грешки." #: src/content/mod_configuration.cpp msgid "" "Note: this may be caused by a dependency cycle, in which case try updating " "the mods." msgstr "" +"Забележка: може да бъде предизвикано от циклична зависимост, в такъв случай " +"пробвайте да обновите модификациите." #: src/content/mod_configuration.cpp msgid "Some mods have unsatisfied dependencies:" -msgstr "Някоя модификация има неудовлетворени зависимости:" +msgstr "Някои модификации имат неудовлетворени зависимости:" #: src/gui/guiChatConsole.cpp msgid "Failed to open webpage" @@ -2053,15 +2116,15 @@ msgstr "„Aux1“ = слизане" #: src/gui/guiKeyChangeMenu.cpp msgid "Autoforward" -msgstr "Автоматично напред" +msgstr "Автом. напред" #: src/gui/guiKeyChangeMenu.cpp src/settings_translation_file.cpp msgid "Automatic jumping" msgstr "Автоматично скачане" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" -msgstr "" +msgstr "Aux1" #: src/gui/guiKeyChangeMenu.cpp msgid "Backward" @@ -2071,7 +2134,7 @@ msgstr "Назад" msgid "Block bounds" msgstr "Граници на блокове" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Промяна на камера" @@ -2095,9 +2158,9 @@ msgstr "Намал. на звука" msgid "Double tap \"jump\" to toggle fly" msgstr "Двоен „скок“ превключва летене" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" -msgstr "Пускане предмет" +msgstr "Изхвърляне" #: src/gui/guiKeyChangeMenu.cpp msgid "Forward" @@ -2111,11 +2174,11 @@ msgstr "Увелич. на обхвата" msgid "Inc. volume" msgstr "Увелич. на звука" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Инвентар" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Скок" @@ -2147,7 +2210,7 @@ msgstr "След. предмет" msgid "Prev. item" msgstr "Пред. предмет" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Обхват видимост" @@ -2159,23 +2222,23 @@ msgstr "Дясно" msgid "Screenshot" msgstr "Снимка на екрана" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Промъкване" #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle HUD" -msgstr "Превкл. HUD" +msgstr "Превключване на игровия интерфейс" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Превкл. разговори" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Превкл. бързина" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Превкл. полет" @@ -2183,19 +2246,19 @@ msgstr "Превкл. полет" msgid "Toggle fog" msgstr "Превкл. мъгла" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Превкл. карта" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Превкл. изрязване" #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle pitchmove" -msgstr "Превкл. „pitchmove“" +msgstr "Движение по погледа" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Мащабиране" @@ -2205,7 +2268,7 @@ msgstr "избор бутон" #: src/gui/guiOpenURL.cpp msgid "Open" -msgstr "" +msgstr "Отваряне" #: src/gui/guiOpenURL.cpp msgid "Open URL?" @@ -2231,7 +2294,7 @@ msgstr "Стара парола" msgid "Passwords do not match!" msgstr "Паролите не съвпадат!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Изход" @@ -2244,37 +2307,68 @@ msgstr "Без звук" msgid "Sound Volume: %d%%" msgstr "Сила на звука: %d%%" -#: src/gui/touchcontrols.cpp -msgid "Joystick" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" -msgstr "" - -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp #, fuzzy +msgid "Add button" +msgstr "Среден бутон" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Готово!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Отдалечен сървър" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Джойстик" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "Допълнително меню" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Превкл. мъгла" +msgstr "Превключване отстраняването на грешки" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"С това име е свързан друг клиент. Ако приложението се е сринало, опитайте " +"отново след минута." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" +msgstr "Празните пароли са забранени. Задайте парола и пробвайте отново." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Грешка на сървъра" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Стара парола" +msgstr "Невярна парола" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2297,46 +2391,48 @@ msgstr "Името е заето. Изберете друго" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Името на играча съдържа непозволени знаци" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Името на играча е твърде дълго." +msgstr "Името на играча не е позволено" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Изключване…" +msgstr "Сървърът се изключва" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "Възникна грешка в сървъра. Връзката ще прекъсне." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "Сървърът работи в режим на един играч. Не може да бъдете свързани." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Твърде много потребители" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Неизвестна причина за изклюпване." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Клиентът е изпратил нещо неочаквано за сървъра. Свържете се отново или " +"обновете клиента." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Изданието на клиента не се поддържа.\n" +"Свържете се с администратора на сървъра." #: src/server.cpp #, c-format @@ -2368,57 +2464,62 @@ msgstr "" #: src/settings_translation_file.cpp msgid "2D noise that controls the shape/size of ridged mountains." -msgstr "" +msgstr "Двуизмерен шум, управляващ формата и размера на планинските хребети." #: src/settings_translation_file.cpp msgid "2D noise that controls the shape/size of rolling hills." -msgstr "" +msgstr "Двуизмерен шум, управляващ формата и размера на хълмовете." #: src/settings_translation_file.cpp msgid "2D noise that controls the shape/size of step mountains." -msgstr "" +msgstr "Двуизмерен шум, управляващ формата и размера на планините." #: src/settings_translation_file.cpp msgid "2D noise that controls the size/occurrence of ridged mountain ranges." msgstr "" +"Двуизмерен шум, управляващ размера и разпространението на планинските вериги." #: src/settings_translation_file.cpp msgid "2D noise that controls the size/occurrence of rolling hills." -msgstr "" +msgstr "Двуизмерен шум, управляващ размера и разпространението на хълмовете." #: src/settings_translation_file.cpp msgid "2D noise that controls the size/occurrence of step mountain ranges." msgstr "" +"Двуизмерен шум, определящ размера и разпространението на степните планински " +"хребети." #: src/settings_translation_file.cpp msgid "2D noise that locates the river valleys and channels." -msgstr "" +msgstr "Двуизмерен шум, определящ разположението на речните долини и корита." #: src/settings_translation_file.cpp msgid "3D" -msgstr "" +msgstr "Триизмерни" #: src/settings_translation_file.cpp msgid "3D clouds" -msgstr "" +msgstr "Обемни облаци" #: src/settings_translation_file.cpp msgid "3D mode" -msgstr "" +msgstr "Триизмерен режим" #: src/settings_translation_file.cpp msgid "3D mode parallax strength" -msgstr "" +msgstr "Сила на паралакса в триизмерен режим" #: src/settings_translation_file.cpp msgid "3D noise defining giant caverns." -msgstr "" +msgstr "Триизмерен шум, определящ огромните пещери." #: src/settings_translation_file.cpp msgid "" "3D noise defining mountain structure and height.\n" "Also defines structure of floatland mountain terrain." msgstr "" +"Триизмерен шум, определящ структурата и височината на планините.\n" +"Също отгваря за структурата на планините на небесните острови." #: src/settings_translation_file.cpp msgid "" @@ -2430,19 +2531,21 @@ msgstr "" #: src/settings_translation_file.cpp msgid "3D noise defining structure of river canyon walls." -msgstr "" +msgstr "Триизмерен шум, определящ структурата на стените на речните каньони." #: src/settings_translation_file.cpp msgid "3D noise defining terrain." -msgstr "" +msgstr "Триизмерен шум, определящ терена." #: src/settings_translation_file.cpp msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." msgstr "" +"Триизмерен шум за планинските козирки, скали и т.н. Обикновено в малки " +"вариации." #: src/settings_translation_file.cpp msgid "3D noise that determines number of dungeons per mapchunk." -msgstr "" +msgstr "Триизмерен шум, определящ броя на подзенията на парче от картата." #: src/settings_translation_file.cpp msgid "" @@ -2453,8 +2556,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2462,22 +2564,27 @@ msgid "" "A chosen map seed for a new map, leave empty for random.\n" "Will be overridden when creating a new world in the main menu." msgstr "" +"Избраното семе за нова карта. Оставете празно, за случайна стойност.\n" +"Ще бъде презаписано при създаване на нов свят от главното меню." #: src/settings_translation_file.cpp msgid "A message to be displayed to all clients when the server crashes." msgstr "" +"Съобщение, което да бъде показано на всички клиенти при срив на сървъра." #: src/settings_translation_file.cpp msgid "A message to be displayed to all clients when the server shuts down." msgstr "" +"Съобщение, което да бъде показано на всички клиенти при изключване на " +"сървъра." #: src/settings_translation_file.cpp msgid "ABM interval" -msgstr "" +msgstr "Интервал на ABM" #: src/settings_translation_file.cpp msgid "ABM time budget" -msgstr "" +msgstr "Ограничение на времето на ABM" #: src/settings_translation_file.cpp msgid "Absolute limit of queued blocks to emerge" @@ -2485,32 +2592,28 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Acceleration in air" -msgstr "" +msgstr "Ускорение във въздуха" #: src/settings_translation_file.cpp msgid "Acceleration of gravity, in nodes per second per second." -msgstr "" +msgstr "Ускорение на земното притегляне във възел/секунда²." #: src/settings_translation_file.cpp msgid "Active Block Modifiers" -msgstr "" +msgstr "Модификатори на активния блок (ABM)" #: src/settings_translation_file.cpp msgid "Active block management interval" -msgstr "" +msgstr "Интервал на управление на активни блокове" #: src/settings_translation_file.cpp msgid "Active block range" -msgstr "" +msgstr "Обхват на активни блокове" #: src/settings_translation_file.cpp msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Добавят се отломки при копане на възел." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2531,6 +2634,16 @@ msgstr "Име на администратора" #: src/settings_translation_file.cpp msgid "Advanced" +msgstr "Допълнителни" + +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." msgstr "" #: src/settings_translation_file.cpp @@ -2548,11 +2661,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Always fly fast" -msgstr "" +msgstr "Винаги бърз полет" #: src/settings_translation_file.cpp msgid "Ambient occlusion gamma" -msgstr "" +msgstr "Гама на видимите блокове в далечина" #: src/settings_translation_file.cpp msgid "Amplifies the valleys." @@ -2650,10 +2763,16 @@ msgid "" "This is especially useful for very large viewing range (upwards of 500).\n" "Stated in MapBlocks (16 nodes)." msgstr "" +"На това разстояние сървърът ще извърши по-проста и по-евтина\n" +"проверка за видимост на възли. По-малките стойности потенциално\n" +"подобряват производителността за сметка на временно видими дефекти (липсващи " +"блокове).\n" +"Това е особено полезно за много голям обхват на видимостта (над 500).\n" +"Изразено в MapBlocks (16 възела)." #: src/settings_translation_file.cpp msgid "Audio" -msgstr "" +msgstr "Звук" #: src/settings_translation_file.cpp msgid "Automatically jump up single-node obstacles." @@ -2712,9 +2831,8 @@ msgid "Biome noise" msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block bounds HUD radius" -msgstr "Граници на блокове" +msgstr "Радиус на интерфейса за граници на блокове" #: src/settings_translation_file.cpp msgid "Block cull optimize distance" @@ -2862,23 +2980,23 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Client" -msgstr "" +msgstr "Клиент" #: src/settings_translation_file.cpp msgid "Client Mesh Chunksize" -msgstr "" +msgstr "Размер на меша за клиента" #: src/settings_translation_file.cpp msgid "Client and Server" -msgstr "" +msgstr "Клиент и сървър" #: src/settings_translation_file.cpp msgid "Client modding" -msgstr "" +msgstr "Модификации на клиента" #: src/settings_translation_file.cpp msgid "Client side modding restrictions" -msgstr "" +msgstr "Ограничения на модификациите на клиента" #: src/settings_translation_file.cpp msgid "Client-side Modding" @@ -2890,31 +3008,31 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Climbing speed" -msgstr "" +msgstr "Скорост на катерене" #: src/settings_translation_file.cpp msgid "Cloud radius" -msgstr "" +msgstr "Радиус на облаците" #: src/settings_translation_file.cpp msgid "Clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" +msgstr "Облаци" #: src/settings_translation_file.cpp msgid "Clouds in menu" +msgstr "Облаци в менюто" + +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp msgid "Colored fog" -msgstr "" +msgstr "Цветна мъгла" #: src/settings_translation_file.cpp msgid "Colored shadows" -msgstr "" +msgstr "Цветни сенки" #: src/settings_translation_file.cpp msgid "" @@ -2930,7 +3048,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -2963,11 +3081,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Connect glass" -msgstr "" +msgstr "Съединяване на стъклата" #: src/settings_translation_file.cpp msgid "Connect to external media server" -msgstr "" +msgstr "Свързване към външен сървър за медия" #: src/settings_translation_file.cpp msgid "Connects glass if supported by node." @@ -3069,6 +3187,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3220,18 +3346,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "За разработчици" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Отломки при копане" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3257,6 +3375,14 @@ msgstr "Полет при двоен скок" #: src/settings_translation_file.cpp msgid "Double-tapping the jump key toggles fly mode." +msgstr "Двойно докосване на скок включва режим на летене." + +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." msgstr "" #: src/settings_translation_file.cpp @@ -3273,24 +3399,23 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Dungeon noise" -msgstr "" +msgstr "Шум в подземията" #: src/settings_translation_file.cpp msgid "Effects" -msgstr "" +msgstr "Ефекти" #: src/settings_translation_file.cpp msgid "Enable Automatic Exposure" -msgstr "" +msgstr "Автоматична експозиция" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Bloom" -msgstr "Включване всички" +msgstr "Включване ефекта на размиване" #: src/settings_translation_file.cpp msgid "Enable Bloom Debug" -msgstr "" +msgstr "Включване на отстраняването на дефекти при размиване" #: src/settings_translation_file.cpp #, fuzzy @@ -3334,8 +3459,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3373,6 +3498,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable smooth lighting with simple ambient occlusion." msgstr "" +"Плавно осветление с обикновено определяне на видимите блокове в далечина." #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3408,8 +3534,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3424,20 +3549,13 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enables smooth scrolling." -msgstr "Сензорен екран" +msgstr "Включва плавно прелистване." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." @@ -3568,31 +3686,31 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Floatland density" -msgstr "" +msgstr "Плътност на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland maximum Y" -msgstr "" +msgstr "Максимум по оста Y на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland minimum Y" -msgstr "" +msgstr "Минимум по оста Y на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland noise" -msgstr "" +msgstr "Шум на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland taper exponent" -msgstr "" +msgstr "Експонента на конусовидност на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland tapering distance" -msgstr "" +msgstr "Разстояние на конусовидност на небесните острови" #: src/settings_translation_file.cpp msgid "Floatland water level" -msgstr "" +msgstr "Ниво на водата на небесните острови" #: src/settings_translation_file.cpp msgid "Fog" @@ -3734,17 +3852,13 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Контролери" #: src/settings_translation_file.cpp msgid "Global callbacks" -msgstr "" +msgstr "Глобални обратни извиквания" #: src/settings_translation_file.cpp msgid "" @@ -3767,31 +3881,31 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Graphics" -msgstr "" +msgstr "Графика" #: src/settings_translation_file.cpp msgid "Graphics and Audio" -msgstr "" +msgstr "Графика и звук" #: src/settings_translation_file.cpp msgid "Gravity" -msgstr "" +msgstr "Гравитация" #: src/settings_translation_file.cpp msgid "Ground level" -msgstr "" +msgstr "Ниво на земята" #: src/settings_translation_file.cpp msgid "Ground noise" -msgstr "" +msgstr "Шум на земята" #: src/settings_translation_file.cpp msgid "HTTP mods" -msgstr "" +msgstr "Модификации на HTTP" #: src/settings_translation_file.cpp msgid "HUD" -msgstr "" +msgstr "Игрови интерфейс" #: src/settings_translation_file.cpp msgid "HUD scaling" @@ -3961,12 +4075,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3985,6 +4093,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -3992,6 +4107,11 @@ msgid "" "sent to the client by 50-80%. Clients will no longer receive most\n" "invisible blocks, so that the utility of noclip mode is reduced." msgstr "" +"Когато е включено, сървърът ще извърши премахване на далечните блокове от " +"картата въз основа на\n" +"на позицията на очите на играча. Това може да намали броя на блоковете\n" +"изпратени към клиента с 50-80 %. Клиентите вече няма да получават повечето\n" +"невидими блокове, така че полезността на режима noclip намалява." #: src/settings_translation_file.cpp msgid "" @@ -4023,7 +4143,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "If this is set, players will always (re)spawn at the given position." -msgstr "" +msgstr "Ако е зададено, играчите ще се прераждат на указаното място." #: src/settings_translation_file.cpp msgid "Ignore world errors" @@ -4079,10 +4199,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4263,6 +4379,8 @@ msgid "" "Length of time between Active Block Modifier (ABM) execution cycles, stated " "in seconds." msgstr "" +"Време между циклите на изпълнение на модификатора на текущия блок (ABM), в " +"секунди." #: src/settings_translation_file.cpp msgid "Length of time between NodeTimer execution cycles, stated in seconds." @@ -4383,7 +4501,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Lower Y limit of floatlands." -msgstr "" +msgstr "Долно ограничение по оста Y на небесните острови." #: src/settings_translation_file.cpp msgid "Main menu script" @@ -4454,6 +4572,10 @@ msgid "" "'floatlands': Floating land masses in the atmosphere.\n" "'caverns': Giant caves deep underground." msgstr "" +"Атрибути за създаване на карти v7.\n" +"„ridges“: реки.\n" +"„floatlands“: плуващи в атмосферата земни маси.\n" +"„caverns“: гигантски пещери дълбоко под земята." #: src/settings_translation_file.cpp msgid "Map generation limit" @@ -4697,10 +4819,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4733,6 +4851,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4755,7 +4877,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Modifies the size of the HUD elements." -msgstr "" +msgstr "Променя размера на елементите на игровия интерфейс." #: src/settings_translation_file.cpp msgid "Monospace font path" @@ -4822,7 +4944,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -4893,25 +5015,25 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Number of messages a player may send per 10 seconds." msgstr "" +"Броя на съобщенията, които играч може да изпрати за период от 10 секунди." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of threads to use for mesh generation.\n" "Value of 0 (default) will let Luanti autodetect the number of available " "threads." msgstr "" "Брой процесорни нишки, използвани за създаване на мрежа.\n" -"Стойност 0 (подразбирана) ще остави Minetest автоматично да ооредели броя " +"Стойност 0 (подразбирана) ще остави Luanti автоматично да определи броя " "налични нишки." #: src/settings_translation_file.cpp msgid "Occlusion Culler" -msgstr "" +msgstr "Метод на изчистване на невидими блокове" #: src/settings_translation_file.cpp msgid "Occlusion Culling" -msgstr "" +msgstr "Изчистване на невидими блокове" #: src/settings_translation_file.cpp msgid "" @@ -5064,6 +5186,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"Радиус, който да бъде използван при показване на границите на блокове, " +"когато на настройката е зададено да са видими близките блокове." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5265,17 +5389,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5331,7 +5457,7 @@ msgstr "Сървър" #: src/settings_translation_file.cpp msgid "Server Gameplay" -msgstr "Играене на сървъра" +msgstr "Играта на сървъра" #: src/settings_translation_file.cpp msgid "Server Security" @@ -5366,7 +5492,7 @@ msgstr "Порт на сървъра" #: src/settings_translation_file.cpp msgid "Server-side occlusion culling" -msgstr "" +msgstr "Изчистване на невидимите блокове от страна на сървъра" #: src/settings_translation_file.cpp msgid "Server/Env Performance" @@ -5435,10 +5561,14 @@ msgid "" "Set to true to enable bloom effect.\n" "Bright colors will bleed over the neighboring objects." msgstr "" +"Включва ефекта на размиване.\n" +"Ярките цветове ще преливат върху съседните обекти." #: src/settings_translation_file.cpp msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." msgstr "" +"Задайте стойност „true“, за да бъде включен ефекта на обемно осветление " +"(познато като „Божествени лъчи“)." #: src/settings_translation_file.cpp msgid "Set to true to enable waving leaves." @@ -5459,6 +5589,13 @@ msgid "" "top-left - processed base image, top-right - final image\n" "bottom-left - raw base image, bottom-right - bloom texture." msgstr "" +"Включва изобразяването на сведения за отстраняване на дефекти при ефекта на " +"размиване.\n" +"В този режим екранът е разделен на 4 квадранта:\n" +"горе дясно – обработено начално изображение, горе дясно – крайно " +"изображение\n" +"долу ляво – необработено начално изображение, долу дясно – текстура на " +"размиването." #: src/settings_translation_file.cpp msgid "" @@ -5471,16 +5608,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5509,7 +5636,7 @@ msgstr "Гама на силата на сенките" #: src/settings_translation_file.cpp msgid "Show debug info" -msgstr "" +msgstr "Показване на сведения за отстраняване на дефекти" #: src/settings_translation_file.cpp msgid "Show entity selection boxes" @@ -5585,9 +5712,8 @@ msgid "Smooth lighting" msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Smooth scrolling" -msgstr "Гладко осветление" +msgstr "Плавно прелистване" #: src/settings_translation_file.cpp msgid "" @@ -5610,9 +5736,8 @@ msgid "Sneaking speed, in nodes per second." msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "Тримерни облаци" +msgstr "Меки облаци" #: src/settings_translation_file.cpp msgid "Soft shadow radius" @@ -5643,10 +5768,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5658,7 +5782,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Static spawn point" -msgstr "" +msgstr "Постоянна точка на прераждане" #: src/settings_translation_file.cpp msgid "Steepness noise" @@ -5851,6 +5975,12 @@ msgid "" "maintained.\n" "This should be configured together with active_object_send_range_blocks." msgstr "" +"Радиусът на обема от блокове около всеки играч, който е обект на\n" +"свързаните с активни блокове действия, посочен в блокове на картата (16 " +"възела).\n" +"В активните блокове се зареждат обекти и се изпълняват ABM.\n" +"Това е и минималният обхват, в който се поддържат активни обекти (зверове).\n" +"Трябва да бъде настройвано заедно с active_object_send_range_blocks." #: src/settings_translation_file.cpp msgid "" @@ -5885,6 +6015,8 @@ msgid "" "The time budget allowed for ABMs to execute on each step\n" "(as a fraction of the ABM Interval)" msgstr "" +"Ограничениенна време, предвидено за изпълнение на всяка стъпка от ABM\n" +"(като част от интервала на ABM)" #: src/settings_translation_file.cpp msgid "" @@ -5927,10 +6059,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5964,9 +6092,8 @@ msgid "Touchscreen" msgstr "Сензорен екран" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "Сензорен екран" +msgstr "Сензорно управление" #: src/settings_translation_file.cpp msgid "Touchscreen sensitivity" @@ -5992,6 +6119,11 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "Сортиране на прозрачността по отдалеченост" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Сортиране на прозрачността по отдалеченост" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6042,7 +6174,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6065,16 +6200,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6125,7 +6258,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "User Interfaces" -msgstr "Потребителски интерфейси" +msgstr "Интерфейси" #: src/settings_translation_file.cpp msgid "VSync" @@ -6311,20 +6444,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6335,10 +6460,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6361,8 +6482,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6371,18 +6491,20 @@ msgstr "" msgid "" "Whether to show the client debug info (has the same effect as hitting F5)." msgstr "" +"Показване на информация за отстраняване на дефекти (същото като натискане на " +"F5)." #: src/settings_translation_file.cpp msgid "Width component of the initial window size." -msgstr "" +msgstr "Начална ширина на прозореца." #: src/settings_translation_file.cpp msgid "Width of the selection box lines around nodes." -msgstr "" +msgstr "Дебелина на рамката при избор на възел." #: src/settings_translation_file.cpp msgid "Window maximized" -msgstr "" +msgstr "Прозорецът е увеличен максимално" #: src/settings_translation_file.cpp msgid "" @@ -6390,6 +6512,9 @@ msgid "" "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" +"Само за Windows: стартира Luanti с прозорец на командния ред във фонов " +"режим.\n" +"Прозорецът съдържа същата информация като файла debug.txt (подразбирано име)." #: src/settings_translation_file.cpp msgid "" @@ -6413,25 +6538,27 @@ msgstr "" #: src/settings_translation_file.cpp msgid "World-aligned textures mode" -msgstr "" +msgstr "Режим на подравняване на текстурите към света" #: src/settings_translation_file.cpp msgid "Y of flat ground." -msgstr "" +msgstr "Y на равния терен." #: src/settings_translation_file.cpp msgid "" "Y of mountain density gradient zero level. Used to shift mountains " "vertically." msgstr "" +"Нулево ниво по оста Y на плътностния градиент на планините. Използвано за " +"вертикалното им отместване." #: src/settings_translation_file.cpp msgid "Y of upper limit of large caves." -msgstr "" +msgstr "Горна граница по оста Y на големите пещерите." #: src/settings_translation_file.cpp msgid "Y-distance over which caverns expand to full size." -msgstr "" +msgstr "Разстояние по оста Y, над което пещерите достигат пълния си размер." #: src/settings_translation_file.cpp msgid "" @@ -6443,23 +6570,23 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Y-level of average terrain surface." -msgstr "" +msgstr "Ниво по оста Y на средната височина на релефа." #: src/settings_translation_file.cpp msgid "Y-level of cavern upper limit." -msgstr "" +msgstr "Ниво по оста Y на горната граница на пещерите." #: src/settings_translation_file.cpp msgid "Y-level of higher terrain that creates cliffs." -msgstr "" +msgstr "Ниво по оста Y на високия релеф, формиращ планини." #: src/settings_translation_file.cpp msgid "Y-level of lower terrain and seabed." -msgstr "" +msgstr "Ниво по оста Y на ниския релеф и морското дъно." #: src/settings_translation_file.cpp msgid "Y-level of seabed." -msgstr "" +msgstr "Ниво по оста Y на морското дъно." #: src/settings_translation_file.cpp msgid "cURL" @@ -6467,15 +6594,15 @@ msgstr "cURL" #: src/settings_translation_file.cpp msgid "cURL file download timeout" -msgstr "" +msgstr "Изчакване за изтегляне с cURL" #: src/settings_translation_file.cpp msgid "cURL interactive timeout" -msgstr "" +msgstr "Изчакване за взаимодействие с cURL" #: src/settings_translation_file.cpp msgid "cURL parallel limit" -msgstr "" +msgstr "Ограничение на едновременните връзки на cURL" #~ msgid "- Address: " #~ msgstr "- Адрес: " @@ -6492,6 +6619,9 @@ msgstr "" #~ msgid "< Back to Settings page" #~ msgstr "Главно меню" +#~ msgid "Adds particles when digging a node." +#~ msgstr "Добавят се отломки при копане на възел." + #~ msgid "All Settings" #~ msgstr "Всички настройки" @@ -6514,6 +6644,9 @@ msgstr "" #~ msgid "Change keys" #~ msgstr "Промяна на клавиши" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Облаците са ефекти от страна на клиента." + #~ msgid "Connect" #~ msgstr "Свързване" @@ -6558,9 +6691,21 @@ msgstr "" #~ msgid "Creative" #~ msgstr "Творчески" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "" +#~ "Сведенията за отстраняване на дефекти и графиките на профилиране са скрити" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Сведенията за отстраняване на дефекти, графиките на профилиране и " +#~ "телените рамки са скрити" + #~ msgid "Del. Favorite" #~ msgstr "Премах. любим" +#~ msgid "Digging particles" +#~ msgstr "Отломки при копане" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "Неограниченият обхват на видимост е изключен" @@ -6574,6 +6719,9 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Динамични сенки: " +#~ msgid "Enable" +#~ msgstr "Включване" + #~ msgid "Enable creative mode for all players" #~ msgstr "Задаване на творчески режим на всички играчи" @@ -6590,9 +6738,6 @@ msgstr "" #~ "Бърздо движение чрез клавиш „Aux1“.\n" #~ "Изисква правото „fast“ от сървъра." -#~ msgid "Game" -#~ msgstr "Игра" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Настройки" @@ -6619,6 +6764,9 @@ msgstr "" #~ msgid "Install: file: \"$1\"" #~ msgstr "Инсталиране: файл: „$1“" +#~ msgid "Irrlicht device:" +#~ msgstr "Устройство на Irrlicht:" + #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" @@ -6684,9 +6832,15 @@ msgstr "" #~ msgid "Shaders (experimental)" #~ msgstr "Земни маси в небето (експериментално)" +#~ msgid "Shaders are disabled." +#~ msgstr "Шейдерите са изключени." + #~ msgid "Simple Leaves" #~ msgstr "Обикновени листа" +#~ msgid "Sound system is disabled" +#~ msgstr "Системата за звук е изключена" + #~ msgid "Texturing:" #~ msgstr "Текстуриране:" @@ -6696,6 +6850,9 @@ msgstr "" #~ msgid "The value must not be larger than $1." #~ msgstr "Стойността трябва да е най-много $1." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Тази настройка не се препоръчва." + #~ msgid "Uninstall Package" #~ msgstr "Премахване на пакет" diff --git a/po/ca/luanti.po b/po/ca/luanti.po index 07b077a50..91af625ee 100644 --- a/po/ca/luanti.po +++ b/po/ca/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Catalan (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-10-06 05:16+0000\n" "Last-Translator: Joaquín Villalba \n" "Language-Team: Catalan ] [-t]" msgstr "[tot | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Navegar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select directory" +msgstr "Selecciona el fitxer del mod:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select file" +msgstr "Selecciona el fitxer del mod:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Seleccionar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Cap descripció d'ajustament donada)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "2D Noise" +msgstr "Soroll de cova #1" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancel·lar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Guardar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Llavor" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "defaults" +msgstr "Joc per defecte" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Xat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Netejar" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controls" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desactivat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activat" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Moviment ràpid" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +#, fuzzy +msgid "No results" +msgstr "Cap resultat" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Restablir per defecte" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Buscar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar els noms tècnics" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Llindar tàctil (px)" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Seleccionar un món:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Continuar" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Continuar" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -171,7 +421,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Enrere" @@ -209,12 +458,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "No s'ha pogut obtenir cap paquet" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "No results" -msgstr "Cap resultat" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -266,18 +509,6 @@ msgstr "La tecla s'està utilitzant" msgid "Base Game:" msgstr "Ocultar Joc" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancel·lar" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -417,6 +648,12 @@ msgstr "Error al instal·lar $1 en $2" msgid "Unable to install a $1 as a texture pack" msgstr "Error al instal·lar $1 en $2" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Habilitat, té algún error)" @@ -485,12 +722,6 @@ msgstr "Dependències opcionals:" msgid "Optional dependencies:" msgstr "Dependències opcionals:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Guardar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Món:" @@ -653,11 +884,6 @@ msgstr "Soroll de cova #1" msgid "Sea level rivers" msgstr "Rius a nivell del mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Llavor" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transició suau entre els biomes" @@ -800,6 +1026,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Activar tot" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -824,7 +1067,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Configuració" @@ -838,235 +1081,6 @@ msgstr "" "Intenta tornar a habilitar la llista de servidors públics i comprovi la seva " "connexió a Internet ." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Navegar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select directory" -msgstr "Selecciona el fitxer del mod:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select file" -msgstr "Selecciona el fitxer del mod:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Seleccionar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Cap descripció d'ajustament donada)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "2D Noise" -msgstr "Soroll de cova #1" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "defaults" -msgstr "Joc per defecte" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Xat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Netejar" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controls" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desactivat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activat" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Moviment ràpid" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Restablir per defecte" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Buscar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar els noms tècnics" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Seleccionar un món:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Continuar" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Continuar" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Activat" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Tecla alternativa per a l'actualització de la càmera" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1088,10 +1102,6 @@ msgstr "Desenvolupadors del nucli" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1250,11 +1260,23 @@ msgstr "Ocultar Joc" msgid "You need to install a game before you can create a world." msgstr "Heu d'instal·lar un joc abans d'instal·lar un mod" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Esborra preferit" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "Adreça BIND" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Client" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Mode creatiu" @@ -1270,6 +1292,11 @@ msgstr "Dany" msgid "Favorites" msgstr "Preferit" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Joc" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1283,10 +1310,27 @@ msgstr "Ocultar Joc" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Pas de servidor dedicat" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1376,24 +1420,6 @@ msgstr "" "\n" "Comprovi debug.txt per a detalls." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "- Public: " -msgstr "Públic" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1404,6 +1430,11 @@ msgstr "Ha ocorregut un error:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Tecla alternativa per a la informació de la depuració" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1426,6 +1457,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Camera update disabled" @@ -1440,10 +1475,6 @@ msgstr "Tecla alternativa per a l'actualització de la càmera" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Canviar contrasenya" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1475,39 +1506,6 @@ msgstr "Error de connexió (¿temps esgotat?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuar" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controls predeterminats:\n" -"Amb el menú ocult:\n" -"- Toc simple: botó activar\n" -"- Toc doble: posar / utilitzar\n" -"- Lliscar dit: mirar al voltant\n" -"Amb el menú / inventari visible:\n" -"- Toc doble (fora):\n" -" -> tancar\n" -"- Toc a la pila d'objectes:\n" -" -> moure la pila\n" -"- Toc i arrossegar, toc amb 2 dits:\n" -" -> col·locar només un objecte\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1521,32 +1519,16 @@ msgstr "Creant client ..." msgid "Creating server..." msgstr "Creant servidor ..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "Debug info shown" msgstr "Tecla alternativa per a la informació de la depuració" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Creant client ..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Eixir al menú" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Eixir al S.O" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1587,20 +1569,6 @@ msgstr "Activat" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "Game paused" -msgstr "Jocs" - -#: src/client/game.cpp -#, fuzzy -msgid "Hosting server" -msgstr "Creant servidor ..." - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definicions d'objectes ..." @@ -1639,14 +1607,6 @@ msgstr "" msgid "Node definitions..." msgstr "Definicions dels nodes ..." -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1659,40 +1619,23 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -#, fuzzy -msgid "Remote server" -msgstr "Anunciar servidor" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Resolent adreça ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reaparèixer" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Tancant ..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Un jugador" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volum del so" - #: src/client/game.cpp #, fuzzy msgid "Sound muted" msgstr "Volum del so" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1765,18 +1708,120 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Has mort" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Public: " +msgstr "Públic" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Canviar contrasenya" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controls predeterminats:\n" +"Amb el menú ocult:\n" +"- Toc simple: botó activar\n" +"- Toc doble: posar / utilitzar\n" +"- Lliscar dit: mirar al voltant\n" +"Amb el menú / inventari visible:\n" +"- Toc doble (fora):\n" +" -> tancar\n" +"- Toc a la pila d'objectes:\n" +" -> moure la pila\n" +"- Toc i arrossegar, toc amb 2 dits:\n" +" -> col·locar només un objecte\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Eixir al menú" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Eixir al S.O" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Game paused" +msgstr "Jocs" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Hosting server" +msgstr "Creant servidor ..." + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Remote server" +msgstr "Anunciar servidor" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reaparèixer" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volum del so" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Has mort" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2124,7 +2169,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Error al instal·lar $1 en $2" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2176,7 +2221,7 @@ msgstr "Avant" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2188,7 +2233,7 @@ msgstr "Arrere" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "Configurar controls" @@ -2213,7 +2258,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "Dos tocs \"botar\" per volar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Amollar" @@ -2230,11 +2275,11 @@ msgstr "" msgid "Inc. volume" msgstr "Volum del so" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventari" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Botar" @@ -2268,7 +2313,7 @@ msgstr "Següent" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Seleccionar distancia" @@ -2280,7 +2325,7 @@ msgstr "Dreta" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Discreció" @@ -2289,16 +2334,16 @@ msgstr "Discreció" msgid "Toggle HUD" msgstr "Activar volar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "Activar ràpid" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Activar ràpid" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Activar volar" @@ -2307,12 +2352,12 @@ msgstr "Activar volar" msgid "Toggle fog" msgstr "Activar volar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "Activar noclip" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Activar noclip" @@ -2321,7 +2366,7 @@ msgstr "Activar noclip" msgid "Toggle pitchmove" msgstr "Activar ràpid" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2358,7 +2403,7 @@ msgstr "Contrasenya vella" msgid "Passwords do not match!" msgstr "Les contrasenyes no coincideixen!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Tancar" @@ -2372,15 +2417,46 @@ msgstr "Utilitza la tecla" msgid "Sound Volume: %d%%" msgstr "Volum de so: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Botó del mig" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Completat!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Anunciar servidor" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Activar volar" @@ -2587,8 +2663,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Suport 3D.\n" "Currently supported:\n" @@ -2656,10 +2731,6 @@ msgstr "Rang del bloc actiu" msgid "Active object send range" msgstr "Rang d'enviament de l'objecte actiu" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2683,6 +2754,16 @@ msgstr "Nom del món" msgid "Advanced" msgstr "Avançat" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3075,15 +3156,14 @@ msgstr "Radi del núvol" msgid "Clouds" msgstr "Núvols" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Els núvols són un efecte de costat del client." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Núvols en el menú" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Boira de color" @@ -3107,7 +3187,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3256,6 +3336,14 @@ msgstr "Nivell de registre de depuració" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Pas de servidor dedicat" @@ -3409,20 +3497,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Informació del mod:" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "Partícules" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3450,6 +3529,14 @@ msgstr "Polsar dues vegades \"botar\" per volar" msgid "Double-tapping the jump key toggles fly mode." msgstr "Polsar dues vegades \"botar\" per alternar el mode de vol." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3526,8 +3613,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3601,8 +3688,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3617,12 +3703,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3927,10 +4007,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4163,12 +4239,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4187,6 +4257,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4281,10 +4358,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4915,10 +4988,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4952,6 +5021,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -5042,7 +5115,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5492,17 +5565,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5720,16 +5795,6 @@ msgstr "" msgid "Shader path" msgstr "Ombres" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Ombres" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5899,10 +5964,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6191,10 +6255,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6259,6 +6319,10 @@ msgstr "Moviment de les Fulles" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6309,7 +6373,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6333,16 +6400,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Límit absolut de cues emergents" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6585,20 +6650,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6609,10 +6666,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6635,8 +6688,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6898,6 +6950,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "Netejar textures transparents" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Els núvols són un efecte de costat del client." + #~ msgid "Command key" #~ msgstr "Tecla comandament" @@ -6992,6 +7048,10 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "Tecla dreta" +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "Partícules" + #, fuzzy #~ msgid "Download a game, such as Minetest Game, from minetest.net" #~ msgstr "" @@ -7004,6 +7064,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "Descarregant $1, si us plau esperi ..." +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Activat" + #~ msgid "Enable VBO" #~ msgstr "Activar VBO" @@ -7024,9 +7088,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Tecla Avançar" -#~ msgid "Game" -#~ msgstr "Joc" - #, fuzzy #~ msgid "Generate Normal Maps" #~ msgstr "Generar Mapes Normals" @@ -7058,551 +7119,551 @@ msgstr "" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per disminuir el rang de visió.\n" #~ "Mira\n" -#~ "http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per disminuir el rang de visió.\n" #~ "Mira\n" -#~ "http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per incrementar el rang de visió.\n" #~ "Mira\n" -#~ "http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per incrementar el rang de visió.\n" #~ "Mira\n" -#~ "http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap arrere.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure avant al jugador.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a l'esquerra.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a la dreta.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per obrir el inventari.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a l'esquerra.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a la dreta.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a l'esquerra.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per moure el jugador cap a la dreta.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla per botar.\n" -#~ "Veure http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Veure http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -7705,6 +7766,13 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Selecciona el fitxer del mod:" +#~ msgid "Shaders" +#~ msgstr "Ombres" + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Tecla alternativa per a l'actualització de la càmera" + #~ msgid "Simple Leaves" #~ msgstr "Fulles senzilles" diff --git a/po/cs/luanti.po b/po/cs/luanti.po index 4ceeee8ca..9e978f5b1 100644 --- a/po/cs/luanti.po +++ b/po/cs/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Czech (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-22 09:40+0000\n" -"Last-Translator: Honzapkcz \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-05 11:03+0000\n" +"Last-Translator: Matyáš Pilz \n" "Language-Team: Czech \n" "Language: cs\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n" -"X-Generator: Weblate 5.8-rc\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +77,250 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Procházet" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Upravit" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Vyberte adresář" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Vybrat soubor" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Vybrat" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(bez popisu)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D šum" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Zrušit" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakunarita" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktávy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Odstup" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Vytrvalost" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Uložit" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Přiblížení" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seedové číslo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Rozptyl X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Rozptyl Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Rozptyl Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absolutnihodnota" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Výchozí hodnoty" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "vyhlazení" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Hra bude muset také povolit stíny)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(Hra bude muset také povolit stíny)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Hra bude muset také povolit stíny)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Použít jazyk systému)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Přístupnost" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automaticky" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Vyčistit" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Ovládání" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Vypnuto" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Zapnuto" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Obecné" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Pohyb" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Žádné výsledky" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Obnovit výchozí nastavení" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Vrátit nastavení do původního stavu ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Vyhledat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Zobrazit pokročilé nastavení" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Zobrazit technické názvy" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Dotyková obrazovka" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS v menu pauzy" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Klientské mody" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Obsah: hry" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Obsah: mody" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Hra bude muset také povolit stíny)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Vlastní" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamické stíny" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Vysoké" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Nízké" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Střední" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Velmi vysoké" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Velmi nízké" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -159,19 +403,16 @@ msgstr "$1 se stahuje..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Vše" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Zpět" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "" -"ContentDB není přístupná pokud byl Minetest kompilován bez použití cURL" +msgstr "ContentDB není přístupná pokud byl Luanti kompilován bez použití cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -179,7 +420,7 @@ msgstr "Stahuji..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Uváděný" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +442,6 @@ msgstr "Mody" msgid "No packages could be retrieved" msgstr "Nelze načíst žádný balíček" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Žádné výsledky" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Žádné aktualizace" @@ -251,18 +487,6 @@ msgstr "Již nainstalováno" msgid "Base Game:" msgstr "Základní hra:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Zrušit" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -317,11 +541,11 @@ msgstr "Popis serveru" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Darovat" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Vlákno fóra" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -335,15 +559,15 @@ msgstr "Instalovat $1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Sledovač potíží" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Zdroj" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Překlad" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -390,6 +614,12 @@ msgstr "Selhala instalace rozšíření $1 jako $2" msgid "Unable to install a $1 as a texture pack" msgstr "Selhala instalace $1 jako rozšíření textur" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Povoleno, s chybou)" @@ -454,12 +684,6 @@ msgstr "Žádné volitelné závislosti" msgid "Optional dependencies:" msgstr "Volitelné závislosti:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Uložit" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Svět:" @@ -612,11 +836,6 @@ msgstr "Řeky" msgid "Sea level rivers" msgstr "Řeky v úrovni mořské hladiny" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seedové číslo" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Pozvolný přechod mezi biomy" @@ -761,6 +980,23 @@ msgstr "" "Tento balíček modů má uvedené jméno ve svém modpack.conf, které přepíše " "jakékoliv přejmenování zde." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Zapnout vše" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Je k dispozici nová verze $1" @@ -789,7 +1025,7 @@ msgstr "Nikdy" msgid "Visit website" msgstr "Navštívit webovou stránku" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Nastavení" @@ -803,229 +1039,6 @@ msgstr "" "Zkuste znovu povolit seznam veřejných serverů a zkontrolujte své internetové " "připojení." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Procházet" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Upravit" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Vyberte adresář" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Vybrat soubor" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Vybrat" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(bez popisu)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D šum" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakunarita" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktávy" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Odstup" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Vytrvalost" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Přiblížení" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Rozptyl X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Rozptyl Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Rozptyl Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absolutnihodnota" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Výchozí hodnoty" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "vyhlazení" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Hra bude muset také povolit stíny)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Hra bude muset také povolit stíny)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Hra bude muset také povolit stíny)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Použít jazyk systému)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Přístupnost" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Vyčistit" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Ovládání" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Vypnuto" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Zapnuto" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Obecné" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Pohyb" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Obnovit výchozí nastavení" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Vrátit nastavení do původního stavu ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Vyhledat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Zobrazit pokročilé nastavení" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Zobrazit technické názvy" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Klientské mody" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Obsah: hry" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Obsah: mody" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Zapnuto" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Aktualizace kamery zakázána" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Hra bude muset také povolit stíny)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Vlastní" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamické stíny" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Vysoké" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Nízké" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Střední" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Velmi vysoké" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Velmi nízké" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Tiráž" @@ -1046,10 +1059,6 @@ msgstr "Hlavní vývojáři" msgid "Core Team" msgstr "Hlavní členové týmu" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht zařízení:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Otevřít uživatelský adresář" @@ -1200,10 +1209,22 @@ msgstr "Spuštění hry" msgid "You need to install a game before you can create a world." msgstr "Musíš si nainstalovat hru před tím než si můžeš vytvořit svět." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Odstranit oblíbeného" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresa" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativní mód" @@ -1217,6 +1238,11 @@ msgstr "Zranění / PvP" msgid "Favorites" msgstr "Oblíbené" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Hra" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Nekompatibilní server" @@ -1229,10 +1255,28 @@ msgstr "Připojit se ke hře" msgid "Login" msgstr "Přihlásit se" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Počet výpočetních vláken „zjevení“" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Délka serverového kroku" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Veřejné servery" @@ -1318,23 +1362,6 @@ msgstr "" "\n" "Detaily naleznete v souboru debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mód: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Veřejný: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- „PvP“: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Název serveru: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Nastala chyba serializace:" @@ -1344,6 +1371,11 @@ msgstr "Nastala chyba serializace:" msgid "Access denied. Reason: %s" msgstr "Přístup odepřen. Důvod: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Ladící informace zobrazeny" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatický posun vpřed zakázán" @@ -1364,6 +1396,10 @@ msgstr "Zobrazit hranice bloku u aktuálního bloku" msgid "Block bounds shown for nearby blocks" msgstr "Zobrazit hranice bloku u blízkých bloků" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Aktualizace kamery zakázána" @@ -1376,10 +1412,6 @@ msgstr "Aktualizace kamery povolena" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Nelze zobrazit hranice bloků (zakázáno modem nebo hrou)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Změnit heslo" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmový režim zakázán" @@ -1408,38 +1440,6 @@ msgstr "Chyba spojení (vypršel čas?)" msgid "Connection failed for unknown reason" msgstr "Spojení selhalo z neznámého důvodu" -#: src/client/game.cpp -msgid "Continue" -msgstr "Pokračovat" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Výchozí ovládání:\n" -"Bez menu:\n" -"- tah prstem: rozhlédnout se\n" -"- dotek: položit/udeřit/použít\n" -"- dlouhý dotek: vytěžit/použít\n" -"Menu/Otevřený inventář:\n" -"- dvojklik (mimo):\n" -" -->zavřít\n" -"- dotek hromádky a přihrádky :\n" -" --> přesunutí hromádky\n" -"- stisk a přesun, klik druhým prstem\n" -" --> umístit jednu věc do přihrádky\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1453,31 +1453,15 @@ msgstr "Vytvářím klienta..." msgid "Creating server..." msgstr "Spouštím server…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Ladící informace a profilovací graf skryty" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Ladící informace zobrazeny" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Ladící informace, profilovací graf a obrysy skryty" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Chyba při vytváření klienta: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Odejít do nabídky" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Ukončit hru" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Rychlý režim zakázán" @@ -1514,18 +1498,6 @@ msgstr "Mlha je povolena" msgid "Fog enabled by game or mod" msgstr "Mlha zapnuta hrou nebo módem" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informace o hře:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Hra pozastavena" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Běží server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definice věcí..." @@ -1562,14 +1534,6 @@ msgstr "Režim bez ořezu povolen (pozn.: nemáte oprávnění 'noclip')" msgid "Node definitions..." msgstr "Definice bloků..." -#: src/client/game.cpp -msgid "Off" -msgstr "Vypnuto" - -#: src/client/game.cpp -msgid "On" -msgstr "Zapnuto" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Posun v režimu Pitch zakázán" @@ -1582,38 +1546,22 @@ msgstr "Posun v režimu Pitch povolen" msgid "Profiler graph shown" msgstr "Profilovací graf zobrazen" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Vzdálený server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Překládám adresu..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Oživit" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Vypínání..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "„Singleplayer“" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Hlasitost" - #: src/client/game.cpp msgid "Sound muted" msgstr "Zvuk vypnut" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Zvukový systém je vypnutý" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Zvukový systém není v této verzi podporovaný" @@ -1685,18 +1633,116 @@ msgstr "Rozhled nastaven na %d, ale limitován na %d hrou nebo módem" msgid "Volume changed to %d%%" msgstr "Hlasitost nastavena na %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Shadery jsou povoleny ale GLSL není podporovaný driverem." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Obrysy zobrazeny" -#: src/client/game.cpp -msgid "You died" -msgstr "Zemřel jsi" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Přiblížení je aktuálně zakázáno" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mód: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Veřejný: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- „PvP“: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Název serveru: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Změnit heslo" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Pokračovat" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Výchozí ovládání:\n" +"Bez menu:\n" +"- tah prstem: rozhlédnout se\n" +"- dotek: položit/udeřit/použít\n" +"- dlouhý dotek: vytěžit/použít\n" +"Menu/Otevřený inventář:\n" +"- dvojklik (mimo):\n" +" -->zavřít\n" +"- dotek hromádky a přihrádky :\n" +" --> přesunutí hromádky\n" +"- stisk a přesun, klik druhým prstem\n" +" --> umístit jednu věc do přihrádky\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Odejít do nabídky" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Ukončit hru" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informace o hře:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Hra pozastavena" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Běží server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Vypnuto" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Zapnuto" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Vzdálený server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Oživit" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Hlasitost" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Zemřel jsi" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat je zakázaný hrou, nebo modem" @@ -2027,7 +2073,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Nepodařil se přeložit \"%s\" shader." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "Shadery jsou povoleny ale GLSL není podporovaný driverem." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2078,7 +2125,7 @@ msgstr "Automaticky vpřed" msgid "Automatic jumping" msgstr "Automaticky skákat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2090,7 +2137,7 @@ msgstr "Vzad" msgid "Block bounds" msgstr "Ohraničení bloku" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Změnit nastavení kamery" @@ -2114,7 +2161,7 @@ msgstr "Snížit hlasitost" msgid "Double tap \"jump\" to toggle fly" msgstr "2× skok přepne létání" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Zahodit" @@ -2130,11 +2177,11 @@ msgstr "Zvýšit rozsah" msgid "Inc. volume" msgstr "Zvýšit hlasitost" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventář" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Skok" @@ -2166,7 +2213,7 @@ msgstr "Další věc" msgid "Prev. item" msgstr "Předchozí věc" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Změna dohledu" @@ -2178,7 +2225,7 @@ msgstr "Doprava" msgid "Screenshot" msgstr "Snímek obrazovky" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Plížit se" @@ -2186,15 +2233,15 @@ msgstr "Plížit se" msgid "Toggle HUD" msgstr "Zapnout/Vypnout ovládací prvky" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Zapnout/Vypnout záznam chatu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Zapnout/Vypnout rychlost" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Zapnout/Vypnout létání" @@ -2202,11 +2249,11 @@ msgstr "Zapnout/Vypnout létání" msgid "Toggle fog" msgstr "Zapnout/Vypnout mlhu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Zapnout/Vypnout minimapu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Zapnout/Vypnout režim ořezu" @@ -2214,7 +2261,7 @@ msgstr "Zapnout/Vypnout režim ořezu" msgid "Toggle pitchmove" msgstr "Zapnout/Vypnout režim posunu Pitch" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Přiblížení" @@ -2250,7 +2297,7 @@ msgstr "Staré heslo" msgid "Passwords do not match!" msgstr "Hesla se neshodují!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Odejít" @@ -2263,16 +2310,47 @@ msgstr "Ztlumeno" msgid "Sound Volume: %d%%" msgstr "Hlasitost: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Prostřední tlačítko myši" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Hotovo!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Vzdálený server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID joysticku" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Zapnout/Vypnout mlhu" @@ -2487,6 +2565,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "3D šum definující počet žalářů na kusu mapy." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2495,8 +2574,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Podpora 3D.\n" "V současné době podporovány:\n" @@ -2561,10 +2639,6 @@ msgstr "Rozsah aktivních bloků" msgid "Active object send range" msgstr "Odesílací rozsah aktivních bloků" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Aktivuje částicové efekty při těžení bloku." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2594,6 +2668,17 @@ msgstr "Jméno správce" msgid "Advanced" msgstr "Pokročilé" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Použijte 3D vzhled mraků namísto plochého." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Povolí průhledné kapaliny." @@ -2992,14 +3077,14 @@ msgstr "Poloměr mraků" msgid "Clouds" msgstr "Mraky" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Mraky jsou pouze efekt na klientovi." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Mraky v menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Barevná mlha" @@ -3026,7 +3111,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Seznam nastavení ve formátu CSV sloužící k filtrování obsahu repozitáře.\n" "\"nesvobodné\" slouží pro skrytí balíčků, které se podle definice Free " @@ -3194,6 +3279,14 @@ msgstr "Úroveň minimální důležitosti ladících informací" msgid "Debugging" msgstr "Ladění" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Délka serverového kroku" @@ -3369,18 +3462,10 @@ msgstr "" "Pouště se objeví v místech, kde 'np_biome' přesahuje tuto hodnotu.\n" "Ignorováno, pokud je zapnuté nastavení \"snowbiomes\"." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Nesynchronizovat animace bloků" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Možnosti pro vývojáře" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Částicové efekty při těžení" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Zakázat prázdná hesla" @@ -3411,6 +3496,14 @@ msgstr "Dvojstisk skoku zapne létání" msgid "Double-tapping the jump key toggles fly mode." msgstr "Dvojstisk klávesy skoku zapne létání." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Vypsat ladící informace z Generátoru mapy." @@ -3497,9 +3590,10 @@ msgstr "" "čímž bude simulovat chování lidského oka." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Zanout zabarvené stíny.\n" "Po zapnutí vrhají průhledné bloky zabarvené stíny. Vyžaduje mnoho " @@ -3586,10 +3680,10 @@ msgstr "" "Např.: 0 pro žádné, 1.0 pro normální a 2.0 pro dvojité klepání." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Povolit/zakázat spuštění IPv6 serveru.\n" "Ignorováno, pokud je 'bind_address' nastaveno.\n" @@ -3611,13 +3705,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Povolí animaci věcí v inventáři." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Zapnout cachování geom. sítí otočených pomocí facedir." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Povolí ladění a hledání chyb v OpenGL driveru." @@ -3959,10 +4046,6 @@ msgstr "Měřítko GUI" msgid "GUI scaling filter" msgstr "Filtrovat při škálování GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtrovat při škálování GUI (txr2img)" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepady" @@ -4226,16 +4309,6 @@ msgstr "" "Pokud je zapnuto, je klávesa \"Aux1\" využita pro sestup\n" "namísto klávesy \"Plížení\"." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Pokud je povoleno, registrace účtu je oddělená od přihlášení do " -"uživatelského rozhraní. \n" -"Pokud je deaktivováno, nové účty budou registrovány automaticky při " -"přihlášení." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4260,6 +4333,18 @@ msgstr "" "Pokud je povoleno, hráči se nemohou připojit bez hesla nebo změnit své heslo " "na prázdné." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Pokud je povoleno, registrace účtu je oddělená od přihlášení do " +"uživatelského rozhraní. \n" +"Pokud je deaktivováno, nové účty budou registrovány automaticky při " +"přihlášení." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4378,12 +4463,6 @@ msgstr "Instrumentovat metody entit při registraci." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Časový interval ukládání důležitých změn ve světě, udaný v sekundách." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Časový interval, ve kterém se klientům posílá herní čas, vyjádřený ve " -"vteřinách." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animace předmětů v inventáři" @@ -5101,10 +5180,6 @@ msgstr "" msgid "Maximum users" msgstr "Maximální počet uživatelů" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Vyrovnávací paměť sítě bloků" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Zpráva dne" @@ -5138,6 +5213,10 @@ msgstr "Spodní hranice pro náhodný počet velkých jeskyní na kus mapy." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Spodní hranice pro náhodný počet malých jeskyní na kus mapy." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-mapování" @@ -5233,9 +5312,10 @@ msgstr "" "nastavení)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Jméno hráče. \n" @@ -5769,17 +5849,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6016,16 +6098,6 @@ msgstr "" msgid "Shader path" msgstr "Cesta k shaderům" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shadery" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Kvalita filtru pro stíny" @@ -6215,10 +6287,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Rozložit celé obnovení stínového mapingu na daný počet snímků. \n" "Vyšší hodnoty mohou způsobit zpoždění stínů, nižší hodnoty \n" @@ -6594,10 +6665,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Okamžik během dne, kdy začíná nový svět, v milihodinách (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Interval odesílání času" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Rychlost času" @@ -6667,6 +6734,11 @@ msgstr "Neprůhledné kapaliny" msgid "Transparency Sorting Distance" msgstr "Vzdálenost řazení průhlednosti" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Vzdálenost řazení průhlednosti" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Šum stromů" @@ -6719,12 +6791,16 @@ msgid "Undersampling" msgstr "Podvzorkování" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Podvzorkování je podobné jako použití nižšího rozlišení obrazovky, ale " "vztahuje se \n" @@ -6752,17 +6828,15 @@ msgstr "Horní ypsilonová mez dungeonů." msgid "Upper Y limit of floatlands." msgstr "Horní ypsilonová hranice létajících ostrovů." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Použijte 3D vzhled mraků namísto plochého." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Pro pozadí hlavní nabídky použijte animaci oblohy." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Při kosém pohledu na texturu použijte anizotropní filtrování." #: src/settings_translation_file.cpp @@ -7030,27 +7104,14 @@ msgstr "" "na hardware (např. render-to-texture pro bloky v inventáři)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Když je gui_scaling_filter_txr2img nastaveno na pravdu (true), zkopíruje " -"tyto obrázky \n" -"z hardwaru do software pro změnu měřítka. Když je nastavena nepravda " -"(false), vratí se \n" -"ke staré metodě změny měřítka, pro ovladače GPU, které \n" -"nesprávně podporují stahování textur zpět z hardwaru." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7074,10 +7135,6 @@ msgstr "" "Zda se má ve výchozím nastavení zobrazovat pozadí jmenovek. \n" "Mody mohou stále nastavit pozadí." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Desynchronizovat animace textur jednotlivých bloků." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7104,9 +7161,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Zamlžit okraj viditelné oblasti." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7299,6 +7356,9 @@ msgstr "cURL limit paralelních stahování" #~ "Nechte prázdné, pokud chcete spustit místní server.\n" #~ "Poznámka: pole adresy v hlavním menu přepisuje toto nastavení." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Aktivuje částicové efekty při těžení bloku." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7422,6 +7482,9 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Clean transparent textures" #~ msgstr "Vynulovat průhledné textury" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Mraky jsou pouze efekt na klientovi." + #~ msgid "Command key" #~ msgstr "CMD ⌘" @@ -7511,9 +7574,15 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Damage enabled" #~ msgstr "Zranění povoleno" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Ladící informace a profilovací graf skryty" + #~ msgid "Debug info toggle key" #~ msgstr "Klávesa pro zobrazení ladících informací" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Ladící informace, profilovací graf a obrysy skryty" + #~ msgid "Dec. volume key" #~ msgstr "Klávesa snížení hlasitosti" @@ -7567,9 +7636,15 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Del. Favorite" #~ msgstr "Smazat oblíbené" +#~ msgid "Desynchronize block animation" +#~ msgstr "Nesynchronizovat animace bloků" + #~ msgid "Dig key" #~ msgstr "Klávesa těžení" +#~ msgid "Digging particles" +#~ msgstr "Částicové efekty při těžení" + #~ msgid "Disable anticheat" #~ msgstr "Vypnout anticheat" @@ -7594,6 +7669,10 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamické stíny:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Zapnuto" + #~ msgid "Enable VBO" #~ msgstr "Zapnout VBO" @@ -7627,6 +7706,12 @@ msgstr "cURL limit paralelních stahování" #~ "nebo musí být automaticky vytvořeny.\n" #~ "Nastavení vyžaduje zapnuté shadery." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Zapnout cachování geom. sítí otočených pomocí facedir." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Zapne filmový tone mapping" @@ -7674,9 +7759,6 @@ msgstr "cURL limit paralelních stahování" #~ "Experimentální nastavení, může zapříčinit viditelné mezery mezi bloky,\n" #~ "je-li nastaveno na vyšší číslo než 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS v menu pauzy" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7755,8 +7837,8 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Full screen BPP" #~ msgstr "Bitová hloubka v celoobrazovkovém režimu" -#~ msgid "Game" -#~ msgstr "Hra" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtrovat při škálování GUI (txr2img)" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -7921,512 +8003,520 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Instrumentation" #~ msgstr "Instrumentace" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Časový interval, ve kterém se klientům posílá herní čas, vyjádřený ve " +#~ "vteřinách." + #~ msgid "Invalid gamespec." #~ msgstr "Neplatná specifikace hry." #~ msgid "Inventory key" #~ msgstr "Klávesa inventáře" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht zařízení:" + #~ msgid "Jump key" #~ msgstr "Klávesa skoku" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro snížení dohledu.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro těžení\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro odhození právě drženého předmětu.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro zvýšení dohledu.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro zvýšení hlasitosti\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro skok.\n" -#~ "viz. See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro rychlý pohyb v rychlém režimu.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro pohyb hráče zpět.\n" #~ "Také vypne automatický pohyb vpřed, pokud je zapnutý.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro pohyb hráče vpřed.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro pohyb hráče doleva.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro pohyb hráče doprava.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro ztlumení hry.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klávesa pro otevření okna chatu za účelem zadání příkazů.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "klávesy pro snížení hlasitosti.\n" -#~ "viz. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "viz. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8495,6 +8585,9 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Menus" #~ msgstr "Nabídky" +#~ msgid "Mesh cache" +#~ msgstr "Vyrovnávací paměť sítě bloků" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -8659,6 +8752,9 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Server / Singleplayer" #~ msgstr "Server / Místní hra" +#~ msgid "Shaders" +#~ msgstr "Shadery" + #~ msgid "Shaders (experimental)" #~ msgstr "Shader (experimentální)" @@ -8674,6 +8770,10 @@ msgstr "cURL limit paralelních stahování" #~ "grafických \n" #~ "karet." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Aktualizace kamery zakázána" + #, fuzzy #~ msgid "" #~ "Shadow offset (in pixels) of the fallback font. If 0, then shadow will " @@ -8703,6 +8803,9 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Zklidňuje otáčení kamery. 0 pro deaktivaci." +#~ msgid "Sound system is disabled" +#~ msgstr "Zvukový systém je vypnutý" + #~ msgid "Special" #~ msgstr "Speciální" @@ -8741,6 +8844,12 @@ msgstr "cURL limit paralelních stahování" #~ "myši. \n" #~ "Užitečné pro nahrávání videí." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Toto není doporučená konfigurace." + +#~ msgid "Time send interval" +#~ msgstr "Interval odesílání času" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Pro zapnutí shaderů musíte používat OpenGL ovladač." @@ -8838,6 +8947,23 @@ msgstr "cURL limit paralelních stahování" #~ msgid "Waving water" #~ msgstr "Vlnění vody" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Když je gui_scaling_filter_txr2img nastaveno na pravdu (true), zkopíruje " +#~ "tyto obrázky \n" +#~ "z hardwaru do software pro změnu měřítka. Když je nastavena nepravda " +#~ "(false), vratí se \n" +#~ "ke staré metodě změny měřítka, pro ovladače GPU, které \n" +#~ "nesprávně podporují stahování textur zpět z hardwaru." + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "Desynchronizovat animace textur jednotlivých bloků." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Zda-li povolit hráčům vzájemně se napadat a zabíjet." diff --git a/po/cy/luanti.po b/po/cy/luanti.po index cbd501980..2a6d127b9 100644 --- a/po/cy/luanti.po +++ b/po/cy/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-03-17 11:44+0000\n" "Last-Translator: dreigiau \n" "Language-Team: Welsh ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Pori" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Golygu" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Dewiswch ffeil" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Canslo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Wythfedau" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Cadw" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Graddfa" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Hedyn" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "diofyn" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Sgwrs" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Clirio" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Rheoli" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Wedi analluogi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Ymlaen" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Cyffredinol" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Dim canlyniadau" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Adfer gosodiadau diofyn" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Chwilio" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Sgrîn gyffwrdd" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Addasiadau i'r Cleient" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Cynnwys: Gemau" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Cynnwys: Addasiadau" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Uchel" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Isel" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Canolig" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Uchel Iawn" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Isel Iawn" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -163,7 +404,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "Bacio" @@ -200,11 +440,6 @@ msgstr "Addasiadau" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Dim canlyniadau" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Dim diweddariadau" @@ -250,18 +485,6 @@ msgstr "Wedi ei osod" msgid "Base Game:" msgstr "Gêm Sylfaenol:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Canslo" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -388,6 +611,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -450,12 +679,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Cadw" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Byd:" @@ -606,11 +829,6 @@ msgstr "Afonydd" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Hedyn" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -746,6 +964,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Galluogi popeth" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -770,7 +1005,7 @@ msgstr "Byth" msgid "Visit website" msgstr "Gwefan" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Gosodiadau" @@ -782,226 +1017,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Pori" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Golygu" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Dewiswch ffeil" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Wythfedau" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Graddfa" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "diofyn" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Sgwrs" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Clirio" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Rheoli" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Wedi analluogi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Ymlaen" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Cyffredinol" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Adfer gosodiadau diofyn" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Chwilio" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Addasiadau i'r Cleient" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Cynnwys: Gemau" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Cynnwys: Addasiadau" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Ymlaen" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Uchel" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Isel" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Canolig" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Uchel Iawn" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Isel Iawn" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Ynghylch" @@ -1022,10 +1037,6 @@ msgstr "Datblygwyr Craidd" msgid "Core Team" msgstr "Tîm Craidd" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1172,10 +1183,22 @@ msgstr "Dechrau Gêm" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Dileu o ffefrynnau" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Cyfeiriad" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Cleient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modd Creadigol" @@ -1189,6 +1212,11 @@ msgstr "" msgid "Favorites" msgstr "Ffefrynnau" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Gemau" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Gweinyddion Anghydnaws" @@ -1201,10 +1229,26 @@ msgstr "Ymuno â Gêm" msgid "Login" msgstr "Mewngofnodi" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Gweinyddion Cyhoeddus" @@ -1287,23 +1331,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1313,6 +1340,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1333,6 +1364,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1345,10 +1380,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Newid Cyfrinair" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1377,26 +1408,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Parhau" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1410,31 +1421,15 @@ msgstr "Wrthi'n creu cleient..." msgid "Creating server..." msgstr "Wrthi'n creu gweinydd..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1471,18 +1466,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Diffiniadau eitem..." @@ -1519,14 +1502,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Na" - -#: src/client/game.cpp -msgid "On" -msgstr "Ie" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1539,38 +1514,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Atgyfodi" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Wrthi'n cau..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Chwaraewr Sengl" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "Sain wedi diffodd" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1642,18 +1601,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Buest ti farw" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Newid Cyfrinair" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Parhau" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Na" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ie" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Atgyfodi" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Buest ti farw" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1990,7 +2034,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2039,7 +2083,7 @@ msgstr "Awto-gerdded" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2051,7 +2095,7 @@ msgstr "Bacio" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2075,7 +2119,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Gollwng" @@ -2091,11 +2135,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Rhestr Eiddo" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Neidio" @@ -2127,7 +2171,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2139,7 +2183,7 @@ msgstr "Dde" msgid "Screenshot" msgstr "Sgrinlun" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Sleifio" @@ -2147,15 +2191,15 @@ msgstr "Sleifio" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2163,11 +2207,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2175,7 +2219,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Chwyddo" @@ -2211,7 +2255,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Gadael" @@ -2224,15 +2268,44 @@ msgstr "Wedi anwybyddu" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Iawn!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2429,8 +2502,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2483,10 +2555,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2509,6 +2577,16 @@ msgstr "" msgid "Advanced" msgstr "Uwch" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2877,11 +2955,11 @@ msgid "Clouds" msgstr "Cymylau" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2906,7 +2984,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3041,6 +3119,14 @@ msgstr "" msgid "Debugging" msgstr "Dadfygio" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3192,18 +3278,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3231,6 +3309,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3305,8 +3391,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3379,8 +3465,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3395,12 +3480,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3705,10 +3784,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3932,12 +4007,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3956,6 +4025,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4050,10 +4126,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4668,10 +4740,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4704,6 +4772,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mipmapio" @@ -4794,7 +4866,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5233,17 +5305,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5436,16 +5510,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5607,10 +5671,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5889,10 +5952,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5953,6 +6012,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6003,7 +6066,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6026,16 +6092,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6272,20 +6336,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6296,10 +6352,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6322,8 +6374,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6472,6 +6523,10 @@ msgstr "" #~ msgid "Damage" #~ msgstr "Difrod" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Ymlaen" + #~ msgid "FSAA" #~ msgstr "FSAA" diff --git a/po/da/luanti.po b/po/da/luanti.po index 0d8af26d3..dc81628eb 100644 --- a/po/da/luanti.po +++ b/po/da/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Danish (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-06 23:41+0000\n" -"Last-Translator: Luna \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-12-22 16:00+0000\n" +"Last-Translator: cat \n" "Language-Team: Danish \n" "Language: da\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +77,247 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Gennemse" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Rediger" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Vælg mappe" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Vælg fil" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Vælg" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Der er ikke nogen beskrivelse af denne indstilling)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Todimensionelle lyde" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Annuller" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakunaritet" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaver" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Forskydning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Vedholdenhed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Gem" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X spredning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y spredning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z spredning" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absolut værdi" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Standard" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "udglattet" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Snak" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Ryd" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Styring" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Deaktiveret" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "aktiveret" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Bevægelse" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Ingen resultater" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Nulstil indstilling til standard" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Søg" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Vis tekniske navne" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Strandstøjtærskel" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS i pausemenu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Klient mods" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Indhold: Spil" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Indhold: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamiske skygger" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Høj" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Lav" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Midtimellem" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Meget høj" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Meget lav" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -163,14 +404,12 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Tilbage" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB er ikke tilgængelig, når Minetest blev kompileret uden cURL" +msgstr "ContentDB er ikke tilgængelig, når Luanti blev kompileret uden cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -200,11 +439,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Ingen pakker kunne hentes" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Ingen resultater" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Ingen opdateringer" @@ -214,7 +448,6 @@ msgid "Queued" msgstr "Sat i kø" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" msgstr "Teksturpakker" @@ -252,27 +485,14 @@ msgstr "Allerede installeret" msgid "Base Game:" msgstr "Basisspil:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Annuller" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "Afhængigheder:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Fejl ved hentning af afhængigheder for pakken" +msgstr "Fejl ved hentning af afhængigheder for pakken $1" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -307,32 +527,28 @@ msgid "Overwrite" msgstr "Overskriv" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" -msgstr "Fortsæt" +msgstr "ContentDB-side" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Serverbeskrivelse" +msgstr "Beskrivelse" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Donér" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" msgstr "" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Information:" +msgstr "Information" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" -msgstr "Installer $1" +msgstr "Installer [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" @@ -340,11 +556,11 @@ msgstr "" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Kilde" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Oversæt" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -355,13 +571,12 @@ msgid "Update" msgstr "Opdater" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Besøg hjemmeside" +msgstr "Hjemmeside" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "af $1 — $2 downloads — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -391,6 +606,12 @@ msgstr "Kan ikke installere $1 som et $2" msgid "Unable to install a $1 as a texture pack" msgstr "Kan ikke installere $1 som en teksturpakke" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Aktiveret. Har fejl)" @@ -455,12 +676,6 @@ msgstr "Ingen valgfrie afhængigheder" msgid "Optional dependencies:" msgstr "Valgfrie afhængigheder:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Gem" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Verden:" @@ -612,11 +827,6 @@ msgstr "Floder" msgid "Sea level rivers" msgstr "Floder i niveau med havet" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Glat overgang mellem biomer" @@ -718,7 +928,7 @@ msgstr "Registrér" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "Dismiss" -msgstr "" +msgstr "Afvis" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -737,9 +947,8 @@ msgid "Minetest Game is no longer installed by default" msgstr "" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "Reinstall Minetest Game" -msgstr "Installér et andet spil" +msgstr "Geninstaller Minetest Game" #: builtin/mainmenu/dlg_rename_modpack.lua msgid "Accept" @@ -757,6 +966,23 @@ msgstr "" "Denne samling af mods har et specifik navn defineret i sit modpack.conf " "hvilket vil overskrive enhver omdøbning her." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Aktivér alle" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "A ny version af $1 er tilgængelig" @@ -785,7 +1011,7 @@ msgstr "Aldrig" msgid "Visit website" msgstr "Besøg hjemmeside" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Indstillinger" @@ -799,228 +1025,6 @@ msgstr "" "Prøv at slå den offentlige serverliste fra og til, og tjek din internet " "forbindelse." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Gennemse" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Rediger" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Vælg mappe" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Vælg fil" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Vælg" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Der er ikke nogen beskrivelse af denne indstilling)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Todimensionelle lyde" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakunaritet" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaver" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Forskydning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Vedholdenhed" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X spredning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y spredning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z spredning" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absolut værdi" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Standard" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "udglattet" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Snak" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Ryd" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Styring" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Deaktiveret" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "aktiveret" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Hurtig bevægelse" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Gendan standard" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Søg" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Vis tekniske navne" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Klient mods" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Indhold: Spil" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Indhold: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "aktiveret" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kameraopdatering slået fra" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamiske skygger" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Høj" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Lav" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Midtimellem" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Meget høj" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Meget lav" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Om" @@ -1041,10 +1045,6 @@ msgstr "Primære udviklere" msgid "Core Team" msgstr "Primære hold" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Åben sti med brugerdata" @@ -1074,18 +1074,16 @@ msgid "Browse online content" msgstr "Gennemse online indhold" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Browse online content [$1]" -msgstr "Gennemse online indhold" +msgstr "Gennemse online indhold [$1]" #: builtin/mainmenu/tab_content.lua msgid "Content" msgstr "Indhold" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Content [$1]" -msgstr "Indhold" +msgstr "Indhold [$1]" #: builtin/mainmenu/tab_content.lua msgid "Disable Texture Pack" @@ -1108,9 +1106,8 @@ msgid "Rename" msgstr "Omdøb" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Update available?" -msgstr "" +msgstr "Opdatering tilgængelig?" #: builtin/mainmenu/tab_content.lua msgid "Use Texture Pack" @@ -1194,10 +1191,22 @@ msgstr "Start spil" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Fjern favorit" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresse" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativ tilstand" @@ -1211,6 +1220,11 @@ msgstr "Skade / PvP" msgid "Favorites" msgstr "Favoritter" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spil" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Inkompatible servere" @@ -1223,10 +1237,27 @@ msgstr "Tilslut spil" msgid "Login" msgstr "Login" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Dedikeret server-trin" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Offentlige servere" @@ -1312,23 +1343,6 @@ msgstr "" "\n" "Tjek debug.txt for detaljer." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Tilstand: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Offentlig: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Spiller mod spiller (PvP): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Servernavn: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Der opstod en serialiseringsfejl:" @@ -1338,6 +1352,11 @@ msgstr "Der opstod en serialiseringsfejl:" msgid "Access denied. Reason: %s" msgstr "Adgang nægtet. Årsag: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Vis fejlsøgningsinformation" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatisk viderestilling slået fra" @@ -1358,6 +1377,10 @@ msgstr "Blokafgrænsning vist for nuværende blok" msgid "Block bounds shown for nearby blocks" msgstr "Blokafgrænsning vist for blokke i nærheden" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kameraopdatering slået fra" @@ -1371,10 +1394,6 @@ msgstr "Kameraopdatering slået til" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Kan ikke vise blokafgrænsning (slået fra af mod eller spil)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Skift kodeord" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmtilstand slået fra" @@ -1403,39 +1422,6 @@ msgstr "Forbindelses fejl (udløbelse af tidsfrist?)" msgid "Connection failed for unknown reason" msgstr "Forbindelsen slog fejl af ukendt årsag" -#: src/client/game.cpp -msgid "Continue" -msgstr "Fortsæt" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Standardstyring:\n" -"Ingen menu synlig:\n" -"- Enkelt tryk: Aktivér knap\n" -"- Dobbelt tryk: Placér/brug\n" -"- Stryg finger: Kig rundt\n" -"Menu/Medbragt synlig:\n" -"- Dobbelt tryk (uden for):\n" -" --> Luk\n" -"- Rør ved stakken, rør ved felt:\n" -" --> Flyt stakken\n" -"- Rør ved og træk, tryk med 2. finger\n" -" --> Placér enkelt genstand på feltet\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1449,31 +1435,15 @@ msgstr "Opretter klient ..." msgid "Creating server..." msgstr "Opretter server ..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Fejlretningsinfo og profileringsgraf skjult" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Vis fejlsøgningsinformation" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Fejlretningsinfo, profileringsgraf og wireramme skjult" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Opretter klient: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Afslut til menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Afslut til operativsystemet" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Hurtig tilstandshastighed deaktiveret" @@ -1507,21 +1477,8 @@ msgid "Fog enabled" msgstr "Tåge aktiveret" #: src/client/game.cpp -#, fuzzy msgid "Fog enabled by game or mod" -msgstr "Zoom er i øjeblikket slået fra af spil eller mod" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spilinfo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spil på pause" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Hosting server" +msgstr "Tåge aktiveret af spil eller mod" #: src/client/game.cpp msgid "Item definitions..." @@ -1559,14 +1516,6 @@ msgstr "Noclip tilstand er aktiveret (bemærk: ingen 'noclip' rettighed)" msgid "Node definitions..." msgstr "Knudepunktsdefinitioner ..." -#: src/client/game.cpp -msgid "Off" -msgstr "Fra" - -#: src/client/game.cpp -msgid "On" -msgstr "Til" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Pitchbevægelsestilstand slået fra" @@ -1579,38 +1528,22 @@ msgstr "Pitchbevægelsestilstand slået til" msgid "Profiler graph shown" msgstr "Profileringsgraf vist" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Fjernserver" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Slår adresse op ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Genopstå" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Lukker ned..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Enlig spiller" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Lydniveau" - #: src/client/game.cpp msgid "Sound muted" msgstr "Lyd slået fra" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Lydsystem er slået fra" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Lydsystem er ikke understøttet i denne udgave" @@ -1635,23 +1568,21 @@ msgid "Unable to listen on %s because IPv6 is disabled" msgstr "Kan ikke lytte på %s fordi IPv6 er slået fra" #: src/client/game.cpp -#, fuzzy msgid "Unlimited viewing range disabled" -msgstr "Slog ubegrænset sigtbarhed til" +msgstr "Ubegrænset synsvidde deaktiveret" #: src/client/game.cpp -#, fuzzy msgid "Unlimited viewing range enabled" -msgstr "Slog ubegrænset sigtbarhed til" +msgstr "Ubegrænset synsvidde aktiveret" #: src/client/game.cpp msgid "Unlimited viewing range enabled, but forbidden by game or mod" msgstr "" #: src/client/game.cpp -#, fuzzy, c-format +#, c-format msgid "Viewing changed to %d (the minimum)" -msgstr "Sigtbarhed er på mininum: %d" +msgstr "Visning ændret til %d (minimum)" #: src/client/game.cpp #, c-format @@ -1664,9 +1595,9 @@ msgid "Viewing range changed to %d" msgstr "Synafstand ændret til %d" #: src/client/game.cpp -#, fuzzy, c-format +#, c-format msgid "Viewing range changed to %d (the maximum)" -msgstr "Synafstand ændret til %d" +msgstr "Synsvidde ændret til %d (maksimal)" #: src/client/game.cpp #, c-format @@ -1675,9 +1606,9 @@ msgid "" msgstr "" #: src/client/game.cpp -#, fuzzy, c-format +#, c-format msgid "Viewing range changed to %d, but limited to %d by game or mod" -msgstr "Synafstand ændret til %d" +msgstr "Synsvidde ændret til %d, men begrænset til %d af spil eller mod" #: src/client/game.cpp #, c-format @@ -1685,21 +1616,117 @@ msgid "Volume changed to %d%%" msgstr "Lydstyrke ændret til %d%%" #: src/client/game.cpp -msgid "Wireframe shown" -msgstr "Wireramme vist" +msgid "Wireframe not supported by video driver" +msgstr "" #: src/client/game.cpp -msgid "You died" -msgstr "Du døde" +msgid "Wireframe shown" +msgstr "Wireramme vist" #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom er i øjeblikket slået fra af spil eller mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Tilstand: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Offentlig: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Spiller mod spiller (PvP): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Servernavn: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Skift kodeord" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Fortsæt" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Styring:\n" +"Ingen menu åben:\n" +"- Stryg finger: kig rundt\n" +"- Tryk: placer/slå/brug (standard)\n" +"- Langt tryk: grav/brug (standard)\n" +"Menu/Inventar åben:\n" +"- Dobbelttryk (udenfor):\n" +" --> Luk\n" +"- Rør ved stak, rør ved felt:\n" +" --> Flyt stak\n" +"- Rør og træk, tryk med 2. finger\n" +" --> Placer enkelt genstand på felt\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Afslut til menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Afslut til operativsystemet" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spilinfo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spil på pause" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Hosting server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Fra" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Til" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Fjernserver" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Genopstå" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Lydniveau" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Du døde" + #: src/client/gameui.cpp -#, fuzzy msgid "Chat currently disabled by game or mod" -msgstr "Zoom er i øjeblikket slået fra af spil eller mod" +msgstr "Chat er i øjeblikket deaktiveret af spil eller mod" #: src/client/gameui.cpp msgid "Chat hidden" @@ -1745,19 +1772,16 @@ msgid "Caps Lock" msgstr "Caps Lock" #: src/client/keycode.cpp -#, fuzzy msgid "Clear Key" -msgstr "Ryd" +msgstr "Ryd-tast" #: src/client/keycode.cpp -#, fuzzy msgid "Control Key" -msgstr "Control" +msgstr "Control-tast" #: src/client/keycode.cpp -#, fuzzy msgid "Delete Key" -msgstr "Slet" +msgstr "Slet-tast" #: src/client/keycode.cpp msgid "Down Arrow" @@ -1808,9 +1832,8 @@ msgid "Insert" msgstr "Insert" #: src/client/keycode.cpp -#, fuzzy msgid "Left Arrow" -msgstr "Venstre Control" +msgstr "Venstre Pil" #: src/client/keycode.cpp msgid "Left Button" @@ -1834,9 +1857,8 @@ msgstr "Venstre meta" #. ~ Key name, common on Windows keyboards #: src/client/keycode.cpp -#, fuzzy msgid "Menu Key" -msgstr "Menu" +msgstr "Menu-tast" #: src/client/keycode.cpp msgid "Middle Button" @@ -1911,20 +1933,17 @@ msgid "OEM Clear" msgstr "OEM Ryd" #: src/client/keycode.cpp -#, fuzzy msgid "Page Down" -msgstr "Side nedad" +msgstr "Side ned" #: src/client/keycode.cpp -#, fuzzy msgid "Page Up" -msgstr "Side opad" +msgstr "Side op" #. ~ Usually paired with the Break key #: src/client/keycode.cpp -#, fuzzy msgid "Pause Key" -msgstr "Pause" +msgstr "Pause-tast" #: src/client/keycode.cpp msgid "Play" @@ -1941,9 +1960,8 @@ msgid "Return Key" msgstr "Enter" #: src/client/keycode.cpp -#, fuzzy msgid "Right Arrow" -msgstr "Højre Control" +msgstr "Højre Pil" #: src/client/keycode.cpp msgid "Right Button" @@ -1975,9 +1993,8 @@ msgid "Select" msgstr "Vælg" #: src/client/keycode.cpp -#, fuzzy msgid "Shift Key" -msgstr "Shift" +msgstr "Shift-tast" #: src/client/keycode.cpp msgid "Sleep" @@ -2008,9 +2025,8 @@ msgid "X Button 2" msgstr "X knap 2" #: src/client/keycode.cpp -#, fuzzy msgid "Zoom Key" -msgstr "Zoom" +msgstr "Zoom-tast" #: src/client/minimap.cpp msgid "Minimap hidden" @@ -2031,13 +2047,14 @@ msgid "Minimap in texture mode" msgstr "Minikort i texturtilstand" #: src/client/shader.cpp -#, fuzzy, c-format +#, c-format msgid "Failed to compile the \"%s\" shader." -msgstr "Kunne ikke hente hjemmesiden" +msgstr "Kunne ikke kompilere shaderen \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Lydsystem er ikke understøttet i denne udgave" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2059,9 +2076,8 @@ msgid "" msgstr "" #: src/content/mod_configuration.cpp -#, fuzzy msgid "Some mods have unsatisfied dependencies:" -msgstr "Nogen mods har uopfyldte påkrævede grundlag:" +msgstr "Nogle mods har uopfyldte afhængigheder:" #: src/gui/guiChatConsole.cpp msgid "Failed to open webpage" @@ -2087,7 +2103,7 @@ msgstr "Automatisk fremad" msgid "Automatic jumping" msgstr "Automatisk hop" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2099,7 +2115,7 @@ msgstr "Baglæns" msgid "Block bounds" msgstr "Blokafgrænsninger" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Skift kamera" @@ -2125,7 +2141,7 @@ msgstr "" "Tryk på \"hop\" hurtigt to gange for at skifte frem og tilbage mellem flyve-" "tilstand" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Slip" @@ -2141,11 +2157,11 @@ msgstr "Øg afstand" msgid "Inc. volume" msgstr "Øg lydstyrken" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Beholdning" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hop" @@ -2178,7 +2194,7 @@ msgstr "Næste genst." msgid "Prev. item" msgstr "Forr. genstand" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Afstands vælg" @@ -2190,7 +2206,7 @@ msgstr "Højre" msgid "Screenshot" msgstr "Skærmbillede" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Snige" @@ -2198,15 +2214,15 @@ msgstr "Snige" msgid "Toggle HUD" msgstr "Slå HUD til/fra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Slå chat log til/fra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Omstil hurtig" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Omstil flyvning" @@ -2214,11 +2230,11 @@ msgstr "Omstil flyvning" msgid "Toggle fog" msgstr "Slå tåge til/fra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Slå minikort til/fra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Omstil fylde" @@ -2227,7 +2243,7 @@ msgstr "Omstil fylde" msgid "Toggle pitchmove" msgstr "Omstil hurtig" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2244,9 +2260,8 @@ msgid "Open URL?" msgstr "" #: src/gui/guiOpenURL.cpp -#, fuzzy msgid "Unable to open URL" -msgstr "Kunne ikke hente hjemmesiden" +msgstr "Kunne ikke åbne URL" #: src/gui/guiPasswordChange.cpp msgid "Change" @@ -2264,7 +2279,7 @@ msgstr "Gammelt kodeord" msgid "Passwords do not match!" msgstr "Kodeordene er ikke ens!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Afslut" @@ -2277,18 +2292,48 @@ msgstr "Sat på lydløs" msgid "Sound Volume: %d%%" msgstr "Lydstyrke: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Midterste knap" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Færdig!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Fjernserver" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Slå tåge til/fra" +msgstr "Slå debug til/fra" #: src/network/clientpackethandler.cpp msgid "" @@ -2305,9 +2350,8 @@ msgid "Internal server error" msgstr "" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Gammelt kodeord" +msgstr "Ugyldig adgangskode" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2333,14 +2377,12 @@ msgid "Player name contains disallowed characters" msgstr "" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Spillerens navn er for langt." +msgstr "Spillernavn ikke tilladt" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Lukker ned..." +msgstr "Server lukker ned" #: src/network/clientpackethandler.cpp msgid "" @@ -2372,9 +2414,9 @@ msgid "" msgstr "" #: src/server.cpp -#, fuzzy, c-format +#, c-format msgid "%s while shutting down: " -msgstr "Lukker ned..." +msgstr "%s under nedlukning: " #: src/settings_translation_file.cpp #, fuzzy @@ -2495,8 +2537,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Understøttelse af 3D.\n" "Understøttet på nuværende tidspunkt:\n" @@ -2563,10 +2604,6 @@ msgstr "Aktiv blokinterval" msgid "Active object send range" msgstr "Aktivt objektafsendelsesinterval" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Tilføjer partikler, når man graver en blok." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2590,6 +2627,16 @@ msgstr "Verdens navn" msgid "Advanced" msgstr "Avanceret" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2989,23 +3036,21 @@ msgstr "Skyradius" msgid "Clouds" msgstr "Skyer" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Skyer er en klientsideeffekt." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Skyer i menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Farvet tåge" #: src/settings_translation_file.cpp -#, fuzzy msgid "Colored shadows" -msgstr "Farvet tåge" +msgstr "Farvede skygger" #: src/settings_translation_file.cpp msgid "" @@ -3021,7 +3066,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3170,6 +3215,14 @@ msgstr "Logniveau for fejlsøgning" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Dedikeret server-trin" @@ -3310,9 +3363,8 @@ msgid "Deprecated Lua API handling" msgstr "Forældet Lua API-håndtering" #: src/settings_translation_file.cpp -#, fuzzy msgid "Depth below which you'll find giant caverns." -msgstr "Dybde hvorunder du kan finde store huler." +msgstr "Dybde, hvorunder du kan finde store huler." #: src/settings_translation_file.cpp msgid "Depth below which you'll find large caves." @@ -3337,17 +3389,8 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Afsynkroniser blokanimation" - -#: src/settings_translation_file.cpp -#, fuzzy msgid "Developer Options" -msgstr "Gentagelser" - -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Gravepartikler" +msgstr "Udviklerindstillinger" #: src/settings_translation_file.cpp msgid "Disallow empty passwords" @@ -3377,6 +3420,14 @@ msgid "Double-tapping the jump key toggles fly mode." msgstr "" "Tryk på »hop« to gange for at skifte frem og tilbage fra flyvetilstand." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp #, fuzzy msgid "Dump the mapgen debug information." @@ -3396,18 +3447,16 @@ msgid "Dungeon noise" msgstr "Ridge støj" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" -msgstr "Grafik" +msgstr "Effekter" #: src/settings_translation_file.cpp msgid "Enable Automatic Exposure" msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Bloom" -msgstr "Aktivér alle" +msgstr "Aktivér Bloom" #: src/settings_translation_file.cpp msgid "Enable Bloom Debug" @@ -3456,8 +3505,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3531,8 +3580,8 @@ msgid "" "when connecting to the server." msgstr "" "Aktiver brug af ekstern medieserver (hvis tilbudt af server).\n" -"Eksterne servere tilbyder en signifikant hurtigere måde at hente medier (f." -"eks. teksturer\n" +"Eksterne servere tilbyder en signifikant hurtigere måde at hente medier " +"(f.eks. teksturer\n" "ved forbindelse til serveren." #: src/settings_translation_file.cpp @@ -3545,8 +3594,7 @@ msgstr "" #, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Aktivere/deaktivere afvikling af en IPv6-server. En IPv6-server kan være " "begrænset\n" @@ -3565,13 +3613,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Aktiverer animation af lagerelementer." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Aktiverer mellemlagring af facedir-roterede mesher." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3905,10 +3946,6 @@ msgstr "Skalering af grafisk brugerflade" msgid "GUI scaling filter" msgstr "GUI-skaleringsfilter" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI-skaleringsfilter txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4177,12 +4214,6 @@ msgstr "" "Hvis aktiveret bruges »brug«-tasten i stedet for »snig«-tasten til at klatre " "ned og aftagende." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4207,6 +4238,13 @@ msgid "" msgstr "" "Hvis aktiveret kan nye spillere ikke slutte sig til uden en tom adgangskode." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4317,11 +4355,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "Interval for lagring af vigtige ændringer i verden, angivet i sekunder." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Interval for afsendelse af tidspunkt på dagen til klienter." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animationer for lagerelementer" @@ -5029,10 +5062,6 @@ msgstr "" msgid "Maximum users" msgstr "Maksimum antal brugere" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Dagens besked" @@ -5067,6 +5096,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp #, fuzzy msgid "Mipmapping" @@ -5160,7 +5193,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5621,17 +5654,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5862,16 +5897,6 @@ msgstr "" msgid "Shader path" msgstr "Shader sti" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Dybdeskabere" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -6039,10 +6064,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6327,10 +6351,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Tidshastighed" @@ -6394,6 +6414,10 @@ msgstr "Bølgende blade" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6444,7 +6468,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6468,16 +6495,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Absolut begrænsning af fremkomstkøer" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6729,20 +6754,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6753,10 +6770,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6779,8 +6792,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6947,6 +6959,9 @@ msgstr "" #~ "Lad dette være tomt for at starte en lokal server.\n" #~ "Bemærk, at adressefeltet i hovedmenuen tilsidesætter denne indstilling." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Tilføjer partikler, når man graver en blok." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7041,6 +7056,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "Rene gennemsigtige teksturer" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Skyer er en klientsideeffekt." + #~ msgid "Command key" #~ msgstr "Kommandotast" @@ -7115,9 +7134,15 @@ msgstr "" #~ msgid "Darkness sharpness" #~ msgstr "Søstejlhed" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Fejlretningsinfo og profileringsgraf skjult" + #~ msgid "Debug info toggle key" #~ msgstr "Tast til aktivering af fejlsøgningsinfo" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Fejlretningsinfo, profileringsgraf og wireramme skjult" + #, fuzzy #~ msgid "Dec. volume key" #~ msgstr "Dec. lydstyrketasten" @@ -7147,10 +7172,16 @@ msgstr "" #~ msgid "Del. Favorite" #~ msgstr "Slet favorit" +#~ msgid "Desynchronize block animation" +#~ msgstr "Afsynkroniser blokanimation" + #, fuzzy #~ msgid "Dig key" #~ msgstr "Højretast" +#~ msgid "Digging particles" +#~ msgstr "Gravepartikler" + #~ msgid "Disable anticheat" #~ msgstr "Deaktiver antisnyd" @@ -7175,6 +7206,9 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamiske skygger:" +#~ msgid "Enable" +#~ msgstr "Aktiver" + #~ msgid "Enable VBO" #~ msgstr "Aktiver VBO" @@ -7200,6 +7234,12 @@ msgstr "" #~ "eller skal være automatisk oprettet.\n" #~ "Kræver at dybdeskabere er aktiveret." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Aktiverer mellemlagring af facedir-roterede mesher." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Aktiverer filmisk toneoversættelse" @@ -7230,9 +7270,6 @@ msgstr "" #~ "Eksperimentelt tilvalg, kan medføre synlige mellemrum mellem blokke\n" #~ "når angivet til et højere nummer end 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS i pausemenu" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7309,8 +7346,8 @@ msgstr "" #~ msgid "Full screen BPP" #~ msgstr "Fuldskærm BPP" -#~ msgid "Game" -#~ msgstr "Spil" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI-skaleringsfilter txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -7368,6 +7405,10 @@ msgstr "" #~ msgid "Instrumentation" #~ msgstr "Instrumentering" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Interval for afsendelse af tidspunkt på dagen til klienter." + #~ msgid "Invalid gamespec." #~ msgstr "Ugyldig spilspecifikationer." @@ -7379,701 +7420,701 @@ msgstr "" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for mindskning af den sete afstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for sænkning af lydstyrken.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hop.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast som smider det nuværende valgte element.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for øgning af den sete afstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for øgning af lydstyrken.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hop.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at bevæge sig hurtigt i tilstanden hurtig.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at bevæge spilleren baglæns.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at bevæge spilleren fremad.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at bevæge spilleren mod venstre.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at bevæge spilleren mod højre.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for stum.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne snakkevinduet for at indtaste kommandoer.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne snakkevinduet for at indtaste kommandoer.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne snakkevinduet (chat).\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hop.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at åbne lageret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til snigning.\n" #~ "Bruges også til at klatre ned og synke ned i vand hvis aux1_descends er " #~ "deaktiveret.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte mellem første- og tredjepersons kamera.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at lave skærmbilleder.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til automatisk løb.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til biograftilstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til visning af minikort.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til hurtig tilstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til flyvning.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til noclip-tilstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til noclip-tilstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for at skifte kameraopdateringen. Bruges kun til udvikling\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte visningen af snakken (chat).\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til visning af fejlsøgningsinformation.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte visningen af tåge.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til skift af visningen for HUD'en.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte visningen af snakken (chat).\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte visningen af profileringsprogrammet. Brugt til " #~ "udvikling.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast til at skifte til ubegrænset se-afstand.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hop.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Tastebindinger. (Hvis denne menu fucker op, fjern elementer fra minetest." -#~ "conf)" +#~ "Tastebindinger. (Hvis denne menu fucker op, fjern elementer fra " +#~ "minetest.conf)" #, fuzzy #~ msgid "Large chat console key" @@ -8227,6 +8268,9 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "Server/alene" +#~ msgid "Shaders" +#~ msgstr "Dybdeskabere" + #~ msgid "Shaders (experimental)" #~ msgstr "Dybdeskabere (eksperimentel)" @@ -8243,6 +8287,9 @@ msgstr "" #~ "på nogle videokort.\n" #~ "De fungerer kun med OpenGL-videomotoren." +#~ msgid "Shaders are disabled." +#~ msgstr "Shaders er deaktiveret." + #, fuzzy #~ msgid "Shadow limit" #~ msgstr "Skygge grænse" @@ -8260,6 +8307,9 @@ msgstr "" #~ msgid "Smooth Lighting" #~ msgstr "Glat belysning" +#~ msgid "Sound system is disabled" +#~ msgstr "Lydsystem er slået fra" + #, fuzzy #~ msgid "Special key" #~ msgstr "Snigetast" diff --git a/po/de/luanti.po b/po/de/luanti.po index f22502be5..2573314b0 100644 --- a/po/de/luanti.po +++ b/po/de/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: German (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-02 23:00+0000\n" -"Last-Translator: grorp \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-11 02:02+0000\n" +"Last-Translator: Wuzzy \n" "Language-Team: German \n" "Language: de\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -24,7 +24,7 @@ msgstr "Leerer Befehl." #: builtin/client/chatcommands.lua msgid "Exit to main menu" -msgstr "Beenden, zum Hauptmenü" +msgstr "Ins Hauptmenü beenden" #: builtin/client/chatcommands.lua msgid "Invalid command: " @@ -32,7 +32,7 @@ msgstr "Ungültiger Befehl: " #: builtin/client/chatcommands.lua msgid "Issued command: " -msgstr "Gegebener Befehl: " +msgstr "Befehl gegeben: " #: builtin/client/chatcommands.lua msgid "List online players" @@ -48,7 +48,7 @@ msgstr "Die ausgehende Chatwarteschlange ist nun leer." #: builtin/client/chatcommands.lua msgid "This command is disabled by server." -msgstr "Dieser Befehl ist vom Server deaktiviert." +msgstr "Dieser Befehl wurde vom Server deaktiviert." #: builtin/common/chatcommands.lua msgid "Available commands:" @@ -77,6 +77,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Durchsuchen" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Bearbeiten" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Verzeichnis auswählen" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Datei auswählen" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Setzen" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Keine Beschreibung vorhanden)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2-D-Rauschen" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Abbrechen" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lückenhaftigkeit" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaven" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Versatz" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistenz" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Speichern" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skalierung" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Startwert (Seed)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X-Ausbreitung" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y-Ausbreitung" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z-Ausbreitung" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absolutwert" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Standardwerte" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "weich (eased)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Das Spiel muss ebenfalls automatische Belichtung aktivieren)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Das Spiel muss ebenfalls Bloom aktivieren)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Das Spiel muss ebenfalls volumetrisches Licht aktivieren)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Systemsprache verwenden)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Barrierefreiheit" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatisch" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Leeren" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Steuerung" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Deaktiviert" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Aktiviert" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Allgemein" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Bewegung" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Keine Ergebnisse" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Auf Standard zurücksetzen" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Auf Standard zurücksetzen ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Suchen" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Erweiterte Einstellungen zeigen" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Technische Namen zeigen" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Touchscreen-Layout" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "pause_menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Client-Mods" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Inhalt: Spiele" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Inhalt: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Das Spiel muss ebenfalls Schatten aktivieren)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Benutzerdefiniert" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamische Schatten" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Hoch" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Niedrig" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Mittel" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Sehr hoch" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Sehr niedrig" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -115,7 +353,7 @@ msgstr "Der Server erfordert Protokollversion $1. " #: builtin/mainmenu/common.lua msgid "Server supports protocol versions between $1 and $2. " -msgstr "Der Server unterstützt die Protokollversionen von $1 bis $2. " +msgstr "Der Server unterstützt Protokollversionen von $1 bis $2. " #: builtin/mainmenu/common.lua msgid "We only support protocol version $1." @@ -131,11 +369,11 @@ msgstr "Fehler bei Installation von „$1“: $2" #: builtin/mainmenu/content/contentdb.lua msgid "Failed to download \"$1\"" -msgstr "Fehler beim Download von „$1“" +msgstr "Fehler beim Herunterladen von „$1“" #: builtin/mainmenu/content/contentdb.lua msgid "Failed to download $1" -msgstr "Fehler beim Download von $1" +msgstr "Fehler beim Herunterladen von $1" #: builtin/mainmenu/content/contentdb.lua msgid "" @@ -163,7 +401,6 @@ msgstr "Alle" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Zurück" @@ -197,12 +434,7 @@ msgstr "Mods" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua msgid "No packages could be retrieved" -msgstr "Es konnten keine Pakete abgerufen werden" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Keine Ergebnisse" +msgstr "Es konnten keine Pakete empfangen werden" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" @@ -248,18 +480,6 @@ msgstr "Bereits installiert" msgid "Base Game:" msgstr "Basis-Spiel:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Abbrechen" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -383,6 +603,14 @@ msgstr "Fehler bei der Installation von $1 als $2" msgid "Unable to install a $1 as a texture pack" msgstr "Fehler bei der Texturenpaket-Installation von $1" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Dies ist die Liste der Clients, die zu\n" +"$1 verbunden sind" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Aktiviert, hat Fehler)" @@ -447,12 +675,6 @@ msgstr "Keine optionalen Abhängigkeiten" msgid "Optional dependencies:" msgstr "Optionale Abhängigkeiten:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Speichern" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Weltname:" @@ -607,11 +829,6 @@ msgstr "Flüsse" msgid "Sea level rivers" msgstr "Flüsse auf Meeresspiegelhöhe" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Startwert (Seed)" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Weicher Übergang zwischen Biomen" @@ -757,9 +974,25 @@ msgstr "" "Diesem Modpaket wurde in seiner modpack.conf ein expliziter Name vergeben, " "der jede Umbennenung hier überschreiben wird." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Alle ausklappen" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Nach Präfix gruppieren" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "Der Server $1 nutzt ein Spiel namens $2 und die folgenden Mods:" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "Der Server $1 nutzt folgende Mods:" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" -msgstr "Eine neue $1-Version ist verfügbar" +msgstr "Eine neue Version von $1 ist verfügbar" #: builtin/mainmenu/dlg_version_info.lua msgid "" @@ -785,7 +1018,7 @@ msgstr "Niemals" msgid "Visit website" msgstr "Webseite besuchen" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Einstellungen" @@ -799,223 +1032,6 @@ msgstr "" "Versuchen Sie die öffentliche Serverliste neu zu laden und prüfen Sie Ihre " "Internetverbindung." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Durchsuchen" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Bearbeiten" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Verzeichnis auswählen" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Datei auswählen" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Setzen" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Keine Beschreibung vorhanden)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2-D-Rauschen" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lückenhaftigkeit" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaven" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Versatz" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistenz" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skalierung" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X-Ausbreitung" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y-Ausbreitung" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z-Ausbreitung" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absolutwert" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Standardwerte" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "weich (eased)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Das Spiel muss ebenfalls automatische Belichtung aktivieren)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(Das Spiel muss ebenfalls Bloom aktivieren)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Das Spiel muss ebenfalls volumetrisches Licht aktivieren)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Systemsprache verwenden)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Barrierefreiheit" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Automatisch" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Leeren" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Steuerung" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Deaktiviert" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Aktiviert" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Allgemein" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Bewegung" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Auf Standard zurücksetzen" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Auf Standard zurücksetzen ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Suchen" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Erweiterte Einstellungen zeigen" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Technische Namen zeigen" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Client-Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Inhalt: Spiele" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Inhalt: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Aktiviert" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Shader sind deaktiviert." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Dies ist keine empfohlene Konfiguration." - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Das Spiel muss ebenfalls Schatten aktivieren)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Benutzerdefiniert" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamische Schatten" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Hoch" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Niedrig" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Mittel" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Sehr hoch" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Sehr niedrig" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Über" @@ -1036,10 +1052,6 @@ msgstr "Hauptentwickler" msgid "Core Team" msgstr "Kernteam" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht-Gerät:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Benutzerdatenverzeichnis öffnen" @@ -1189,10 +1201,22 @@ msgid "You need to install a game before you can create a world." msgstr "" "Sie müssen ein Spiel installieren, bevor Sie eine Welt erstellen können." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Favorit hinzufügen" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresse" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Clients:\n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativmodus" @@ -1206,6 +1230,10 @@ msgstr "Schaden / PvP" msgid "Favorites" msgstr "Favoriten" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Spiel: $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Inkompatible Server" @@ -1218,10 +1246,30 @@ msgstr "Spiel beitreten" msgid "Login" msgstr "Einloggen" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Anzahl der Mods: $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Server-Webseite besuchen" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Latenz" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Mögliche Filter\n" +"game:\n" +"mod:\n" +"player:" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Öffentliche Server" @@ -1306,23 +1354,6 @@ msgstr "" "\n" "Für mehr Details siehe debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modus: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Öffentlich: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Spielerkampf: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Servername: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ein Serialisierungsfehler ist aufgetreten:" @@ -1332,6 +1363,10 @@ msgstr "Ein Serialisierungsfehler ist aufgetreten:" msgid "Access denied. Reason: %s" msgstr "Zugriff verweigert. Grund: %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "Alle Debug-Infos verborgen" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Vorwärtsautomatik deaktiviert" @@ -1352,6 +1387,10 @@ msgstr "Blockgrenzen für aktuellen Block angezeigt" msgid "Block bounds shown for nearby blocks" msgstr "Blockgrenzen für Blöcke in Nähe angezeigt" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "Grenzboxen angezeigt" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kameraaktualisierung deaktiviert" @@ -1365,10 +1404,6 @@ msgid "Can't show block bounds (disabled by game or mod)" msgstr "" "Blockgrenzen können nicht angezeigt werden (von Spiel oder Mod deaktiviert)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Passwort ändern" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmmodus deaktiviert" @@ -1397,38 +1432,6 @@ msgstr "Verbindungsfehler (Zeitüberschreitung?)" msgid "Connection failed for unknown reason" msgstr "Verbindung aus unbekanntem Grund fehlgeschlagen" -#: src/client/game.cpp -msgid "Continue" -msgstr "Weiter" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Steuerung:\n" -"Kein Menü sichtbar:\n" -"- Finger wischen: Umsehen\n" -"- Antippen: Platzieren/schlagen/benutzen (Standard)\n" -"- Langes antippen: Graben/benutzen (Standard)\n" -"Menü/Inventar offen:\n" -"- Doppelt antippen (außerhalb):\n" -" --> schließen\n" -"- Stapel berühren, Feld berühren:\n" -" --> Stapel verschieben\n" -"- Berühren u. ziehen, mit 2. Finger antippen\n" -" --> 1 Gegenstand ins Feld platzieren\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1442,31 +1445,15 @@ msgstr "Client erstellen …" msgid "Creating server..." msgstr "Erstelle Server …" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Debug-Infos und Profiler-Graph verborgen" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Debug-Infos angezeigt" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Debug-Infos, Profiler und Drahtgitter deaktiviert" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Fehler bei Erstellung des Clients: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Hauptmenü" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Programm beenden" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Schnellmodus deaktiviert" @@ -1503,18 +1490,6 @@ msgstr "Nebel aktiviert" msgid "Fog enabled by game or mod" msgstr "Nebel von Spiel oder Mod aktiviert" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spielinfo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spiel pausiert" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Gehosteter Server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Gegenstandsdefinitionen …" @@ -1551,14 +1526,6 @@ msgstr "Geistmodus aktiviert (Hinweis: Kein „noclip“-Privileg)" msgid "Node definitions..." msgstr "Blockdefinitionen …" -#: src/client/game.cpp -msgid "Off" -msgstr "Aus" - -#: src/client/game.cpp -msgid "On" -msgstr "Ein" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Nick-Bewegungsmodus deaktiviert" @@ -1571,38 +1538,22 @@ msgstr "Nick-Bewegungsmodus aktiviert" msgid "Profiler graph shown" msgstr "Profiler-Graph angezeigt" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Entfernter Server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Adressauflösung …" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Wiederbeleben" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Herunterfahren …" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Einzelspieler" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Tonlautstärke" - #: src/client/game.cpp msgid "Sound muted" msgstr "Ton stummgeschaltet" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Tonsystem ist deaktiviert" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Tonsystem ist in diesem Build nicht unterstützt" @@ -1679,18 +1630,115 @@ msgstr "Sichtweite geändert auf %d, aber auf %d von Spiel oder Mod begrenzt" msgid "Volume changed to %d%%" msgstr "Lautstärke auf %d%% gesetzt" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "Drahtmodell vom Treiber nicht unterstützt" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Drahtmodell aktiv" -#: src/client/game.cpp -msgid "You died" -msgstr "Sie sind gestorben" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom ist momentan von Spiel oder Mod deaktiviert" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modus: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Öffentlich: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Spielerkampf: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Servername: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Passwort ändern" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Weiter" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Steuerung:\n" +"Kein Menü sichtbar:\n" +"- Finger wischen: Umsehen\n" +"- Antippen: Platzieren/schlagen/benutzen (Standard)\n" +"- Langes antippen: Graben/benutzen (Standard)\n" +"Menü/Inventar offen:\n" +"- Doppelt antippen (außerhalb):\n" +" --> schließen\n" +"- Stapel berühren, Feld berühren:\n" +" --> Stapel verschieben\n" +"- Berühren u. ziehen, mit 2. Finger antippen\n" +" --> 1 Gegenstand ins Feld platzieren\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Hauptmenü" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Programm beenden" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spielinfo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spiel pausiert" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Gehosteter Server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Aus" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ein" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Entfernter Server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Wiederbeleben" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Tonlautstärke" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Sie sind gestorben" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat ist momentan von Spiel oder Mod deaktiviert" @@ -1735,7 +1783,7 @@ msgstr "Untbr-Taste" #: src/client/keycode.cpp msgid "Caps Lock" -msgstr "Feststellt." +msgstr "Feststell" #: src/client/keycode.cpp msgid "Clear Key" @@ -2017,8 +2065,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Fehler beim Kompilieren des „%s“-Shaders." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "Shader sind aktiviert, aber GLSL wird vom Treiber nicht unterstützt." +msgid "GLSL is not supported by the driver" +msgstr "GLSL wird vom Treiber nicht unterstützt" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2069,7 +2117,7 @@ msgstr "Autovorwärts" msgid "Automatic jumping" msgstr "Auto-Springen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2081,7 +2129,7 @@ msgstr "Rückwärts" msgid "Block bounds" msgstr "Blockgrenzen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Kamerawechsel" @@ -2105,7 +2153,7 @@ msgstr "Leiser" msgid "Double tap \"jump\" to toggle fly" msgstr "2×Sprungtaste zum Fliegen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Wegwerfen" @@ -2121,11 +2169,11 @@ msgstr "Sicht erhöhen" msgid "Inc. volume" msgstr "Lauter" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Springen" @@ -2157,7 +2205,7 @@ msgstr "Nächst. Ggnstd." msgid "Prev. item" msgstr "Vorh. Ggnstd." -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Weite Sicht" @@ -2169,7 +2217,7 @@ msgstr "Rechts" msgid "Screenshot" msgstr "Bildschirmfoto" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Schleichen" @@ -2177,15 +2225,15 @@ msgstr "Schleichen" msgid "Toggle HUD" msgstr "HUD an/aus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Chat an/aus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Schnellmodus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Flugmodus" @@ -2193,11 +2241,11 @@ msgstr "Flugmodus" msgid "Toggle fog" msgstr "Nebel an/aus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Karte an/aus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Geistmodus" @@ -2205,7 +2253,7 @@ msgstr "Geistmodus" msgid "Toggle pitchmove" msgstr "Nickbewegung" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2241,7 +2289,7 @@ msgstr "Altes Passwort" msgid "Passwords do not match!" msgstr "Passwörter stimmen nicht überein!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Zurück" @@ -2254,15 +2302,43 @@ msgstr "Stumm" msgid "Sound Volume: %d%%" msgstr "Tonlautstärke: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Button hinzufügen" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Fertig" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Entfernen" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Zurücksetzen" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "Button ziehen zum Hinzufügen. Außerhalb antippen zum Abbrechen." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "Button antippen zum Auswählen. Button ziehen zum Verschieben." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Außerhalb antippen zum Abwählen." + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "Joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "Überlauf-Menü" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "Debug an/aus" @@ -2502,8 +2578,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3-D-Unterstützung.\n" "Aktuell verfügbar:\n" @@ -2513,9 +2588,7 @@ msgstr "" "zeilenbasierte Polarisation.\n" "- topbottom: Bildschirm horizontal teilen.\n" "- sidebyside: Bildschirm vertikal teilen.\n" -"- crossview: Schieläugiges 3-D\n" -"Beachten Sie, dass der „interlaced“-Modus erfordert, dass Shader aktiviert " -"sind." +"- crossview: Schieläugiges 3-D" #: src/settings_translation_file.cpp msgid "" @@ -2575,10 +2648,6 @@ msgstr "Reichweite aktiver Kartenblöcke" msgid "Active object send range" msgstr "Reichweite aktiver Objekte" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Zeigt Partikel, wenn man einen Block ausgräbt." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2609,6 +2678,19 @@ msgstr "Admin-Name" msgid "Advanced" msgstr "Erweitert" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Alle Mesh-Puffer, die weniger als diese Anzahl Punkte haben, werden während\n" +"des Renderns der Karte zusammengeführt. Dies verbessert die Performanz\n" +"des Renderns." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Erlaubt, dass Wolken ein 3-D-Aussehen statt ein flaches Aussehen haben." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Erlaubt Flüssigkeiten, transluzent zu sein." @@ -3012,14 +3094,14 @@ msgstr "Wolkenradius" msgid "Clouds" msgstr "Wolken" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Wolken sind ein clientseitiger Effekt." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Wolken im Menü" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Farbtiefe für Nachbearbeitungstextur" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Gefärbter Nebel" @@ -3045,7 +3127,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Kommagetrennte Liste von Flags für Dinge, die im Inhalte-Browser verborgen " "werden sollten.\n" @@ -3055,7 +3137,7 @@ msgstr "" "Sie können auch Inhaltseinstufungen festlegen.\n" "Diese Flags sind von Luanti-Versionen unabhängig,\n" "für eine vollständige Liste gehen Sie auf:\n" -"https://content.minetest.net/help/content_flags/" +"https://content.luanti.org/help/content_flags/" #: src/settings_translation_file.cpp msgid "" @@ -3219,6 +3301,19 @@ msgstr "Debugausgabelevel" msgid "Debugging" msgstr "Debugging" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Die Farbtiefe der Textur, die für die Nachbearbeitungs-Pipeline benutzt " +"wird, festlegen.\n" +"Wird der Wert verringert, kann dies die Performanz verbessern, aber einige " +"Effekte (z.B. Debanding)\n" +"brauchen mehr als 8 Bit, um zu funktionieren." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Taktung dedizierter Server" @@ -3274,15 +3369,15 @@ msgid "" "Luanti still enforces its own internal minimum, and enabling\n" "strict_protocol_version_checking will effectively override this." msgstr "" -"Hier festlegen, welches die ältesten Clients sind, die sich verbinden dürfen." -"\n" +"Hier festlegen, welches die ältesten Clients sind, die sich verbinden " +"dürfen.\n" "Ältere Clients sind kompatibel in der Hinsicht, dass sie beim Verbinden zu " "neuen\n" "Servern nicht abstürzen, aber sie könnten nicht alle neuen Funktionen, die " "Sie\n" "erwarten, unterstützen.\n" -"Das ermöglicht eine genauere Kontrolle als strict_protocol_version_checking." -"\n" +"Das ermöglicht eine genauere Kontrolle als " +"strict_protocol_version_checking.\n" "Luanti wird immer noch ein internes Minimum erzwingen, und die Aktivierung\n" "von strict_protocol_version_checking wird dies überschreiben." @@ -3403,18 +3498,10 @@ msgstr "" "Wüsten treten auf, wenn np_biome diesen Wert überschreitet.\n" "Falls das „snowbiomes“-Flag aktiviert ist, wird dies ignoriert." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Blockanimationen desynchronisieren" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Entwickleroptionen" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Grabepartikel" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Leere Passwörter verbieten" @@ -3447,6 +3534,18 @@ msgstr "2×Sprungtaste zum Fliegen" msgid "Double-tapping the jump key toggles fly mode." msgstr "Doppelttippen der Sprungtaste schaltet Flugmodus um." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Transparenzsortierte Dreiecke nach ihren Meshpuffern gruppiert zeichnen.\n" +"Dies macht die Transparenzsortierung zwischen Meshpuffern kaputt, aber " +"vermeidet\n" +"Situationen, wo die Transparenzsortierung sonst sehr langsam wäre." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Die Kartengenerator-Debuginformationen ausgeben." @@ -3531,12 +3630,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Aktiviert gefärbte Schatten. \n" -"Falls aktiv, werden transluzente Blöcke gefärbte Schatten werfen. Dies ist " -"rechenintensiv." +"Aktiviert gefärbte Schatten für transluzente Blöcke.\n" +"Dies ist rechenintensiv." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3624,12 +3722,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Server als IPv6 laufen lassen (oder nicht).\n" -"Wird ignoriert, falls bind_address gesetzt ist.\n" -"Dafür muss außerdem enable_ipv6 aktiviert sein." +"Wird ignoriert, falls bind_address gesetzt ist." #: src/settings_translation_file.cpp msgid "" @@ -3647,15 +3743,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Aktiviert die Animation von Inventargegenständen." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"Aktiviert das Zwischenspeichern von 3-D-Modellen, die mittels facedir " -"rotiert werden.\n" -"Dies hat nur einen Effekt, wenn Shader deaktiviert sind." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Aktiviert Debug und Fehlerprüfungen im OpenGL-Treiber." @@ -4015,10 +4102,6 @@ msgstr "GUI-Skalierung" msgid "GUI scaling filter" msgstr "GUI-Skalierfilter" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI-Skalierungsfilter txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepads" @@ -4287,15 +4370,6 @@ msgstr "" "Falls aktiviert, wird die „Aux1“-Taste statt der „Schleichen“-Taste zum\n" "Herunterklettern und Sinken benutzt." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Falls aktiviert, wird die Kontoregistrierung vom Einloggen in der " -"Benutzeroberfläche getrennt behandelt.\n" -"Falls deaktiviert, werden neue Konten beim Einloggen automatisch registriert." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4321,6 +4395,17 @@ msgstr "" "Falls aktiviert, können neue Spieler nicht ohne ein Passwort beitreten oder " "ihr Passwort zu ein leeres Passwort ändern." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Falls aktiviert, wird die Serverkontoregistrierung in der Benutzeroberfläche " +"getrennt vom Einloggen behandelt.\n" +"Falls deaktiviert, werden neue Konten beim Verbindungsaufbau zu einem Server " +"automatisch registriert." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4451,12 +4536,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "Zeitintervall des Abspeicherns wichtiger Änderungen in der Welt, in Sekunden." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Zeitintervall, in dem die Tageszeit an Clients gesendet wird, in Sekunden " -"angegeben." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animierte Inventargegenstände" @@ -5194,10 +5273,6 @@ msgstr "" msgid "Maximum users" msgstr "Maximale Benutzerzahl" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "3-D-Modell-Zwischenspeicher" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Meldung des Tages (message of the day)" @@ -5233,6 +5308,10 @@ msgstr "Untergrenze der zufälligen Anzahl großer Höhlen je Mapchunk." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Untergrenze der zufälligen Anzahl kleiner Höhlen je Mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Minimale Punktanzahl für Meshpuffer" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-Mapping" @@ -5329,13 +5408,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Name des Spielers.\n" -"Wenn ein Server gestartet wird, werden Clients mit diesem Namen zu " -"Administratoren.\n" -"Wird vom Hauptmenü aus gestartet, wird diese Einstellung überschrieben." +"Wenn ein Server gestartet wird, wird ein Client mit diesem Namen zum " +"Administrator.\n" +"Wenn vom Hauptmenü aus gestartet, wird diese Einstellung überschrieben." #: src/settings_translation_file.cpp msgid "" @@ -5861,17 +5940,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5879,20 +5960,22 @@ msgstr "" "\n" "* None – Keine Kantenglättung (Standard)\n" "\n" -"* FSAA – Von der Hardware bereitgestellte Vollbildkantenglättung (nicht\n" -"kompatibel mit Nachbearbeitung und Unterabtastung), auch bekannt\n" -"als Multi-Sample Antialiasing (MSAA). Glättet Blockkanten aus, " -"beeinträchtigt\n" -"aber nicht die Innenseiten der Texturen.\n" -"Um diese Option zu ändern, ist ein Neustart erforderlich.\n" +"* FSAA – Von der Hardware bereitgestellte Vollbildkantenglättung\n" +"Auch bekannt als „Multi-Sample Antialiasing“ (MSAA)\n" +"Glättet Blockkanten, aber hat keine Auswirkung auf das Innere von Texturen.\n" "\n" -"* FXAA – Schnelle annähende Kantenglättung (benötigt Shader).\n" +"Wenn die Nachbearbeitung deaktiviert ist, benötigt das Ändern von FSAA\n" +"einen Neustart. Außerdem wird, wenn die Nachbearbeitung deaktiviert ist,\n" +"FSAA nicht zusammen mit einer Unterabtastung oder einer\n" +"Nicht-Standard-„3d_mode“-Einstellung funktionieren.\n" +"\n" +"* FXAA – Schnelle annähende Kantenglättung\n" "Wendet einen Nachbearbeitungsfilter an, um kontrastreiche Kanten zu " "erkennen\n" "und zu glätten. Bietet eine Balance zwischen Geschwindigkeit und " "Bildqualität.\n" "\n" -"* SSAA – Super-Sampling-Kantenglättung (benötigt Shader).\n" +"* SSAA – Super-Sampling-Kantenglättung\n" "Rendert ein hochauflösendes Bild der Szene, dann skaliert es herunter, um\n" "die Aliasing-Effekte zu reduzieren. Dies ist die langsamste und genaueste " "Methode." @@ -6139,18 +6222,6 @@ msgstr "" msgid "Shader path" msgstr "Shader-Pfad" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shader" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" -"Shader sind ein fundamentaler Teil des Renderns und aktivieren erweiterte " -"visuelle Effekte." - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Schattenfilterqualität" @@ -6346,15 +6417,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Eine vollständige Aktualisierung der Schattenkarte über die angegebene\n" "Anzahl Frames verteilen. Höhere Werte können dazu führen, dass\n" -"Schatten langsamer reagieren, niedrigere Werte sind rechenintensiver.\n" -"Minimalwert: 1; Maximalwert: 16" +"Schatten langsamer reagieren, niedrigere Werte sind rechenintensiver." #: src/settings_translation_file.cpp msgid "" @@ -6735,10 +6804,6 @@ msgstr "" "Tageszeit, wenn eine neue Welt gestartet wird, in Millistunden (0-23999) " "angegeben." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Zeit-Sendeintervall" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Zeitgeschwindigkeit" @@ -6805,6 +6870,10 @@ msgstr "Transluzente Flüssigkeiten" msgid "Transparency Sorting Distance" msgstr "Transparenzsortierungsdistanz" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Transparenzsortierung nach Puffer gruppieren" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Bäumerauschen" @@ -6872,14 +6941,20 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Unterabtastung ist ähnlich der Verwendung einer niedrigeren " -"Bildschirmauflösung, aber sie wird nur auf die Spielwelt angewandt, während " -"die GUI intakt bleibt.\n" +"Bildschirmauflösung,\n" +"aber sie wird nur auf die Spielwelt angewandt, während die GUI intakt bleibt." +"\n" "Dies sollte einen beträchtlichen Performanzschub auf Kosten einer weniger " "detaillierten Grafik geben.\n" -"Hohe Werte führen zu einer weniger detaillierten Grafik." +"Hohe Werte führen zu einer weniger detaillierten Grafik.\n" +"Anmerkung: Unterabtastung wird im Moment nicht unterstützt, falls die\n" +"„3d_mode“-Einstellung auf einen Nicht-Standardwert gesetzt ist." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6901,19 +6976,19 @@ msgstr "Y-Obergrenze von Verliesen." msgid "Upper Y limit of floatlands." msgstr "Y-Obergrenze von Schwebeländern." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Wolken blockförmig statt flach aussehen lassen." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Eine Wolkenanimation für den Hintergrund im Hauptmenü benutzen." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Anisotrope Filterung verwenden, wenn auf Texturen aus einem gewissen Winkel " -"heraus geschaut wird." +"heraus geschaut wird.\n" +"Dies bietet eine signifikante Verbesserung, wenn es gemeinsam mit Mipmapping " +"verwendet wird." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -7191,37 +7266,23 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Falls gui_scaling_filter_txr2img auf „wahr“ gesetzt ist, werden\n" -"diese Bilder von der Hardware zur Software für die Skalierung\n" -"kopiert. Falls es auf „falsch“ gesetzt ist, wird die alte Skalierungs-\n" -"methode angewandt, für Grafiktreiber, welche das\n" -"Herunterladen von Texturen zurück von der Hardware nicht\n" -"korrekt unterstützen." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"Wenn bilineare, trilineare oder anisotrope Filter benutzt werden, können\n" +"Wenn bilineare/trilineare Filter benutzt werden, können\n" "niedrigauflösende Texturen verschwommen sein, also werden sie automatisch\n" "mit Pixelwiederholung vergrößert, um scharfe Pixel zu behalten. Dies setzt " "die\n" "minimale Texturengröße für die vergrößerten Texturen; höhere Werte führen\n" -"zu einem schärferen Aussehen, aber erfordern mehr Speicher. Zweierpotenzen\n" -"werden empfohlen. Diese Einstellung trifft NUR dann in Kraft, falls\n" -"der bilineare/trilineare/anisotrope Filter aktiviert ist.\n" +"zu einem schärferen Aussehen, aber erfordern mehr Speicher.\n" +"Diese Einstellung trifft NUR dann in Kraft, falls\n" +"einer der genannten Filter aktiviert ist.\n" "Dies wird außerdem verwendet als die Basisblocktexturengröße für\n" "welt-ausgerichtete automatische Texturenskalierung." @@ -7233,11 +7294,6 @@ msgstr "" "Ob Namensschildhintergründe standardmäßig angezeigt werden sollen.\n" "Mods können immer noch einen Hintergrund setzen." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Ob Blocktexturanimationen pro Kartenblock desynchronisiert sein sollten." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7267,16 +7323,14 @@ msgstr "Ob das Ende des sichtbaren Gebietes im Nebel verschwinden soll." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" "Ob die Töne stummgeschaltet werden. Man kann die Töne jederzeit " -"stummschalten,\n" -"außer, wenn das Tonsystem ausgeschaltet wurde (enable_sound=false).\n" +"stummschalten.\n" "Im Spiel können die Töne mit der Stummtaste oder mit Hilfe des\n" -"Pausemenüs stummgeschaltet werden." +"Pausenmenüs stummgeschaltet werden." #: src/settings_translation_file.cpp msgid "" @@ -7463,6 +7517,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Leer lassen, um einen lokalen Server zu starten.\n" #~ "Die Adresse im Hauptmenü überschreibt diese Einstellung." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Zeigt Partikel, wenn man einen Block ausgräbt." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7622,6 +7679,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Clean transparent textures" #~ msgstr "Transparente Texturen säubern" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Wolken sind ein clientseitiger Effekt." + #~ msgid "Command key" #~ msgstr "Befehlstaste" @@ -7720,9 +7780,15 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Darkness sharpness" #~ msgstr "Dunkelheits-Steilheit" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Debug-Infos und Profiler-Graph verborgen" + #~ msgid "Debug info toggle key" #~ msgstr "Taste zum Umschalten der Debug-Info" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Debug-Infos, Profiler und Drahtgitter deaktiviert" + #~ msgid "Dec. volume key" #~ msgstr "Leiser-Taste" @@ -7788,9 +7854,15 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Höhlenflüssigkeiten in Biomdefinitionen.\n" #~ "Y der Obergrenze von Lava in großen Höhlen." +#~ msgid "Desynchronize block animation" +#~ msgstr "Blockanimationen desynchronisieren" + #~ msgid "Dig key" #~ msgstr "Grabetaste" +#~ msgid "Digging particles" +#~ msgstr "Grabepartikel" + #~ msgid "Disable anticheat" #~ msgstr "Anti-Cheat deaktivieren" @@ -7819,6 +7891,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamische Schatten:" +#~ msgid "Enable" +#~ msgstr "Aktiviert" + #~ msgid "Enable VBO" #~ msgstr "VBO aktivieren" @@ -7853,6 +7928,14 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Shader müssen aktiviert werden, bevor diese Einstellung aktiviert werden " #~ "kann." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Aktiviert das Zwischenspeichern von 3-D-Modellen, die mittels facedir " +#~ "rotiert werden.\n" +#~ "Dies hat nur einen Effekt, wenn Shader deaktiviert sind." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Aktiviert filmisches Tone-Mapping" @@ -7902,9 +7985,6 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Experimentelle Einstellung, könnte sichtbare Leerräume zwischen\n" #~ "Blöcken verursachen, wenn auf einen Wert größer 0 gesetzt." -#~ msgid "FPS in pause menu" -#~ msgstr "Bildwiederholrate im Pausenmenü" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7992,8 +8072,8 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Full screen BPP" #~ msgstr "Vollbildfarbtiefe" -#~ msgid "Game" -#~ msgstr "Spiel" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI-Skalierungsfilter txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8165,666 +8245,674 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Instrumentation" #~ msgstr "Instrumentierung" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Zeitintervall, in dem die Tageszeit an Clients gesendet wird, in Sekunden " +#~ "angegeben." + #~ msgid "Invalid gamespec." #~ msgstr "Ungültige Spielspezifikationen" #~ msgid "Inventory key" #~ msgstr "Inventartaste" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht-Gerät:" + #~ msgid "Jump key" #~ msgstr "Sprungtaste" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die Sichtweite zu reduzieren.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zur Reduzierung der Lautstärke.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Graben.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Fallenlassen des ausgewählten Gegenstandes.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die Sichtweite zu erhöhen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zur Erhöhung der Lautstärke.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Springen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um sich schnell im Schnellmodus zu bewegen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um den Spieler rückwärts zu bewegen.\n" #~ "Wird, wenn aktiviert, auch die Vorwärtsautomatik deaktivieren.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um den Spieler vorwärts zu bewegen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um den Spieler nach links zu bewegen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um den Spieler nach rechts zu bewegen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um das Spiel stumm zu schalten.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um das Chat-Fenster zu öffnen, um Kommandos einzugeben.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um das Chat-Fenster zu öffnen, um lokale Befehle einzugeben.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Öffnen des Chat-Fensters.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Öffnen des Inventars.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Bauen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 11. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 12. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 13. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 14. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 15. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 16. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 16. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 18. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 19. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 20. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 21. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 22. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 23. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 24. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 25. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 26. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 27. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 28. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 29. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 30. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 31. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des 32. Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des achten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des fünften Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des ersten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des vierten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des nächsten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des neunten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des vorherigen Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des zweiten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des siebten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des sechsten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des zehnten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Auswählen des dritten Gegenstands in der Schnellleiste.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Schleichen.\n" #~ "Wird auch zum Runterklettern und das Sinken im Wasser verwendet, falls " #~ "aux1_descends deaktiviert ist.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Wechseln der Kamera (Ego- oder Dritte-Person-Perspektive).\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zur Erzeugung von Bildschirmfotos.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten der automatischen Vorwärtsbewegung.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten des Filmmodus.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Wechseln der Anzeige der Übersichtskarte.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten des Schnellmodus.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten des Flugmodus.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten des Geistmodus.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten des Nick-Bewegungsmodus.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten der Kameraaktualisierung. Nur für die Entwicklung " #~ "benutzt.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die Anzeige des Chats umzuschalten.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten der Anzeige der Debug-Informationen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten der Anzeige des Nebels.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um das HUD zu verbergen oder wieder anzuzeigen.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die Anzeige der großen Chatkonsole umzuschalten.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste zum Umschalten der Profiler-Anzeige. Für die Entwicklung benutzt.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die unbegrenzte Sichtweite ein- oder auszuschalten.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Taste, um die Zoom-Ansicht zu verwenden, falls möglich.\n" -#~ "Siehe http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Siehe http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Steuerung (Falls dieses Menü defekt ist, entfernen Sie Zeugs aus minetest." -#~ "conf)" +#~ "Steuerung (Falls dieses Menü defekt ist, entfernen Sie Zeugs aus " +#~ "minetest.conf)" #~ msgid "Large chat console key" #~ msgstr "Taste für große Chatkonsole" @@ -8897,6 +8985,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Menus" #~ msgstr "Menüs" +#~ msgid "Mesh cache" +#~ msgstr "3-D-Modell-Zwischenspeicher" + #~ msgid "Minimap" #~ msgstr "Übersichtskarte" @@ -9119,6 +9210,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Minimalwert: 0.001 Sekunden. Maximalwert: 0.2 Sekunden.\n" #~ "(Beachten Sie die englische Notation mit Punkt als Dezimaltrennzeichen.)" +#~ msgid "Shaders" +#~ msgstr "Shader" + #~ msgid "Shaders (experimental)" #~ msgstr "Shader (experimentell)" @@ -9134,6 +9228,16 @@ msgstr "cURL-Parallel-Begrenzung" #~ "Performanz auf\n" #~ "einigen Grafikkarten erhöhen." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Shader sind ein fundamentaler Teil des Renderns und aktivieren erweiterte " +#~ "visuelle Effekte." + +#~ msgid "Shaders are disabled." +#~ msgstr "Shader sind deaktiviert." + #~ msgid "Shadow limit" #~ msgstr "Schattenbegrenzung" @@ -9167,6 +9271,9 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Glättet die Rotation der Kamera. 0 zum Ausschalten." +#~ msgid "Sound system is disabled" +#~ msgstr "Tonsystem ist deaktiviert" + #~ msgid "Special" #~ msgstr "Spezial" @@ -9215,6 +9322,12 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "This font will be used for certain languages." #~ msgstr "Diese Schrift wird von bestimmten Sprachen benutzt." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Dies ist keine empfohlene Konfiguration." + +#~ msgid "Time send interval" +#~ msgstr "Zeit-Sendeintervall" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Um Shader zu aktivieren, muss der OpenGL-Treiber genutzt werden." @@ -9341,6 +9454,19 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Waving water" #~ msgstr "Wasserwellen" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Falls gui_scaling_filter_txr2img auf „wahr“ gesetzt ist, werden\n" +#~ "diese Bilder von der Hardware zur Software für die Skalierung\n" +#~ "kopiert. Falls es auf „falsch“ gesetzt ist, wird die alte Skalierungs-\n" +#~ "methode angewandt, für Grafiktreiber, welche das\n" +#~ "Herunterladen von Texturen zurück von der Hardware nicht\n" +#~ "korrekt unterstützen." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9354,6 +9480,11 @@ msgstr "cURL-Parallel-Begrenzung" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Ob Verliese manchmal aus dem Gelände herausragen." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Ob Blocktexturanimationen pro Kartenblock desynchronisiert sein sollten." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Ob sich Spieler gegenseitig Schaden zufügen und töten können." diff --git a/po/dv/luanti.po b/po/dv/luanti.po index d9ef1127e..656dffc26 100644 --- a/po/dv/luanti.po +++ b/po/dv/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Dhivehi (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2019-11-10 15:04+0000\n" "Last-Translator: Krock \n" "Language-Team: Dhivehi ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "ފުންކޮށް ހޯދާ" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "ބަދަލުކުރޭ" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select directory" +msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select file" +msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "އިހްތިޔާރުކުރޭ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(ސެޓިންގްގެ ތައާރަފެއް ދީފައެއް ނެތް)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ކެންސަލް" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "ސޭވްކުރޭ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "ސީޑް" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "އޮފްކޮށްފަ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "ޖައްސާފަ" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "ޑިފޯލްޓައަށް ރައްދުކުރޭ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "ހޯދާ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "ޓެކްނިކަލް ނަންތައް ދައްކާ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "ޕޯސް މެނޫގައި އެފް.ޕީ.އެސް" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "ގޭމް ހޮސްޓްކުރޭ" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "ސޮޓޯރ ކުލޯޒްކޮށްލާ" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -162,7 +408,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -199,11 +444,6 @@ msgstr "މޮޑްތައް" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -250,18 +490,6 @@ msgstr "" msgid "Base Game:" msgstr "ގޭމް ހޮސްޓްކުރޭ" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "ކެންސަލް" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -394,6 +622,12 @@ msgstr "$1 $2އަށް ނޭޅުނު" msgid "Unable to install a $1 as a texture pack" msgstr "$1 $2އަށް ނޭޅުނު" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -460,12 +694,6 @@ msgstr "ލާޒިމުނޫން ޑިޕެންޑެންސީތައް:" msgid "Optional dependencies:" msgstr "ލާޒިމުނޫން ޑިޕެންޑެންސީތައް:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "ސޭވްކުރޭ" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "ދުނިޔެ:" @@ -619,11 +847,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "ސީޑް" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -760,6 +983,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "ހުރިހާއެއްޗެއް ޖައްސާ" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -784,7 +1024,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -796,231 +1036,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "ޕަބްލިކް ސާވަރ ލިސްޓު އަލުން ޖައްސަވާ.އަދި އިންޓަނެޓް ކަނެކްޝަން ޗެކްކުރައްވާ." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "ފުންކޮށް ހޯދާ" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "ބަދަލުކުރޭ" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select directory" -msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select file" -msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "އިހްތިޔާރުކުރޭ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(ސެޓިންގްގެ ތައާރަފެއް ދީފައެއް ނެތް)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "އޮފްކޮށްފަ" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "ޖައްސާފަ" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "ޑިފޯލްޓައަށް ރައްދުކުރޭ" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "ހޯދާ" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "ޓެކްނިކަލް ނަންތައް ދައްކާ" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "ގޭމް ހޮސްޓްކުރޭ" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "ސޮޓޯރ ކުލޯޒްކޮށްލާ" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "ޖައްސާފަ" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1041,10 +1056,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1196,11 +1207,23 @@ msgstr "ގޭމް ހޮސްޓްކުރޭ" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "އެންމެ ގަޔާނުވޭ" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "އެޑްރެސް / ޕޯޓް" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "ކްރިއޭޓިވް މޯޑް" @@ -1215,6 +1238,11 @@ msgstr "" msgid "Favorites" msgstr "އެންމެ ގަޔާވޭ" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "ގޭމް" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1228,10 +1256,26 @@ msgstr "ގޭމް ހޮސްޓްކުރޭ" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1317,23 +1361,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1344,6 +1371,10 @@ msgstr "މޮޑެއްފަދަ ލުއޭ ސްކްރިޕްޓެއްގައި މައް msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1365,6 +1396,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1378,10 +1413,6 @@ msgstr "އަނިޔާވުން ޖައްސާފައި" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1411,39 +1442,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"ޑިފޯލްޓް ކޮންޓްޜޯލްތައް:\n" -"މެނޫ ނުފެންނައިރު:\n" -"-އެއްފަހަރު ފިއްތުން: ފިތް އޮންކުރުން\n" -"-ދެފަހަރު ފިއްތުން: ބޭންދުން/ބޭނުންކުރުން\n" -"-އިނގިލި ކާތާލުން: ފަރާތްފަޜާތަށް ބެލުން\n" -"މެނޫ/އިންވެންޓަރީ ފެންނައިރު:\n" -"-ދެ ފަހަރު ފިއްތުން(ބޭރުގަ)\n" -"-->ކްލޯޒްކުރޭ\n" -"-ބަރީގައި އަތްލާފައި ޖާގައިގައި އަތްލުން:\n" -"-->ބަރީގެ ތަން ބަދަލުކުރޭ\n" -"-އަތްލާފައި ދަމާ، ދެވަނަ އިނގިލިން ފިއްތާ:\n" -"-->ޖާގައިގައި އެކަތި ބައިންދާ\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1457,31 +1455,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "މެއިން މެނޫ" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1522,18 +1504,6 @@ msgstr "ޖައްސާފަ" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1571,14 +1541,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1591,38 +1553,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "އަލުން ސްޕައުންވޭ" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1694,18 +1640,116 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "މަރުވީ" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"ޑިފޯލްޓް ކޮންޓްޜޯލްތައް:\n" +"މެނޫ ނުފެންނައިރު:\n" +"-އެއްފަހަރު ފިއްތުން: ފިތް އޮންކުރުން\n" +"-ދެފަހަރު ފިއްތުން: ބޭންދުން/ބޭނުންކުރުން\n" +"-އިނގިލި ކާތާލުން: ފަރާތްފަޜާތަށް ބެލުން\n" +"މެނޫ/އިންވެންޓަރީ ފެންނައިރު:\n" +"-ދެ ފަހަރު ފިއްތުން(ބޭރުގަ)\n" +"-->ކްލޯޒްކުރޭ\n" +"-ބަރީގައި އަތްލާފައި ޖާގައިގައި އަތްލުން:\n" +"-->ބަރީގެ ތަން ބަދަލުކުރޭ\n" +"-އަތްލާފައި ދަމާ، ދެވަނަ އިނގިލިން ފިއްތާ:\n" +"-->ޖާގައިގައި އެކަތި ބައިންދާ\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "މެއިން މެނޫ" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "އަލުން ސްޕައުންވޭ" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "މަރުވީ" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2034,7 +2078,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "$1 ނޭޅުނު" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2084,7 +2128,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2096,7 +2140,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "ފިތްތައް ބަދަލުކުރޭ" @@ -2121,7 +2165,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2137,11 +2181,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2173,7 +2217,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2185,7 +2229,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2193,15 +2237,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2209,11 +2253,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2221,7 +2265,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2258,7 +2302,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2271,15 +2315,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2475,8 +2547,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2529,10 +2600,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2556,6 +2623,16 @@ msgstr "ދުނިޔޭގެ ނަން" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2924,14 +3001,14 @@ msgstr "" msgid "Clouds" msgstr "" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "މެނޫގައި ވިލާތައް" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "" @@ -2954,7 +3031,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3090,6 +3167,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3241,19 +3326,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "މޮޑްގެ މައުލޫލާތު:" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3281,6 +3358,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3356,8 +3441,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3430,8 +3515,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3446,12 +3530,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3753,10 +3831,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3981,12 +4055,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4005,6 +4073,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4099,10 +4174,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4723,10 +4794,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4759,6 +4826,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4846,9 +4917,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "ކުޅުންތެރިޔާގެ ނަން.\n" @@ -5293,17 +5365,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5500,16 +5574,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5670,10 +5734,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5952,10 +6015,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6014,6 +6073,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6064,7 +6127,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6087,16 +6153,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6333,20 +6397,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6357,10 +6413,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6383,8 +6435,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6548,11 +6599,9 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "$1 ޑައުންލޯޑޮކޮށް އިންސްޓޯލްކުރަނީ، މަޑުކުރައްވާ..." -#~ msgid "FPS in pause menu" -#~ msgstr "ޕޯސް މެނޫގައި އެފް.ޕީ.އެސް" - -#~ msgid "Game" -#~ msgstr "ގޭމް" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "ޖައްސާފަ" #, fuzzy #~ msgid "Install: file: \"$1\"" diff --git a/po/el/luanti.po b/po/el/luanti.po index a38aec783..1e98ee9bd 100644 --- a/po/el/luanti.po +++ b/po/el/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Greek (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-01-14 12:31+0000\n" "Last-Translator: RRadler \n" "Language-Team: Greek ] [-t]" msgstr "[all | <εντολή>]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Περιήγηση" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Επεξεργασία" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Επιλογή φακέλου" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Επιλογή αρχείου" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Επιλογή" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Δεν δόθηκε περιγραφή της ρύθμισης)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D θόρυβος" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Άκυρο" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Οκτάβες" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Αντιστάθμιση" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Αποθήκευση" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Κλίμακα" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Σπόρος" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Χ εξάπλωση" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Υ εξάπλωση" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Ζ εξάπλωση" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "απόλυτη τιμή" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "προεπιλογή" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Ομαλός Χάρτης" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Εκκαθάριση" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Απενεργοποιημένο" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Ενεργοποιημένο" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Χωρίς αποτελέσματα" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Επαναφορά προεπιλογής" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Αναζήτηση" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Εμφάνιση τεχνικών ονομάτων" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Πλήρης οθόνη" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Επιλογή Τροποποιήσεων" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Περιεχόμενο" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Περιεχόμενο" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Δυναμικές σκιές" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Υψηλό" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Χαμηλό" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Μεσαίο" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "Εξαιρετικά Υψηλό" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Πολύ Χαμηλό" + #: builtin/fstk/ui.lua msgid "" msgstr "<κανένα διαθέσιμο>" @@ -166,7 +411,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -204,11 +448,6 @@ msgstr "Τροποποιήσεις" msgid "No packages could be retrieved" msgstr "Δεν ήταν δυνατή η ανάκτηση πακέτων" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Χωρίς αποτελέσματα" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Δεν υπάρχουν ενημερώσεις" @@ -254,18 +493,6 @@ msgstr "Ήδη εγκαταστημένο" msgid "Base Game:" msgstr "Βασικό παιχνίδι:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Άκυρο" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -393,6 +620,12 @@ msgstr "Δεν είναι δυνατή η εγκατάσταση του $1 σα msgid "Unable to install a $1 as a texture pack" msgstr "Δεν είναι δυνατή η εγκατάσταση $1 ως πακέτου υφής" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Ενεργό, έχει σφάλμα)" @@ -457,12 +690,6 @@ msgstr "Δεν υπάρχουν προαιρετικές εξαρτήσεις" msgid "Optional dependencies:" msgstr "Προαιρετικές εξαρτήσεις:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Αποθήκευση" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Κόσμος:" @@ -614,11 +841,6 @@ msgstr "Ποτάμια" msgid "Sea level rivers" msgstr "Ποτάμια στο επίπεδο της θάλασσας" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Σπόρος" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Ομαλή αλλαγή μεταξύ περιοχών" @@ -763,6 +985,23 @@ msgstr "" "Αυτό το modpack έχει ένα ρητό όνομα που δίνεται στο modpack.conf το οποίο θα " "παρακάμψει οποιαδήποτε μετονομασία εδώ." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Ενεργοποίηση όλων" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -787,7 +1026,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ρυθμίσεις" @@ -801,231 +1040,6 @@ msgstr "" "Δοκιμάστε να ενεργοποιήσετε ξανά τη δημόσια λίστα διακομιστών και ελέγξτε τη " "σύνδεσή σας στο διαδίκτυο." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Περιήγηση" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Επεξεργασία" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Επιλογή φακέλου" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Επιλογή αρχείου" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Επιλογή" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Δεν δόθηκε περιγραφή της ρύθμισης)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D θόρυβος" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Οκτάβες" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Αντιστάθμιση" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Κλίμακα" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Χ εξάπλωση" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Υ εξάπλωση" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Ζ εξάπλωση" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "απόλυτη τιμή" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "προεπιλογή" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Ομαλός Χάρτης" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Εκκαθάριση" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Απενεργοποιημένο" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Ενεργοποιημένο" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Επαναφορά προεπιλογής" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Αναζήτηση" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Εμφάνιση τεχνικών ονομάτων" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Επιλογή Τροποποιήσεων" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Περιεχόμενο" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Περιεχόμενο" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Ενεργοποιημένο" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Η ενημέρωση κάμερας απενεργοποιήθηκε" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Δυναμικές σκιές" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Υψηλό" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Χαμηλό" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Μεσαίο" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "Εξαιρετικά Υψηλό" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Πολύ Χαμηλό" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Σχετικά" @@ -1046,10 +1060,6 @@ msgstr "Βασικοί Προγραμματιστές" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Άνοιγμα Καταλόγου Δεδομένων Χρήστη" @@ -1202,10 +1212,22 @@ msgstr "Εκκίνηση Παιχνιδιού" msgid "You need to install a game before you can create a world." msgstr "Πρέπει να κατεβάσετε ένα παιχνίδι πριν κατεβάσετε κάποια επέκταση" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Αγαπημένα" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Διεύθυνση" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Επιλογή Τροποποιήσεων" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Λειτουργία Δημιουργίας" @@ -1219,6 +1241,11 @@ msgstr "Μάχες μεταξύ παιχτών" msgid "Favorites" msgstr "Αγαπημένα" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Παιχνίδι" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Μη συμβατοί διακομιστές" @@ -1231,10 +1258,26 @@ msgstr "Συμμετοχή στο Παιχνίδι" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Δημόσιοι Διακομιστές" @@ -1320,23 +1363,6 @@ msgstr "" "\n" "Ελέγξτε το debug.txt για λεπτομέρειες." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Λειτουργία: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Δημόσιο: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Όνομα Διακομιστή: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1347,6 +1373,11 @@ msgstr "Παρουσιάστηκε σφάλμα:" msgid "Access denied. Reason: %s" msgstr "Δεν επιτρέπεται η πρόσβαση. Αιτία: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Εμφάνιση πληροφοριών εντοπισμού σφαλμάτων" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Η αυτόματη προώθηση είναι απενεργοποιημένη" @@ -1367,6 +1398,10 @@ msgstr "Εμφανίζονται όρια αποκλεισμού για το τ msgid "Block bounds shown for nearby blocks" msgstr "Εμφανίζονται όρια αποκλεισμού για κοντινά μπλοκ" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Η ενημέρωση κάμερας απενεργοποιήθηκε" @@ -1382,10 +1417,6 @@ msgstr "" "Δεν είναι δυνατή η εμφάνιση ορίων μπλοκ (χρειάζεται το δικαίωμα " "\"basic_debug\")" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Αλλαγή Κωδικού" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Η κινηματογραφική λειτουργία απενεργοποιήθηκε" @@ -1414,39 +1445,6 @@ msgstr "Σφάλμα σύνδεσης (λήξη χρόνου;)" msgid "Connection failed for unknown reason" msgstr "Η σύνδεση απέτυχε για άγνωστο λόγο" -#: src/client/game.cpp -msgid "Continue" -msgstr "Συνέχεια" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Προεπιλεγμένα στοιχεία ελέγχου:\n" -"Δεν εμφανίζεται μενού:\n" -"- ένα πάτημα: κουμπί ενεργοποίησης\n" -"- διπλό πάτημα: θέση/χρήση\n" -"- σύρσιμο δαχτύλου: παρακολούθηση γύρω\n" -"Ορατό μενού/απόθεμα:\n" -"- διπλό πάτημα (εξωτερικό):\n" -" -->κλείσιμο\n" -"- στοίβα αφής, υποδοχή αφής:\n" -" --> μετακίνηση στοίβας\n" -"- άγγιγμα & σύρσιμο, πάτημα του 2ου δαχτύλου\n" -" --> τοποθέτηση μεμονωμένου αντικειμένου στην υποδοχή\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1460,33 +1458,15 @@ msgstr "Δημιουργία πελάτη..." msgid "Creating server..." msgstr "Δημιουργία διακομιστή..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Κρυφές πληροφορίες εντοπισμού σφαλμάτων και γράφημα προφίλ" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Εμφάνιση πληροφοριών εντοπισμού σφαλμάτων" -#: src/client/game.cpp -#, fuzzy -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" -"Απόκρυψη πληροφοριών εντοπισμού σφαλμάτων, γραφήματος προφίλ και wireframe" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Σφάλμα δημιουργίας πελάτη: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Έξοδος στο Μενού" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Έξοδος στο ΛΣ" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Γρήγορη λειτουργία απενεργοποιημένη" @@ -1526,18 +1506,6 @@ msgstr "Η ομίχλη ενεργοποιήθηκε" msgid "Fog enabled by game or mod" msgstr "Το ζουμ είναι απενεργοποιημένο από το παιχνίδι ή την τροποποίηση" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Πληροφορίες Παιχνιδιού:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Το παιχνίδι διακόπηκε" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Διακομιστής Φιλοξενίας" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Ορισμοί στοιχείων..." @@ -1574,14 +1542,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1594,39 +1554,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Απομακρυσμένος διακομιστής" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Επίλυση διεύθυνσης..." -#: src/client/game.cpp -#, fuzzy -msgid "Respawn" -msgstr "Επανεμφάνηση" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Τερματισμός Λειτουργίας..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Ένταση Ήχου" - #: src/client/game.cpp msgid "Sound muted" msgstr "Σίγαση Ήχου" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Το Σύστημα Ήχου είναι απενεργοποιημένο" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Το Σύστημα Ήχου δεν υποστηρίζεται σε αυτή την έκδοση" @@ -1702,18 +1645,117 @@ msgstr "Το εύρος προβολής άλλαξε σε %d" msgid "Volume changed to %d%%" msgstr "Η ένταση άλλαξε σε %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Πέθανες" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Το ζουμ είναι απενεργοποιημένο από το παιχνίδι ή την τροποποίηση" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Λειτουργία: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Δημόσιο: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Όνομα Διακομιστή: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Αλλαγή Κωδικού" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Συνέχεια" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Προεπιλεγμένα στοιχεία ελέγχου:\n" +"Δεν εμφανίζεται μενού:\n" +"- ένα πάτημα: κουμπί ενεργοποίησης\n" +"- διπλό πάτημα: θέση/χρήση\n" +"- σύρσιμο δαχτύλου: παρακολούθηση γύρω\n" +"Ορατό μενού/απόθεμα:\n" +"- διπλό πάτημα (εξωτερικό):\n" +" -->κλείσιμο\n" +"- στοίβα αφής, υποδοχή αφής:\n" +" --> μετακίνηση στοίβας\n" +"- άγγιγμα & σύρσιμο, πάτημα του 2ου δαχτύλου\n" +" --> τοποθέτηση μεμονωμένου αντικειμένου στην υποδοχή\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Έξοδος στο Μενού" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Έξοδος στο ΛΣ" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Πληροφορίες Παιχνιδιού:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Το παιχνίδι διακόπηκε" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Διακομιστής Φιλοξενίας" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Απομακρυσμένος διακομιστής" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Respawn" +msgstr "Επανεμφάνηση" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Ένταση Ήχου" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Πέθανες" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2049,8 +2091,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Το Σύστημα Ήχου δεν υποστηρίζεται σε αυτή την έκδοση" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2098,7 +2141,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2110,7 +2153,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2134,7 +2177,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2150,11 +2193,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2186,7 +2229,7 @@ msgstr "Επόμενο αντικείμενο" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2198,7 +2241,7 @@ msgstr "Δεξιά" msgid "Screenshot" msgstr "Στιγμιότυπο οθόνης" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2206,15 +2249,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2222,11 +2265,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2234,7 +2277,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Μεγέθυνση" @@ -2270,7 +2313,7 @@ msgstr "Παλιός Κωδικός" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Έξοδος" @@ -2283,15 +2326,45 @@ msgstr "Σε σίγαση" msgid "Sound Volume: %d%%" msgstr "Sound Volume: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Έτοιμο!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Απομακρυσμένος διακομιστής" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2490,8 +2563,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2544,10 +2616,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2571,6 +2639,16 @@ msgstr "Όνομα κόσμου" msgid "Advanced" msgstr "Για προχωρημένους" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2941,11 +3019,11 @@ msgid "Clouds" msgstr "Σύννεφα" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2970,7 +3048,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3105,6 +3183,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3256,19 +3342,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Διακοσμήσεις" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3296,6 +3374,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3371,8 +3457,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3445,8 +3531,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3461,12 +3546,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3770,10 +3849,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3998,12 +4073,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4022,6 +4091,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4116,10 +4192,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4736,10 +4808,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4772,6 +4840,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4863,7 +4935,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5307,17 +5379,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5514,16 +5588,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5686,10 +5750,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5968,10 +6031,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6033,6 +6092,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6083,7 +6146,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6106,16 +6172,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6353,20 +6417,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6377,10 +6433,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6403,8 +6455,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6606,6 +6657,14 @@ msgstr "Παράλληλο όριο cURL" #~ msgid "Credits" #~ msgstr "Μνείες" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Κρυφές πληροφορίες εντοπισμού σφαλμάτων και γράφημα προφίλ" + +#, fuzzy +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Απόκρυψη πληροφοριών εντοπισμού σφαλμάτων, γραφήματος προφίλ και wireframe" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "Απενεργοποιημένο το απεριόριστο εύρος προβολής" @@ -6619,12 +6678,13 @@ msgstr "Παράλληλο όριο cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Δυναμικές σκιές: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Ενεργοποιημένο" + #~ msgid "Fancy Leaves" #~ msgstr "Φανταχτερά Φύλλα" -#~ msgid "Game" -#~ msgstr "Παιχνίδι" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Ρυθμίσεις" @@ -6676,9 +6736,16 @@ msgstr "Παράλληλο όριο cURL" #~ msgid "Screen:" #~ msgstr "Οθόνη:" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Η ενημέρωση κάμερας απενεργοποιήθηκε" + #~ msgid "Simple Leaves" #~ msgstr "Απλά Φύλλα" +#~ msgid "Sound system is disabled" +#~ msgstr "Το Σύστημα Ήχου είναι απενεργοποιημένο" + #~ msgid "Special key" #~ msgstr "Ειδικό πλήκτρο" diff --git a/po/eo/luanti.po b/po/eo/luanti.po index e2e7eaa38..5e9766149 100644 --- a/po/eo/luanti.po +++ b/po/eo/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: Esperanto (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-08 00:16+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-12-27 21:05+0000\n" "Last-Translator: Hugo \n" "Language-Team: Esperanto \n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -79,6 +79,249 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Foliumi" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Redakti" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Elekti dosierujon" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Elekti dosieron" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Agordi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Neniu priskribo de agordo estas donita)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2d-a bruo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Nuligi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Interspacoj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktavoj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Deŝovo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persisteco" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Konservi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skalo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Fontnombro" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X-disiĝo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y-disiĝo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z-disiĝo" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absoluta valoro" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "normoj" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "faciligita" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Uzu lingvon de la sistemo)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Faciluzo" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Babilo" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Vakigo" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Stirado" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Malŝaltita" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Ŝaltita" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Ĝenerale" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Moviĝo" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Neniuj rezultoj" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Reagordi al implicita valoro" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Reagordi al implicita valoro ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Serĉi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Montri porspertulajn agordojn" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Montri teĥnikajn nomojn" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Sojlo de tuŝekrano" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "Kadroj sekunde en paŭza menuo" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Klientaj modifaĵoj" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Enhavo: Ludoj" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Enhavo: Modifaĵoj" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Propra" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dinamikaj ombroj" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alta" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Malalta" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Mezalta" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Altegaj" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Malaltega" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -160,11 +403,10 @@ msgstr "Elŝutante $1…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Ĉiuj" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Reeniri" @@ -201,11 +443,6 @@ msgstr "Modifaĵoj" msgid "No packages could be retrieved" msgstr "Neniun pakaĵon sukcesis ricevi" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Neniuj rezultoj" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Neniuj ĝisdatigoj" @@ -251,18 +488,6 @@ msgstr "Jam instalita" msgid "Base Game:" msgstr "Baza Ludo:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Nuligi" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -389,6 +614,12 @@ msgstr "Ne povas instali «$1» kiel «$2»" msgid "Unable to install a $1 as a texture pack" msgstr "Malsukcesis instali $1 kiel teksturaron" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Ebligita, havas eraron)" @@ -454,12 +685,6 @@ msgstr "Neniuj malnepraj dependaĵoj" msgid "Optional dependencies:" msgstr "Malnepraj dependaĵoj:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Konservi" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mondo:" @@ -611,11 +836,6 @@ msgstr "Riveroj" msgid "Sea level rivers" msgstr "Marnivelaj riveroj" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Fontnombro" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Glatigi transiron inter klimatoj" @@ -761,6 +981,23 @@ msgstr "" "Ĉi tiu modifaĵaro havas malimplican nomon en sia dosiero modpack.conf, kiu " "transpasos ĉiun alinomon ĉi tiean." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Ŝalti ĉiujn" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Nova versio de $1 disponeblas" @@ -789,7 +1026,7 @@ msgstr "Neniam" msgid "Visit website" msgstr "Vizitu retejon" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Agordoj" @@ -802,228 +1039,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Provu reŝalti la publikan liston de serviloj kaj kontroli vian retkonekton." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Foliumi" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Redakti" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Elekti dosierujon" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Elekti dosieron" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Agordi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Neniu priskribo de agordo estas donita)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2d-a bruo" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Interspacoj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktavoj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Deŝovo" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persisteco" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skalo" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X-disiĝo" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y-disiĝo" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z-disiĝo" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absoluta valoro" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "normoj" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "faciligita" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Uzu lingvon de la sistemo)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Faciluzo" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Babilo" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Vakigo" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Stirado" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Malŝaltita" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Ŝaltita" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Ĝenerale" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Moviĝo" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Reagordi al implicita valoro" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Reagordi al implicita valoro ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Serĉi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Montri porspertulajn agordojn" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Montri teĥnikajn nomojn" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Klientaj modifaĵoj" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Enhavo: Ludoj" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Enhavo: Modifaĵoj" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Ŝaltita" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Ĝisdatigo de vidpunkto malŝaltita" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(La ludo bezonos ŝalti ankaŭ ombrojn)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Propra" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dinamikaj ombroj" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alta" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Malalta" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Mezalta" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Altegaj" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Malaltega" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Pri" @@ -1044,10 +1059,6 @@ msgstr "Kernprogramistoj" msgid "Core Team" msgstr "Ĉefaj zorgantoj" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht aparato:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Malfermi dosierujon de datenoj de uzanto" @@ -1199,10 +1210,22 @@ msgstr "Ekigi ludon" msgid "You need to install a game before you can create a world." msgstr "Vi devos instali ludon antaŭ vi povos instali modifaĵon" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Forigi el preferataj" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adreso" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Kliento" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Krea reĝimo" @@ -1216,6 +1239,11 @@ msgstr "Vundado / LkL" msgid "Favorites" msgstr "Preferataj" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Ludo" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Neakordaj serviloj" @@ -1228,10 +1256,28 @@ msgstr "Aliĝi al ludo" msgid "Login" msgstr "Saluti" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Nombro da mondestigaj fadenoj" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Dediĉita servila paŝo" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Retprokrasto" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Publikaj serviloj" @@ -1316,23 +1362,6 @@ msgstr "" "\n" "Rigardu dosieron debug.txt por detaloj." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "– Reĝimo: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "– Publika: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "– LkL: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "– Nomo de servilo: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Eraris datumformado:" @@ -1342,6 +1371,11 @@ msgstr "Eraris datumformado:" msgid "Access denied. Reason: %s" msgstr "Aliro malakceptiĝis. Kialo: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Erarserĉaj informoj montritaj" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Memaga pluigo malŝaltita" @@ -1362,6 +1396,10 @@ msgstr "Monderlimoj montritaj por nuna mondero" msgid "Block bounds shown for nearby blocks" msgstr "Monderlimoj montritaj por proksimaj monderoj" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Ĝisdatigo de vidpunkto malŝaltita" @@ -1374,10 +1412,6 @@ msgstr "Ĝisdatigo de vidpunkto ŝaltita" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Ne povas montri monderlimojn (malŝaltita de ludo aŭ modifaĵo)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Ŝanĝi pasvorton" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Glita vidpunkto malŝaltita" @@ -1406,39 +1440,6 @@ msgstr "Konekta eraro (ĉu eltempiĝo?)" msgid "Connection failed for unknown reason" msgstr "Konekto malsukcesis pro nekonata kialo" -#: src/client/game.cpp -msgid "Continue" -msgstr "Daŭrigi" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Implicita stirado:\n" -"Senmenue:\n" -"- tiri: rigardi ĉirkaŭen\n" -"- tuŝeti: meti/uzi\n" -"- longe tuŝeti: fosi/frapi/uzi\n" -"Menue/portaĵuje:\n" -"- dufoje tuŝeti (ekstere):\n" -" -->fermi\n" -"- tuŝi portaĵaron, tuŝi portaĵingon:\n" -" --> movi portaĵaron\n" -"- tuŝi kaj tiri, tuŝeti per dua fingro\n" -" --> meti unu portaĵon en portaĵingon\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1452,31 +1453,15 @@ msgstr "Kreante klienton…" msgid "Creating server..." msgstr "Kreante servilon…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Erarserĉaj informoj kaj profilila grafikaĵo kaŝitaj" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Erarserĉaj informoj montritaj" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Erarserĉaj informoj, profilila grafikaĵo, kaj dratostaro kaŝitaj" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Eraris kreado de kliento: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Eliri al menuo" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Eliri al operaciumo" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Rapidega reĝimo malŝaltita" @@ -1514,18 +1499,6 @@ msgstr "Nebulo ŝaltita" msgid "Fog enabled by game or mod" msgstr "Zomado nuntempe malŝaltita de ludo aŭ modifaĵo" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Ludaj informoj:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Ludo paŭzigita" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Gastiganta servile" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Objektaj difinoj…" @@ -1562,14 +1535,6 @@ msgstr "Trapasa reĝimo ŝaltita (mankas rajto «trapasi»)" msgid "Node definitions..." msgstr "Monderaj difinoj…" -#: src/client/game.cpp -msgid "Off" -msgstr "For" - -#: src/client/game.cpp -msgid "On" -msgstr "Ek" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Celilsekva reĝimo malŝaltita" @@ -1582,38 +1547,22 @@ msgstr "Celilsekva reĝimo ŝaltita" msgid "Profiler graph shown" msgstr "Profilila grafikaĵo montrita" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Fora servilo" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Serĉante adreson…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Renaskiĝi" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Malŝaltiĝante…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Ludo por unu" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Laŭteco" - #: src/client/game.cpp msgid "Sound muted" msgstr "Silentigite" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Sonsistemo estas malŝaltita" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Sonsistemo ne estas subtenata de ĉi tiu muntaĵo" @@ -1689,18 +1638,116 @@ msgstr "Vidodistanco agordita al %d, sed limigas ĝin al %d ludo aŭ modifaĵo" msgid "Volume changed to %d%%" msgstr "Laŭteco agordita al %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Dratostaro montrita" -#: src/client/game.cpp -msgid "You died" -msgstr "Vi mortis" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zomado nuntempe malŝaltita de ludo aŭ modifaĵo" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "– Reĝimo: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "– Publika: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "– LkL: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "– Nomo de servilo: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Ŝanĝi pasvorton" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Daŭrigi" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Implicita stirado:\n" +"Senmenue:\n" +"- tiri: rigardi ĉirkaŭen\n" +"- tuŝeti: meti/uzi\n" +"- longe tuŝeti: fosi/frapi/uzi\n" +"Menue/portaĵuje:\n" +"- dufoje tuŝeti (ekstere):\n" +" -->fermi\n" +"- tuŝi portaĵaron, tuŝi portaĵingon:\n" +" --> movi portaĵaron\n" +"- tuŝi kaj tiri, tuŝeti per dua fingro\n" +" --> meti unu portaĵon en portaĵingon\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Eliri al menuo" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Eliri al operaciumo" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Ludaj informoj:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Ludo paŭzigita" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Gastiganta servile" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "For" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ek" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Fora servilo" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Renaskiĝi" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Laŭteco" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Vi mortis" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Babilado nun estas malŝaltita de ludo aŭ modifaĵo" @@ -2028,8 +2075,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Malsukcesis malfermi retpaĝon" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Sonsistemo ne estas subtenata de ĉi tiu muntaĵo" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2080,7 +2128,7 @@ msgstr "Memirado" msgid "Automatic jumping" msgstr "Memaga saltado" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Help1" @@ -2092,7 +2140,7 @@ msgstr "Malantaŭen" msgid "Block bounds" msgstr "Monderlimoj" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Ŝanĝi vidpunkton" @@ -2116,7 +2164,7 @@ msgstr "Mallaŭtigi" msgid "Double tap \"jump\" to toggle fly" msgstr "Dufoje tuŝetu salton por baskuligi flugan reĝimon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Lasi" @@ -2132,11 +2180,11 @@ msgstr "Pligrandigi vidodistancon" msgid "Inc. volume" msgstr "Plilaŭtigi" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Portujo" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Salti" @@ -2168,7 +2216,7 @@ msgstr "Sekva portaĵo" msgid "Prev. item" msgstr "Antaŭa portaĵo" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Ŝanĝi vidodistancon" @@ -2180,7 +2228,7 @@ msgstr "Dekstren" msgid "Screenshot" msgstr "Ekrankopio" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Kaŝiri" @@ -2188,15 +2236,15 @@ msgstr "Kaŝiri" msgid "Toggle HUD" msgstr "Baskuligi travidan fasadon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Baskuligi babilan protokolon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Baskuligi rapidegan reĝimon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Baskuligi flugan reĝimon" @@ -2204,11 +2252,11 @@ msgstr "Baskuligi flugan reĝimon" msgid "Toggle fog" msgstr "Baskuligi nebulon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Baskuligi mapeton" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Baskuligi trapasan reĝimon" @@ -2216,7 +2264,7 @@ msgstr "Baskuligi trapasan reĝimon" msgid "Toggle pitchmove" msgstr "Baskuligi celilsekvadon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zomo" @@ -2253,7 +2301,7 @@ msgstr "Malnova pasvorto" msgid "Passwords do not match!" msgstr "Pasvortoj ne kongruas!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Foriri" @@ -2266,16 +2314,47 @@ msgstr "Silentigita" msgid "Sound Volume: %d%%" msgstr "Laŭteco: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Meza butono" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Finite!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Fora servilo" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Identigilo de stirstango" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Baskuligi nebulon" @@ -2501,8 +2580,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Subteno de 3d-a vido.\n" "Nun subtenataj:\n" @@ -2566,10 +2644,6 @@ msgstr "Aktiva amplekso de monderoj" msgid "Active object send range" msgstr "Aktiva senda amplekso de objektoj" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Aldonas partiklojn ĉe fosado de mondero." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "Alĝustigi trovitan ekran-densecon, por aligrandigi la fasadon." @@ -2597,6 +2671,17 @@ msgstr "Nomo de administranto" msgid "Advanced" msgstr "Specialaj" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Uzi 3d-ajn nubojn anstataŭ ebenajn." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Permesas al likvaĵoj esti travideblaj." @@ -2996,14 +3081,14 @@ msgstr "Nuba duondiametro" msgid "Clouds" msgstr "Nuboj" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Nuboj fariĝas klient-flanke." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nuboj en ĉefmenuo" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Kolora nebulo" @@ -3027,7 +3112,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Diskomita listo de etikedoj, kies havantojn kaŝi en la datena deponejo.\n" "«nonfree» povas identigi kaj kaŝi pakaĵojn, kiuj ne estas liberaj laŭ la " @@ -3197,6 +3282,14 @@ msgstr "Erarserĉa protokola nivelo" msgid "Debugging" msgstr "Erarserĉado" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Dediĉita servila paŝo" @@ -3369,18 +3462,10 @@ msgstr "" "Dezertoj estiĝas kiam «np_biome» superas ĉi tiun valoron.\n" "Kiam la nova klimata sistemo aktivas, ĉi tio estas malatentata." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Malsamtempigi bildmovon de monderoj" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Elektebloj por programistoj" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Fosaj partikloj" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Malpermesi malplenajn pasvortojn" @@ -3408,6 +3493,14 @@ msgstr "Duoble premu salto-klavon por flugi" msgid "Double-tapping the jump key toggles fly mode." msgstr "Duobla premo de salto-klavo baskulas flugan reĝimon." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Ŝuti la erarserĉajn informojn de «mapgen»." @@ -3492,9 +3585,10 @@ msgstr "" "konduton de la homa okulo." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Ŝaltas kolorajn ombrojn.\n" "Pro ĉi tio, tralumeblaj monderoj metas kolorajn ombrojn.\n" @@ -3581,10 +3675,10 @@ msgstr "" "Ekzemple: 0 por nenioma balanciĝo, 1.0 por normala, 2.0 por duobla." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Ŝalti/malŝalti ruladon de IPv6-a servilo.\n" "Ignorita, se «bind_address» estas agordita.\n" @@ -3606,13 +3700,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Ŝaltas movbildojn en portaĵujo." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Ŝaltas kaŝmemoradon de maŝoj turnitaj per «facedir»." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3949,10 +4036,6 @@ msgstr "Skalo de grafika fasado" msgid "GUI scaling filter" msgstr "Skala filtrilo de grafika interfaco" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Skala filtrilo de grafika interfaco txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4218,15 +4301,6 @@ msgid "" msgstr "" "Ŝaltite, klavo «uzi» estas uzata anstataŭ klavo «kaŝiri» por malsupreniro." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Ŝalti konfirmon de registriĝo dum konekto al servilo.\n" -"Se ĝi estas malŝaltita, nova konto registriĝos memage." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4250,6 +4324,16 @@ msgid "" "empty password." msgstr "Malebligas konekton kun malplena pasvorto." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Ŝalti konfirmon de registriĝo dum konekto al servilo.\n" +"Se ĝi estas malŝaltita, nova konto registriĝos memage." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4368,11 +4452,6 @@ msgstr "Ekzameni la metodojn de estoj je registriĝo." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Periodo inter konservo de gravaj ŝanĝoj en la mondo, sekunde." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Periodo inter sendoj de tagtempo al klientoj." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Bildmovado de portaĵoj en portaĵujo" @@ -5095,10 +5174,6 @@ msgstr "" msgid "Maximum users" msgstr "Maksimuma nombro da uzantoj" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Maŝa kaŝmemoro" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Tagmesaĝo" @@ -5132,6 +5207,10 @@ msgstr "Minimuma limo de hazarda nombro de grandaj kavernoj en mondoparto." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Minimuma limo de hazarda nombro de malgrandaj kavernoj unu mondoparto." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Etmapigo" @@ -5230,9 +5309,10 @@ msgstr "" "- La malnepraj fluginsuloj de v7 (implicite malŝaltitaj)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nomo de la ludanto.\n" @@ -5765,17 +5845,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6011,16 +6093,6 @@ msgstr "" msgid "Shader path" msgstr "Indiko al ombrigiloj" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Ombrigiloj" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -6207,10 +6279,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6577,10 +6648,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Tagtempo kiam nova mondo ekas, en hormilonoj (0–23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalo de sendado de tempaj informoj" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Rapido de tempo" @@ -6650,6 +6717,10 @@ msgstr "Netralumeblaj fluidoj" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Bruo de arboj" @@ -6698,12 +6769,16 @@ msgid "Undersampling" msgstr "Subspecimenado" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Subspecimenado similas uzon de malgranda ekrana distingumo, sed ĝi nur\n" "efektivas en la ludo, lasante la fasadon senŝanĝa.\n" @@ -6729,17 +6804,15 @@ msgstr "Supra Y-limo de forgeskeloj." msgid "Upper Y limit of floatlands." msgstr "Supra Y-limo de fluginsuloj." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Uzi 3d-ajn nubojn anstataŭ ebenajn." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Uzi moviĝantajn nubojn por la fono de la ĉefmenuo." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Uzi neizotropan filtradon vidante teksturojn deflanke." #: src/settings_translation_file.cpp @@ -7004,25 +7077,14 @@ msgstr "" "programaro (ekz. «render-to-texture» por monderoj en portaĵujo)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Kiam veras «gui_scaling_filter_txr2img», kopii la bildojn\n" -"de aparataro al programaro por skalado. Kiam malveras, repaŝu\n" -"al la malnova metodo de skalado, por vid-peliloj, kiuj ne subtenas\n" -"bone elŝutadon de teksturoj de la aparataro." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7045,10 +7107,6 @@ msgstr "" "Ĉu implicite montri fonojn de nometikedoj.\n" "Modifaĵoj malgraŭ tio povas agordi fonojn." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Ĉu teksturaj movbildoj de monderoj malsamtempiĝu en ĉiu mondopeco." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7074,9 +7132,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Ĉu nebuli finon de la videbla areo." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7267,6 +7325,9 @@ msgstr "Samtempa limo de cURL" #~ "Lasu ĝin malplena por komenci lokan servilon.\n" #~ "La adresa kampo en la ĉefmenuo transpasas ĉi tiun agordon." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Aldonas partiklojn ĉe fosado de mondero." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7398,6 +7459,9 @@ msgstr "Samtempa limo de cURL" #~ msgid "Clean transparent textures" #~ msgstr "Puraj travideblaj teksturoj" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Nuboj fariĝas klient-flanke." + #~ msgid "Command key" #~ msgstr "Komanda klavo" @@ -7491,9 +7555,15 @@ msgstr "Samtempa limo de cURL" #~ msgid "Darkness sharpness" #~ msgstr "Akreco de mallumo" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Erarserĉaj informoj kaj profilila grafikaĵo kaŝitaj" + #~ msgid "Debug info toggle key" #~ msgstr "Baskula klavo de erarserĉaj informoj" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Erarserĉaj informoj, profilila grafikaĵo, kaj dratostaro kaŝitaj" + #~ msgid "Dec. volume key" #~ msgstr "Mallaŭtiga klavo" @@ -7556,9 +7626,15 @@ msgstr "Samtempa limo de cURL" #~ "difinoj\n" #~ "Y de supra limo de lafo en grandaj kavernoj." +#~ msgid "Desynchronize block animation" +#~ msgstr "Malsamtempigi bildmovon de monderoj" + #~ msgid "Dig key" #~ msgstr "Klavo por fosi" +#~ msgid "Digging particles" +#~ msgstr "Fosaj partikloj" + #~ msgid "Disable anticheat" #~ msgstr "Malŝalti senartifikigon" @@ -7583,6 +7659,10 @@ msgstr "Samtempa limo de cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Dinamikaj ombroj:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Ŝaltita" + #~ msgid "Enable VBO" #~ msgstr "Ŝalti VBO(Vertex Buffer Object)" @@ -7617,6 +7697,12 @@ msgstr "Samtempa limo de cURL" #~ "aŭ estiĝi memage.\n" #~ "Bezonas ŝaltitajn ombrigilojn." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Ŝaltas kaŝmemoradon de maŝoj turnitaj per «facedir»." + #~ msgid "Enables minimap." #~ msgstr "Ŝaltas mapeton." @@ -7656,9 +7742,6 @@ msgstr "Samtempa limo de cURL" #~ "Prova elekteblo; povas estigi videblajn spacojn inter monderoj\n" #~ "je nombro super 0." -#~ msgid "FPS in pause menu" -#~ msgstr "Kadroj sekunde en paŭza menuo" - #~ msgid "FSAA" #~ msgstr "FSAA(glatigo/anti-aliasing)" @@ -7743,8 +7826,8 @@ msgstr "Samtempa limo de cURL" #~ msgid "Full screen BPP" #~ msgstr "Kolornombro tutekrane" -#~ msgid "Game" -#~ msgstr "Ludo" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Skala filtrilo de grafika interfaco txr2img" #~ msgid "Gamma" #~ msgstr "Helĝustigo" @@ -7906,659 +7989,666 @@ msgstr "Samtempa limo de cURL" #~ msgid "Instrumentation" #~ msgstr "Ekzamenado" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Periodo inter sendoj de tagtempo al klientoj." + #~ msgid "Invalid gamespec." #~ msgstr "Nevalida ludspecifo." #~ msgid "Inventory key" #~ msgstr "Klavo de portaĵujo" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht aparato:" + #~ msgid "Jump key" #~ msgstr "Salta klavo" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malkreskigi la vidan distancon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malkreskigi la laŭtecon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por fosi.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por demeti la elektitan portaĵon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por kreskigi la vidan distancon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por kreskigi la laŭtecon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por salti.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por moviĝi rapide en rapida reĝimo.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por movi la ludanton reen.\n" #~ "Aktivigo ankaŭ malŝaltos memiradon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por movi la ludanton pluen.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por movi la ludanton maldekstren.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por movi la ludantan dekstren.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por silentigi la ludon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malfermi la babilan fenestron por entajpi komandojn.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malfermi la babilan fenestron por entajpi lokajn komandojn.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malfermi la babilan fenestron.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por malfermi la portaĵujon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por meti.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 11-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 12-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 13-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 14-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 15-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 16-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 17-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 18-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 19-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 20-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 21-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 22-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 23-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 24-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 25-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 26-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 27-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 28-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 29-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 30-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 31-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti 32-an portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti okan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti kvinan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti unuan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti kvaran portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti sekvan portaĵon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti naŭan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti antaŭan portaĵon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti duan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti sepan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti sesan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti dekan portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por elekti trian portaĵingon en la fulmobreto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por kaŝirado.\n" #~ "Ankaŭ uzata por malsupreniro kaj malsuprennaĝo se ‹aux1_descends› estas " #~ "malŝaltita.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por unua kaj tria vidpunktoj.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por ekrankopiado.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por memirado.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por glita vidpunkto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por mapeto.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por rapida reĝimo.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por flugado.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por trapasa reĝimo.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por celilsekva reĝimo.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por vidpunkta ĝisdatigo. Nur uzata por evoluigado.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri babilon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri erarserĉajn informojn.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri nebulon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri la travidan fasadon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri grandan babilan konzolon.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por montri la profililon. Uzu programante.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Baskula klavo por senlima vido.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klavo por zomi vidon kiam tio eblas.\n" -#~ "Vidu http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vidu http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8624,6 +8714,9 @@ msgstr "Samtempa limo de cURL" #~ msgid "Menus" #~ msgstr "Menuoj" +#~ msgid "Mesh cache" +#~ msgstr "Maŝa kaŝmemoro" + #~ msgid "Minimap" #~ msgstr "Mapeto" @@ -8827,6 +8920,9 @@ msgstr "Samtempa limo de cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Servilo / Ludo por unu" +#~ msgid "Shaders" +#~ msgstr "Ombrigiloj" + #~ msgid "Shaders (experimental)" #~ msgstr "Ombrigiloj (eksperimentaj)" @@ -8843,6 +8939,10 @@ msgstr "Samtempa limo de cURL" #~ "je kelkaj vidkartoj.\n" #~ "Ĉi tio funkcias nur kun la bildiga internaĵo de «OpenGL»." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Ĝisdatigo de vidpunkto malŝaltita" + #~ msgid "Shadow limit" #~ msgstr "Limo por ombroj" @@ -8874,6 +8974,9 @@ msgstr "Samtempa limo de cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Glitigas turnadon de la vidpunkto. 0 por malŝalti." +#~ msgid "Sound system is disabled" +#~ msgstr "Sonsistemo estas malŝaltita" + #~ msgid "Special" #~ msgstr "Speciala" @@ -8913,6 +9016,9 @@ msgstr "Samtempa limo de cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Tiu ĉi tiparo uziĝos por iuj lingvoj." +#~ msgid "Time send interval" +#~ msgstr "Intervalo de sendado de tempaj informoj" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Por uzi ombrigilojn, OpenGL-pelilo estas necesa." @@ -9017,6 +9123,17 @@ msgstr "Samtempa limo de cURL" #~ msgid "Waving water" #~ msgstr "Ondanta akvo" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Kiam veras «gui_scaling_filter_txr2img», kopii la bildojn\n" +#~ "de aparataro al programaro por skalado. Kiam malveras, repaŝu\n" +#~ "al la malnova metodo de skalado, por vid-peliloj, kiuj ne subtenas\n" +#~ "bone elŝutadon de teksturoj de la aparataro." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9026,6 +9143,10 @@ msgstr "Samtempa limo de cURL" #~ "FreeType.\n" #~ "Malŝaltite, ĉi tio anstataŭe uzigas tiparojn bitbildajn kaj XML-vektorajn." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "Ĉu teksturaj movbildoj de monderoj malsamtempiĝu en ĉiu mondopeco." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Ĉu permesi al ludantoj vundi kaj mortigi unu la alian." diff --git a/po/es/luanti.po b/po/es/luanti.po index ad16e8664..d1b21fb96 100644 --- a/po/es/luanti.po +++ b/po/es/luanti.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: Spanish (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-10 00:00+0000\n" -"Last-Translator: gallegonovato \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-14 12:19+0000\n" +"Last-Translator: Miguel \n" "Language-Team: Spanish \n" "Language: es\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.10\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -82,6 +82,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Explorar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Seleccionar carpeta" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Seleccionar archivo" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Establecer" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ninguna descripción de ajuste dada)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Ruido 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancelar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lagunaridad" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octavas" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Compensado" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistencia" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Guardar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Escala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Semilla" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Propagación X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Propagación Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Propagación Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Valor absoluto" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Predeterminados" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Suavizado" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(El juego necesitará habilitar la exposición automática también)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(El juego necesitará habilitar el efecto de bloom también)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(El juego también deberá habilitar la iluminación volumétrica)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Usar idioma del sistema)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accesibilidad" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automático" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Limpiar" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controles" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desactivado" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activado" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "General" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Movimiento" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Sin resultados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Reiniciar la configuración por defecto" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Reiniciar la configuración por defecto ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Buscar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Mostrar configuraciones avanzadas" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar los nombres técnicos" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Diseño de pantalla táctil" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "pause_menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods de cliente" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contenido: Juegos" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contenido: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(El juego necesitará habilitar las sombras también)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personalizado" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Sombras dinámicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Bajo" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Muy Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Muy Bajo" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -168,7 +406,6 @@ msgstr "Todo" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Atrás" @@ -204,11 +441,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "No se ha podido obtener ningún paquete" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Sin resultados" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "No hay actualizaciones" @@ -253,18 +485,6 @@ msgstr "Ya está instalado" msgid "Base Game:" msgstr "Juego Base:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancelar" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -388,6 +608,14 @@ msgstr "Fallo al instalar $1 como $2" msgid "Unable to install a $1 as a texture pack" msgstr "Fallo al instalar $1 como paquete de texturas" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Esta es la lista de clientes conectados a\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Activado, tiene error)" @@ -452,12 +680,6 @@ msgstr "Sin dependencias opcionales" msgid "Optional dependencies:" msgstr "Dependencias opcionales:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Guardar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundo:" @@ -612,11 +834,6 @@ msgstr "Ríos" msgid "Sea level rivers" msgstr "Ríos a nivel de mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Semilla" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transición suave entre biomas" @@ -765,6 +982,22 @@ msgstr "" "Éste paquete de mods tiene un nombre explícito dado en su modpack.conf el " "cual sobreescribirá cualquier renombrado desde aquí." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Expandir todo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Grupo por prefijo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "El servidor $1 utiliza un juego llamado $2 y los siguientes mods:" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "El servidor $1 usa los siguientes mods:" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Una nueva versión de $1 está disponible" @@ -793,7 +1026,7 @@ msgstr "Nunca" msgid "Visit website" msgstr "Visitar el sitio web" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ajustes" @@ -807,223 +1040,6 @@ msgstr "" "Intente rehabilitar la lista de servidores públicos y verifique su conexión " "a Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Explorar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Seleccionar carpeta" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Seleccionar archivo" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Establecer" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ninguna descripción de ajuste dada)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Ruido 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lagunaridad" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octavas" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Compensado" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistencia" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Escala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Propagación X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Propagación Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Propagación Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Valor absoluto" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Predeterminados" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Suavizado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(El juego necesitará habilitar la exposición automática también)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(El juego necesitará habilitar el efecto de bloom también)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(El juego también deberá habilitar la iluminación volumétrica)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Usar idioma del sistema)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accesibilidad" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Automático" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Limpiar" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controles" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desactivado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activado" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "General" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Movimiento" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Reiniciar la configuración por defecto" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Reiniciar la configuración por defecto ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Buscar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Mostrar configuraciones avanzadas" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar los nombres técnicos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods de cliente" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contenido: Juegos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contenido: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Habilitar" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Los Shaders están deshabilitados." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Esta no es una configuración recomendada." - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(El juego necesitará habilitar las sombras también)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personalizado" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Sombras dinámicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Bajo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Muy Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Muy Bajo" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Acerca de" @@ -1044,10 +1060,6 @@ msgstr "Desarrolladores Principales" msgid "Core Team" msgstr "Equipo Principal" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Dispositivo Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Abrir Directorio de Datos de Usuario" @@ -1062,11 +1074,11 @@ msgstr "" #: builtin/mainmenu/tab_about.lua msgid "Previous Contributors" -msgstr "Antiguos colaboradores" +msgstr "Antiguos Colaboradores" #: builtin/mainmenu/tab_about.lua msgid "Previous Core Developers" -msgstr "Antiguos desarrolladores principales" +msgstr "Antiguos Desarrolladores Principales" #: builtin/mainmenu/tab_about.lua msgid "Share debug log" @@ -1200,10 +1212,22 @@ msgstr "Empezar juego" msgid "You need to install a game before you can create a world." msgstr "Necesitas instalar un juego antes de poder crear un mundo." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Añadir a favorito" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Dirección" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Clientes:\n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Creativo" @@ -1211,12 +1235,16 @@ msgstr "Creativo" #. ~ PvP = Player versus Player #: builtin/mainmenu/tab_online.lua msgid "Damage / PvP" -msgstr "Daño / PvP" +msgstr "Daño / JcJ" #: builtin/mainmenu/tab_online.lua msgid "Favorites" msgstr "Favoritos" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Juego: $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servidores Incompatibles" @@ -1229,17 +1257,38 @@ msgstr "Unirse al juego" msgid "Login" msgstr "Iniciar sesión" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Número de mods: $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Abrir sitio web del servidor" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Posibles filtros\n" +"game:\n" +"mod:\n" +"player:" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Servidores Públicos" #: builtin/mainmenu/tab_online.lua msgid "Refresh" -msgstr "Actualizar" +msgstr "Refrescar" #: builtin/mainmenu/tab_online.lua msgid "Remove favorite" @@ -1319,23 +1368,6 @@ msgstr "" "\n" "Revisa debug.txt para más detalles." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modo: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Público: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nombre del servidor: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ha ocurrido un error de serialización:" @@ -1345,6 +1377,10 @@ msgstr "Ha ocurrido un error de serialización:" msgid "Access denied. Reason: %s" msgstr "Acceso denegado. Razón: %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "Toda la información de depuración oculta" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Avance automático desactivado" @@ -1365,6 +1401,10 @@ msgstr "Límites de bloque visibles para el bloque actual" msgid "Block bounds shown for nearby blocks" msgstr "Límites de bloque mostrados para bloques cercanos" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "Cajas delimitadoras mostradas" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Actualización de la cámara desactivada" @@ -1379,10 +1419,6 @@ msgstr "" "No se puede mostrar los límites del bloque (desactivado por el juego o un " "mod)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Cambiar contraseña" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modo cinematográfico desactivado" @@ -1411,38 +1447,6 @@ msgstr "Error de conexión (¿tiempo agotado?)" msgid "Connection failed for unknown reason" msgstr "La conexión falló por razones desconocidas" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuar" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controles:\n" -"Sin menús abiertos:\n" -"- deslizar dedo: mirar alrededor\n" -"- toque: colocar/golpear/usar (por defecto)\n" -"- toque largo: cavar/usar (por defecto)\n" -"Menú/inventario abierto:\n" -"- doble toque (exterior):\n" -" --> cerrar\n" -"- tocar pila, tocar ranura\n" -" --> mover pila\n" -"- tocar y arrastrar, tocar 2º dedo\n" -" --> colocar un solo elemento en la ranura\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1456,31 +1460,15 @@ msgstr "Creando cliente..." msgid "Creating server..." msgstr "Creando servidor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Info de depuración y gráfico de perfil ocultos" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Info de depuración mostrada" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Info de depuración, gráfico de perfil, y 'wireframe' ocultos" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Error de creación del cliente: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Salir al menú" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Salir al SO" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modo rápido desactivado" @@ -1517,21 +1505,9 @@ msgstr "Niebla activada" msgid "Fog enabled by game or mod" msgstr "Niebla activada por juego o mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Información del juego:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Juego pausado" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Servidor anfitrión" - #: src/client/game.cpp msgid "Item definitions..." -msgstr "Definiciones de objetos..." +msgstr "Definiciones de ítems..." #: src/client/game.cpp msgid "KiB/s" @@ -1565,14 +1541,6 @@ msgstr "Modo 'Noclip' activado (nota: sin privilegio 'noclip')" msgid "Node definitions..." msgstr "Definiciones de nodos..." -#: src/client/game.cpp -msgid "Off" -msgstr "Deshabilitado" - -#: src/client/game.cpp -msgid "On" -msgstr "Habilitado" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Modo de movimiento de inclinación desactivado" @@ -1585,38 +1553,22 @@ msgstr "Modo de movimiento de inclinación activado" msgid "Profiler graph shown" msgstr "Gráfico de monitorización visible" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Servidor remoto" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Resolviendo dirección..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reaparecer" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Cerrando..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Un jugador" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volumen del sonido" - #: src/client/game.cpp msgid "Sound muted" msgstr "Sonido silenciado" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "El sistema de sonido está desactivado" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "El sistema de sonido no está soportado en esta \"build\"" @@ -1693,18 +1645,115 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volumen cambiado a %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "El controlador de vídeo no admite la estructura alámbrica" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Estructura alámbrica visible" -#: src/client/game.cpp -msgid "You died" -msgstr "Has muerto" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "El zoom está actualmente desactivado por el juego o un mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modo: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Público: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- JcJ: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nombre del servidor: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Cambiar contraseña" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controles:\n" +"Sin menús abiertos:\n" +"- deslizar dedo: mirar alrededor\n" +"- toque: colocar/golpear/usar (por defecto)\n" +"- toque largo: cavar/usar (por defecto)\n" +"Menú/inventario abierto:\n" +"- doble toque (exterior):\n" +" --> cerrar\n" +"- tocar pila, tocar ranura\n" +" --> mover pila\n" +"- tocar y arrastrar, tocar 2º dedo\n" +" --> colocar un solo ítem en la ranura\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Salir al menú" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Salir al SO" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Información del juego:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Juego pausado" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Servidor anfitrión" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Deshabilitado" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Habilitado" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Servidor remoto" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reaparecer" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volumen del sonido" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Has muerto" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat deshabilitado por el juego o un mod" @@ -2031,8 +2080,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Fallo al compilar el shader \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "Los shaders están activados pero el driver no soporta GLSL." +msgid "GLSL is not supported by the driver" +msgstr "El controlador no admite GLSL" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2083,7 +2132,7 @@ msgstr "Auto-avance" msgid "Automatic jumping" msgstr "Salto automático" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2095,7 +2144,7 @@ msgstr "Atrás" msgid "Block bounds" msgstr "Límites de bloque" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Cambiar cámara" @@ -2119,7 +2168,7 @@ msgstr "Bajar volumen" msgid "Double tap \"jump\" to toggle fly" msgstr "Pulsar dos veces \"saltar\" para volar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Tirar" @@ -2135,11 +2184,11 @@ msgstr "Inc. rango" msgid "Inc. volume" msgstr "Subir volumen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventario" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Saltar" @@ -2165,13 +2214,13 @@ msgstr "Silenciar" #: src/gui/guiKeyChangeMenu.cpp msgid "Next item" -msgstr "Siguiente" +msgstr "Siguiente ítem" #: src/gui/guiKeyChangeMenu.cpp msgid "Prev. item" -msgstr "Anterior" +msgstr "Ítem anterior" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Seleccionar distancia" @@ -2183,35 +2232,35 @@ msgstr "Derecha" msgid "Screenshot" msgstr "Captura de pantalla" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" -msgstr "Caminar" +msgstr "Agacharse" #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle HUD" msgstr "Alternar el HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Alternar el registro del chat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" -msgstr "Activar rápido" +msgstr "Alternar rápido" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" -msgstr "Activar volar" +msgstr "Alternar volar" #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle fog" msgstr "Alternar la niebla" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Alternar el minimapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Activar noclip" @@ -2219,7 +2268,7 @@ msgstr "Activar noclip" msgid "Toggle pitchmove" msgstr "Alternar inclinación" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2255,7 +2304,7 @@ msgstr "Contraseña anterior" msgid "Passwords do not match!" msgstr "¡Las contraseñas no coinciden!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Cerrar" @@ -2268,15 +2317,44 @@ msgstr "Silenciado" msgid "Sound Volume: %d%%" msgstr "Volumen del sonido: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Agregar botón" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Hecho" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Eliminar" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Reiniciar" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" +"Comienza arrastrando un botón para agregarlo. Toca afuera para cancelar." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "Toca un botón para seleccionarlo. Arrastra un botón para moverlo." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Toca afuera para anular la selección." + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "Joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "Menú de desborde" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "Alternar depuración" @@ -2342,7 +2420,7 @@ msgstr "" #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." msgstr "" -"El servidor está funcionando en modo un jugador. No puedes conectarte." +"El servidor está funcionando en modo de un jugador. No puedes conectarte." #: src/network/clientpackethandler.cpp msgid "Too many users" @@ -2517,19 +2595,17 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Soporte 3D.\n" "Soportado actualmente:\n" -"- Ninguno (none): sin salida 3D.\n" -"- Anaglifo (anaglyph): 3D en colores cían y magenta.\n" -"- Entrelazado (interlaced): soporte para pantallas con polarización " -"basada en filas impar/par.\n" -"- Arriba-abajo (topbottom): dividir pantalla arriba y abajo.\n" -"- Lado a lado (sidebyside): dividir pantalla lado a lado.\n" -"- Vista cruzada (crossview): visión 3D cruzada.\n" -"Nota: el modo entrelazado requiere que los sombreadores estén activados." +"- Ninguno: sin salida 3D.\n" +"- Anaglifo: 3D en colores cían y magenta.\n" +"- Entrelazado: soporte para pantallas con polarización basada en filas " +"impar/par.\n" +"- Arriba-abajo: dividir pantalla arriba y abajo.\n" +"- Lado a lado: dividir pantalla lado a lado.\n" +"- Vista cruzada: visión 3D cruzada" #: src/settings_translation_file.cpp msgid "" @@ -2586,10 +2662,6 @@ msgstr "Rango de bloque activo" msgid "Active object send range" msgstr "Rango de envío en objetos activos" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Añade partículas al excavar un nodo." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2620,6 +2692,20 @@ msgstr "Nombre del administrador" msgid "Advanced" msgstr "Avanzado" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Se fusionarán todos los buffers de malla con menos de este número de " +"vértices\n" +"Durante la representación del mapa. Esto mejora el rendimiento de " +"renderizado." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Permitir que las nubes se vean en 3D en lugar de planas." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Permite que los líquidos sean traslúcidos." @@ -2682,11 +2768,11 @@ msgstr "Tolerancia al movimiento antitrampas" #: src/settings_translation_file.cpp msgid "Append item name" -msgstr "Añadir nombre de objeto" +msgstr "Añadir nombre de ítem" #: src/settings_translation_file.cpp msgid "Append item name to tooltip." -msgstr "Añadir nombre de objeto a la burbuja informativa." +msgstr "Añadir nombre de ítem a la burbuja informativa." #: src/settings_translation_file.cpp msgid "Apple trees noise" @@ -3026,14 +3112,14 @@ msgstr "Radio de nube" msgid "Clouds" msgstr "Nubes" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Las nubes son un efecto local." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nubes en el menú" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Profundidad de color para la textura post-procesamiento" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Niebla colorida" @@ -3059,7 +3145,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Lista de banderas separadas por comas para ocultar en el repositorio de " "contenido.\n" @@ -3068,7 +3154,7 @@ msgstr "" "según lo definido por la Free Software Foundation.\n" "También puedes especificar clasificaciones de contenido.\n" "Estas banderas son independientes de las versiones de Luanti,\n" -"así que consulta una lista completa en https://content.minetest.net/help/" +"así que consulta una lista completa en https://content.luanti.org/help/" "content_flags/" #: src/settings_translation_file.cpp @@ -3232,6 +3318,19 @@ msgstr "Nivel de registro de depuración" msgid "Debugging" msgstr "Depuración" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Decide la profundidad de color de la textura utilizada para la canalización " +"post-procesamiento.\n" +"Reducir esto puede mejorar el rendimiento, pero algunos efectos (por " +"ejemplo, tramado)\n" +"requieren más de 8 bits para trabajar." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Intervalo de servidor dedicado" @@ -3411,18 +3510,10 @@ msgstr "" "Los desiertos se producen cuando np_biome supera este valor.\n" "Cuando se activa la bandera de \"snowbiomes\", esto se ignora." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Desincronizar la animación de los bloques" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opciones de desarrollador" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Partículas de excavación" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "No permitir contraseñas vacías" @@ -3456,6 +3547,19 @@ msgstr "Pulsar dos veces \"saltar\" para volar" msgid "Double-tapping the jump key toggles fly mode." msgstr "Pulsar dos veces \"saltar\" alterna el modo vuelo." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Dibuja los triángulos clasificados por transparencia agrupados por sus " +"buffers de malla.\n" +"Esto rompe la clasificación de transparencia entre los buffers de malla, " +"pero evita situaciones\n" +"donde la clasificación de transparencia sería muy lenta de lo contrario." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Imprimir información de depuración del generador de mapas." @@ -3540,12 +3644,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Habilitar las sombras coloreadas.\n" -"Si el valor es verdadero los nodos traslúcidos proyectarán sombras " -"coloreadas. Esta opción usa muchos recursos." +"Habilita las sombras de colores para nodos translúcidos.\n" +"Esto es costoso." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3570,7 +3673,7 @@ msgstr "Activar seguridad de mods" #: src/settings_translation_file.cpp msgid "Enable mouse wheel (scroll) for item selection in hotbar." msgstr "" -"Habilita la rueda del ratón (Desplazando) para seleccionar los items en la " +"Habilita la rueda del ratón (Desplazando) para seleccionar los ítems en la " "hotbar." #: src/settings_translation_file.cpp @@ -3631,12 +3734,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" -"Habilita/deshabilita la ejecución de un servidor IPv6.\n" -"Ignorado si se establece bind_address.\n" -"Necesita habilitar enable_ipv6 para ser activado." +"Activa/desactiva la ejecución de un servidor IPv6.\n" +"Se ignora si bind_address está establecido." #: src/settings_translation_file.cpp msgid "" @@ -3654,16 +3755,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enables animation of inventory items." -msgstr "Habilita la animación de objetos en el inventario." - -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"Habilita el almacenamiento en caché de mallas rotadas por dirección de cara." -"\n" -"Esto solo es efectivo con los shaders desactivados." +msgstr "Habilita la animación de ítems en el inventario." #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." @@ -3675,7 +3767,7 @@ msgstr "Activar el desplazamiento suave." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." -msgstr "Habilita la canalización para el posprocesamiento." +msgstr "Habilita la canalización posterior al procesamiento." #: src/settings_translation_file.cpp msgid "" @@ -4016,10 +4108,6 @@ msgstr "Escala de IGU" msgid "GUI scaling filter" msgstr "Filtro de escala de IGU" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtro de escala de IGU \"txr2img\"" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Mando de juego" @@ -4284,20 +4372,10 @@ msgid "" "and\n" "descending." msgstr "" -"Si está activada, se utiliza \"Aux1\" en lugar de la tecla \"Sneak\" para " -"bajar y\n" +"Si está activada, se utiliza \"Aux1\" en lugar de la tecla \"Agacharse\" " +"para bajar y\n" "descender." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Si está activado, el registro de la cuenta es independiente del inicio de " -"sesión en la interfaz de usuario.\n" -"Si está deshabilitado, las cuentas nuevas se registrarán automáticamente al " -"iniciar sesión." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4323,6 +4401,17 @@ msgstr "" "Si esta activado, los jugadores no podrán unirse sin contraseña ni cambiar " "la suya por una contraseña vacía." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Si está activado, el registro de la cuenta es independiente del inicio de " +"sesión en la interfaz de usuario.\n" +"Si está desactivado, la conexión a un servidor registrará automáticamente " +"una nueva cuenta." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4452,14 +4541,9 @@ msgstr "" "Intervalo de guardado de cambios importantes en el mundo, expresado en " "segundos." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Intervalo de envío de la hora del día a los clientes, expresado en segundos." - #: src/settings_translation_file.cpp msgid "Inventory items animations" -msgstr "Animaciones de objetos del inventario" +msgstr "Animaciones de ítems del inventario" #: src/settings_translation_file.cpp msgid "Invert mouse" @@ -4468,7 +4552,8 @@ msgstr "Invertir ratón" #: src/settings_translation_file.cpp msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." msgstr "" -"Invierte la rueda del ratón (Desplazando) para seleccionar en la hotbar." +"Invierte la rueda del ratón (Desplazando) para seleccionar ítems en la " +"hotbar." #: src/settings_translation_file.cpp msgid "Invert vertical mouse movement." @@ -4484,7 +4569,7 @@ msgstr "Ruta de la fuente monoespacial cursiva" #: src/settings_translation_file.cpp msgid "Item entity TTL" -msgstr "Tiempo de vida de entidades de objetos" +msgstr "Tiempo de vida de entidades de ítems" #: src/settings_translation_file.cpp msgid "Iterations" @@ -5195,10 +5280,6 @@ msgstr "" msgid "Maximum users" msgstr "Usuarios máximos" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Caché de mallas poligonales" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Mensaje del día" @@ -5232,6 +5313,10 @@ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" "Límite mínimo de número aleatorio de cuevas pequeñas por pedazo de mapa." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Recuento mínimo de vértices para buffers de malla" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mapeo MIP" @@ -5327,12 +5412,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nombre del jugador.\n" -"Cuando se ejecuta un servidor, los clientes que se conecten con este nombre " -"son administradores.\n" +"Al ejecutar un servidor, el cliente que se conecta con este nombre es " +"administrador.\n" "Al comenzar desde el menú principal, esto se anula." #: src/settings_translation_file.cpp @@ -5864,40 +5949,44 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" -"Seleccione el método de antialiasing a aplicar.\n" +"Seleccione el método de suavizado a aplicar.\n" "\n" -"* Ninguno - Sin antialiasing (por defecto)\n" +"* Ninguno - Sin suavizado (por defecto)\n" "\n" -"* FSAA - Antialiasing de pantalla completa por hardware\n" -"(incompatible con Postprocesado y Submuestreo)\n" -"También conocido como antialiasing multimuestra (MSAA)\n" -"Suaviza los bordes de los bloques pero no afecta al interior de las " -"texturas.\n" -"Es necesario reiniciar para cambiar esta opción.\n" +"* FSAA - Suavizado de pantalla completa por hardware\n" +"También conocido como suavizado multimuestra (MSAA)\n" +"Suaviza los bordes de los bloques pero no afecta al interior de las texturas." "\n" -"* FXAA - Antialiasing rápido aproximado (requiere shaders)\n" -"Aplica un filtro de postprocesado para detectar y suavizar los bordes de " +"\n" +"Si el posprocesamiento está desactivado, cambiar FSAA requiere reiniciar.\n" +"Además, si se desactiva el posprocesamiento, FSAA no funcionará con\n" +"submuestreo o una configuración no predeterminada de \"3d_mode\".\n" +"\n" +"* FXAA - Suavizado aproximado rápido\n" +"Aplica un filtro de pos-procesamiento para detectar y suavizar los bordes de " "alto contraste.\n" "Proporciona un equilibrio entre velocidad y calidad de imagen.\n" "\n" -"* SSAA - Antialiasing de supermuestreo (requiere shaders)\n" +"* SSAA - Suavizado de supermuestreo\n" "Renderiza una imagen de mayor resolución de la escena y, a continuación, " -"reduce la escala para reducir los efectos de aliasing.\n" -"los efectos del aliasing. Es el método más lento y preciso." +"reduce la escala para reducir\n" +"los efectos de distorsión. Es el método más lento y preciso." #: src/settings_translation_file.cpp msgid "Selection box border color (R,G,B)." @@ -6145,18 +6234,6 @@ msgstr "" msgid "Shader path" msgstr "Ruta de sombreador" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders (Sombreador)" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" -"Los Shaders son una parte fundamental del renderizado y permiten efectos " -"visuales avanzados." - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Calidad del filtro de sombras" @@ -6304,7 +6381,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Sneaking speed" -msgstr "Velocidad al usar sigilo" +msgstr "Velocidad al agacharse" #: src/settings_translation_file.cpp msgid "Sneaking speed, in nodes per second." @@ -6345,23 +6422,21 @@ msgid "" "Note that mods or games may explicitly set a stack for certain (or all) " "items." msgstr "" -"Especifica el tamaño de pila por defecto de nodos, objetos y herramientas.\n" +"Especifica el tamaño de pila por defecto de nodos, ítems y herramientas.\n" "Ten en cuenta que los mods o los juegos pueden establecer explícitamente una " -"pila para ciertos elementos (o para todos)." +"pila para ciertos ítems (o para todos)." #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Reparte una actualización completa del mapa de sombras en un número " "determinado de fotogramas.\n" "Los valores más altos pueden hacer que las sombras se retrasen, los valores " "más bajos\n" -"consumirán más recursos.\n" -"Valor mínimo: 1; valor máximo: 16" +"consumirán más recursos." #: src/settings_translation_file.cpp msgid "" @@ -6680,8 +6755,7 @@ msgid "" msgstr "" "El tiempo (en segundos) que la cola de líquidos puede crecer más allá de la " "capacidad de procesamiento\n" -"de procesamiento hasta que se intente reducir su tamaño vertiendo los " -"elementos\n" +"de procesamiento hasta que se intente reducir su tamaño vertiendo los ítems\n" "de la cola. Un valor de 0 desactiva la funcionalidad." #: src/settings_translation_file.cpp @@ -6739,17 +6813,13 @@ msgid "" "Time in seconds for item entity (dropped items) to live.\n" "Setting it to -1 disables the feature." msgstr "" -"Tiempo, en segundos, de vida de las entidades objeto (objetos soltados).\n" +"Tiempo, en segundos, de vida de la entidad ítem (ítems soltados).\n" "Establecerla a -1 desactiva esta característica." #: src/settings_translation_file.cpp msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Hora del día en que se inicia un nuevo mundo, en milihoras (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalo de envío de la hora del día" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Velocidad del tiempo" @@ -6816,6 +6886,10 @@ msgstr "Líquidos translúcidos" msgid "Transparency Sorting Distance" msgstr "Distancia de Clasificación de Transparencia" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Grupo de Clasificación de Transparencia por búferes" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Ruido de árboles" @@ -6874,12 +6948,16 @@ msgid "Undersampling" msgstr "Renderizado" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "El submuestreo es similar al uso de una resolución de pantalla más baja, " "pero se aplica\n" @@ -6909,17 +6987,18 @@ msgstr "Límite superior Y de las mazmorras." msgid "Upper Y limit of floatlands." msgstr "Límite superior Y de las tierras flotantes." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Usar nubes 3D en lugar de planas." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Usar nubes con animaciones para el fondo del menú principal." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." -msgstr "Usar filtrado anisotrópico al mirar texturas desde un ángulo." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." +msgstr "" +"Usar filtrado anisotrópico al mirar texturas desde un ángulo.\n" +"Esto proporciona una mejora significativa cuando se utiliza junto con el " +"mapeo MIP." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -7194,25 +7273,14 @@ msgstr "" "inventario)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Cuando gui_scaling_filter_txr2img es verdadero, copiar imágenes\n" -"del hardware al software para escalarlas. Cuando es falso,\n" -"vuelve al método de escalado anterior para controladores de video\n" -"que no admiten la descarga de texturas desde el hardware." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7240,12 +7308,6 @@ msgstr "" "Mostrar fondos de las etiquetas de forma predeterminada.\n" "Los Mods aún podrían establecer un fondo." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Si las animaciones de textura de nodo deben desincronizarse por bloque de " -"mapa." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7274,17 +7336,15 @@ msgstr "Si se debe nublar el final del área visible." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" "Si deseas silenciar los sonidos. Puedes activar el sonido en cualquier " -"momento,\n" -"a menos que el sistema de sonido esté desactivado (enable_sound=false).\n" -"En el juego, puedes alternar el estado de silencio con la tecla de silencio " -"o\n" -"usando el menú de pausa." +"momento.\n" +"En el juego, puedes alternar el estado de silencio con la tecla de silenciar " +"o usando el\n" +"menú de pausa." #: src/settings_translation_file.cpp msgid "" @@ -7471,6 +7531,9 @@ msgstr "Límite de cURL en paralelo" #~ "Dejar esto vacío para iniciar un servidor local.\n" #~ "Nótese que el campo de dirección del menú principal anula este ajuste." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Añade partículas al excavar un nodo." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7630,6 +7693,9 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Clean transparent textures" #~ msgstr "Limpiar texturas transparentes" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Las nubes son un efecto local." + #~ msgid "Command key" #~ msgstr "Tecla comando" @@ -7729,9 +7795,15 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Darkness sharpness" #~ msgstr "Agudeza de la obscuridad" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Info de depuración y gráfico de perfil ocultos" + #~ msgid "Debug info toggle key" #~ msgstr "Tecla alternativa para la información de la depuración" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Info de depuración, gráfico de perfil, y 'wireframe' ocultos" + #~ msgid "Dec. volume key" #~ msgstr "Dec. tecla de volumen" @@ -7785,9 +7857,15 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Del. Favorite" #~ msgstr "Borrar Fav." +#~ msgid "Desynchronize block animation" +#~ msgstr "Desincronizar la animación de los bloques" + #~ msgid "Dig key" #~ msgstr "Tecla Excavar" +#~ msgid "Digging particles" +#~ msgstr "Partículas de excavación" + #~ msgid "Disable anticheat" #~ msgstr "Desactivar Anticheat" @@ -7815,6 +7893,9 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Dynamic shadows:" #~ msgstr "Sombras dinámicas:" +#~ msgid "Enable" +#~ msgstr "Habilitar" + #~ msgid "Enable VBO" #~ msgstr "Activar VBO" @@ -7849,6 +7930,14 @@ msgstr "Límite de cURL en paralelo" #~ "automaticamente.\n" #~ "Requiere habilitar sombreadores." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Habilita el almacenamiento en caché de mallas rotadas por dirección de " +#~ "cara.\n" +#~ "Esto solo es efectivo con los shaders desactivados." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Habilita el mapeado de tonos fílmico" @@ -7899,9 +7988,6 @@ msgstr "Límite de cURL en paralelo" #~ "Opción experimental, puede causar espacios visibles entre los\n" #~ "bloques si se le da un valor mayor a 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS (cuadros/s) en el menú de pausa" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7989,8 +8075,8 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Full screen BPP" #~ msgstr "Profundidad de color en pantalla completa" -#~ msgid "Game" -#~ msgstr "Juego" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtro de escala de IGU \"txr2img\"" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8161,668 +8247,676 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Instrumentation" #~ msgstr "Instrumentación" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Intervalo de envío de la hora del día a los clientes, expresado en " +#~ "segundos." + #~ msgid "Invalid gamespec." #~ msgstr "Juego especificado no válido." #~ msgid "Inventory key" #~ msgstr "Tecla Inventario" +#~ msgid "Irrlicht device:" +#~ msgstr "Dispositivo Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tecla Saltar" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para disminuir la distancia de visión.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para disminuir el volumen.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para cavar.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para eliminar el elemento seleccionado actualmente.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar la distancia de visión.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para incrementar el volumen.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para saltar.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para moverse rápido en modo rápido.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para desplazar el jugador hacia atrás.\n" #~ "Cuando esté activa, También desactivará el desplazamiento automático " #~ "hacia adelante.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover el jugador hacia delante.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para desplazar el jugador hacia la izquierda.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para desplazar el jugador hacia la derecha.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para silenciar el juego.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir la ventana de chat y escribir comandos.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir la ventana de chat y escribir comandos.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir la ventana de chat.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir la ventana de chat.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para colocar.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 11 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 12 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 13 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el decimocuarto elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el decimoquinto elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 16 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 17 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 18 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 19 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 20 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 21 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 22 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 23 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 24 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 25 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 26 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 27 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 28 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 29 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 30 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 31 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el elemento 32 en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el octavo elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el quinto elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el primer elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el cuarto elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el siguiente elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el noveno elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el siguiente elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el segundo elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el septimo elemento en la barra de acceso " #~ "directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el sexto elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el decimo elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar el tercer elemento en la barra de acceso directo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para agacharse.\n" #~ "También utilizada para escalar hacia abajo y hundirse en agua si " #~ "aux1_descends está deshabilitado.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar entre cámar en primera y tercera persona.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para tomar capturas de pantalla.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla activar/desactivar el avance automatico.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el modo cinemático.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar la vista del minimapa.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el modo veloz.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el vuelo.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el modo noclip.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla activar/desactivar el modo de inclinacion.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar la actualización de la cámara. Solo usada " #~ "para desarrollo\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el chat.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar la visualización de información de " #~ "depuración.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar visualización de niebla.\n" -#~ "Véase http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Véase http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar la visualización del HUD.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar la consola de chat larga.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar el perfilador. Usado para desarrollo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para activar/desactivar rango de vista ilimitado.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para hacer zoom cuando sea posible.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8895,6 +8989,9 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Menus" #~ msgstr "Menús" +#~ msgid "Mesh cache" +#~ msgstr "Caché de mallas poligonales" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -9075,6 +9172,9 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Server / Singleplayer" #~ msgstr "Servidor / Un jugador" +#~ msgid "Shaders" +#~ msgstr "Shaders (Sombreador)" + #~ msgid "Shaders (experimental)" #~ msgstr "Sombreadores (experimental)" @@ -9090,6 +9190,16 @@ msgstr "Límite de cURL en paralelo" #~ "rendimiento\n" #~ "en algunas tarjetas de vídeo." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Los Shaders son una parte fundamental del renderizado y permiten efectos " +#~ "visuales avanzados." + +#~ msgid "Shaders are disabled." +#~ msgstr "Los Shaders están deshabilitados." + #, fuzzy #~ msgid "" #~ "Shadow offset (in pixels) of the fallback font. If 0, then shadow will " @@ -9120,6 +9230,9 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Suaviza la rotación de la cámara. 0 para desactivar." +#~ msgid "Sound system is disabled" +#~ msgstr "El sistema de sonido está desactivado" + #~ msgid "Special" #~ msgstr "Especial" @@ -9156,6 +9269,12 @@ msgstr "Límite de cURL en paralelo" #~ "cámara al mirar a su alrededor.\n" #~ "Útil para grabar vídeos" +#~ msgid "This is not a recommended configuration." +#~ msgstr "Esta no es una configuración recomendada." + +#~ msgid "Time send interval" +#~ msgstr "Intervalo de envío de la hora del día" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "" #~ "Para habilitar los sombreadores debe utilizar el controlador OpenGL." @@ -9241,6 +9360,23 @@ msgstr "Límite de cURL en paralelo" #~ msgid "Waving water" #~ msgstr "Oleaje en el agua" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Cuando gui_scaling_filter_txr2img es verdadero, copiar imágenes\n" +#~ "del hardware al software para escalarlas. Cuando es falso,\n" +#~ "vuelve al método de escalado anterior para controladores de video\n" +#~ "que no admiten la descarga de texturas desde el hardware." + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Si las animaciones de textura de nodo deben desincronizarse por bloque de " +#~ "mapa." + #~ msgid "X" #~ msgstr "X" diff --git a/po/es_US/luanti.po b/po/es_US/luanti.po index 0d8500e7e..4f4eba81a 100644 --- a/po/es_US/luanti.po +++ b/po/es_US/luanti.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: luanti\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-10 17:11+0000\n" -"Last-Translator: chocomint \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-12-26 19:00+0000\n" +"Last-Translator: Hugo \n" "Language-Team: Spanish (American) \n" "Language: es_US\n" @@ -17,48 +17,60 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2\n" - -#: builtin/client/chatcommands.lua -msgid "Issued command: " -msgstr "Comando emitido: " - -#: builtin/client/chatcommands.lua -msgid "Empty command." -msgstr "Comando vacío." - -#: builtin/client/chatcommands.lua -msgid "Invalid command: " -msgstr "Comando inválido: " - -#: builtin/client/chatcommands.lua -msgid "List online players" -msgstr "Lista de los jugadores conectados" - -#: builtin/client/chatcommands.lua -msgid "This command is disabled by server." -msgstr "Este comando esta deshabiitado por el servidor." - -#: builtin/client/chatcommands.lua -msgid "Online players: " -msgstr "Jugadores en línea: " - -#: builtin/client/chatcommands.lua -msgid "Exit to main menu" -msgstr "Salir al menu principal" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" msgstr "Limpiar la cola de chat" +#: builtin/client/chatcommands.lua +msgid "Empty command." +msgstr "Comando vacío." + +#: builtin/client/chatcommands.lua +msgid "Exit to main menu" +msgstr "Salir al menu principal" + +#: builtin/client/chatcommands.lua +msgid "Invalid command: " +msgstr "Comando inválido: " + +#: builtin/client/chatcommands.lua +msgid "Issued command: " +msgstr "Comando emitido: " + +#: builtin/client/chatcommands.lua +msgid "List online players" +msgstr "Lista de los jugadores conectados" + +#: builtin/client/chatcommands.lua +msgid "Online players: " +msgstr "Jugadores en línea: " + #: builtin/client/chatcommands.lua msgid "The out chat queue is now empty." msgstr "La cola de chat está ahora vacía." +#: builtin/client/chatcommands.lua +msgid "This command is disabled by server." +msgstr "Este comando esta deshabiitado por el servidor." + +#: builtin/common/chatcommands.lua +msgid "Available commands:" +msgstr "Comandos disponibles:" + #: builtin/common/chatcommands.lua msgid "Available commands: " msgstr "Comandos disponibles: " +#: builtin/common/chatcommands.lua +msgid "Command not available: " +msgstr "Comando no disponible: " + +#: builtin/common/chatcommands.lua +msgid "Get help for commands (-t: output in chat)" +msgstr "Obtén ayuda para comandos (-t: salida en el chat)" + #: builtin/common/chatcommands.lua msgid "" "Use '.help ' to get more information, or '.help all' to list everything." @@ -66,42 +78,252 @@ msgstr "" "Usa '.help ' para obtener más información, o '.help all' para enlistar " "todo." -#: builtin/common/chatcommands.lua -msgid "Available commands:" -msgstr "Comandos disponibles:" - -#: builtin/common/chatcommands.lua -msgid "Command not available: " -msgstr "Comando no disponible: " - #: builtin/common/chatcommands.lua msgid "[all | ] [-t]" msgstr "[all | ] [-t]" -#: builtin/common/chatcommands.lua -msgid "Get help for commands (-t: output in chat)" -msgstr "Obtén ayuda para comandos (-t: salida en el chat)" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Navegar" -#: builtin/fstk/ui.lua -msgid "OK" -msgstr "OK" +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Seleccionar directorio" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Seleccionar archivo" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Establecer" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(No se proporciona descripción del entorno)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Ruido 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancelar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaridad" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octavos" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Compensar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistencia" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Guardar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Escalar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Semilla" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Propagación en X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Propagación en Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Propagación en Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absvalor" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Por predeterminado" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "aliviado" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(El juego también deberá habilitar la exposición automática)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(El juego también deberá habilitar el bloom)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(El juego también deberá habilitar la iluminación volumétrica)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Utilice el idioma del sistema)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accesibilidad" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Auto" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Claro" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controles" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Deshabilitado" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Habilitado" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "General" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Movimiento" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Sin resultados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Restablecer la configuración a los valores predeterminados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Restablecer la configuración predeterminada ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Buscar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Mostrar configuraciones avanzadas" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar nombres tecnicos" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods del Cliente" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contenido: Juegos" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contenido: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(El juego también deberá habilitar las sombras)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personalizado" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Sombras Dinámicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Bajo" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Muy Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Muy Bajo" #: builtin/fstk/ui.lua msgid "" msgstr "" -#: builtin/fstk/ui.lua -msgid "The server has requested a reconnect:" -msgstr "El servidor ha solicitado una reconexión:" - -#: builtin/fstk/ui.lua -msgid "Reconnect" -msgstr "Reconectar" - -#: builtin/fstk/ui.lua -msgid "Main menu" -msgstr "Menu principal" - #: builtin/fstk/ui.lua msgid "An error occurred in a Lua script:" msgstr "Ocurrió un error en un script de Lua:" @@ -110,31 +332,55 @@ msgstr "Ocurrió un error en un script de Lua:" msgid "An error occurred:" msgstr "Un error ha ocurrido:" +#: builtin/fstk/ui.lua +msgid "Main menu" +msgstr "Menu principal" + +#: builtin/fstk/ui.lua +msgid "OK" +msgstr "OK" + +#: builtin/fstk/ui.lua +msgid "Reconnect" +msgstr "Reconectar" + +#: builtin/fstk/ui.lua +msgid "The server has requested a reconnect:" +msgstr "El servidor ha solicitado una reconexión:" + #: builtin/mainmenu/common.lua -msgid "Server supports protocol versions between $1 and $2. " -msgstr "El servidor admite versiones de protocolo entre $1 y $2. " +msgid "Protocol version mismatch. " +msgstr "Desajuste de versión del protocolo. " #: builtin/mainmenu/common.lua msgid "Server enforces protocol version $1. " msgstr "El servidor impone la versión del protocolo $1. " #: builtin/mainmenu/common.lua -msgid "We support protocol versions between version $1 and $2." -msgstr "" -"Apoyamos las versiones de protocolo entre la versión $1 y la versión $2." +msgid "Server supports protocol versions between $1 and $2. " +msgstr "El servidor admite versiones de protocolo entre $1 y $2. " #: builtin/mainmenu/common.lua msgid "We only support protocol version $1." msgstr "Solo soportamos la versión de protocolo $1." #: builtin/mainmenu/common.lua -msgid "Protocol version mismatch. " -msgstr "Desajuste de versión del protocolo. " +msgid "We support protocol versions between version $1 and $2." +msgstr "" +"Apoyamos las versiones de protocolo entre la versión $1 y la versión $2." + +#: builtin/mainmenu/content/contentdb.lua +msgid "Error installing \"$1\": $2" +msgstr "Error al instalar \"$1\": $2" #: builtin/mainmenu/content/contentdb.lua msgid "Failed to download \"$1\"" msgstr "Error al descargar \"$1\"" +#: builtin/mainmenu/content/contentdb.lua +msgid "Failed to download $1" +msgstr "Fallo al descargar $1" + #: builtin/mainmenu/content/contentdb.lua msgid "" "Failed to extract \"$1\" (insufficient disk space, unsupported file type or " @@ -143,56 +389,6 @@ msgstr "" "Error al extraer \"$1\" (espacio en disco insuficiente, tipo de archivo no " "soportado o archivo dañado)" -#: builtin/mainmenu/content/contentdb.lua -msgid "Error installing \"$1\": $2" -msgstr "Error al instalar \"$1\": $2" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Failed to download $1" -msgstr "Fallo al descargar $1" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB no está disponible cuando Luanti fue compilado sin cURL" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "The package $1 was not found." -msgstr "El paquete $1 no se encuentra." - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Back" -msgstr "Atrás" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/serverlistmgr.lua -#: src/client/game.cpp -msgid "Loading..." -msgstr "Cargando..." - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -msgid "No packages could be retrieved" -msgstr "No se pueden recuperar paquetes" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "All" -msgstr "Todo" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Games" -msgstr "Juegos" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Mods" -msgstr "Mods" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Texture Packs" -msgstr "Paquetes de texturas" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "" "$1 downloading,\n" @@ -206,61 +402,85 @@ msgid "$1 downloading..." msgstr "$1 descargando..." #: builtin/mainmenu/content/dlg_contentdb.lua -msgid "No updates" -msgstr "Sin actualizaciones" +msgid "All" +msgstr "Todo" #: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Update All [$1]" -msgstr "Actualizar Todo [$1]" +#: builtin/mainmenu/content/dlg_package.lua +msgid "Back" +msgstr "Atrás" #: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Sin resultados" +msgid "ContentDB is not available when Luanti was compiled without cURL" +msgstr "ContentDB no está disponible cuando Luanti fue compilado sin cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." msgstr "Descargando..." +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Featured" +msgstr "Destacado" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Games" +msgstr "Juegos" + +#: builtin/mainmenu/content/dlg_contentdb.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/serverlistmgr.lua +#: src/client/game.cpp +msgid "Loading..." +msgstr "Cargando..." + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Mods" +msgstr "Mods" + +#: builtin/mainmenu/content/dlg_contentdb.lua +#: builtin/mainmenu/content/dlg_package.lua +msgid "No packages could be retrieved" +msgstr "No se pueden recuperar paquetes" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No updates" +msgstr "Sin actualizaciones" + #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Queued" msgstr "En cola" #: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Featured" -msgstr "Destacado" +msgid "Texture Packs" +msgstr "Paquetes de texturas" -#: builtin/mainmenu/content/dlg_install.lua -msgid "Already installed" -msgstr "Ya está instalado" +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "The package $1 was not found." +msgstr "El paquete $1 no se encuentra." -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 by $2" -msgstr "$1 por $2" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Not found" -msgstr "No se encontró" +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Update All [$1]" +msgstr "Actualizar Todo [$1]" #: builtin/mainmenu/content/dlg_install.lua msgid "$1 and $2 dependencies will be installed." msgstr "se instalarán $1 y $2 dependencias." #: builtin/mainmenu/content/dlg_install.lua -msgid "$1 will be installed, and $2 dependencies will be skipped." -msgstr "$1 será instalado, y las dependencias de $2 serán saltadas." +msgid "$1 by $2" +msgstr "$1 por $2" #: builtin/mainmenu/content/dlg_install.lua msgid "$1 required dependencies could not be found." msgstr "Las dependencias requeridas de $1 no se pudieron encontrar." #: builtin/mainmenu/content/dlg_install.lua -msgid "Please check that the base game is correct." -msgstr "Por favor, compruebe que el juego base es correcto." +msgid "$1 will be installed, and $2 dependencies will be skipped." +msgstr "$1 será instalado, y las dependencias de $2 serán saltadas." #: builtin/mainmenu/content/dlg_install.lua -msgid "Install $1" -msgstr "Instalar $1" +msgid "Already installed" +msgstr "Ya está instalado" #: builtin/mainmenu/content/dlg_install.lua msgid "Base Game:" @@ -272,28 +492,28 @@ msgid "Dependencies:" msgstr "Dependencias:" #: builtin/mainmenu/content/dlg_install.lua -msgid "Install missing dependencies" -msgstr "Instalar las dependencias faltantes" +msgid "Error getting dependencies for package $1" +msgstr "Error en obtener las dependencias para el paquete $1" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" msgstr "Instalar" #: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancelar" +msgid "Install $1" +msgstr "Instalar $1" #: builtin/mainmenu/content/dlg_install.lua -msgid "Error getting dependencies for package $1" -msgstr "Error en obtener las dependencias para el paquete $1" +msgid "Install missing dependencies" +msgstr "Instalar las dependencias faltantes" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Not found" +msgstr "No se encontró" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Please check that the base game is correct." +msgstr "Por favor, compruebe que el juego base es correcto." #: builtin/mainmenu/content/dlg_install.lua msgid "You need to install a game before you can install a mod" @@ -307,70 +527,74 @@ msgstr "\"$1\" ya existe. ¿Te gustaría sobreescribirlo?" msgid "Overwrite" msgstr "Sobreescribir" -#: builtin/mainmenu/content/dlg_package.lua -msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "por$1 — $2 descargas — +$3 / $4 / -$5" - #: builtin/mainmenu/content/dlg_package.lua msgid "ContentDB page" msgstr "Página de ContentDB" -#: builtin/mainmenu/content/dlg_package.lua -msgid "Install [$1]" -msgstr "Instalar [$1]" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Update" -msgstr "Actualizar" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Uninstall" -msgstr "Desinstalar" - #: builtin/mainmenu/content/dlg_package.lua msgid "Description" msgstr "Descripción" -#: builtin/mainmenu/content/dlg_package.lua -msgid "Information" -msgstr "Información" - #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" msgstr "Donar" #: builtin/mainmenu/content/dlg_package.lua -msgid "Website" -msgstr "Sitio web" +msgid "Forum Topic" +msgstr "Tema del Foro" #: builtin/mainmenu/content/dlg_package.lua -msgid "Source" -msgstr "Fuente" +msgid "Information" +msgstr "Información" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Install [$1]" +msgstr "Instalar [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" msgstr "Rastreador de problemas" +#: builtin/mainmenu/content/dlg_package.lua +msgid "Source" +msgstr "Fuente" + #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" msgstr "Traducir" +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua +msgid "Uninstall" +msgstr "Desinstalar" + +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua +msgid "Update" +msgstr "Actualizar" + #: builtin/mainmenu/content/dlg_package.lua -msgid "Forum Topic" -msgstr "Tema del Foro" +msgid "Website" +msgstr "Sitio web" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "by $1 — $2 downloads — +$3 / $4 / -$5" +msgstr "por$1 — $2 descargas — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" msgstr "$1 (Habilitado)" #: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to install a $1 as a texture pack" -msgstr "No se puede instalar un paquete de texturas de $1" +msgid "$1 mods" +msgstr "$1 mods" #: builtin/mainmenu/content/pkgmgr.lua msgid "Failed to install $1 to $2" msgstr "Falló al instalar $1 a $2" +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Install: Unable to find suitable folder name for $1" +msgstr "Instalar: Incapaz de encontrar el nombre de carpeta adecuado para $1" + #: builtin/mainmenu/content/pkgmgr.lua msgid "Unable to find a valid mod, modpack, or game" msgstr "Incapaz de encontrar un mod válido, modpack o juego" @@ -380,32 +604,50 @@ msgid "Unable to install a $1 as a $2" msgstr "Incapaz de instalar un $1 como un $2" #: builtin/mainmenu/content/pkgmgr.lua -msgid "Install: Unable to find suitable folder name for $1" -msgstr "Instalar: Incapaz de encontrar el nombre de carpeta adecuado para $1" +msgid "Unable to install a $1 as a texture pack" +msgstr "No se puede instalar un paquete de texturas de $1" -#: builtin/mainmenu/content/pkgmgr.lua -msgid "$1 mods" -msgstr "$1 mods" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" #: builtin/mainmenu/dlg_config_world.lua -msgid "World:" -msgstr "Mundo:" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No modpack description provided." -msgstr "Ninguna descripción del modpack proporcionada." - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No game description provided." -msgstr "Ninguna descripción del juego proporcionada." +msgid "(Enabled, has error)" +msgstr "(Habilitado, tiene error)" #: builtin/mainmenu/dlg_config_world.lua msgid "(Unsatisfied)" msgstr "(Insatisfecho)" #: builtin/mainmenu/dlg_config_world.lua -msgid "(Enabled, has error)" -msgstr "(Habilitado, tiene error)" +msgid "Disable all" +msgstr "Desactivar todo" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Disable modpack" +msgstr "Desactivar modpack" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Enable all" +msgstr "Activar todo" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Enable modpack" +msgstr "Activar modpack" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "" +"Failed to enable mod \"$1\" as it contains disallowed characters. Only " +"characters [a-z0-9_] are allowed." +msgstr "" +"No se pudo habilitar el mod \"$1\" porque contiene caracteres no permitidos. " +"Sólo se permiten caracteres [a-z0-9_]." + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Find More Mods" +msgstr "Encontrar Más Mods" #: builtin/mainmenu/dlg_config_world.lua msgid "Mod:" @@ -415,152 +657,82 @@ msgstr "Mod:" msgid "No (optional) dependencies" msgstr "Sin dependencias (opcionales)" +#: builtin/mainmenu/dlg_config_world.lua +msgid "No game description provided." +msgstr "Ninguna descripción del juego proporcionada." + #: builtin/mainmenu/dlg_config_world.lua msgid "No hard dependencies" msgstr "Sin dependencias duras" +#: builtin/mainmenu/dlg_config_world.lua +msgid "No modpack description provided." +msgstr "Ninguna descripción del modpack proporcionada." + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No optional dependencies" +msgstr "Sin dependencias opcionales" + #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Optional dependencies:" msgstr "Dependencias opcionales:" #: builtin/mainmenu/dlg_config_world.lua -msgid "No optional dependencies" -msgstr "Sin dependencias opcionales" - -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Guardar" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Find More Mods" -msgstr "Encontrar Más Mods" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable modpack" -msgstr "Desactivar modpack" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable modpack" -msgstr "Activar modpack" +msgid "World:" +msgstr "Mundo:" #: builtin/mainmenu/dlg_config_world.lua msgid "enabled" msgstr "habilitado" -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable all" -msgstr "Desactivar todo" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable all" -msgstr "Activar todo" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "" -"Failed to enable mod \"$1\" as it contains disallowed characters. Only " -"characters [a-z0-9_] are allowed." -msgstr "" -"No se pudo habilitar el mod \"$1\" porque contiene caracteres no permitidos. " -"Sólo se permiten caracteres [a-z0-9_]." +#: builtin/mainmenu/dlg_create_world.lua +msgid "A world named \"$1\" already exists" +msgstr "Ya existe un mundo llamado \"$1\"" #: builtin/mainmenu/dlg_create_world.lua -msgid "Caverns" -msgstr "Cavernas" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Very large caverns deep in the underground" -msgstr "Cavernas muy grandes en lo profundo del subsuelo" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Rivers" -msgstr "Ríos" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Sea level rivers" -msgstr "Nivel del mar de los ríos" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mountains" -msgstr "Montañas" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floatlands (experimental)" -msgstr "Tierras Flotantes (experimental)" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floating landmasses in the sky" -msgstr "Masas de tierra flotantes en el cielo" +msgid "Additional terrain" +msgstr "Terreno Adicional" #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Altitude chill" msgstr "Altitud tranquila" -#: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces heat with altitude" -msgstr "Reduce el calor con la altitud" - #: builtin/mainmenu/dlg_create_world.lua msgid "Altitude dry" msgstr "Altitud seca" #: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces humidity with altitude" -msgstr "Reduce la humedad con la altitud" +msgid "Biome blending" +msgstr "Mezcla de biomas" #: builtin/mainmenu/dlg_create_world.lua -msgid "Humid rivers" -msgstr "Ríos húmedos" +msgid "Biomes" +msgstr "Biomas" #: builtin/mainmenu/dlg_create_world.lua -msgid "Increases humidity around rivers" -msgstr "Incrementa la humedad alrededor de los ríos" +msgid "Caverns" +msgstr "Cavernas" #: builtin/mainmenu/dlg_create_world.lua -msgid "Vary river depth" -msgstr "Varía la profundidad del río" +msgid "Caves" +msgstr "Cuevas" #: builtin/mainmenu/dlg_create_world.lua -msgid "Low humidity and high heat causes shallow or dry rivers" -msgstr "La baja humedad y el alto calor provocan ríos poco profundos o secos" +msgid "Create" +msgstr "Crear" #: builtin/mainmenu/dlg_create_world.lua -msgid "Hills" -msgstr "Colinas" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Lakes" -msgstr "Lagos" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Additional terrain" -msgstr "Terreno Adicional" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Generate non-fractal terrain: Oceans and underground" -msgstr "Generar terreno no fractal: Océanos y subsuelo" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Trees and jungle grass" -msgstr "Árboles y hierba de la selva" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Flat terrain" -msgstr "Terreno plano" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mud flow" -msgstr "Flujo de lodo" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Terrain surface erosion" -msgstr "Erosión de la superficie del terreno" +msgid "Decorations" +msgstr "Decoraciones" #: builtin/mainmenu/dlg_create_world.lua msgid "Desert temples" msgstr "Templos del desierto" +#: builtin/mainmenu/dlg_create_world.lua +msgid "Development Test is meant for developers." +msgstr "La prueba de desarrollo está destinada a desarrolladores." + #: builtin/mainmenu/dlg_create_world.lua msgid "" "Different dungeon variant generated in desert biomes (only if dungeons " @@ -569,29 +741,97 @@ msgstr "" "Variante de mazmorra diferente generada en biomas desérticos (solo si las " "mazmorras están habilitadas)" -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle, Tundra, Taiga" -msgstr "Templado, Desierto, Selva, Tundra, Taiga" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle" -msgstr "Templado, Desierto, Selva" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert" -msgstr "Templado, Desierto" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Caves" -msgstr "Cuevas" - #: builtin/mainmenu/dlg_create_world.lua msgid "Dungeons" msgstr "Mazmorras" #: builtin/mainmenu/dlg_create_world.lua -msgid "Decorations" -msgstr "Decoraciones" +msgid "Flat terrain" +msgstr "Terreno plano" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Floating landmasses in the sky" +msgstr "Masas de tierra flotantes en el cielo" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Floatlands (experimental)" +msgstr "Tierras Flotantes (experimental)" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Generate non-fractal terrain: Oceans and underground" +msgstr "Generar terreno no fractal: Océanos y subsuelo" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Hills" +msgstr "Colinas" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Humid rivers" +msgstr "Ríos húmedos" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Increases humidity around rivers" +msgstr "Incrementa la humedad alrededor de los ríos" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Install another game" +msgstr "instalar otro juego" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Lakes" +msgstr "Lagos" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Low humidity and high heat causes shallow or dry rivers" +msgstr "La baja humedad y el alto calor provocan ríos poco profundos o secos" + +#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp +msgid "Mapgen" +msgstr "Mapgen" + +#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp +msgid "Mapgen flags" +msgstr "Banderas de Mapgen" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mapgen-specific flags" +msgstr "Banderas específicas de Mapgen" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mountains" +msgstr "Montañas" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mud flow" +msgstr "Flujo de lodo" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Network of tunnels and caves" +msgstr "Red de túneles y cuevas" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "No game selected" +msgstr "Ningún juego seleccionado" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Reduces heat with altitude" +msgstr "Reduce el calor con la altitud" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Reduces humidity with altitude" +msgstr "Reduce la humedad con la altitud" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Rivers" +msgstr "Ríos" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Sea level rivers" +msgstr "Nivel del mar de los ríos" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Smooth transition between biomes" +msgstr "Transición suave entre biomas" #: builtin/mainmenu/dlg_create_world.lua msgid "" @@ -606,62 +846,37 @@ msgid "Structures appearing on the terrain, typically trees and plants" msgstr "Estructuras que aparecen en el terreno, típicamente árboles y plantas" #: builtin/mainmenu/dlg_create_world.lua -msgid "Network of tunnels and caves" -msgstr "Red de túneles y cuevas" +msgid "Temperate, Desert" +msgstr "Templado, Desierto" #: builtin/mainmenu/dlg_create_world.lua -msgid "Biomes" -msgstr "Biomas" +msgid "Temperate, Desert, Jungle" +msgstr "Templado, Desierto, Selva" #: builtin/mainmenu/dlg_create_world.lua -msgid "Biome blending" -msgstr "Mezcla de biomas" +msgid "Temperate, Desert, Jungle, Tundra, Taiga" +msgstr "Templado, Desierto, Selva, Tundra, Taiga" #: builtin/mainmenu/dlg_create_world.lua -msgid "Smooth transition between biomes" -msgstr "Transición suave entre biomas" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen flags" -msgstr "Banderas de Mapgen" +msgid "Terrain surface erosion" +msgstr "Erosión de la superficie del terreno" #: builtin/mainmenu/dlg_create_world.lua -msgid "Mapgen-specific flags" -msgstr "Banderas específicas de Mapgen" +msgid "Trees and jungle grass" +msgstr "Árboles y hierba de la selva" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Vary river depth" +msgstr "Varía la profundidad del río" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Very large caverns deep in the underground" +msgstr "Cavernas muy grandes en lo profundo del subsuelo" #: builtin/mainmenu/dlg_create_world.lua msgid "World name" msgstr "Nombre del mundo" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Semilla" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen" -msgstr "Mapgen" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Development Test is meant for developers." -msgstr "La prueba de desarrollo está destinada a desarrolladores." - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Install another game" -msgstr "instalar otro juego" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Create" -msgstr "Crear" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "No game selected" -msgstr "Ningún juego seleccionado" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "A world named \"$1\" already exists" -msgstr "Ya existe un mundo llamado \"$1\"" - #: builtin/mainmenu/dlg_delete_content.lua msgid "Are you sure you want to delete \"$1\"?" msgstr "¿Estás seguro de que quieres eliminar \"$ 1\"?" @@ -683,10 +898,18 @@ msgstr "pkgmgr: ruta no válida \"$1\"" msgid "Delete World \"$1\"?" msgstr "¿Eliminar el mundo \"$1\"?" +#: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp +msgid "Confirm Password" +msgstr "Confirmar Contraseña" + #: builtin/mainmenu/dlg_register.lua msgid "Joining $1" msgstr "Unirse $1" +#: builtin/mainmenu/dlg_register.lua +msgid "Missing name" +msgstr "Nombre faltante" + #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua #: builtin/mainmenu/tab_online.lua msgid "Name" @@ -697,25 +920,17 @@ msgstr "Nombre" msgid "Password" msgstr "Contraseña" -#: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp -msgid "Confirm Password" -msgstr "Confirmar Contraseña" +#: builtin/mainmenu/dlg_register.lua +msgid "Passwords do not match" +msgstr "Las contraseñas no coinciden" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua msgid "Register" msgstr "Registrarse" -#: builtin/mainmenu/dlg_register.lua -msgid "Missing name" -msgstr "Nombre faltante" - -#: builtin/mainmenu/dlg_register.lua -msgid "Passwords do not match" -msgstr "Las contraseñas no coinciden" - #: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Minetest Game is no longer installed by default" -msgstr "Minetest Game ya no está instalado por defecto" +msgid "Dismiss" +msgstr "Permitir" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -735,8 +950,8 @@ msgstr "" "Minetest Game." #: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Dismiss" -msgstr "Permitir" +msgid "Minetest Game is no longer installed by default" +msgstr "Minetest Game ya no está instalado por defecto" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "Reinstall Minetest Game" @@ -746,6 +961,10 @@ msgstr "Reinstalar Minetest Game" msgid "Accept" msgstr "Aceptar" +#: builtin/mainmenu/dlg_rename_modpack.lua +msgid "Rename Modpack:" +msgstr "Renombrar Modpack:" + #: builtin/mainmenu/dlg_rename_modpack.lua msgid "" "This modpack has an explicit name given in its modpack.conf which will " @@ -754,9 +973,22 @@ msgstr "" "Este modpack tiene un nombre explícito en su modpack.conf que anulará " "cualquier cambio de nombre aquí." -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "Rename Modpack:" -msgstr "Renombrar Modpack:" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Activar todo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" @@ -774,10 +1006,6 @@ msgstr "" "Visita $3 para descubrir cómo obtener la versión más reciente y mantenerse " "actualizado con funciones y correcciones de errores." -#: builtin/mainmenu/dlg_version_info.lua -msgid "Visit website" -msgstr "Visitar página web" - #: builtin/mainmenu/dlg_version_info.lua msgid "Later" msgstr "Después" @@ -786,241 +1014,36 @@ msgstr "Después" msgid "Never" msgstr "Nunca" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/dlg_version_info.lua +msgid "Visit website" +msgstr "Visitar página web" + +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Configuraciones" +#: builtin/mainmenu/serverlistmgr.lua +msgid "Public server list is disabled" +msgstr "La lista de servidores públicos está deshabilitada" + #: builtin/mainmenu/serverlistmgr.lua msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Intente volver a habilitar la lista de servidores públicos y verifique su " "conexión a Internet." -#: builtin/mainmenu/serverlistmgr.lua -msgid "Public server list is disabled" -msgstr "La lista de servidores públicos está deshabilitada" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Establecer" - -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Navegar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Seleccionar directorio" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Seleccionar archivo" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Compensar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Escalar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Propagación en X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Propagación en Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Ruido 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Propagación en Z" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octavos" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistencia" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaridad" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Por predeterminado" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "aliviado" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absvalor" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(No se proporciona descripción del entorno)" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "General" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controles" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accesibilidad" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Movimiento" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(El juego también deberá habilitar la exposición automática)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(El juego también deberá habilitar el bloom)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(El juego también deberá habilitar la iluminación volumétrica)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Utilice el idioma del sistema)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Auto" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Habilitado" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Deshabilitado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar nombres tecnicos" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Mostrar configuraciones avanzadas" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Buscar" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Claro" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Restablecer la configuración predeterminada ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Restablecer la configuración a los valores predeterminados" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contenido: Juegos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contenido: Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods del Cliente" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Los Shaders estan desactivados." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Esta no es una configuración recomendada." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Habilitar" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Muy Bajo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Bajo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Muy Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personalizado" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Sombras Dinámicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(El juego también deberá habilitar las sombras)" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Acerca de" +#: builtin/mainmenu/tab_about.lua +msgid "Active Contributors" +msgstr "Colaboradores activos" + +#: builtin/mainmenu/tab_about.lua +msgid "Active renderer:" +msgstr "Renderizado activo:" + #: builtin/mainmenu/tab_about.lua msgid "Core Developers" msgstr "Desarrolladores principales" @@ -1030,28 +1053,8 @@ msgid "Core Team" msgstr "Equipo principal" #: builtin/mainmenu/tab_about.lua -msgid "Active Contributors" -msgstr "Colaboradores activos" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Core Developers" -msgstr "Desarrolladores principales anteriores" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Contributors" -msgstr "Colaboradores anteriores" - -#: builtin/mainmenu/tab_about.lua -msgid "Active renderer:" -msgstr "Renderizado activo:" - -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Dispositivo Irrlicht:" - -#: builtin/mainmenu/tab_about.lua -msgid "Share debug log" -msgstr "Compartir registro de depuración" +msgid "Open User Data Directory" +msgstr "Abrir directorio de datos de usuario" #: builtin/mainmenu/tab_about.lua msgid "" @@ -1063,8 +1066,16 @@ msgstr "" "y paquetes de texturas en un administrador/explorador de archivos." #: builtin/mainmenu/tab_about.lua -msgid "Open User Data Directory" -msgstr "Abrir directorio de datos de usuario" +msgid "Previous Contributors" +msgstr "Colaboradores anteriores" + +#: builtin/mainmenu/tab_about.lua +msgid "Previous Core Developers" +msgstr "Desarrolladores principales anteriores" + +#: builtin/mainmenu/tab_about.lua +msgid "Share debug log" +msgstr "Compartir registro de depuración" #: builtin/mainmenu/tab_content.lua msgid "Browse online content" @@ -1074,13 +1085,25 @@ msgstr "Explorar contenido en línea" msgid "Browse online content [$1]" msgstr "Explorar contenido en linea [$1]" +#: builtin/mainmenu/tab_content.lua +msgid "Content" +msgstr "Contenido" + +#: builtin/mainmenu/tab_content.lua +msgid "Content [$1]" +msgstr "Contenido [$1]" + +#: builtin/mainmenu/tab_content.lua +msgid "Disable Texture Pack" +msgstr "Deshabilitar Paquete de Textura" + #: builtin/mainmenu/tab_content.lua msgid "Installed Packages:" msgstr "Paquetes Instalados:" #: builtin/mainmenu/tab_content.lua -msgid "Update available?" -msgstr "¿Actualización disponible?" +msgid "No dependencies." +msgstr "Sin dependencias." #: builtin/mainmenu/tab_content.lua msgid "No package description available" @@ -1091,48 +1114,20 @@ msgid "Rename" msgstr "Renombrar" #: builtin/mainmenu/tab_content.lua -msgid "No dependencies." -msgstr "Sin dependencias." - -#: builtin/mainmenu/tab_content.lua -msgid "Disable Texture Pack" -msgstr "Deshabilitar Paquete de Textura" +msgid "Update available?" +msgstr "¿Actualización disponible?" #: builtin/mainmenu/tab_content.lua msgid "Use Texture Pack" msgstr "Usar Paquete de Textura" -#: builtin/mainmenu/tab_content.lua -msgid "Content" -msgstr "Contenido" - -#: builtin/mainmenu/tab_content.lua -msgid "Content [$1]" -msgstr "Contenido [$1]" +#: builtin/mainmenu/tab_local.lua +msgid "Announce Server" +msgstr "Anunciar Servidor" #: builtin/mainmenu/tab_local.lua -msgid "Install games from ContentDB" -msgstr "Instalar juegos desde ContentDB" - -#: builtin/mainmenu/tab_local.lua -msgid "" -"Luanti is a game-creation platform that allows you to play many different " -"games." -msgstr "" -"Luanti es una plataforma de creación de juegos que te permite jugar muchos " -"diferentes juegos." - -#: builtin/mainmenu/tab_local.lua -msgid "Luanti doesn't come with a game by default." -msgstr "Luanti no viene con un juego por defecto." - -#: builtin/mainmenu/tab_local.lua -msgid "You need to install a game before you can create a world." -msgstr "Necesitas instalar un juego antes de poder crear un mundo." - -#: builtin/mainmenu/tab_local.lua -msgid "Install a game" -msgstr "Instalar un juego" +msgid "Bind Address" +msgstr "Dirección de Enlace" #: builtin/mainmenu/tab_local.lua msgid "Creative Mode" @@ -1142,77 +1137,85 @@ msgstr "Modo Creativo" msgid "Enable Damage" msgstr "Habilitar Daño" +#: builtin/mainmenu/tab_local.lua +msgid "Host Game" +msgstr "Hostear Juego" + #: builtin/mainmenu/tab_local.lua msgid "Host Server" msgstr "Hostear Servidor" #: builtin/mainmenu/tab_local.lua -msgid "Select Mods" -msgstr "Seleccionar Mods" +msgid "Install a game" +msgstr "Instalar un juego" + +#: builtin/mainmenu/tab_local.lua +msgid "Install games from ContentDB" +msgstr "Instalar juegos desde ContentDB" + +#: builtin/mainmenu/tab_local.lua +msgid "Luanti doesn't come with a game by default." +msgstr "Luanti no viene con un juego por defecto." + +#: builtin/mainmenu/tab_local.lua +msgid "" +"Luanti is a game-creation platform that allows you to play many different " +"games." +msgstr "" +"Luanti es una plataforma de creación de juegos que te permite jugar muchos " +"diferentes juegos." #: builtin/mainmenu/tab_local.lua msgid "New" msgstr "Nuevo" #: builtin/mainmenu/tab_local.lua -msgid "Select World:" -msgstr "Seleccionar Mundo:" +msgid "No world created or selected!" +msgstr "¡Ningún mundo creado o seleccionado!" #: builtin/mainmenu/tab_local.lua -msgid "Host Game" -msgstr "Hostear Juego" - -#: builtin/mainmenu/tab_local.lua -msgid "Announce Server" -msgstr "Anunciar Servidor" - -#: builtin/mainmenu/tab_local.lua -msgid "Bind Address" -msgstr "Dirección de Enlace" +msgid "Play Game" +msgstr "Jugar" #: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_online.lua msgid "Port" msgstr "Puerto" +#: builtin/mainmenu/tab_local.lua +msgid "Select Mods" +msgstr "Seleccionar Mods" + +#: builtin/mainmenu/tab_local.lua +msgid "Select World:" +msgstr "Seleccionar Mundo:" + #: builtin/mainmenu/tab_local.lua msgid "Server Port" msgstr "Puerto del Servidor" -#: builtin/mainmenu/tab_local.lua -msgid "Play Game" -msgstr "Jugar" - -#: builtin/mainmenu/tab_local.lua -msgid "No world created or selected!" -msgstr "¡Ningún mundo creado o seleccionado!" - #: builtin/mainmenu/tab_local.lua msgid "Start Game" msgstr "Iniciar Juego" +#: builtin/mainmenu/tab_local.lua +msgid "You need to install a game before you can create a world." +msgstr "Necesitas instalar un juego antes de poder crear un mundo." + #: builtin/mainmenu/tab_online.lua -msgid "Refresh" -msgstr "Refrescar" +#, fuzzy +msgid "Add favorite" +msgstr "Remover favorito" #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Dirección" #: builtin/mainmenu/tab_online.lua -msgid "Server Description" -msgstr "Descripción del Servidor" - -#: builtin/mainmenu/tab_online.lua -msgid "Login" -msgstr "Acceder" - -#: builtin/mainmenu/tab_online.lua -msgid "Remove favorite" -msgstr "Remover favorito" - -#: builtin/mainmenu/tab_online.lua -msgid "Ping" -msgstr "Ping" +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Mods del Cliente" #: builtin/mainmenu/tab_online.lua msgid "Creative mode" @@ -1228,8 +1231,9 @@ msgid "Favorites" msgstr "Favoritos" #: builtin/mainmenu/tab_online.lua -msgid "Public Servers" -msgstr "Servidores Públicos" +#, fuzzy +msgid "Game: $1" +msgstr "Juegos" #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" @@ -1239,13 +1243,65 @@ msgstr "Servidores Incompatibles" msgid "Join Game" msgstr "Unirse al Juego" +#: builtin/mainmenu/tab_online.lua +msgid "Login" +msgstr "Acceder" + +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Ping" +msgstr "Ping" + +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Public Servers" +msgstr "Servidores Públicos" + +#: builtin/mainmenu/tab_online.lua +msgid "Refresh" +msgstr "Refrescar" + +#: builtin/mainmenu/tab_online.lua +msgid "Remove favorite" +msgstr "Remover favorito" + +#: builtin/mainmenu/tab_online.lua +msgid "Server Description" +msgstr "Descripción del Servidor" + +#: src/client/client.cpp +msgid "Connection aborted (protocol error?)." +msgstr "Conexión cancelada (¿error de protocolo?)." + #: src/client/client.cpp src/client/game.cpp msgid "Connection timed out." msgstr "Se agotó el tiempo de conexión." #: src/client/client.cpp -msgid "Connection aborted (protocol error?)." -msgstr "Conexión cancelada (¿error de protocolo?)." +msgid "Done!" +msgstr "¡Hecho!" + +#: src/client/client.cpp +msgid "Initializing nodes" +msgstr "Inicializando nodos" + +#: src/client/client.cpp +msgid "Initializing nodes..." +msgstr "Inicializando nodos…" #: src/client/client.cpp msgid "Loading textures..." @@ -1255,34 +1311,14 @@ msgstr "Cargando Texturas…" msgid "Rebuilding shaders..." msgstr "Reconstruyendo shaders…" -#: src/client/client.cpp -msgid "Initializing nodes..." -msgstr "Inicializando nodos…" - -#: src/client/client.cpp -msgid "Initializing nodes" -msgstr "Inicializando nodos" - -#: src/client/client.cpp -msgid "Done!" -msgstr "¡Hecho!" +#: src/client/clientlauncher.cpp +msgid "Could not find or load game: " +msgstr "No se pudo encontrar ni cargar el juego: " #: src/client/clientlauncher.cpp msgid "Main Menu" msgstr "Menu Principal" -#: src/client/clientlauncher.cpp -msgid "Provided password file failed to open: " -msgstr "El archivo de contraseña proporcionado no se pudo abrir: " - -#: src/client/clientlauncher.cpp -msgid "Please choose a name!" -msgstr "¡Por favor elige un nombre!" - -#: src/client/clientlauncher.cpp -msgid "Player name too long." -msgstr "Nombre de jugador muy largo." - #: src/client/clientlauncher.cpp msgid "No world selected and no address provided. Nothing to do." msgstr "" @@ -1290,64 +1326,34 @@ msgstr "" "hacer." #: src/client/clientlauncher.cpp -msgid "Provided world path doesn't exist: " -msgstr "La ruta de mundo proporcionado no existe: " +msgid "Player name too long." +msgstr "Nombre de jugador muy largo." #: src/client/clientlauncher.cpp -msgid "Could not find or load game: " -msgstr "No se pudo encontrar ni cargar el juego: " +msgid "Please choose a name!" +msgstr "¡Por favor elige un nombre!" + +#: src/client/clientlauncher.cpp +msgid "Provided password file failed to open: " +msgstr "El archivo de contraseña proporcionado no se pudo abrir: " + +#: src/client/clientlauncher.cpp +msgid "Provided world path doesn't exist: " +msgstr "La ruta de mundo proporcionado no existe: " #: src/client/clientmedia.cpp src/client/game.cpp msgid "Media..." msgstr "Media…" -#: src/client/game.cpp -msgid "Shutting down..." -msgstr "Cerrando..." +#: src/client/game.cpp src/client/shader.cpp src/server.cpp +msgid "" +"\n" +"Check debug.txt for details." +msgstr "" #: src/client/game.cpp -msgid "Creating server..." -msgstr "Creando servidor..." - -#: src/client/game.cpp -#, c-format -msgid "Unable to listen on %s because IPv6 is disabled" -msgstr "No se puede escuchar en %s porque IPv6 está deshabilitado" - -#: src/client/game.cpp -msgid "Creating client..." -msgstr "Creando cliente..." - -#: src/client/game.cpp -msgid "Connection failed for unknown reason" -msgstr "La conexión falló por motivo desconocido" - -#: src/client/game.cpp -msgid "Singleplayer" -msgstr "Un Jugador" - -#: src/client/game.cpp -msgid "Multiplayer" -msgstr "Multijugador" - -#: src/client/game.cpp -msgid "Resolving address..." -msgstr "Resolviendo dirección..." - -#: src/client/game.cpp -#, c-format -msgid "Couldn't resolve address: %s" -msgstr "No se pudo resolver la dirección: %s" - -#: src/client/game.cpp -#, c-format -msgid "Unable to connect to %s because IPv6 is disabled" -msgstr "No se puede conectar a %s porque IPv6 está deshabilitado" - -#: src/client/game.cpp -#, c-format -msgid "Error creating client: %s" -msgstr "Error al crear cliente: %s" +msgid "A serialization error occurred:" +msgstr "" #: src/client/game.cpp #, c-format @@ -1355,111 +1361,17 @@ msgid "Access denied. Reason: %s" msgstr "Acceso denegado. Razón: %s" #: src/client/game.cpp -msgid "Connecting to server..." -msgstr "Conectando al servidor..." +#, fuzzy +msgid "All debug info hidden" +msgstr "Información de depuración mostrado" #: src/client/game.cpp -msgid "Client disconnected" -msgstr "Cliente desconectado" +msgid "Automatic forward disabled" +msgstr "Avanzado automático deshabilitado" #: src/client/game.cpp -msgid "Item definitions..." -msgstr "Definiciones de Objetos..." - -#: src/client/game.cpp -msgid "Node definitions..." -msgstr "Definiciones de nodos…" - -#: src/client/game.cpp -msgid "KiB/s" -msgstr "KiB/s" - -#: src/client/game.cpp -msgid "MiB/s" -msgstr "MiB/s" - -#: src/client/game.cpp -msgid "Client side scripting is disabled" -msgstr "Las secuencias de comandos del lado del cliente están deshabilitadas" - -#: src/client/game.cpp -msgid "Sound muted" -msgstr "Sonido muteado" - -#: src/client/game.cpp -msgid "Sound unmuted" -msgstr "Sonido desmuteado" - -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "El sonido del sistema está deshabilitado" - -#: src/client/game.cpp -#, c-format -msgid "Volume changed to %d%%" -msgstr "Volumen cambiado a %d%%" - -#: src/client/game.cpp -msgid "Sound system is not supported on this build" -msgstr "El sistema de sonido no es compatible con esta compilación" - -#: src/client/game.cpp -msgid "Fly mode enabled" -msgstr "Modo vuelo habilitado" - -#: src/client/game.cpp -msgid "Fly mode enabled (note: no 'fly' privilege)" -msgstr "Modo de vuelo habilitado (nota: sin privilegio de \"volar\")" - -#: src/client/game.cpp -msgid "Fly mode disabled" -msgstr "Modo vuelo deshabilitado" - -#: src/client/game.cpp -msgid "Pitch move mode enabled" -msgstr "Modo inclinado habilitado" - -#: src/client/game.cpp -msgid "Pitch move mode disabled" -msgstr "Modo inclinado deshabilitado" - -#: src/client/game.cpp -msgid "Fast mode enabled" -msgstr "Modo rápido habilitado" - -#: src/client/game.cpp -msgid "Fast mode enabled (note: no 'fast' privilege)" -msgstr "Modo rápido habilitado (nota: sin privilegio \"fast\")" - -#: src/client/game.cpp -msgid "Fast mode disabled" -msgstr "Modo rápido deshabilitado" - -#: src/client/game.cpp -msgid "Noclip mode enabled" -msgstr "Modo Noclip habilitado" - -#: src/client/game.cpp -msgid "Noclip mode enabled (note: no 'noclip' privilege)" -msgstr "Modo Noclip habilitado (nota: sin privilegio 'noclip')" - -#: src/client/game.cpp -msgid "Noclip mode disabled" -msgstr "Modo Noclip deshabilitado" - -#: src/client/game.cpp -msgid "Cinematic mode enabled" -msgstr "Modo cinemático habilitado" - -#: src/client/game.cpp -msgid "Cinematic mode disabled" -msgstr "Modo cinemática deshabilitado" - -#: src/client/game.cpp -msgid "Can't show block bounds (disabled by game or mod)" -msgstr "" -"No se pueden mostrar los límites de los bloques (deshabilitado por el juego " -"o mod)" +msgid "Automatic forward enabled" +msgstr "Avanzado automático habilitado" #: src/client/game.cpp msgid "Block bounds hidden" @@ -1474,49 +1386,8 @@ msgid "Block bounds shown for nearby blocks" msgstr "Se muestran los límites de los bloques cercanos" #: src/client/game.cpp -msgid "Automatic forward enabled" -msgstr "Avanzado automático habilitado" - -#: src/client/game.cpp -msgid "Automatic forward disabled" -msgstr "Avanzado automático deshabilitado" - -#: src/client/game.cpp -msgid "Minimap currently disabled by game or mod" -msgstr "Minimapa actualmente deshabilitado por juego o mod" - -#: src/client/game.cpp -msgid "Fog enabled by game or mod" -msgstr "Niebla habilitada por juego o mod" - -#: src/client/game.cpp -msgid "Fog enabled" -msgstr "Niebla habilitada" - -#: src/client/game.cpp -msgid "Fog disabled" -msgstr "Niebla deshabilitado" - -#: src/client/game.cpp -msgid "Debug info shown" -msgstr "Información de depuración mostrado" - -#: src/client/game.cpp -msgid "Profiler graph shown" -msgstr "Gráfico del perfilador mostrado" - -#: src/client/game.cpp -msgid "Wireframe shown" -msgstr "Estructura alámbrica mostrado" - -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" +msgid "Bounding boxes shown" msgstr "" -"Información de depuración, gráfico de perfilado y estructura alámbrica oculto" - -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Información de depuración y gráfico del perfilador ocultos" #: src/client/game.cpp msgid "Camera update disabled" @@ -1526,6 +1397,221 @@ msgstr "Actualización de cámara deshabilitado" msgid "Camera update enabled" msgstr "Actualización de cámara habilitada" +#: src/client/game.cpp +msgid "Can't show block bounds (disabled by game or mod)" +msgstr "" +"No se pueden mostrar los límites de los bloques (deshabilitado por el juego " +"o mod)" + +#: src/client/game.cpp +msgid "Cinematic mode disabled" +msgstr "Modo cinemática deshabilitado" + +#: src/client/game.cpp +msgid "Cinematic mode enabled" +msgstr "Modo cinemático habilitado" + +#: src/client/game.cpp +msgid "Client disconnected" +msgstr "Cliente desconectado" + +#: src/client/game.cpp +msgid "Client side scripting is disabled" +msgstr "Las secuencias de comandos del lado del cliente están deshabilitadas" + +#: src/client/game.cpp +msgid "Connecting to server..." +msgstr "Conectando al servidor..." + +#: src/client/game.cpp +msgid "Connection error (timed out?)" +msgstr "" + +#: src/client/game.cpp +msgid "Connection failed for unknown reason" +msgstr "La conexión falló por motivo desconocido" + +#: src/client/game.cpp +#, c-format +msgid "Couldn't resolve address: %s" +msgstr "No se pudo resolver la dirección: %s" + +#: src/client/game.cpp +msgid "Creating client..." +msgstr "Creando cliente..." + +#: src/client/game.cpp +msgid "Creating server..." +msgstr "Creando servidor..." + +#: src/client/game.cpp +msgid "Debug info shown" +msgstr "Información de depuración mostrado" + +#: src/client/game.cpp +#, c-format +msgid "Error creating client: %s" +msgstr "Error al crear cliente: %s" + +#: src/client/game.cpp +msgid "Fast mode disabled" +msgstr "Modo rápido deshabilitado" + +#: src/client/game.cpp +msgid "Fast mode enabled" +msgstr "Modo rápido habilitado" + +#: src/client/game.cpp +msgid "Fast mode enabled (note: no 'fast' privilege)" +msgstr "Modo rápido habilitado (nota: sin privilegio \"fast\")" + +#: src/client/game.cpp +msgid "Fly mode disabled" +msgstr "Modo vuelo deshabilitado" + +#: src/client/game.cpp +msgid "Fly mode enabled" +msgstr "Modo vuelo habilitado" + +#: src/client/game.cpp +msgid "Fly mode enabled (note: no 'fly' privilege)" +msgstr "Modo de vuelo habilitado (nota: sin privilegio de \"volar\")" + +#: src/client/game.cpp +msgid "Fog disabled" +msgstr "Niebla deshabilitado" + +#: src/client/game.cpp +msgid "Fog enabled" +msgstr "Niebla habilitada" + +#: src/client/game.cpp +msgid "Fog enabled by game or mod" +msgstr "Niebla habilitada por juego o mod" + +#: src/client/game.cpp +msgid "Item definitions..." +msgstr "Definiciones de Objetos..." + +#: src/client/game.cpp +msgid "KiB/s" +msgstr "KiB/s" + +#: src/client/game.cpp +msgid "MiB/s" +msgstr "MiB/s" + +#: src/client/game.cpp +msgid "Minimap currently disabled by game or mod" +msgstr "Minimapa actualmente deshabilitado por juego o mod" + +#: src/client/game.cpp +msgid "Multiplayer" +msgstr "Multijugador" + +#: src/client/game.cpp +msgid "Noclip mode disabled" +msgstr "Modo Noclip deshabilitado" + +#: src/client/game.cpp +msgid "Noclip mode enabled" +msgstr "Modo Noclip habilitado" + +#: src/client/game.cpp +msgid "Noclip mode enabled (note: no 'noclip' privilege)" +msgstr "Modo Noclip habilitado (nota: sin privilegio 'noclip')" + +#: src/client/game.cpp +msgid "Node definitions..." +msgstr "Definiciones de nodos…" + +#: src/client/game.cpp +msgid "Pitch move mode disabled" +msgstr "Modo inclinado deshabilitado" + +#: src/client/game.cpp +msgid "Pitch move mode enabled" +msgstr "Modo inclinado habilitado" + +#: src/client/game.cpp +msgid "Profiler graph shown" +msgstr "Gráfico del perfilador mostrado" + +#: src/client/game.cpp +msgid "Resolving address..." +msgstr "Resolviendo dirección..." + +#: src/client/game.cpp +msgid "Shutting down..." +msgstr "Cerrando..." + +#: src/client/game.cpp src/client/game_formspec.cpp +msgid "Singleplayer" +msgstr "Un Jugador" + +#: src/client/game.cpp +msgid "Sound muted" +msgstr "Sonido muteado" + +#: src/client/game.cpp +msgid "Sound system is not supported on this build" +msgstr "El sistema de sonido no es compatible con esta compilación" + +#: src/client/game.cpp +msgid "Sound unmuted" +msgstr "Sonido desmuteado" + +#: src/client/game.cpp +#, c-format +msgid "The server is probably running a different version of %s." +msgstr "" + +#: src/client/game.cpp +#, c-format +msgid "Unable to connect to %s because IPv6 is disabled" +msgstr "No se puede conectar a %s porque IPv6 está deshabilitado" + +#: src/client/game.cpp +#, c-format +msgid "Unable to listen on %s because IPv6 is disabled" +msgstr "No se puede escuchar en %s porque IPv6 está deshabilitado" + +#: src/client/game.cpp +msgid "Unlimited viewing range disabled" +msgstr "Rango de visualización ilimitado deshabilitado" + +#: src/client/game.cpp +msgid "Unlimited viewing range enabled" +msgstr "Rango de visualización ilimitado habilitado" + +#: src/client/game.cpp +msgid "Unlimited viewing range enabled, but forbidden by game or mod" +msgstr "" +"Rango de visualización ilimitado habilitado, pero prohibido por el juego o " +"mod" + +#: src/client/game.cpp +#, c-format +msgid "Viewing changed to %d (the minimum)" +msgstr "La visualización cambió a %d (el mínimo)" + +#: src/client/game.cpp +#, c-format +msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" +msgstr "" +"La visualización cambió a %d (el mínimo), pero está limitada a %d por juego " +"o mod" + +#: src/client/game.cpp +#, c-format +msgid "Viewing range changed to %d" +msgstr "El rango de visión cambió a %d" + +#: src/client/game.cpp +#, c-format +msgid "Viewing range changed to %d (the maximum)" +msgstr "El rango de visión cambió a %d (el máximo)" + #: src/client/game.cpp #, c-format msgid "" @@ -1534,60 +1620,55 @@ msgstr "" "El rango de visión cambió a %d (el máximo), pero está limitado a %d por " "juego o mod" -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d (the maximum)" -msgstr "El rango de visión cambió a %d (el máximo)" - #: src/client/game.cpp #, c-format msgid "Viewing range changed to %d, but limited to %d by game or mod" -msgstr "El rango de visión cambió a %d, pero está limitado a %d por juego o mod" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d" -msgstr "El rango de visión cambió a %d" - -#: src/client/game.cpp -#, c-format -msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" msgstr "" -"La visualización cambió a %d (el mínimo), pero está limitada a %d por juego " -"o mod" +"El rango de visión cambió a %d, pero está limitado a %d por juego o mod" #: src/client/game.cpp #, c-format -msgid "Viewing changed to %d (the minimum)" -msgstr "La visualización cambió a %d (el mínimo)" +msgid "Volume changed to %d%%" +msgstr "Volumen cambiado a %d%%" #: src/client/game.cpp -msgid "Unlimited viewing range enabled, but forbidden by game or mod" +msgid "Wireframe not supported by video driver" msgstr "" -"Rango de visualización ilimitado habilitado, pero prohibido por el juego o " -"mod" #: src/client/game.cpp -msgid "Unlimited viewing range enabled" -msgstr "Rango de visualización ilimitado habilitado" - -#: src/client/game.cpp -msgid "Unlimited viewing range disabled" -msgstr "Rango de visualización ilimitado deshabilitado" +msgid "Wireframe shown" +msgstr "Estructura alámbrica mostrado" #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom actualmente deshabilitado por juego o mod" -#: src/client/game.cpp -msgid "You died" -msgstr "Has muerto" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reaparecer" +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" -#: src/client/game.cpp +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Cambiar contraseña" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp msgid "" "Controls:\n" "No menu open:\n" @@ -1615,96 +1696,64 @@ msgstr "" "- tocar y arrastrar, tocar el segundo dedo\n" " -> colocar un solo elemento en un slot\n" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - -#: src/client/game.cpp +#: src/client/game_formspec.cpp msgid "Exit to Menu" -msgstr "" +msgstr "Salir al menú" -#: src/client/game.cpp +#: src/client/game_formspec.cpp msgid "Exit to OS" -msgstr "" +msgstr "Salir al sistema operativo" -#: src/client/game.cpp +#: src/client/game_formspec.cpp msgid "Game info:" -msgstr "" +msgstr "Información del juego:" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Juego pausado" -#: src/client/game.cpp +#: src/client/game_formspec.cpp msgid "Hosting server" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - -#: src/client/game.cpp +#: src/client/game_formspec.cpp msgid "Off" msgstr "" -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " +#: src/client/game_formspec.cpp +msgid "On" msgstr "" -#: src/client/game.cpp -msgid "- Public: " +#: src/client/game_formspec.cpp +msgid "Remote server" msgstr "" -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reaparecer" -#: src/client/game.cpp -#, c-format -msgid "The server is probably running a different version of %s." -msgstr "" +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volumen del sonido" -#: src/client/game.cpp -msgid "A serialization error occurred:" -msgstr "" - -#: src/client/game.cpp src/client/shader.cpp src/server.cpp -msgid "" -"\n" -"Check debug.txt for details." -msgstr "" - -#: src/client/game.cpp -msgid "Connection error (timed out?)" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat shown" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat hidden" -msgstr "" +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Has muerto" #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" +msgstr "Chat actualmente desactivado por el juego o mod" + +#: src/client/gameui.cpp +msgid "Chat hidden" +msgstr "Chat escondido" + +#: src/client/gameui.cpp +msgid "Chat shown" +msgstr "Chat mostrado" + +#: src/client/gameui.cpp +msgid "HUD hidden" msgstr "" #: src/client/gameui.cpp @@ -1712,7 +1761,7 @@ msgid "HUD shown" msgstr "" #: src/client/gameui.cpp -msgid "HUD hidden" +msgid "Profiler hidden" msgstr "" #: src/client/gameui.cpp @@ -1720,16 +1769,12 @@ msgstr "" msgid "Profiler shown (page %d of %d)" msgstr "" -#: src/client/gameui.cpp -msgid "Profiler hidden" +#: src/client/keycode.cpp +msgid "Apps" msgstr "" #: src/client/keycode.cpp -msgid "Left Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Button" +msgid "Backspace" msgstr "" #. ~ Usually paired with the Pause key @@ -1738,127 +1783,124 @@ msgid "Break Key" msgstr "" #: src/client/keycode.cpp -msgid "Middle Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 1" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 2" -msgstr "" - -#: src/client/keycode.cpp -msgid "Backspace" -msgstr "" - -#: src/client/keycode.cpp -msgid "Tab" +msgid "Caps Lock" msgstr "" #: src/client/keycode.cpp msgid "Clear Key" msgstr "" -#: src/client/keycode.cpp -msgid "Return Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Shift Key" -msgstr "" - #: src/client/keycode.cpp msgid "Control Key" msgstr "" -#. ~ Key name, common on Windows keyboards -#: src/client/keycode.cpp -msgid "Menu Key" -msgstr "" - -#. ~ Usually paired with the Break key -#: src/client/keycode.cpp -msgid "Pause Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Caps Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Space" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Up" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Down" -msgstr "" - -#: src/client/keycode.cpp -msgid "End" -msgstr "" - -#: src/client/keycode.cpp -msgid "Home" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Up Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Down Arrow" -msgstr "" - -#. ~ Key name -#: src/client/keycode.cpp -msgid "Select" -msgstr "" - -#. ~ "Print screen" key -#: src/client/keycode.cpp -msgid "Print" -msgstr "" - -#: src/client/keycode.cpp -msgid "Execute" -msgstr "" - -#: src/client/keycode.cpp -msgid "Snapshot" -msgstr "" - -#: src/client/keycode.cpp -msgid "Insert" -msgstr "" - #: src/client/keycode.cpp msgid "Delete Key" msgstr "" +#: src/client/keycode.cpp +msgid "Down Arrow" +msgstr "" + +#: src/client/keycode.cpp +msgid "End" +msgstr "" + +#: src/client/keycode.cpp +msgid "Erase EOF" +msgstr "" + +#: src/client/keycode.cpp +msgid "Execute" +msgstr "" + #: src/client/keycode.cpp msgid "Help" +msgstr "Ayuda" + +#: src/client/keycode.cpp +msgid "Home" +msgstr "" + +#: src/client/keycode.cpp +msgid "IME Accept" +msgstr "" + +#: src/client/keycode.cpp +msgid "IME Convert" +msgstr "" + +#: src/client/keycode.cpp +msgid "IME Escape" +msgstr "" + +#: src/client/keycode.cpp +msgid "IME Mode Change" +msgstr "" + +#: src/client/keycode.cpp +msgid "IME Nonconvert" +msgstr "" + +#: src/client/keycode.cpp +msgid "Insert" +msgstr "Introducir" + +#: src/client/keycode.cpp +msgid "Left Arrow" +msgstr "" + +#: src/client/keycode.cpp +msgid "Left Button" +msgstr "Botón izquierdo" + +#: src/client/keycode.cpp +msgid "Left Control" +msgstr "" + +#: src/client/keycode.cpp +msgid "Left Menu" +msgstr "" + +#: src/client/keycode.cpp +msgid "Left Shift" msgstr "" #: src/client/keycode.cpp msgid "Left Windows" msgstr "" +#. ~ Key name, common on Windows keyboards #: src/client/keycode.cpp -msgid "Right Windows" +msgid "Menu Key" +msgstr "" + +#: src/client/keycode.cpp +msgid "Middle Button" +msgstr "" + +#: src/client/keycode.cpp +msgid "Num Lock" +msgstr "" + +#: src/client/keycode.cpp +msgid "Numpad *" +msgstr "" + +#: src/client/keycode.cpp +msgid "Numpad +" +msgstr "" + +#: src/client/keycode.cpp +msgid "Numpad -" +msgstr "" + +#: src/client/keycode.cpp +msgid "Numpad ." +msgstr "" + +#: src/client/keycode.cpp +msgid "Numpad /" msgstr "" #: src/client/keycode.cpp @@ -1902,79 +1944,70 @@ msgid "Numpad 9" msgstr "" #: src/client/keycode.cpp -msgid "Numpad *" +msgid "OEM Clear" msgstr "" #: src/client/keycode.cpp -msgid "Numpad +" +msgid "Page Down" msgstr "" #: src/client/keycode.cpp -msgid "Numpad ." +msgid "Page Up" +msgstr "" + +#. ~ Usually paired with the Break key +#: src/client/keycode.cpp +msgid "Pause Key" msgstr "" #: src/client/keycode.cpp -msgid "Numpad -" +msgid "Play" +msgstr "" + +#. ~ "Print screen" key +#: src/client/keycode.cpp +msgid "Print" msgstr "" #: src/client/keycode.cpp -msgid "Numpad /" +msgid "Return Key" msgstr "" #: src/client/keycode.cpp -msgid "Num Lock" +msgid "Right Arrow" msgstr "" #: src/client/keycode.cpp -msgid "Scroll Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Control" -msgstr "" +msgid "Right Button" +msgstr "Botón derecho" #: src/client/keycode.cpp msgid "Right Control" msgstr "" -#: src/client/keycode.cpp -msgid "Left Menu" -msgstr "" - #: src/client/keycode.cpp msgid "Right Menu" msgstr "" #: src/client/keycode.cpp -msgid "IME Escape" +msgid "Right Shift" msgstr "" #: src/client/keycode.cpp -msgid "IME Convert" +msgid "Right Windows" msgstr "" #: src/client/keycode.cpp -msgid "IME Nonconvert" +msgid "Scroll Lock" msgstr "" +#. ~ Key name #: src/client/keycode.cpp -msgid "IME Accept" -msgstr "" +msgid "Select" +msgstr "Seleccionar" #: src/client/keycode.cpp -msgid "IME Mode Change" -msgstr "" - -#: src/client/keycode.cpp -msgid "Apps" +msgid "Shift Key" msgstr "" #: src/client/keycode.cpp @@ -1982,51 +2015,60 @@ msgid "Sleep" msgstr "" #: src/client/keycode.cpp -msgid "Erase EOF" +msgid "Snapshot" msgstr "" #: src/client/keycode.cpp -msgid "Play" +msgid "Space" +msgstr "Espacio" + +#: src/client/keycode.cpp +msgid "Tab" +msgstr "Pestaña" + +#: src/client/keycode.cpp +msgid "Up Arrow" +msgstr "" + +#: src/client/keycode.cpp +msgid "X Button 1" +msgstr "" + +#: src/client/keycode.cpp +msgid "X Button 2" msgstr "" #: src/client/keycode.cpp msgid "Zoom Key" msgstr "" -#: src/client/keycode.cpp -msgid "OEM Clear" -msgstr "" - #: src/client/minimap.cpp msgid "Minimap hidden" msgstr "" #: src/client/minimap.cpp #, c-format -msgid "Minimap in surface mode, Zoom x%d" +msgid "Minimap in radar mode, Zoom x%d" msgstr "" #: src/client/minimap.cpp #, c-format -msgid "Minimap in radar mode, Zoom x%d" +msgid "Minimap in surface mode, Zoom x%d" msgstr "" #: src/client/minimap.cpp msgid "Minimap in texture mode" msgstr "" -#: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" - #: src/client/shader.cpp #, c-format msgid "Failed to compile the \"%s\" shader." msgstr "" -#: src/content/mod_configuration.cpp -msgid "Some mods have unsatisfied dependencies:" -msgstr "" +#: src/client/shader.cpp +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "El sistema de sonido no es compatible con esta compilación" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2045,44 +2087,36 @@ msgid "" "the mods." msgstr "" -#: src/gui/guiChatConsole.cpp -msgid "Opening webpage" +#: src/content/mod_configuration.cpp +msgid "Some mods have unsatisfied dependencies:" msgstr "" #: src/gui/guiChatConsole.cpp msgid "Failed to open webpage" msgstr "" +#: src/gui/guiChatConsole.cpp +msgid "Opening webpage" +msgstr "" + #: src/gui/guiFormSpecMenu.cpp msgid "Proceed" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp -msgid "Keybindings." -msgstr "" - #: src/gui/guiKeyChangeMenu.cpp msgid "\"Aux1\" = climb down" msgstr "" #: src/gui/guiKeyChangeMenu.cpp -msgid "Double tap \"jump\" to toggle fly" +msgid "Autoforward" msgstr "" #: src/gui/guiKeyChangeMenu.cpp src/settings_translation_file.cpp msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp -msgid "Key already in use" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "press key" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Forward" +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Aux1" msgstr "" #: src/gui/guiKeyChangeMenu.cpp @@ -2090,129 +2124,145 @@ msgid "Backward" msgstr "" #: src/gui/guiKeyChangeMenu.cpp -msgid "Left" +msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp -msgid "Right" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Aux1" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Jump" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Sneak" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Drop" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Inventory" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Prev. item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Next item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Zoom" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle minimap" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fly" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle pitchmove" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fast" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle noclip" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Mute" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Autoforward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Screenshot" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Range select" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Console" -msgstr "" - #: src/gui/guiKeyChangeMenu.cpp msgid "Command" msgstr "" +#: src/gui/guiKeyChangeMenu.cpp +msgid "Console" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Dec. range" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Dec. volume" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Double tap \"jump\" to toggle fly" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Drop" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Forward" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Inc. range" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Inc. volume" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Inventory" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Jump" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Key already in use" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Keybindings." +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Left" +msgstr "" + #: src/gui/guiKeyChangeMenu.cpp msgid "Local command" msgstr "" #: src/gui/guiKeyChangeMenu.cpp -msgid "Block bounds" +msgid "Mute" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Next item" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Prev. item" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Range select" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Right" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Screenshot" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Sneak" msgstr "" #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle fast" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle fly" +msgstr "" + #: src/gui/guiKeyChangeMenu.cpp msgid "Toggle fog" msgstr "" +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle minimap" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle noclip" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Toggle pitchmove" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Zoom" +msgstr "" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "press key" +msgstr "" + +#: src/gui/guiOpenURL.cpp +msgid "Open" +msgstr "" + #: src/gui/guiOpenURL.cpp msgid "Open URL?" msgstr "" @@ -2221,12 +2271,8 @@ msgstr "" msgid "Unable to open URL" msgstr "" -#: src/gui/guiOpenURL.cpp -msgid "Open" -msgstr "" - #: src/gui/guiPasswordChange.cpp -msgid "Old Password" +msgid "Change" msgstr "" #: src/gui/guiPasswordChange.cpp @@ -2234,19 +2280,14 @@ msgid "New Password" msgstr "" #: src/gui/guiPasswordChange.cpp -msgid "Change" +msgid "Old Password" msgstr "" #: src/gui/guiPasswordChange.cpp msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp -#, c-format -msgid "Sound Volume: %d%%" -msgstr "" - -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2254,52 +2295,50 @@ msgstr "" msgid "Muted" msgstr "" -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" +#: src/gui/guiVolumeChange.cpp +#, c-format +msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp -msgid "Toggle debug" +#: src/gui/touchscreeneditor.cpp +msgid "Add button" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "¡Hecho!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/network/clientpackethandler.cpp -msgid "Invalid password" +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" msgstr "" -#: src/network/clientpackethandler.cpp -msgid "" -"Your client sent something the server didn't expect. Try reconnecting or " -"updating your client." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Your client's version is not supported.\n" -"Please contact the server administrator." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name contains disallowed characters" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name not allowed" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Too many users" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Empty passwords are disallowed. Set a password and try again." +#: src/gui/touchscreenlayout.cpp +msgid "Toggle debug" msgstr "" #: src/network/clientpackethandler.cpp @@ -2308,10 +2347,43 @@ msgid "" "unexpectedly, try again in a minute." msgstr "" +#: src/network/clientpackethandler.cpp +msgid "Empty passwords are disallowed. Set a password and try again." +msgstr "" + #: src/network/clientpackethandler.cpp msgid "Internal server error" msgstr "" +#: src/network/clientpackethandler.cpp +msgid "Invalid password" +msgstr "" + +#. ~ DO NOT TRANSLATE THIS LITERALLY! +#. This is a special string which needs to contain the translation's +#. language code (e.g. "de" for German). +#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp +#: src/script/lua_api/l_mainmenu.cpp +msgid "LANG_CODE" +msgstr "" + +#: src/network/clientpackethandler.cpp +msgid "" +"Name is not registered. To create an account on this server, click 'Register'" +msgstr "" + +#: src/network/clientpackethandler.cpp +msgid "Name is taken. Please choose another name" +msgstr "" + +#: src/network/clientpackethandler.cpp +msgid "Player name contains disallowed characters" +msgstr "" + +#: src/network/clientpackethandler.cpp +msgid "Player name not allowed" +msgstr "" + #: src/network/clientpackethandler.cpp msgid "Server shutting down" msgstr "" @@ -2322,383 +2394,135 @@ msgid "" msgstr "" #: src/network/clientpackethandler.cpp -msgid "" -"Name is not registered. To create an account on this server, click 'Register'" +msgid "The server is running in singleplayer mode. You cannot connect." msgstr "" #: src/network/clientpackethandler.cpp -msgid "Name is taken. Please choose another name" -msgstr "" - -#. ~ DO NOT TRANSLATE THIS LITERALLY! -#. This is a special string which needs to contain the translation's -#. language code (e.g. "de" for German). -#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp -#: src/script/lua_api/l_mainmenu.cpp -msgid "LANG_CODE" +msgid "Too many users" msgstr "" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." msgstr "" +#: src/network/clientpackethandler.cpp +msgid "" +"Your client sent something the server didn't expect. Try reconnecting or " +"updating your client." +msgstr "" + +#: src/network/clientpackethandler.cpp +msgid "" +"Your client's version is not supported.\n" +"Please contact the server administrator." +msgstr "" + #: src/server.cpp #, c-format msgid "%s while shutting down: " msgstr "" #: src/settings_translation_file.cpp -msgid "Camera smoothing" +msgid "" +"(X,Y,Z) offset of fractal from world center in units of 'scale'.\n" +"Can be used to move a desired point to (0, 0) to create a\n" +"suitable spawn point, or to allow 'zooming in' on a desired\n" +"point by increasing 'scale'.\n" +"The default is tuned for a suitable spawn point for Mandelbrot\n" +"sets with default parameters, it may need altering in other\n" +"situations.\n" +"Range roughly -2 to 2. Multiply by 'scale' for offset in nodes." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Smooths rotation of camera, also called look or mouse smoothing. 0 to " -"disable." +"(X,Y,Z) scale of fractal in nodes.\n" +"Actual fractal size will be 2 to 3 times larger.\n" +"These numbers can be made very large, the fractal does\n" +"not have to fit inside the world.\n" +"Increase these to 'zoom' into the detail of the fractal.\n" +"Default is for a vertically-squashed shape suitable for\n" +"an island, set all 3 numbers equal for the raw shape." msgstr "" #: src/settings_translation_file.cpp -msgid "Camera smoothing in cinematic mode" +msgid "2D noise that controls the shape/size of ridged mountains." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " -"cinematic mode by using the key set in Controls." +msgid "2D noise that controls the shape/size of rolling hills." msgstr "" #: src/settings_translation_file.cpp -msgid "Build inside player" +msgid "2D noise that controls the shape/size of step mountains." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"If enabled, you can place nodes at the position (feet + eye level) where you " -"stand.\n" -"This is helpful when working with nodeboxes in small areas." +msgid "2D noise that controls the size/occurrence of ridged mountain ranges." msgstr "" #: src/settings_translation_file.cpp -msgid "Aux1 key for climbing/descending" +msgid "2D noise that controls the size/occurrence of rolling hills." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"If enabled, \"Aux1\" key instead of \"Sneak\" key is used for climbing down " -"and\n" -"descending." +msgid "2D noise that controls the size/occurrence of step mountain ranges." msgstr "" #: src/settings_translation_file.cpp -msgid "Double tap jump for fly" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Double-tapping the jump key toggles fly mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Always fly fast" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If disabled, \"Aux1\" key is used to fly fast if both fly and fast mode are\n" -"enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Place repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated node placements when holding\n" -"the place button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum dig repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The minimum time in seconds it takes between digging nodes when holding\n" -"the dig button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically jump up single-node obstacles." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Safe digging and placing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prevent digging and placing from repeating when holding the respective " -"buttons.\n" -"Enable this when you dig or place too often by accident.\n" -"On touchscreens, this only affects digging." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Keyboard and Mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert vertical mouse movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Enable mouse wheel for selection" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mouse wheel (scroll) for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Invert mouse wheel direction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen controls" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables the touchscreen controls, allowing you to play the game with a " -"touchscreen.\n" -"\"auto\" means that the touchscreen controls will be enabled and disabled\n" -"automatically depending on the last used input method." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Movement threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The length in pixels after which a touch interaction is considered movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Threshold for long taps" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The delay in milliseconds after which a touch interaction is considered a " -"long tap." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use crosshair for touch screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use crosshair to select object instead of whole screen.\n" -"If enabled, a crosshair will be shown and will be used for selecting object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed virtual joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Fixes the position of virtual joystick.\n" -"If disabled, virtual joystick will center to first-touch's position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Virtual joystick triggers Aux1 button" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use virtual joystick to trigger \"Aux1\" button.\n" -"If enabled, virtual joystick will also tap \"Aux1\" button when out of main " -"circle." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Punch gesture" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The gesture for punching players/entities.\n" -"This can be overridden by games and mods.\n" -"\n" -"* short_tap\n" -"Easy to use and well-known from other games that shall not be named.\n" -"\n" -"* long_tap\n" -"Known from the classic Luanti mobile controls.\n" -"Combat is more or less impossible." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics and Audio" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Window maximized" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether the window is maximized." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Remember screen size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Save window size automatically when modified.\n" -"If true, screen size is saved in screen_w and screen_h, and whether the " -"window\n" -"is maximized is stored in window_maximized.\n" -"(Autosaving window_maximized only works if compiled with SDL.)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Full screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fullscreen mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Pause on lost window focus" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Open the pause menu when the window's focus is lost. Does not pause if a " -"formspec is\n" -"open." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If FPS would go higher than this, limit it by sleeping\n" -"to not waste CPU power for no benefit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "VSync" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Vertical screen synchronization. Your system may still force VSync on even " -"if this is disabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS when unfocused or paused" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS when the window is not focused, or when the game is paused." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Viewing range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "View distance in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Undersampling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Undersampling is similar to using a lower screen resolution, but it applies\n" -"to the game world only, keeping the GUI intact.\n" -"It should give a significant performance boost at the cost of less detailed " -"image.\n" -"Higher values result in a less detailed image." +msgid "2D noise that locates the river valleys and channels." msgstr "" #: src/settings_translation_file.cpp msgid "3D" msgstr "" +#: src/settings_translation_file.cpp +msgid "3D clouds" +msgstr "" + #: src/settings_translation_file.cpp msgid "3D mode" msgstr "" +#: src/settings_translation_file.cpp +msgid "3D mode parallax strength" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "3D noise defining giant caverns." +msgstr "Ruido 3D que define cavernas gigantes." + +#: src/settings_translation_file.cpp +msgid "" +"3D noise defining mountain structure and height.\n" +"Also defines structure of floatland mountain terrain." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"3D noise defining structure of floatlands.\n" +"If altered from the default, the noise 'scale' (0.7 by default) may need\n" +"to be adjusted, as floatland tapering functions best when this noise has\n" +"a value range of approximately -2.0 to 2.0." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "3D noise defining structure of river canyon walls." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "3D noise defining terrain." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "3D noise that determines number of dungeons per mapchunk." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "3D support.\n" @@ -2708,66 +2532,93 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D mode parallax strength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strength of 3D mode parallax." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bobbing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Arm inertia" +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Arm inertia, gives a more realistic movement of\n" -"the arm when the camera moves." +"A chosen map seed for a new map, leave empty for random.\n" +"Will be overridden when creating a new world in the main menu." msgstr "" #: src/settings_translation_file.cpp -msgid "View bobbing factor" +msgid "A message to be displayed to all clients when the server crashes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "A message to be displayed to all clients when the server shuts down." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "ABM interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "ABM time budget" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Absolute limit of queued blocks to emerge" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Acceleration in air" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Acceleration of gravity, in nodes per second per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Active Block Modifiers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Active block management interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Active block range" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Active object send range" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Adjust the detected display density, used for scaling UI elements." +msgstr "" + +#: src/settings_translation_file.cpp +#, c-format +msgid "" +"Adjusts the density of the floatland layer.\n" +"Increase value to increase density. Can be positive or negative.\n" +"Value = 0.0: 50% of volume is floatland.\n" +"Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" +"to be sure) creates a solid floatland layer." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Admin name" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Advanced" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable view bobbing and amount of view bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." msgstr "" #: src/settings_translation_file.cpp -msgid "Fall bobbing factor" +msgid "Allow clouds to look 3D instead of flat." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Multiplier for fall bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view in degrees." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve gamma" +msgid "Allows liquids to be translucent." msgstr "" #: src/settings_translation_file.cpp @@ -2779,190 +2630,16 @@ msgid "" "light, it has very little effect on natural night light." msgstr "" +#: src/settings_translation_file.cpp +msgid "Always fly fast" +msgstr "" + #: src/settings_translation_file.cpp msgid "Ambient occlusion gamma" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"The strength (darkness) of node ambient-occlusion shading.\n" -"Lower is darker, Higher is lighter. The valid range of values for this\n" -"setting is 0.25 to 4.0 inclusive. If the value is out of range it will be\n" -"set to the nearest valid value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshots" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot folder" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to save screenshots at. Can be an absolute or relative path.\n" -"The folder will be created if it doesn't already exist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Format of screenshots." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Screenshot quality. Only used for JPEG format.\n" -"1 means worst quality; 100 means best quality.\n" -"Use 0 for default quality." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node and Entity Highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Method used to highlight selected object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show entity selection boxes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Show entity selection boxes\n" -"A restart is required after changing this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box border color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width of the selection box lines around nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair color (R,G,B).\n" -"Also controls the object crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair alpha (opaqueness, between 0 and 255).\n" -"This also applies to the object crosshair." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether to fog out the end of the visible area." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Make fog and sky colors depend on daytime (dawn/sunset) and view direction." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog start" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fraction of the visible distance at which fog starts to be rendered" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use smooth cloud shading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filtering and Antialiasing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mipmapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use mipmaps when scaling textures. May slightly increase performance,\n" -"especially when using a high-resolution texture pack.\n" -"Gamma-correct downscaling is not supported." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use bilinear filtering when scaling textures." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use trilinear filtering when scaling textures.\n" -"If both bilinear and trilinear filtering are enabled, trilinear filtering\n" -"is applied." +msgid "Amplifies the valleys." msgstr "" #: src/settings_translation_file.cpp @@ -2970,33 +2647,11 @@ msgid "Anisotropic filtering" msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "Announce server" msgstr "" #: src/settings_translation_file.cpp -msgid "Antialiasing method" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Select the antialiasing method to apply.\n" -"\n" -"* None - No antialiasing (default)\n" -"\n" -"* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" -"A.K.A multi-sample antialiasing (MSAA)\n" -"Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" -"\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" -"Applies a post-processing filter to detect and smoothen high-contrast " -"edges.\n" -"Provides balance between speed and image quality.\n" -"\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" -"Renders higher-resolution image of the scene, then scales down to reduce\n" -"the aliasing effects. This is the slowest and the most accurate method." +msgid "Announce to this serverlist." msgstr "" #: src/settings_translation_file.cpp @@ -3004,317 +2659,27 @@ msgid "Anti-aliasing scale" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Defines the size of the sampling grid for FSAA and SSAA antialiasing " -"methods.\n" -"Value of 2 means taking 2x2 = 4 samples." +msgid "Antialiasing method" msgstr "" #: src/settings_translation_file.cpp -msgid "Occlusion Culling" +msgid "Anticheat flags" msgstr "" #: src/settings_translation_file.cpp -msgid "Occlusion Culler" +msgid "Anticheat movement tolerance" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Type of occlusion_culler\n" -"\n" -"\"loops\" is the legacy algorithm with nested loops and O(n³) complexity\n" -"\"bfs\" is the new algorithm based on breadth-first-search and side culling\n" -"\n" -"This setting should only be changed if you have performance problems." +msgid "Append item name" msgstr "" #: src/settings_translation_file.cpp -msgid "Enable Raytraced Culling" +msgid "Append item name to tooltip." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Use raytraced occlusion culling in the new culler.\n" -"This flag enables use of raytraced occlusion culling test for\n" -"client mesh sizes smaller than 4x4x4 map blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Allows liquids to be translucent." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Leaves style" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Leaves style:\n" -"- Fancy: all faces visible\n" -"- Simple: only outer faces\n" -"- Opaque: disable transparency" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connect glass" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connects glass if supported by node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tradeoffs for performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables tradeoffs that reduce CPU load or increase rendering performance\n" -"at the expense of minor visual glitches that do not impact game playability." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving Nodes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving leaves" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving leaves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving plants" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving plants." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving liquids (like water)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The maximum height of the surface of waving liquids.\n" -"4.0 = Wave height is two nodes.\n" -"0.0 = Wave doesn't move at all.\n" -"Default is 1.0 (1/2 node)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wavelength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of liquid waves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How fast liquid waves will move. Higher = faster.\n" -"If negative, liquid waves will move backwards." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable Shadow Mapping." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow strength gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the shadow strength gamma.\n" -"Adjusts the intensity of in-game dynamic shadows.\n" -"Lower value means lighter shadows, higher value means darker shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map max distance in nodes to render shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum distance to render shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Texture size to render the shadow map on.\n" -"This must be a power of two.\n" -"Bigger numbers create better shadows but it is also more expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture in 32 bits" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Sets shadow texture quality to 32 bits.\n" -"On false, 16 bits texture will be used.\n" -"This can cause much more artifacts in the shadow." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Poisson filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Poisson disk filtering.\n" -"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " -"filtering." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow filter quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Define shadow filtering quality.\n" -"This simulates the soft shadows effect by applying a PCF or Poisson disk\n" -"but also uses more resources." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map shadows update frames" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread a complete update of shadow map over given number of frames.\n" -"Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft shadow radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the soft shadow radius size.\n" -"Lower values mean sharper shadows, bigger values mean softer shadows.\n" -"Minimum value: 1.0; maximum value: 15.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sky Body Orbit Tilt" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the default tilt of Sun/Moon orbit in degrees.\n" -"Games may change orbit tilt via API.\n" -"Value of 0 means no tilt / vertical orbit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables the post processing pipeline." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filmic tone mapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables Hable's 'Uncharted 2' filmic tone mapping.\n" -"Simulates the tone curve of photographic film and how this approximates the\n" -"appearance of high dynamic range images. Mid-range contrast is slightly\n" -"enhanced, highlights and shadows are gradually compressed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Automatic Exposure" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable automatic exposure correction\n" -"When enabled, the post-processing engine will\n" -"automatically adjust to the brightness of the scene,\n" -"simulating the behavior of human eye." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Exposure compensation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the exposure compensation in EV units.\n" -"Value of 0.0 (default) means no exposure compensation.\n" -"Range: from -1 to 1.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Debanding" +msgid "Apple trees noise" msgstr "" #: src/settings_translation_file.cpp @@ -3328,50 +2693,46 @@ msgid "" "floating-point precision and it may have a higher performance impact." msgstr "" -#: src/settings_translation_file.cpp -msgid "Enable Bloom" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set to true to enable bloom effect.\n" -"Bright colors will bleed over the neighboring objects." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volumetric lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Other Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent foliage" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node specular" -msgstr "" - #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." msgstr "" #: src/settings_translation_file.cpp -msgid "Liquid reflections" +msgid "Arm inertia" msgstr "" #: src/settings_translation_file.cpp -msgid "When enabled, liquid reflections are simulated." +msgid "" +"Arm inertia, gives a more realistic movement of\n" +"the arm when the camera moves." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Ask to reconnect after crash" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"At this distance the server will aggressively optimize which blocks are sent " +"to\n" +"clients.\n" +"Small values potentially improve performance a lot, at the expense of " +"visible\n" +"rendering glitches (some blocks might not be rendered correctly in caves).\n" +"Setting this to a value greater than max_block_send_distance disables this\n" +"optimization.\n" +"Stated in MapBlocks (16 nodes)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"At this distance the server will perform a simpler and cheaper occlusion " +"check.\n" +"Smaller values potentially improve performance, at the expense of " +"temporarily visible\n" +"rendering glitches (missing blocks).\n" +"This is especially useful for very large viewing range (upwards of 500).\n" +"Stated in MapBlocks (16 nodes)." msgstr "" #: src/settings_translation_file.cpp @@ -3379,184 +2740,59 @@ msgid "Audio" msgstr "" #: src/settings_translation_file.cpp -msgid "Volume" +msgid "Automatically jump up single-node obstacles." msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Volume of all sounds.\n" -"Requires the sound system to be enabled." +msgid "Automatically report to the serverlist." msgstr "" #: src/settings_translation_file.cpp -msgid "Volume when unfocused" +msgid "Autoscaling mode" msgstr "" #: src/settings_translation_file.cpp -msgid "Volume multiplier when the window is unfocused." +msgid "Aux1 key for climbing/descending" msgstr "" #: src/settings_translation_file.cpp -msgid "Mute sound" +msgid "Base ground level" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" -"In-game, you can toggle the mute state with the mute key or by using the\n" -"pause menu." +msgid "Base terrain height." msgstr "" #: src/settings_translation_file.cpp -msgid "User Interfaces" +msgid "Base texture size" msgstr "" #: src/settings_translation_file.cpp -msgid "Language" +msgid "Basic privileges" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Set the language. By default, the system language is used.\n" -"A restart is required after changing this." +msgid "Beach noise" msgstr "" #: src/settings_translation_file.cpp -msgid "GUI" +msgid "Beach noise threshold" msgstr "" #: src/settings_translation_file.cpp -msgid "Optimize GUI for touchscreens" +msgid "Bilinear filtering" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"When enabled, the GUI is optimized to be more usable on touchscreens.\n" -"Whether this is enabled by default depends on your hardware form-factor." +msgid "Bind address" msgstr "" #: src/settings_translation_file.cpp -msgid "GUI scaling" +msgid "Biome API" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Scale GUI by a user specified value.\n" -"Use a nearest-neighbor-anti-alias filter to scale the GUI.\n" -"This will smooth over some of the rough edges, and blend\n" -"pixels when scaling down, at the cost of blurring some\n" -"edge pixels when images are scaled by non-integer sizes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth scrolling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables smooth scrolling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Inventory items animations" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables animation of inventory items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Opacity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background opacity (between 0 and 255)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter is true, all GUI images need to be\n" -"filtered in software, but some images are generated directly\n" -"to hardware (e.g. render-to-texture for nodes in inventory)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tooltip delay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay showing tooltips, stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name to tooltip." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds in menu" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use a cloud animation for the main menu background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HUD" -msgstr "HUD" - -#: src/settings_translation_file.cpp -msgid "HUD scaling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Modifies the size of the HUD elements." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show name tag backgrounds by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether name tag backgrounds should be shown by default.\n" -"Mods may still set a background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show debug info" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to show the client debug info (has the same effect as hitting F5)." +msgid "Biome noise" msgstr "" #: src/settings_translation_file.cpp @@ -3564,55 +2800,143 @@ msgid "Block bounds HUD radius" msgstr "" #: src/settings_translation_file.cpp -msgid "Radius to use when the block bounds HUD feature is set to near blocks." +msgid "Block cull optimize distance" msgstr "" #: src/settings_translation_file.cpp -msgid "Maximum hotbar width" +msgid "Block send optimize distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Bobbing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Bold and italic font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Bold and italic monospace font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Bold font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Bold monospace font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Build inside player" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Builtin" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Camera" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Camera smoothing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Camera smoothing in cinematic mode" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave noise #1" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave noise #2" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave width" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave1 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cave2 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cavern limit" +msgstr "Límite de la caverna" + +#: src/settings_translation_file.cpp +msgid "Cavern noise" +msgstr "Ruido de caverna" + +#: src/settings_translation_file.cpp +msgid "Cavern taper" +msgstr "Cono de caverna" + +#: src/settings_translation_file.cpp +msgid "Cavern threshold" +msgstr "Umbral de la caverna" + +#: src/settings_translation_file.cpp +msgid "Cavern upper limit" +msgstr "Límite superior de la caverna" + #: src/settings_translation_file.cpp msgid "" -"Maximum proportion of current window to be used for hotbar.\n" -"Useful if there's something to be displayed right or left of hotbar." +"Center of light curve boost range.\n" +"Where 0.0 is minimum light level, 1.0 is maximum light level." msgstr "" #: src/settings_translation_file.cpp -msgid "Recent Chat Messages" +msgid "Chat command time message threshold" msgstr "" #: src/settings_translation_file.cpp -msgid "Maximum number of recent chat messages to show" +msgid "Chat commands" msgstr "" #: src/settings_translation_file.cpp -msgid "Console height" +msgid "Chat font size" msgstr "" #: src/settings_translation_file.cpp -msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." +msgid "Chat log level" msgstr "" #: src/settings_translation_file.cpp -msgid "Console color" +msgid "Chat message count limit" msgstr "" #: src/settings_translation_file.cpp -msgid "In-game chat console background color (R,G,B)." +msgid "Chat message format" msgstr "" #: src/settings_translation_file.cpp -msgid "Console alpha" +msgid "Chat message kick threshold" msgstr "" #: src/settings_translation_file.cpp -msgid "In-game chat console background alpha (opaqueness, between 0 and 255)." +msgid "Chat message max length" msgstr "" #: src/settings_translation_file.cpp msgid "Chat weblinks" msgstr "" +#: src/settings_translation_file.cpp +msgid "Chunk size" +msgstr "" + #: src/settings_translation_file.cpp msgid "" "Clickable weblinks (middle-click or Ctrl+left-click) enabled in chat console " @@ -3620,48 +2944,65 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Weblink color" +msgid "Client" msgstr "" #: src/settings_translation_file.cpp -msgid "Optional override for chat weblink color." +msgid "Client Mesh Chunksize" msgstr "" #: src/settings_translation_file.cpp -msgid "Chat font size" +msgid "Client and Server" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Client modding" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Client side modding restrictions" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Client-side Modding" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Client-side node lookup range restriction" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Climbing speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Cloud radius" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Clouds" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Clouds in menu" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Colored fog" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Colored shadows" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Font size of the recent chat text and chat prompt in point (pt).\n" -"Value 0 will use the default font size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Content Repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The URL for the content repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable updates available indicator on content tab" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled and you have ContentDB packages installed, Luanti may contact " -"ContentDB to\n" -"check for package updates when opening the mainmenu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB Flag Blacklist" +"Comma-separated list of AL and ALC extensions that should not be used.\n" +"Useful for testing. See al_extensions.[h,cpp] for details." msgstr "" #: src/settings_translation_file.cpp @@ -3672,7 +3013,67 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Comma-separated list of mods that are allowed to access HTTP APIs, which\n" +"allow them to upload and download data to/from the internet." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Comma-separated list of trusted mods that are allowed to access insecure\n" +"functions even when mod security is on (via request_insecure_environment())." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Compression level to use when saving mapblocks to disk.\n" +"-1 - use default compression level\n" +"0 - least compression, fastest\n" +"9 - best compression, slowest" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Compression level to use when sending mapblocks to the client.\n" +"-1 - use default compression level\n" +"0 - least compression, fastest\n" +"9 - best compression, slowest" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Connect glass" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Connect to external media server" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Connects glass if supported by node." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Console alpha" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Console color" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Console height" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Content Repository" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "ContentDB Flag Blacklist" msgstr "" #: src/settings_translation_file.cpp @@ -3680,194 +3081,116 @@ msgid "ContentDB Max Concurrent Downloads" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Maximum number of concurrent downloads. Downloads exceeding this limit will " -"be queued.\n" -"This should be lower than curl_parallel_limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client and Server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Saving map received from server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Save the map received by the client on disk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "URL to the server list displayed in the Multiplayer Tab." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable split login/register" +msgid "ContentDB URL" msgstr "" #: src/settings_translation_file.cpp msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Update information URL" +"Controls length of day/night cycle.\n" +"Examples:\n" +"72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged." msgstr "" #: src/settings_translation_file.cpp msgid "" -"URL to JSON file which provides information about the newest Luanti " -"release.\n" -"If this is empty the engine will never check for updates." +"Controls sinking speed in liquid when idling. Negative values will cause\n" +"you to rise instead." msgstr "" #: src/settings_translation_file.cpp -msgid "Server" +msgid "Controls steepness/depth of lake depressions." msgstr "" #: src/settings_translation_file.cpp -msgid "Admin name" +msgid "Controls steepness/height of hills." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" -"When starting from the main menu, this is overridden." +"Controls width of tunnels, a smaller value creates wider tunnels.\n" +"Value >= 10.0 completely disables generation of tunnels and avoids the\n" +"intensive noise calculations." msgstr "" #: src/settings_translation_file.cpp -msgid "Serverlist and MOTD" +msgid "Crash message" msgstr "" #: src/settings_translation_file.cpp -msgid "Server name" +msgid "Crosshair alpha" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Name of the server, to be displayed when players join and in the serverlist." +"Crosshair alpha (opaqueness, between 0 and 255).\n" +"This also applies to the object crosshair." msgstr "" #: src/settings_translation_file.cpp -msgid "Server description" +msgid "Crosshair color" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Description of server, to be displayed when players join and in the " -"serverlist." +"Crosshair color (R,G,B).\n" +"Also controls the object crosshair color" msgstr "" #: src/settings_translation_file.cpp -msgid "Server address" +msgid "Debug log file size threshold" msgstr "" #: src/settings_translation_file.cpp -msgid "Domain name of server, to be displayed in the serverlist." +msgid "Debug log level" msgstr "" #: src/settings_translation_file.cpp -msgid "Server URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Homepage of server, to be displayed in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Announce server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically report to the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Send player names to the server list" +msgid "Debugging" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Send names of online players to the serverlist. If disabled only the player " -"count is revealed." +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." msgstr "" #: src/settings_translation_file.cpp -msgid "Announce to this serverlist." +msgid "Dedicated server step" msgstr "" #: src/settings_translation_file.cpp -msgid "Message of the day" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Message of the day displayed to players connecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum users" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of players that can be connected simultaneously." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Static spawn point" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "If this is set, players will always (re)spawn at the given position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Networking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server port" +msgid "Default acceleration" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Network port to listen (UDP).\n" -"This value will be overridden when starting from the main menu." +"Default maximum number of forceloaded mapblocks.\n" +"Set this to -1 to disable the limit." msgstr "" #: src/settings_translation_file.cpp -msgid "Bind address" +msgid "Default password" msgstr "" #: src/settings_translation_file.cpp -msgid "The network interface that the server listens on." +msgid "Default privileges" msgstr "" #: src/settings_translation_file.cpp -msgid "Strict protocol checking" +msgid "Default report format" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Default stack size" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable to disallow old clients from connecting.\n" -"Older clients are compatible in the sense that they will not crash when " -"connecting\n" -"to new servers, but they may not support all new features that you are " -"expecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Protocol version minimum" +"Define shadow filtering quality.\n" +"This simulates the soft shadows effect by applying a PCF or Poisson disk\n" +"but also uses more resources." msgstr "" #: src/settings_translation_file.cpp @@ -3884,15 +3207,801 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Remote media" +msgid "Defines areas where trees have apples." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines areas with sandy beaches." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines distribution of higher terrain and steepness of cliffs." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines distribution of higher terrain." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines full size of caverns, smaller values create larger caverns." +msgstr "" +"Define el tamaño completo de las cavernas, los valores más pequeños crean " +"cavernas más grandes." + +#: src/settings_translation_file.cpp +msgid "Defines large-scale river channel structure." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines location and terrain of optional hills and lakes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines the base ground level." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines the depth of the river channel." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Specifies URL from which client fetches media instead of using UDP.\n" -"$filename should be accessible from $remote_media$filename via cURL\n" -"(obviously, remote_media should end with a slash).\n" -"Files that are not present will be fetched the usual way." +"Defines the size of the sampling grid for FSAA and SSAA antialiasing " +"methods.\n" +"Value of 2 means taking 2x2 = 4 samples." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines the width of the river channel." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines the width of the river valley." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Defines tree areas and tree density." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Delay between mesh updates on the client in ms. Increasing this will slow\n" +"down the rate of mesh updates, thus reducing jitter on slower clients." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Delay in sending blocks after building" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Delay showing tooltips, stated in milliseconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Deprecated Lua API handling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Depth below which you'll find giant caverns." +msgstr "Profundidad debajo de la cual encontrarás cavernas gigantes." + +#: src/settings_translation_file.cpp +msgid "Depth below which you'll find large caves." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Description of server, to be displayed when players join and in the " +"serverlist." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Desert noise threshold" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Deserts occur when np_biome exceeds this value.\n" +"When the 'snowbiomes' flag is enabled, this is ignored." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Developer Options" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Disallow empty passwords" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Display Density Scaling Factor" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Distance in nodes at which transparency depth sorting is enabled.\n" +"Use this to limit the performance impact of transparency depth sorting.\n" +"Set to 0 to disable it entirely." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Domain name of server, to be displayed in the serverlist." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Double tap jump for fly" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Double-tapping the jump key toggles fly mode." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dump the mapgen debug information." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dungeon maximum Y" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dungeon minimum Y" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dungeon noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Effects" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Automatic Exposure" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Bloom" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Bloom Debug" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Debanding" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable IPv6 support (for both client and server).\n" +"Required for IPv6 connections to work at all." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable Lua modding support on client.\n" +"This support is experimental and API can change." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable Poisson disk filtering.\n" +"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " +"filtering." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Post Processing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable Raytraced Culling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable automatic exposure correction\n" +"When enabled, the post-processing engine will\n" +"automatically adjust to the brightness of the scene,\n" +"simulating the behavior of human eye." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable colored shadows for transculent nodes.\n" +"This is expensive." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable console window" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable joysticks" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable joysticks. Requires a restart to take effect" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable mod channels support." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable mod security" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable mouse wheel (scroll) for item selection in hotbar." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable random mod loading (mainly used for testing)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable random user input (only used for testing)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable smooth lighting with simple ambient occlusion." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable split login/register" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable to disallow old clients from connecting.\n" +"Older clients are compatible in the sense that they will not crash when " +"connecting\n" +"to new servers, but they may not support all new features that you are " +"expecting." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enable updates available indicator on content tab" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable usage of remote media server (if provided by server).\n" +"Remote servers offer a significantly faster way to download media (e.g. " +"textures)\n" +"when connecting to the server." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable view bobbing and amount of view bobbing.\n" +"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable/disable running an IPv6 server.\n" +"Ignored if bind_address is set." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enables Hable's 'Uncharted 2' filmic tone mapping.\n" +"Simulates the tone curve of photographic film and how this approximates the\n" +"appearance of high dynamic range images. Mid-range contrast is slightly\n" +"enhanced, highlights and shadows are gradually compressed." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enables animation of inventory items." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enables debug and error-checking in the OpenGL driver." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enables smooth scrolling." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Enables the post processing pipeline." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enables the touchscreen controls, allowing you to play the game with a " +"touchscreen.\n" +"\"auto\" means that the touchscreen controls will be enabled and disabled\n" +"automatically depending on the last used input method." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enables tradeoffs that reduce CPU load or increase rendering performance\n" +"at the expense of minor visual glitches that do not impact game playability." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Engine Profiler" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Engine profiling data print interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Entity methods" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Exponent of the floatland tapering. Alters the tapering behavior.\n" +"Value = 1.0 creates a uniform, linear tapering.\n" +"Values > 1.0 create a smooth tapering suitable for the default separated\n" +"floatlands.\n" +"Values < 1.0 (for example 0.25) create a more defined surface level with\n" +"flatter lowlands, suitable for a solid floatland layer." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Exposure compensation" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "FPS" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "FPS when unfocused or paused" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Factor noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fall bobbing factor" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fallback font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fast mode acceleration" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fast mode speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Field of view" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Field of view in degrees." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"File in client/serverlist/ that contains your favorite servers displayed in " +"the\n" +"Multiplayer Tab." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Filler depth" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Filler depth noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Filmic tone mapping" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Filtering and Antialiasing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "First of 4 2D noises that together define hill/mountain range height." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "First of two 3D noises that together define tunnels." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fixed map seed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fixed virtual joystick" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Fixes the position of virtual joystick.\n" +"If disabled, virtual joystick will center to first-touch's position." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland density" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland maximum Y" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland minimum Y" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland taper exponent" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland tapering distance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Floatland water level" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fog" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fog start" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font bold by default" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font italic by default" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font shadow" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font shadow alpha" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font size" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font size divisible by" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font size of the default font where 1 unit = 1 pixel at 96 DPI" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Font size of the monospace font where 1 unit = 1 pixel at 96 DPI" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Font size of the recent chat text and chat prompt in point (pt).\n" +"Value 0 will use the default font size." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"For pixel-style fonts that do not scale well, this ensures that font sizes " +"used\n" +"with this font will always be divisible by this value, in pixels. For " +"instance,\n" +"a pixel font 16 pixels tall should have this set to 16, so it will only ever " +"be\n" +"sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Format of player chat messages. The following strings are valid " +"placeholders:\n" +"@name, @message, @timestamp (optional)" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Format of screenshots." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Formspec Full-Screen Background Color" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Formspec Full-Screen Background Opacity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Formspec full-screen background color (R,G,B)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Formspec full-screen background opacity (between 0 and 255)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fourth of 4 2D noises that together define hill/mountain range height." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fractal type" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fraction of the visible distance at which fog starts to be rendered" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"From how far blocks are generated for clients, stated in mapblocks (16 " +"nodes)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"From how far clients know about objects, stated in mapblocks (16 nodes).\n" +"\n" +"Setting this larger than active_block_range will also cause the server\n" +"to maintain active objects up to this distance in the direction the\n" +"player is looking. (This can avoid mobs suddenly disappearing from view)" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Full screen" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Fullscreen mode." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "GUI" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "GUI scaling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "GUI scaling filter" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Gamepads" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Global callbacks" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Global map generation attributes.\n" +"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n" +"and jungle grass, in all other mapgens this flag controls all decorations." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Gradient of light curve at maximum light level.\n" +"Controls the contrast of the highest light levels." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Gradient of light curve at minimum light level.\n" +"Controls the contrast of the lowest light levels." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Graphics" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Graphics and Audio" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Gravity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Ground level" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Ground noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "HTTP mods" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "HUD" +msgstr "HUD" + +#: src/settings_translation_file.cpp +msgid "HUD scaling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Handling for deprecated Lua API calls:\n" +"- none: Do not log deprecated calls\n" +"- log: mimic and log backtrace of deprecated call (default).\n" +"- error: abort on usage of deprecated call (suggested for mod developers)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Have the profiler instrument itself:\n" +"* Instrument an empty function.\n" +"This estimates the overhead, that instrumentation is adding (+1 function " +"call).\n" +"* Instrument the sampler being used to update the statistics." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Heat blend noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Heat noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Height component of the initial window size." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Height noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Height select noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hill steepness" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hill threshold" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hilliness1 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hilliness2 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hilliness3 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hilliness4 noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Homepage of server, to be displayed in the serverlist." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal acceleration in air when jumping or falling,\n" +"in nodes per second per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal and vertical acceleration in fast mode,\n" +"in nodes per second per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal and vertical acceleration on ground or when climbing,\n" +"in nodes per second per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hotbar: Enable mouse wheel for selection" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Hotbar: Invert mouse wheel direction" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "How deep to make rivers." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"How fast liquid waves will move. Higher = faster.\n" +"If negative, liquid waves will move backwards." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"How long the server will wait before unloading unused mapblocks, stated in " +"seconds.\n" +"Higher value is smoother, but will use more RAM." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"How much you are slowed down when moving inside a liquid.\n" +"Decrease this to increase liquid resistance to movement." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "How wide to make rivers." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Humidity blend noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Humidity noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Humidity variation for biomes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "IPv6" msgstr "" #: src/settings_translation_file.cpp @@ -3901,74 +4010,28 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default password" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "New users need to input this password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Disallow empty passwords" +"If FPS would go higher than this, limit it by sleeping\n" +"to not waste CPU power for no benefit." msgstr "" #: src/settings_translation_file.cpp msgid "" -"If enabled, players cannot join without a password or change theirs to an " -"empty password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default privileges" +"If disabled, \"Aux1\" key is used to fly fast if both fly and fast mode are\n" +"enabled." msgstr "" #: src/settings_translation_file.cpp msgid "" -"The privileges that new users automatically get.\n" -"See /privs in game for a full list on your server and mod configuration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Basic privileges" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Privileges that players with basic_privs can grant" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat flags" +"If enabled and you have ContentDB packages installed, Luanti may contact " +"ContentDB to\n" +"check for package updates when opening the mainmenu." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Server anticheat configuration.\n" -"Flags are positive. Uncheck the flag to disable corresponding anticheat " -"module." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat movement tolerance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Tolerance of movement cheat detector.\n" -"Increase the value if players experience stuttery movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rollback recording" +"If enabled, \"Aux1\" key instead of \"Sneak\" key is used for climbing down " +"and\n" +"descending." msgstr "" #: src/settings_translation_file.cpp @@ -3978,11 +4041,1140 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Client-side Modding" +msgid "" +"If enabled, invalid world data won't cause the server to shut down.\n" +"Only enable this if you know what you are doing." msgstr "" #: src/settings_translation_file.cpp -msgid "Client side modding restrictions" +msgid "" +"If enabled, players cannot join without a password or change theirs to an " +"empty password." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, the server will perform map block occlusion culling based on\n" +"on the eye position of the player. This can reduce the number of blocks\n" +"sent to the client by 50-80%. Clients will no longer receive most\n" +"invisible blocks, so that the utility of noclip mode is reduced." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, you can place nodes at the position (feet + eye level) where you " +"stand.\n" +"This is helpful when working with nodeboxes in small areas." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If the CSM restriction for node range is enabled, get_node calls are " +"limited\n" +"to this distance from the player to the node." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If the execution of a chat command takes longer than this specified time in\n" +"seconds, add the time information to the chat command message" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"If the file size of debug.txt exceeds the number of megabytes specified in\n" +"this setting when it is opened, the file is moved to debug.txt.1,\n" +"deleting an older debug.txt.1 if it exists.\n" +"debug.txt is only moved if this setting is positive." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "If this is set, players will always (re)spawn at the given position." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Ignore world errors" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "In-game chat console background alpha (opaqueness, between 0 and 255)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "In-game chat console background color (R,G,B)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Initial vertical speed when jumping, in nodes per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Instrument builtin.\n" +"This is usually only needed by core/builtin contributors" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Instrument chat commands on registration." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Instrument global callback functions on registration.\n" +"(anything you pass to a core.register_*() function)" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Instrument the action function of Active Block Modifiers on registration." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Instrument the action function of Loading Block Modifiers on registration." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Instrument the methods of entities on registration." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Interval of saving important changes in the world, stated in seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Inventory items animations" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Invert mouse" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Invert vertical mouse movement." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Italic font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Italic monospace font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Item entity TTL" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Iterations" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Iterations of the recursive function.\n" +"Increasing this increases the amount of fine detail, but also\n" +"increases processing load.\n" +"At iterations = 20 this mapgen has a similar load to mapgen V7." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Joystick ID" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Joystick button repetition interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Joystick dead zone" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Joystick frustum sensitivity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Joystick type" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"W component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Has no effect on 3D fractals.\n" +"Range roughly -2 to 2." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"X component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"Y component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"Z component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Julia w" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Julia x" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Julia y" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Julia z" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Jumping speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Keyboard and Mouse" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Kick players who sent more than X messages per 10 seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Lake steepness" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Lake threshold" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Language" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Large cave depth" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Large cave maximum number" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Large cave minimum number" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Large cave proportion flooded" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Leaves style" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Leaves style:\n" +"- Fancy: all faces visible\n" +"- Simple: only outer faces\n" +"- Opaque: disable transparency" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Length of a server tick (the interval at which everything is generally " +"updated),\n" +"stated in seconds.\n" +"Does not apply to sessions hosted from the client menu.\n" +"This is a lower bound, i.e. server steps may not be shorter than this, but\n" +"they are often longer." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Length of liquid waves." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Length of time between Active Block Modifier (ABM) execution cycles, stated " +"in seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Length of time between NodeTimer execution cycles, stated in seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Length of time between active block management cycles, stated in seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Level of logging to be written to debug.txt:\n" +"- (no logging)\n" +"- none (messages with no level)\n" +"- error\n" +"- warning\n" +"- action\n" +"- info\n" +"- verbose\n" +"- trace" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve boost" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve boost center" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve boost spread" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve gamma" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve high gradient" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Light curve low gradient" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Lighting" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).\n" +"Only mapchunks completely within the mapgen limit are generated.\n" +"Value is stored per-world." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Limits number of parallel HTTP requests. Affects:\n" +"- Media fetch if server uses remote_media setting.\n" +"- Serverlist download and server announcement.\n" +"- Downloads performed by main menu (e.g. mod manager).\n" +"Only has an effect if compiled with cURL." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid fluidity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid fluidity smoothing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid loop max" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid queue purge time" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid reflections" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid sinking" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid update interval in seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Liquid update tick" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Load the game profiler" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Load the game profiler to collect game profiling data.\n" +"Provides a /profiler command to access the compiled profile.\n" +"Useful for mod developers and server operators." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Loading Block Modifiers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Lower Y limit of dungeons." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Lower Y limit of floatlands." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Main menu script" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Make fog and sky colors depend on daytime (dawn/sunset) and view direction." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map Compression Level for Disk Storage" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map Compression Level for Network Transfer" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map directory" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map generation attributes specific to Mapgen Carpathian." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Flat.\n" +"Occasional lakes and hills can be added to the flat world." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Fractal.\n" +"'terrain' enables the generation of non-fractal terrain:\n" +"ocean, islands and underground." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Valleys.\n" +"'altitude_chill': Reduces heat with altitude.\n" +"'humid_rivers': Increases humidity around rivers.\n" +"'vary_river_depth': If enabled, low humidity and high heat causes rivers\n" +"to become shallower and occasionally dry.\n" +"'altitude_dry': Reduces humidity with altitude." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map generation attributes specific to Mapgen v5." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen v6.\n" +"The 'snowbiomes' flag enables the new 5 biome system.\n" +"When the 'snowbiomes' flag is enabled jungles are automatically enabled and\n" +"the 'jungles' flag is ignored.\n" +"The 'temples' flag disables generation of desert temples. Normal dungeons " +"will appear instead." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen v7.\n" +"'ridges': Rivers.\n" +"'floatlands': Floating land masses in the atmosphere.\n" +"'caverns': Giant caves deep underground." +msgstr "" +"Atributos de generación de mapas específicos de Mapgen v7.\n" +"'crestas': Ríos.\n" +"'floatlands': Masas de tierra flotantes en la atmósfera.\n" +"'Cavernas': Cuevas gigantes en las profundidades del subsuelo." + +#: src/settings_translation_file.cpp +msgid "Map generation limit" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map save interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map shadows update frames" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapblock limit" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapblock mesh generation delay" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapblock mesh generation threads" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapblock unload timeout" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Carpathian" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Carpathian specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Flat" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Flat specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Fractal" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Fractal specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V5" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V5 specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V6" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V6 specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V7" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen V7 specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Valleys" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen Valleys specific flags" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen debug" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mapgen name" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Max block generate distance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Max block send distance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Max liquids processed per step." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Max. clearobjects extra blocks" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Max. packets per iteration" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum FPS" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum FPS when the window is not focused, or when the game is paused." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum distance to render shadows." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum forceloaded blocks" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum hotbar width" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum limit of random number of large caves per mapchunk." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum limit of random number of small caves per mapchunk." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum liquid resistance. Controls deceleration when entering liquid at\n" +"high speed." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks that are simultaneously sent per client.\n" +"The maximum total count is calculated dynamically:\n" +"max_total = ceil((#clients + max_users) * per_client / 4)" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum number of blocks that can be queued for loading." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks to be queued that are to be generated.\n" +"This limit is enforced per player." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks to be queued that are to be loaded from file.\n" +"This limit is enforced per player." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of concurrent downloads. Downloads exceeding this limit will " +"be queued.\n" +"This should be lower than curl_parallel_limit." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of mapblocks for client to be kept in memory.\n" +"Set to -1 for unlimited amount." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of packets sent per send step in the low-level networking " +"code.\n" +"You generally don't need to change this, however busy servers may benefit " +"from a higher number." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum number of players that can be connected simultaneously." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum number of recent chat messages to show" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum number of statically stored objects in a block." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum objects per block" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum proportion of current window to be used for hotbar.\n" +"Useful if there's something to be displayed right or left of hotbar." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum simultaneous block sends per client" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum size of the outgoing chat queue" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum size of the outgoing chat queue.\n" +"0 to disable queueing and -1 to make the queue size unlimited." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum time a file download (e.g. a mod download) may take, stated in " +"milliseconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum time an interactive request (e.g. server list fetch) may take, " +"stated in milliseconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Maximum users" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Message of the day" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Message of the day displayed to players connecting." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Method used to highlight selected object." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimal level of logging to be written to chat." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimap scan height" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimum dig repetition interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimum limit of random number of large caves per mapchunk." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimum limit of random number of small caves per mapchunk." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mipmapping" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Miscellaneous" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mod Profiler" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mod Security" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mod channels" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Modifies the size of the HUD elements." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Monospace font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Monospace font size" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Monospace font size divisible by" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mountain height noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mountain noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mountain variation noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mountain zero level" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mouse sensitivity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mouse sensitivity multiplier." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Movement threshold" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mud noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Multiplier for fall bobbing.\n" +"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mute sound" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Name of map generator to be used when creating a new world.\n" +"Creating a world in the main menu will override this.\n" +"Current mapgens in a highly unstable state:\n" +"- The optional floatlands of v7 (disabled by default)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Name of the player.\n" +"When running a server, a client connecting with this name is admin.\n" +"When starting from the main menu, this is overridden." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Name of the server, to be displayed when players join and in the serverlist." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Network port to listen (UDP).\n" +"This value will be overridden when starting from the main menu." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Networking" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "New users need to input this password." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Node and Entity Highlighting" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Node highlighting" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Node specular" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "NodeTimer interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Noises" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Number of emerge threads" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Number of emerge threads to use.\n" +"Value 0:\n" +"- Automatic selection. The number of emerge threads will be\n" +"- 'number of processors - 2', with a lower limit of 1.\n" +"Any other value:\n" +"- Specifies the number of emerge threads, with a lower limit of 1.\n" +"WARNING: Increasing the number of emerge threads increases engine mapgen\n" +"speed, but this may harm game performance by interfering with other\n" +"processes, especially in singleplayer and/or when running Lua code in\n" +"'on_generated'. For many users the optimum setting may be '1'." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Number of extra blocks that can be loaded by /clearobjects at once.\n" +"This is a trade-off between SQLite transaction overhead and\n" +"memory consumption (4096=100MB, as a rule of thumb)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Number of messages a player may send per 10 seconds." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Number of threads to use for mesh generation.\n" +"Value of 0 (default) will let Luanti autodetect the number of available " +"threads." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Occlusion Culler" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Occlusion Culling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Opaqueness (alpha) of the shadow behind the default font, between 0 and 255." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Open the pause menu when the window's focus is lost. Does not pause if a " +"formspec is\n" +"open." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "OpenGL debug" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Optimize GUI for touchscreens" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Optional override for chat weblink color." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Other Effects" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Path of the fallback font. Must be a TrueType font.\n" +"This font will be used for certain languages or if the default font is " +"unavailable." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Path to save screenshots at. Can be an absolute or relative path.\n" +"The folder will be created if it doesn't already exist." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Path to shader directory. If no path is defined, default location will be " +"used." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Path to the default font. Must be a TrueType font.\n" +"The fallback font will be used if the font cannot be loaded." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Path to the monospace font. Must be a TrueType font.\n" +"This font is used for e.g. the console and profiler screen." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Pause on lost window focus" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Per-player limit of queued blocks load from disk" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Per-player limit of queued blocks to generate" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Physics" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Place repetition interval" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Player transfer distance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Poisson filtering" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Post Processing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Prevent digging and placing from repeating when holding the respective " +"buttons.\n" +"Enable this when you dig or place too often by accident.\n" +"On touchscreens, this only affects digging." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Prevent mods from doing insecure things like running shell commands." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Print the engine's profiling data in regular intervals (in seconds).\n" +"0 = disable. Useful for developers." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Privileges that players with basic_privs can grant" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Profiler" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Prometheus listener address" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Prometheus listener address.\n" +"If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" +"enable metrics listener for Prometheus on that address.\n" +"Metrics can be fetched on http://127.0.0.1:30000/metrics" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Proportion of large caves that contain liquid." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Protocol version minimum" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Punch gesture" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Radius of cloud area stated in number of 64 node cloud squares.\n" +"Values larger than 26 will start to produce sharp cutoffs at cloud area " +"corners." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Radius to use when the block bounds HUD feature is set to near blocks." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Raises terrain to make valleys around the rivers." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Random input" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Random mod load order" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Recent Chat Messages" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Regular font path" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Remember screen size" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Remote media" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Remove color codes from incoming chat messages\n" +"Use this to stop players from being able to use color in their messages" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Replaces the default main menu with a custom one." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Report path" msgstr "" #: src/settings_translation_file.cpp @@ -4000,743 +5192,7 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Client-side node lookup range restriction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the CSM restriction for node range is enabled, get_node calls are " -"limited\n" -"to this distance from the player to the node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strip color codes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Remove color codes from incoming chat messages\n" -"Use this to stop players from being able to use color in their messages" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message max length" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the maximum length of a chat message (in characters) sent by clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message count limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Number of messages a player may send per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message kick threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Kick players who sent more than X messages per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Gameplay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls length of day/night cycle.\n" -"Examples:\n" -"72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "World start time" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time of day when a new world is started, in millihours (0-23999)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Item entity TTL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Time in seconds for item entity (dropped items) to live.\n" -"Setting it to -1 disables the feature." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default stack size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Specifies the default stack size of nodes, items and tools.\n" -"Note that mods or games may explicitly set a stack for certain (or all) " -"items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Physics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration on ground or when climbing,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration in air" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal acceleration in air when jumping or falling,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration in fast mode,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking and flying speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking, flying and climbing speed in fast mode, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Climbing speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Vertical climbing speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Jumping speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Initial vertical speed when jumping, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How much you are slowed down when moving inside a liquid.\n" -"Decrease this to increase liquid resistance to movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity smoothing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum liquid resistance. Controls deceleration when entering liquid at\n" -"high speed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid sinking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls sinking speed in liquid when idling. Negative values will cause\n" -"you to rise instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Gravity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration of gravity, in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed map seed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"A chosen map seed for a new map, leave empty for random.\n" -"Will be overridden when creating a new world in the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of map generator to be used when creating a new world.\n" -"Creating a world in the main menu will override this.\n" -"Current mapgens in a highly unstable state:\n" -"- The optional floatlands of v7 (disabled by default)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water surface level of the world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max block generate distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far blocks are generated for clients, stated in mapblocks (16 " -"nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).\n" -"Only mapchunks completely within the mapgen limit are generated.\n" -"Value is stored per-world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Global map generation attributes.\n" -"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n" -"and jungle grass, in all other mapgens this flag controls all decorations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome API" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Temperature variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale temperature variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale humidity variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen v5." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls width of tunnels, a smaller value creates wider tunnels.\n" -"Value >= 10.0 completely disables generation of tunnels and avoids the\n" -"intensive noise calculations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of upper limit of large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave proportion flooded" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Proportion of large caves that contain liquid." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern limit" -msgstr "Límite de la caverna" - -#: src/settings_translation_file.cpp -msgid "Y-level of cavern upper limit." -msgstr "Nivel Y del límite superior de la caverna." - -#: src/settings_translation_file.cpp -msgid "Cavern taper" -msgstr "Cono de caverna" - -#: src/settings_translation_file.cpp -msgid "Y-distance over which caverns expand to full size." -msgstr "" -"Distancia Y sobre la cual las cavernas se expanden hasta su tamaño completo." - -#: src/settings_translation_file.cpp -msgid "Cavern threshold" -msgstr "Umbral de la caverna" - -#: src/settings_translation_file.cpp -msgid "Defines full size of caverns, smaller values create larger caverns." -msgstr "" -"Define el tamaño completo de las cavernas, los valores más pequeños crean " -"cavernas más grandes." - -#: src/settings_translation_file.cpp -msgid "Dungeon minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Noises" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of biome filler depth." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Factor noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Variation of terrain vertical scale.\n" -"When noise is < -0.55 terrain is near-flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of average terrain surface." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern noise" -msgstr "Ruido de caverna" - -#: src/settings_translation_file.cpp -msgid "3D noise defining giant caverns." -msgstr "Ruido 3D que define cavernas gigantes." - -#: src/settings_translation_file.cpp -msgid "Ground noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise that determines number of dungeons per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v6.\n" -"The 'snowbiomes' flag enables the new 5 biome system.\n" -"When the 'snowbiomes' flag is enabled jungles are automatically enabled and\n" -"the 'jungles' flag is ignored.\n" -"The 'temples' flag disables generation of desert temples. Normal dungeons " -"will appear instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Desert noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Deserts occur when np_biome exceeds this value.\n" -"When the 'snowbiomes' flag is enabled, this is ignored." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sandy beaches occur when np_beach exceeds this value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain base noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of lower terrain and seabed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain higher noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of higher terrain that creates cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Steepness noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height select noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mud noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies depth of biome surface nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas with sandy beaches." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of number of caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines tree areas and tree density." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Apple trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas where trees have apples." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v7.\n" -"'ridges': Rivers.\n" -"'floatlands': Floating land masses in the atmosphere.\n" -"'caverns': Giant caves deep underground." -msgstr "" -"Atributos de generación de mapas específicos de Mapgen v7.\n" -"'crestas': Ríos.\n" -"'floatlands': Masas de tierra flotantes en la atmósfera.\n" -"'Cavernas': Cuevas gigantes en las profundidades del subsuelo." - -#: src/settings_translation_file.cpp -msgid "Mountain zero level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y of mountain density gradient zero level. Used to shift mountains " -"vertically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland tapering distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y-distance over which floatlands taper from full density to nothing.\n" -"Tapering starts at this distance from the Y limit.\n" -"For a solid floatland layer, this controls the height of hills/mountains.\n" -"Must be less than or equal to half the distance between the Y limits." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland taper exponent" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Exponent of the floatland tapering. Alters the tapering behavior.\n" -"Value = 1.0 creates a uniform, linear tapering.\n" -"Values > 1.0 create a smooth tapering suitable for the default separated\n" -"floatlands.\n" -"Values < 1.0 (for example 0.25) create a more defined surface level with\n" -"flatter lowlands, suitable for a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland density" -msgstr "" - -#: src/settings_translation_file.cpp -#, c-format -msgid "" -"Adjusts the density of the floatland layer.\n" -"Increase value to increase density. Can be positive or negative.\n" -"Value = 0.0: 50% of volume is floatland.\n" -"Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" -"to be sure) creates a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Surface level of optional water placed on a solid floatland layer.\n" -"Water is disabled by default and will only be placed if this value is set\n" -"to above 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (the start of the\n" -"upper tapering).\n" -"***WARNING, POTENTIAL DANGER TO WORLDS AND SERVER PERFORMANCE***:\n" -"When enabling water placement, floatlands must be configured and tested\n" -"to be a solid layer by setting 'mgv7_floatland_density' to 2.0 (or other\n" -"required value depending on 'mgv7_np_floatland'), to avoid\n" -"server-intensive extreme water flow and to avoid vast flooding of the\n" -"world surface below." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain alternative noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain persistence noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Varies roughness of terrain.\n" -"Defines the 'persistence' value for terrain_base and terrain_alt noises." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain and steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of maximum mountain height (in nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge underwater noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines large-scale river channel structure." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining mountain structure and height.\n" -"Also defines structure of floatland mountain terrain." +msgid "Ridge mountain spread noise" msgstr "" #: src/settings_translation_file.cpp @@ -4744,127 +5200,7 @@ msgid "Ridge noise" msgstr "" #: src/settings_translation_file.cpp -msgid "3D noise defining structure of river canyon walls." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining structure of floatlands.\n" -"If altered from the default, the noise 'scale' (0.7 by default) may need\n" -"to be adjusted, as floatland tapering functions best when this noise has\n" -"a value range of approximately -2.0 to 2.0." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen Carpathian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the base ground level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the depth of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River valley width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river valley." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness3 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Third of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness4 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fourth of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hills spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of rolling hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of ridged mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Step mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of step mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hill size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of rolling hills." +msgid "Ridge underwater noise" msgstr "" #: src/settings_translation_file.cpp @@ -4872,15 +5208,15 @@ msgid "Ridged mountain size noise" msgstr "" #: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of ridged mountains." +msgid "River channel depth" msgstr "" #: src/settings_translation_file.cpp -msgid "Step mountain size noise" +msgid "River channel width" msgstr "" #: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of step mountains." +msgid "River depth" msgstr "" #: src/settings_translation_file.cpp @@ -4888,102 +5224,144 @@ msgid "River noise" msgstr "" #: src/settings_translation_file.cpp -msgid "2D noise that locates the river valleys and channels." +msgid "River size" msgstr "" #: src/settings_translation_file.cpp -msgid "Mountain variation noise" +msgid "River valley width" msgstr "" #: src/settings_translation_file.cpp -msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." +msgid "Rollback recording" msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen Flat" +msgid "Rolling hill size noise" msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen Flat specific flags" +msgid "Rolling hills spread noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Safe digging and placing" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Sandy beaches occur when np_beach exceeds this value." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Save the map received by the client on disk." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Map generation attributes specific to Mapgen Flat.\n" -"Occasional lakes and hills can be added to the flat world." +"Save window size automatically when modified.\n" +"If true, screen size is saved in screen_w and screen_h, and whether the " +"window\n" +"is maximized is stored in window_maximized.\n" +"(Autosaving window_maximized only works if compiled with SDL.)" msgstr "" #: src/settings_translation_file.cpp -msgid "Ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of flat ground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lake threshold" +msgid "Saving map received from server" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Terrain noise threshold for lakes.\n" -"Controls proportion of world area covered by lakes.\n" -"Adjust towards 0.0 for a larger proportion." +"Scale GUI by a user specified value.\n" +"Use a nearest-neighbor-anti-alias filter to scale the GUI.\n" +"This will smooth over some of the rough edges, and blend\n" +"pixels when scaling down, at the cost of blurring some\n" +"edge pixels when images are scaled by non-integer sizes." msgstr "" #: src/settings_translation_file.cpp -msgid "Lake steepness" +msgid "Screen" msgstr "" #: src/settings_translation_file.cpp -msgid "Controls steepness/depth of lake depressions." +msgid "Screen height" msgstr "" #: src/settings_translation_file.cpp -msgid "Hill threshold" +msgid "Screen width" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Screenshot folder" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Screenshot format" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Screenshot quality" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Terrain noise threshold for hills.\n" -"Controls proportion of world area covered by hills.\n" -"Adjust towards 0.0 for a larger proportion." +"Screenshot quality. Only used for JPEG format.\n" +"1 means worst quality; 100 means best quality.\n" +"Use 0 for default quality." msgstr "" #: src/settings_translation_file.cpp -msgid "Hill steepness" +msgid "Screenshots" msgstr "" #: src/settings_translation_file.cpp -msgid "Controls steepness/height of hills." +msgid "Seabed noise" msgstr "" #: src/settings_translation_file.cpp -msgid "Terrain noise" +msgid "Second of 4 2D noises that together define hill/mountain range height." msgstr "" #: src/settings_translation_file.cpp -msgid "Defines location and terrain of optional hills and lakes." +msgid "Second of two 3D noises that together define tunnels." msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen Fractal" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Fractal specific flags" +msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Map generation attributes specific to Mapgen Fractal.\n" -"'terrain' enables the generation of non-fractal terrain:\n" -"ocean, islands and underground." +"Select the antialiasing method to apply.\n" +"\n" +"* None - No antialiasing (default)\n" +"\n" +"* FSAA - Hardware-provided full-screen antialiasing\n" +"A.K.A multi-sample antialiasing (MSAA)\n" +"Smoothens out block edges but does not affect the insides of textures.\n" +"\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" +"Applies a post-processing filter to detect and smoothen high-contrast " +"edges.\n" +"Provides balance between speed and image quality.\n" +"\n" +"* SSAA - Super-sampling antialiasing\n" +"Renders higher-resolution image of the scene, then scales down to reduce\n" +"the aliasing effects. This is the slowest and the most accurate method." msgstr "" #: src/settings_translation_file.cpp -msgid "Fractal type" +msgid "Selection box border color (R,G,B)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Selection box color" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Selection box width" msgstr "" #: src/settings_translation_file.cpp @@ -5010,489 +5388,152 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Iterations" +msgid "" +"Send names of online players to the serverlist. If disabled only the player " +"count is revealed." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Send player names to the server list" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server Gameplay" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server Security" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server URL" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server address" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Iterations of the recursive function.\n" -"Increasing this increases the amount of fine detail, but also\n" -"increases processing load.\n" -"At iterations = 20 this mapgen has a similar load to mapgen V7." +"Server anticheat configuration.\n" +"Flags are positive. Uncheck the flag to disable corresponding anticheat " +"module." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server description" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server name" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server port" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server-side occlusion culling" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Server/Env Performance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Serverlist URL" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Serverlist and MOTD" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Serverlist file" msgstr "" #: src/settings_translation_file.cpp msgid "" -"(X,Y,Z) scale of fractal in nodes.\n" -"Actual fractal size will be 2 to 3 times larger.\n" -"These numbers can be made very large, the fractal does\n" -"not have to fit inside the world.\n" -"Increase these to 'zoom' into the detail of the fractal.\n" -"Default is for a vertically-squashed shape suitable for\n" -"an island, set all 3 numbers equal for the raw shape." +"Set the default tilt of Sun/Moon orbit in degrees.\n" +"Games may change orbit tilt via API.\n" +"Value of 0 means no tilt / vertical orbit." msgstr "" #: src/settings_translation_file.cpp msgid "" -"(X,Y,Z) offset of fractal from world center in units of 'scale'.\n" -"Can be used to move a desired point to (0, 0) to create a\n" -"suitable spawn point, or to allow 'zooming in' on a desired\n" -"point by increasing 'scale'.\n" -"The default is tuned for a suitable spawn point for Mandelbrot\n" -"sets with default parameters, it may need altering in other\n" -"situations.\n" -"Range roughly -2 to 2. Multiply by 'scale' for offset in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slice w" +"Set the exposure compensation in EV units.\n" +"Value of 0.0 (default) means no exposure compensation.\n" +"Range: from -1 to 1.0" msgstr "" #: src/settings_translation_file.cpp msgid "" -"W coordinate of the generated 3D slice of a 4D fractal.\n" -"Determines which 3D slice of the 4D shape is generated.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia x" +"Set the language. By default, the system language is used.\n" +"A restart is required after changing this." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Julia set only.\n" -"X component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia y" +"Set the maximum length of a chat message (in characters) sent by clients." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Julia set only.\n" -"Y component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia z" +"Set the shadow strength gamma.\n" +"Adjusts the intensity of in-game dynamic shadows.\n" +"Lower value means lighter shadows, higher value means darker shadows." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Julia set only.\n" -"Z component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." +"Set the soft shadow radius size.\n" +"Lower values mean sharper shadows, bigger values mean softer shadows.\n" +"Minimum value: 1.0; maximum value: 15.0" msgstr "" #: src/settings_translation_file.cpp -msgid "Julia w" +msgid "Set to true to enable Shadow Mapping." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Julia set only.\n" -"W component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." +"Set to true to enable bloom effect.\n" +"Bright colors will bleed over the neighboring objects." msgstr "" #: src/settings_translation_file.cpp -msgid "Seabed noise" +msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." msgstr "" #: src/settings_translation_file.cpp -msgid "Y-level of seabed." +msgid "Set to true to enable waving leaves." msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen Valleys" +msgid "Set to true to enable waving liquids (like water)." msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen Valleys specific flags" +msgid "Set to true to enable waving plants." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Map generation attributes specific to Mapgen Valleys.\n" -"'altitude_chill': Reduces heat with altitude.\n" -"'humid_rivers': Increases humidity around rivers.\n" -"'vary_river_depth': If enabled, low humidity and high heat causes rivers\n" -"to become shallower and occasionally dry.\n" -"'altitude_dry': Reduces humidity with altitude." +"Set to true to render debugging breakdown of the bloom effect.\n" +"In debug mode, the screen is split into 4 quadrants:\n" +"top-left - processed base image, top-right - final image\n" +"bottom-left - raw base image, bottom-right - bloom texture." msgstr "" #: src/settings_translation_file.cpp msgid "" -"The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" -"enabled. Also, the vertical distance over which humidity drops by 10 if\n" -"'altitude_dry' is enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern upper limit" -msgstr "Límite superior de la caverna" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find giant caverns." -msgstr "Profundidad debajo de la cual encontrarás cavernas gigantes." - -#: src/settings_translation_file.cpp -msgid "River depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How deep to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How wide to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #1" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #2" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base terrain height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Raises terrain to make valleys around the rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley fill" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slope and fill work together to modify the heights." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley profile" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Amplifies the valleys." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley slope" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Advanced" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Developer Options" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client modding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Lua modding support on client.\n" -"This support is experimental and API can change." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Main menu script" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Replaces the default main menu with a custom one." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prevent mods from doing insecure things like running shell commands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trusted mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of trusted mods that are allowed to access insecure\n" -"functions even when mod security is on (via request_insecure_environment())." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HTTP mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of mods that are allowed to access HTTP APIs, which\n" -"allow them to upload and download data to/from the internet." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debugging" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Level of logging to be written to debug.txt:\n" -"- (no logging)\n" -"- none (messages with no level)\n" -"- error\n" -"- warning\n" -"- action\n" -"- info\n" -"- verbose\n" -"- trace" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log file size threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the file size of debug.txt exceeds the number of megabytes specified in\n" -"this setting when it is opened, the file is moved to debug.txt.1,\n" -"deleting an older debug.txt.1 if it exists.\n" -"debug.txt is only moved if this setting is positive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimal level of logging to be written to chat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Deprecated Lua API handling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Handling for deprecated Lua API calls:\n" -"- none: Do not log deprecated calls\n" -"- log: mimic and log backtrace of deprecated call (default).\n" -"- error: abort on usage of deprecated call (suggested for mod developers)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random input" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random user input (only used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random mod load order" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random mod loading (mainly used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod channels" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod channels support." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Load the game profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Load the game profiler to collect game profiling data.\n" -"Provides a /profiler command to access the compiled profile.\n" -"Useful for mod developers and server operators." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default report format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The default format in which profiles are being saved,\n" -"when calling `/profiler save [format]` without format." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Report path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The file path relative to your world path in which profiles will be saved to." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Entity methods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument the methods of entities on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Active Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Loading Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Loading Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat commands" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument chat commands on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Global callbacks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument global callback functions on registration.\n" -"(anything you pass to a core.register_*() function)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Builtin" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument builtin.\n" -"This is usually only needed by core/builtin contributors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Have the profiler instrument itself:\n" -"* Instrument an empty function.\n" -"This estimates the overhead, that instrumentation is adding (+1 function " -"call).\n" -"* Instrument the sampler being used to update the statistics." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine profiling data print interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Print the engine's profiling data in regular intervals (in seconds).\n" -"0 = disable. Useful for developers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "IPv6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable IPv6 support (for both client and server).\n" -"Required for IPv6 connections to work at all." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ignore world errors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, invalid world data won't cause the server to shut down.\n" -"Only enable this if you know what you are doing." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." +"Sets shadow texture quality to 32 bits.\n" +"On false, 16 bits texture will be used.\n" +"This can cause much more artifacts in the shadow." msgstr "" #: src/settings_translation_file.cpp @@ -5500,96 +5541,277 @@ msgid "Shader path" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Path to shader directory. If no path is defined, default location will be " -"used." +msgid "Shadow filter quality" msgstr "" #: src/settings_translation_file.cpp -msgid "Video driver" +msgid "Shadow map max distance in nodes to render shadows" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Shadow map texture in 32 bits" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Shadow map texture size" msgstr "" #: src/settings_translation_file.cpp msgid "" -"The rendering back-end.\n" -"Note: A restart is required after changing this!\n" -"OpenGL is the default for desktop, and OGLES2 for Android." +"Shadow offset (in pixels) of the default font. If 0, then shadow will not be " +"drawn." msgstr "" #: src/settings_translation_file.cpp -msgid "Transparency Sorting Distance" +msgid "Shadow strength gamma" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Show debug info" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Show entity selection boxes" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Distance in nodes at which transparency depth sorting is enabled.\n" -"Use this to limit the performance impact of transparency depth sorting.\n" -"Set to 0 to disable it entirely." +"Show entity selection boxes\n" +"A restart is required after changing this." msgstr "" #: src/settings_translation_file.cpp -msgid "Cloud radius" +msgid "Show name tag backgrounds by default" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Shutdown message" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Radius of cloud area stated in number of 64 node cloud squares.\n" -"Values larger than 26 will start to produce sharp cutoffs at cloud area " -"corners." +"Side length of a cube of map blocks that the client will consider together\n" +"when generating meshes.\n" +"Larger values increase the utilization of the GPU by reducing the number of\n" +"draw calls, benefiting especially high-end GPUs.\n" +"Systems with a low-end GPU (or no GPU) would benefit from smaller values." msgstr "" #: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mesh cache" +msgid "Simulate translucency when looking at foliage in the sunlight." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." +"Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" +"WARNING: There is no benefit, and there are several dangers, in\n" +"increasing this value above 5.\n" +"Reducing this value increases cave and dungeon density.\n" +"Altering this value is for special usage, leaving it unchanged is\n" +"recommended." msgstr "" #: src/settings_translation_file.cpp -msgid "Mapblock mesh generation delay" +msgid "Sky Body Orbit Tilt" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Slice w" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Slope and fill work together to modify the heights." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Small cave maximum number" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Small cave minimum number" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Small-scale humidity variation for blending biomes on borders." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Small-scale temperature variation for blending biomes on borders." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Smooth lighting" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Smooth scrolling" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Delay between mesh updates on the client in ms. Increasing this will slow\n" -"down the rate of mesh updates, thus reducing jitter on slower clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock mesh generation threads" +"Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " +"cinematic mode by using the key set in Controls." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Number of threads to use for mesh generation.\n" -"Value of 0 (default) will let Luanti autodetect the number of available " -"threads." +"Smooths rotation of camera, also called look or mouse smoothing. 0 to " +"disable." msgstr "" #: src/settings_translation_file.cpp -msgid "Minimap scan height" +msgid "Sneaking speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Sneaking speed, in nodes per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Soft clouds" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Soft shadow radius" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Sound" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Sound Extensions Blacklist" msgstr "" #: src/settings_translation_file.cpp msgid "" -"True = 256\n" -"False = 128\n" -"Usable to make minimap smoother on slower machines." +"Specifies URL from which client fetches media instead of using UDP.\n" +"$filename should be accessible from $remote_media$filename via cURL\n" +"(obviously, remote_media should end with a slash).\n" +"Files that are not present will be fetched the usual way." msgstr "" #: src/settings_translation_file.cpp -msgid "World-aligned textures mode" +msgid "" +"Specifies the default stack size of nodes, items and tools.\n" +"Note that mods or games may explicitly set a stack for certain (or all) " +"items." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Spread a complete update of the shadow map over a given number of frames.\n" +"Higher values might make shadows laggy, lower values\n" +"will consume more resources." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Spread of light curve boost range.\n" +"Controls the width of the range to be boosted.\n" +"Standard deviation of the light curve boost Gaussian." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Static spawn point" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Steepness noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Step mountain size noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Step mountain spread noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Strength of 3D mode parallax." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Strength of light curve boost.\n" +"The 3 'boost' parameters define a range of the light\n" +"curve that is boosted in brightness." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Strict protocol checking" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Strip color codes" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Surface level of optional water placed on a solid floatland layer.\n" +"Water is disabled by default and will only be placed if this value is set\n" +"to above 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (the start of the\n" +"upper tapering).\n" +"***WARNING, POTENTIAL DANGER TO WORLDS AND SERVER PERFORMANCE***:\n" +"When enabling water placement, floatlands must be configured and tested\n" +"to be a solid layer by setting 'mgv7_floatland_density' to 2.0 (or other\n" +"required value depending on 'mgv7_np_floatland'), to avoid\n" +"server-intensive extreme water flow and to avoid vast flooding of the\n" +"world surface below." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Synchronous SQLite" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Temperature variation for biomes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain alternative noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain base noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain height" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain higher noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Terrain noise threshold for hills.\n" +"Controls proportion of world area covered by hills.\n" +"Adjust towards 0.0 for a larger proportion." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Terrain noise threshold for lakes.\n" +"Controls proportion of world area covered by lakes.\n" +"Adjust towards 0.0 for a larger proportion." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Terrain persistence noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Texture size to render the shadow map on.\n" +"This must be a power of two.\n" +"Bigger numbers create better shadows but it is also more expensive." msgstr "" #: src/settings_translation_file.cpp @@ -5603,444 +5825,74 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Autoscaling mode" +msgid "The URL for the content repository" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "The dead zone of the joystick" msgstr "" #: src/settings_translation_file.cpp msgid "" -"World-aligned textures may be scaled to span several nodes. However,\n" -"the server may not send the scale you want, especially if you use\n" -"a specially-designed texture pack; with this option, the client tries\n" -"to determine the scale automatically basing on the texture size.\n" -"See also texture_min_size.\n" -"Warning: This option is EXPERIMENTAL!" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base texture size" +"The default format in which profiles are being saved,\n" +"when calling `/profiler save [format]` without format." msgstr "" #: src/settings_translation_file.cpp msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" -"This is also used as the base node texture size for world-aligned\n" -"texture autoscaling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client Mesh Chunksize" +"The delay in milliseconds after which a touch interaction is considered a " +"long tap." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Side length of a cube of map blocks that the client will consider together\n" -"when generating meshes.\n" -"Larger values increase the utilization of the GPU by reducing the number of\n" -"draw calls, benefiting especially high-end GPUs.\n" -"Systems with a low-end GPU (or no GPU) would benefit from smaller values." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "OpenGL debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables debug and error-checking in the OpenGL driver." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Bloom Debug" +"The file path relative to your world path in which profiles will be saved to." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Set to true to render debugging breakdown of the bloom effect.\n" -"In debug mode, the screen is split into 4 quadrants:\n" -"top-left - processed base image, top-right - final image\n" -"bottom-left - raw base image, bottom-right - bloom texture." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound Extensions Blacklist" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of AL and ALC extensions that should not be used.\n" -"Useful for testing. See al_extensions.[h,cpp] for details." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font bold by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font italic by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shadow offset (in pixels) of the default font. If 0, then shadow will not be " -"drawn." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Opaqueness (alpha) of the shadow behind the default font, between 0 and 255." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the default font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"For pixel-style fonts that do not scale well, this ensures that font sizes " -"used\n" -"with this font will always be divisible by this value, in pixels. For " -"instance,\n" -"a pixel font 16 pixels tall should have this set to 16, so it will only ever " -"be\n" -"sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Regular font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the default font. Must be a TrueType font.\n" -"The fallback font will be used if the font cannot be loaded." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the monospace font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the monospace font. Must be a TrueType font.\n" -"This font is used for e.g. the console and profiler screen." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fallback font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path of the fallback font. Must be a TrueType font.\n" -"This font will be used for certain languages or if the default font is " -"unavailable." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve low gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at minimum light level.\n" -"Controls the contrast of the lowest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve high gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at maximum light level.\n" -"Controls the contrast of the highest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Strength of light curve boost.\n" -"The 3 'boost' parameters define a range of the light\n" -"curve that is boosted in brightness." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost center" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Center of light curve boost range.\n" -"Where 0.0 is minimum light level, 1.0 is maximum light level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost spread" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread of light curve boost range.\n" -"Controls the width of the range to be boosted.\n" -"Standard deviation of the light curve boost Gaussian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prometheus listener address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prometheus listener address.\n" -"If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" -"enable metrics listener for Prometheus on that address.\n" -"Metrics can be fetched on http://127.0.0.1:30000/metrics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum size of the outgoing chat queue" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum size of the outgoing chat queue.\n" -"0 to disable queueing and -1 to make the queue size unlimited." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock unload timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Timeout for client to remove unused map data from memory, in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of mapblocks for client to be kept in memory.\n" -"Set to -1 for unlimited amount." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum simultaneous block sends per client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks that are simultaneously sent per client.\n" -"The maximum total count is calculated dynamically:\n" -"max_total = ceil((#clients + max_users) * per_client / 4)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay in sending blocks after building" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"To reduce lag, block transfers are slowed down when a player is building " -"something.\n" -"This determines how long they are slowed down after placing or removing a " -"node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max. packets per iteration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of packets sent per send step in the low-level networking " -"code.\n" -"You generally don't need to change this, however busy servers may benefit " -"from a higher number." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Network Transfer" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Compression level to use when sending mapblocks to the client.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Format of player chat messages. The following strings are valid " -"placeholders:\n" -"@name, @message, @timestamp (optional)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat command time message threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the execution of a chat command takes longer than this specified time in\n" -"seconds, add the time information to the chat command message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shutdown message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server shuts down." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crash message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server crashes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ask to reconnect after crash" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to ask clients to reconnect after a (Lua) crash.\n" -"Set this to true if your server is set up to restart automatically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server/Env Performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dedicated server step" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of a server tick (the interval at which everything is generally " -"updated),\n" -"stated in seconds.\n" -"Does not apply to sessions hosted from the client menu.\n" -"This is a lower bound, i.e. server steps may not be shorter than this, but\n" -"they are often longer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unlimited player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether players are shown to clients without any range limit.\n" -"Deprecated, use the setting player_transfer_distance instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active object send range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far clients know about objects, stated in mapblocks (16 nodes).\n" +"The gesture for punching players/entities.\n" +"This can be overridden by games and mods.\n" "\n" -"Setting this larger than active_block_range will also cause the server\n" -"to maintain active objects up to this distance in the direction the\n" -"player is looking. (This can avoid mobs suddenly disappearing from view)" +"* short_tap\n" +"Easy to use and well-known from other games that shall not be named.\n" +"\n" +"* long_tap\n" +"Known from the classic Luanti mobile controls.\n" +"Combat is more or less impossible." msgstr "" #: src/settings_translation_file.cpp -msgid "Active block range" +msgid "The identifier of the joystick to use" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"The length in pixels after which a touch interaction is considered movement." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"The maximum height of the surface of waving liquids.\n" +"4.0 = Wave height is two nodes.\n" +"0.0 = Wave doesn't move at all.\n" +"Default is 1.0 (1/2 node)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"The minimum time in seconds it takes between digging nodes when holding\n" +"the dig button." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "The network interface that the server listens on." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"The privileges that new users automatically get.\n" +"See /privs in game for a full list on your server and mod configuration." msgstr "" #: src/settings_translation_file.cpp @@ -6055,106 +5907,24 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Max block send distance" +msgid "" +"The rendering back-end.\n" +"Note: A restart is required after changing this!\n" +"OpenGL is the default for desktop, and OGLES2 for Android." msgstr "" #: src/settings_translation_file.cpp msgid "" -"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum forceloaded blocks" +"The sensitivity of the joystick axes for moving the\n" +"in-game view frustum around." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Default maximum number of forceloaded mapblocks.\n" -"Set this to -1 to disable the limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map save interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of saving important changes in the world, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unload unused server data" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How long the server will wait before unloading unused mapblocks, stated in " -"seconds.\n" -"Higher value is smoother, but will use more RAM." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum objects per block" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of statically stored objects in a block." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active block management interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between active block management cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between Active Block Modifier (ABM) execution cycles, stated " -"in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM time budget" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time budget allowed for ABMs to execute on each step\n" -"(as a fraction of the ABM Interval)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "NodeTimer interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of time between NodeTimer execution cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid loop max" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max liquids processed per step." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid queue purge time" +"The strength (darkness) of node ambient-occlusion shading.\n" +"Lower is darker, Higher is lighter. The valid range of values for this\n" +"setting is 0.25 to 4.0 inclusive. If the value is out of range it will be\n" +"set to the nearest valid value." msgstr "" #: src/settings_translation_file.cpp @@ -6165,176 +5935,492 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Liquid update tick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid update interval in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block send optimize distance" +msgid "" +"The time budget allowed for ABMs to execute on each step\n" +"(as a fraction of the ABM Interval)" msgstr "" #: src/settings_translation_file.cpp msgid "" -"At this distance the server will aggressively optimize which blocks are sent " -"to\n" -"clients.\n" -"Small values potentially improve performance a lot, at the expense of " -"visible\n" -"rendering glitches (some blocks might not be rendered correctly in caves).\n" -"Setting this to a value greater than max_block_send_distance disables this\n" -"optimization.\n" -"Stated in MapBlocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server-side occlusion culling" +"The time in seconds it takes between repeated events\n" +"when holding down a joystick button combination." msgstr "" #: src/settings_translation_file.cpp msgid "" -"If enabled, the server will perform map block occlusion culling based on\n" -"on the eye position of the player. This can reduce the number of blocks\n" -"sent to the client by 50-80%. Clients will no longer receive most\n" -"invisible blocks, so that the utility of noclip mode is reduced." +"The time in seconds it takes between repeated node placements when holding\n" +"the place button." msgstr "" #: src/settings_translation_file.cpp -msgid "Block cull optimize distance" +msgid "The type of joystick" msgstr "" #: src/settings_translation_file.cpp msgid "" -"At this distance the server will perform a simpler and cheaper occlusion " -"check.\n" -"Smaller values potentially improve performance, at the expense of " -"temporarily visible\n" -"rendering glitches (missing blocks).\n" -"This is especially useful for very large viewing range (upwards of 500).\n" -"Stated in MapBlocks (16 nodes)." +"The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" +"enabled. Also, the vertical distance over which humidity drops by 10 if\n" +"'altitude_dry' is enabled." msgstr "" #: src/settings_translation_file.cpp -msgid "Chunk size" +msgid "Third of 4 2D noises that together define hill/mountain range height." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Threshold for long taps" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" -"WARNING: There is no benefit, and there are several dangers, in\n" -"increasing this value above 5.\n" -"Reducing this value increases cave and dungeon density.\n" -"Altering this value is for special usage, leaving it unchanged is\n" -"recommended." +"Time in seconds for item entity (dropped items) to live.\n" +"Setting it to -1 disables the feature." msgstr "" #: src/settings_translation_file.cpp -msgid "Mapgen debug" +msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" #: src/settings_translation_file.cpp -msgid "Dump the mapgen debug information." +msgid "Time speed" msgstr "" #: src/settings_translation_file.cpp -msgid "Absolute limit of queued blocks to emerge" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of blocks that can be queued for loading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks load from disk" +msgid "Timeout for client to remove unused map data from memory, in seconds." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Maximum number of blocks to be queued that are to be loaded from file.\n" -"This limit is enforced per player." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks to generate" +"To reduce lag, block transfers are slowed down when a player is building " +"something.\n" +"This determines how long they are slowed down after placing or removing a " +"node." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Maximum number of blocks to be queued that are to be generated.\n" -"This limit is enforced per player." +"Tolerance of movement cheat detector.\n" +"Increase the value if players experience stuttery movement." msgstr "" #: src/settings_translation_file.cpp -msgid "Number of emerge threads" +msgid "Tooltip delay" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Touchscreen" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Touchscreen controls" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Touchscreen sensitivity" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Touchscreen sensitivity multiplier." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Tradeoffs for performance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Translucent foliage" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Translucent liquids" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Distance" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Trees noise" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Trilinear filtering" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Number of emerge threads to use.\n" -"Value 0:\n" -"- Automatic selection. The number of emerge threads will be\n" -"- 'number of processors - 2', with a lower limit of 1.\n" -"Any other value:\n" -"- Specifies the number of emerge threads, with a lower limit of 1.\n" -"WARNING: Increasing the number of emerge threads increases engine mapgen\n" -"speed, but this may harm game performance by interfering with other\n" -"processes, especially in singleplayer and/or when running Lua code in\n" -"'on_generated'. For many users the optimum setting may be '1'." +"True = 256\n" +"False = 128\n" +"Usable to make minimap smoother on slower machines." msgstr "" #: src/settings_translation_file.cpp -msgid "cURL" -msgstr "cURL" - -#: src/settings_translation_file.cpp -msgid "cURL interactive timeout" +msgid "Trusted mods" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Maximum time an interactive request (e.g. server list fetch) may take, " -"stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL parallel limit" +"Type of occlusion_culler\n" +"\n" +"\"loops\" is the legacy algorithm with nested loops and O(n³) complexity\n" +"\"bfs\" is the new algorithm based on breadth-first-search and side culling\n" +"\n" +"This setting should only be changed if you have performance problems." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Limits number of parallel HTTP requests. Affects:\n" -"- Media fetch if server uses remote_media setting.\n" -"- Serverlist download and server announcement.\n" -"- Downloads performed by main menu (e.g. mod manager).\n" -"Only has an effect if compiled with cURL." +"URL to JSON file which provides information about the newest Luanti " +"release.\n" +"If this is empty the engine will never check for updates." msgstr "" #: src/settings_translation_file.cpp -msgid "cURL file download timeout" +msgid "URL to the server list displayed in the Multiplayer Tab." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Undersampling" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Maximum time a file download (e.g. a mod download) may take, stated in " -"milliseconds." +"Undersampling is similar to using a lower screen resolution, but it applies\n" +"to the game world only, keeping the GUI intact.\n" +"It should give a significant performance boost at the cost of less detailed " +"image.\n" +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp -msgid "Miscellaneous" +msgid "Unlimited player transfer distance" msgstr "" #: src/settings_translation_file.cpp -msgid "Display Density Scaling Factor" +msgid "Unload unused server data" msgstr "" #: src/settings_translation_file.cpp -msgid "Adjust the detected display density, used for scaling UI elements." +msgid "Update information URL" msgstr "" #: src/settings_translation_file.cpp -msgid "Enable console window" +msgid "Upper Y limit of dungeons." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Upper Y limit of floatlands." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Use a cloud animation for the main menu background." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Use bilinear filtering when scaling textures." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Use crosshair for touch screen" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use crosshair to select object instead of whole screen.\n" +"If enabled, a crosshair will be shown and will be used for selecting object." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use mipmaps when scaling textures. May slightly increase performance,\n" +"especially when using a high-resolution texture pack.\n" +"Gamma-correct downscaling is not supported." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use raytraced occlusion culling in the new culler.\n" +"This flag enables use of raytraced occlusion culling test for\n" +"client mesh sizes smaller than 4x4x4 map blocks." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Use smooth cloud shading." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use trilinear filtering when scaling textures.\n" +"If both bilinear and trilinear filtering are enabled, trilinear filtering\n" +"is applied." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Use virtual joystick to trigger \"Aux1\" button.\n" +"If enabled, virtual joystick will also tap \"Aux1\" button when out of main " +"circle." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "User Interfaces" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "VSync" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Valley depth" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Valley fill" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Valley profile" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Valley slope" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Variation of biome filler depth." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Variation of maximum mountain height (in nodes)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Variation of number of caves." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Variation of terrain vertical scale.\n" +"When noise is < -0.55 terrain is near-flat." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Varies depth of biome surface nodes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Varies roughness of terrain.\n" +"Defines the 'persistence' value for terrain_base and terrain_alt noises." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Varies steepness of cliffs." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Vertical climbing speed, in nodes per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Vertical screen synchronization. Your system may still force VSync on even " +"if this is disabled." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Video driver" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "View bobbing factor" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "View distance in nodes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Viewing range" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Virtual joystick triggers Aux1 button" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Volume" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Volume multiplier when the window is unfocused." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Volume of all sounds.\n" +"Requires the sound system to be enabled." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Volume when unfocused" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Volumetric lighting" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"W coordinate of the generated 3D slice of a 4D fractal.\n" +"Determines which 3D slice of the 4D shape is generated.\n" +"Alters the shape of the fractal.\n" +"Has no effect on 3D fractals.\n" +"Range roughly -2 to 2." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Walking and flying speed, in nodes per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Walking speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Walking, flying and climbing speed in fast mode, in nodes per second." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Water level" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Water surface level of the world." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving Nodes" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving leaves" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving liquids" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wave height" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wave speed" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wavelength" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Waving plants" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Weblink color" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "When enabled, liquid reflections are simulated." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"When enabled, the GUI is optimized to be more usable on touchscreens.\n" +"Whether this is enabled by default depends on your hardware form-factor." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"When gui_scaling_filter is true, all GUI images need to be\n" +"filtered in software, but some images are generated directly\n" +"to hardware (e.g. render-to-texture for nodes in inventory)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" +"This is also used as the base node texture size for world-aligned\n" +"texture autoscaling." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Whether name tag backgrounds should be shown by default.\n" +"Mods may still set a background." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Whether players are shown to clients without any range limit.\n" +"Deprecated, use the setting player_transfer_distance instead." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Whether the window is maximized." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Whether to ask clients to reconnect after a (Lua) crash.\n" +"Set this to true if your server is set up to restart automatically." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Whether to fog out the end of the visible area." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Whether to mute sounds. You can unmute sounds at any time.\n" +"In-game, you can toggle the mute state with the mute key or by using the\n" +"pause menu." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Whether to show the client debug info (has the same effect as hitting F5)." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Width component of the initial window size." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Width of the selection box lines around nodes." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Window maximized" msgstr "" #: src/settings_translation_file.cpp @@ -6344,21 +6430,6 @@ msgid "" "Contains the same information as the file debug.txt (default name)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Max. clearobjects extra blocks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of extra blocks that can be loaded by /clearobjects at once.\n" -"This is a trade-off between SQLite transaction overhead and\n" -"memory consumption (4096=100MB, as a rule of thumb)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map directory" -msgstr "" - #: src/settings_translation_file.cpp msgid "" "World directory (everything in the world is stored here).\n" @@ -6366,100 +6437,108 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Synchronous SQLite" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Disk Storage" +msgid "World start time" msgstr "" #: src/settings_translation_file.cpp msgid "" -"Compression level to use when saving mapblocks to disk.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" +"World-aligned textures may be scaled to span several nodes. However,\n" +"the server may not send the scale you want, especially if you use\n" +"a specially-designed texture pack; with this option, the client tries\n" +"to determine the scale automatically basing on the texture size.\n" +"See also texture_min_size.\n" +"Warning: This option is EXPERIMENTAL!" msgstr "" #: src/settings_translation_file.cpp -msgid "Connect to external media server" +msgid "World-aligned textures mode" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Y of flat ground." msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable usage of remote media server (if provided by server).\n" -"Remote servers offer a significantly faster way to download media (e.g. " -"textures)\n" -"when connecting to the server." +"Y of mountain density gradient zero level. Used to shift mountains " +"vertically." msgstr "" #: src/settings_translation_file.cpp -msgid "Serverlist file" +msgid "Y of upper limit of large caves." msgstr "" +#: src/settings_translation_file.cpp +msgid "Y-distance over which caverns expand to full size." +msgstr "" +"Distancia Y sobre la cual las cavernas se expanden hasta su tamaño completo." + #: src/settings_translation_file.cpp msgid "" -"File in client/serverlist/ that contains your favorite servers displayed in " -"the\n" -"Multiplayer Tab." +"Y-distance over which floatlands taper from full density to nothing.\n" +"Tapering starts at this distance from the Y limit.\n" +"For a solid floatland layer, this controls the height of hills/mountains.\n" +"Must be less than or equal to half the distance between the Y limits." msgstr "" #: src/settings_translation_file.cpp -msgid "Gamepads" +msgid "Y-level of average terrain surface." msgstr "" #: src/settings_translation_file.cpp -msgid "Enable joysticks" +msgid "Y-level of cavern upper limit." +msgstr "Nivel Y del límite superior de la caverna." + +#: src/settings_translation_file.cpp +msgid "Y-level of higher terrain that creates cliffs." msgstr "" #: src/settings_translation_file.cpp -msgid "Enable joysticks. Requires a restart to take effect" +msgid "Y-level of lower terrain and seabed." msgstr "" #: src/settings_translation_file.cpp -msgid "Joystick ID" +msgid "Y-level of seabed." msgstr "" #: src/settings_translation_file.cpp -msgid "The identifier of the joystick to use" +msgid "cURL" +msgstr "cURL" + +#: src/settings_translation_file.cpp +msgid "cURL file download timeout" msgstr "" #: src/settings_translation_file.cpp -msgid "Joystick type" +msgid "cURL interactive timeout" msgstr "" #: src/settings_translation_file.cpp -msgid "The type of joystick" +msgid "cURL parallel limit" msgstr "" -#: src/settings_translation_file.cpp -msgid "Joystick button repetition interval" -msgstr "" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Información de depuración y gráfico del perfilador ocultos" -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated events\n" -"when holding down a joystick button combination." -msgstr "" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Información de depuración, gráfico de perfilado y estructura alámbrica " +#~ "oculto" -#: src/settings_translation_file.cpp -msgid "Joystick dead zone" -msgstr "" +#~ msgid "Enable" +#~ msgstr "Habilitar" -#: src/settings_translation_file.cpp -msgid "The dead zone of the joystick" -msgstr "" +#~ msgid "Irrlicht device:" +#~ msgstr "Dispositivo Irrlicht:" -#: src/settings_translation_file.cpp -msgid "Joystick frustum sensitivity" -msgstr "" +#~ msgid "Shaders" +#~ msgstr "Shaders" -#: src/settings_translation_file.cpp -msgid "" -"The sensitivity of the joystick axes for moving the\n" -"in-game view frustum around." -msgstr "" +#~ msgid "Shaders are disabled." +#~ msgstr "Los Shaders estan desactivados." + +#~ msgid "Sound system is disabled" +#~ msgstr "El sonido del sistema está deshabilitado" + +#~ msgid "This is not a recommended configuration." +#~ msgstr "Esta no es una configuración recomendada." diff --git a/po/et/luanti.po b/po/et/luanti.po index 5d1544f62..ca04ea02e 100644 --- a/po/et/luanti.po +++ b/po/et/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Estonian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-10-22 17:18+0000\n" "Last-Translator: Janar Leas \n" "Language-Team: Estonian ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Sirvi" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Muuda" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Vali kataloog" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Vali fail" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Vali" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Kirjeldus seadistusele puudub)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Kahemõõtmeline müra" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Tühista" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Pinna auklikus" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktavid" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Nihe" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Püsivus" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Salvesta" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Ulatus" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Külv" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X levi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y levi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z levi" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "täisväärtus" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "algsed" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "pehmendatud" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Jututuba" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Tühjenda" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Juhtklahvid" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Keelatud" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Lubatud" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Tulemused puuduvad" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Taasta vaikeväärtus" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Otsi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Kuva tehnilised nimetused" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Puuteekraan" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Kliendi mod-id" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Sisu: Mängud" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Sisu: Mod-id" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Elavad varjud" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Kõrge" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Madal" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Keskmine" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Väga kõrge" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Vägamadal" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -164,7 +405,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Tagasi" @@ -201,11 +441,6 @@ msgstr "Mod-id" msgid "No packages could be retrieved" msgstr "Ei õnnestunud ühtki pakki vastu võtta" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Tulemused puuduvad" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Värskendusi pole" @@ -251,18 +486,6 @@ msgstr "Juba installeeritud" msgid "Base Game:" msgstr "Põhi Mäng:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Tühista" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -389,6 +612,12 @@ msgstr "Pole võimalik $1 paigaldamine kui $2" msgid "Unable to install a $1 as a texture pack" msgstr "$1 paigaldamine tekstuurikomplektiks nurjus" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Lubatud, vigane)" @@ -453,12 +682,6 @@ msgstr "Valikulised sõltuvused puuduvad" msgid "Optional dependencies:" msgstr "Valikulised sõltuvused:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Salvesta" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Maailm:" @@ -610,11 +833,6 @@ msgstr "Jõed" msgid "Sea level rivers" msgstr "Jõed merekõrgusel" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Külv" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Sujuv loodusvööndi vaheldumine" @@ -755,6 +973,23 @@ msgstr "" "Selle MOD-i pakk nimi on määratud oma „modpack.conf“ failid, mis asendab " "siinse ümber nimetamise." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Luba kõik" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Uus $1 versioon on saadaval" @@ -783,7 +1018,7 @@ msgstr "Ealeski" msgid "Visit website" msgstr "Külasta veebilehte" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Sätted" @@ -797,227 +1032,6 @@ msgstr "" "Proovi lubada uuesti avalike serverite loend ja kontrolli oma " "internetiühendust." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Sirvi" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Muuda" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Vali kataloog" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Vali fail" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Vali" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Kirjeldus seadistusele puudub)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Kahemõõtmeline müra" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Pinna auklikus" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktavid" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Nihe" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Püsivus" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Ulatus" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X levi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y levi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z levi" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "täisväärtus" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "algsed" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "pehmendatud" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Jututuba" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Tühjenda" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Juhtklahvid" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Keelatud" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Lubatud" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Taasta vaikeväärtus" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Otsi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Kuva tehnilised nimetused" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Kliendi mod-id" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Sisu: Mängud" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Sisu: Mod-id" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Lubatud" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kaamera värskendamine on keelatud" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Elavad varjud" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Kõrge" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Madal" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Keskmine" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Väga kõrge" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Vägamadal" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Teavet" @@ -1038,10 +1052,6 @@ msgstr "Põhi arendajad" msgid "Core Team" msgstr "Tuumik meeskond" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Avalik Kasutaja Andmete Kaust" @@ -1191,10 +1201,22 @@ msgstr "Alusta mängu" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Eemalda lemmik" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Aadress" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Kliendi mod-id" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Loov-laad" @@ -1208,6 +1230,11 @@ msgstr "Vigastused mängijatelt" msgid "Favorites" msgstr "Lemmikud" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Mäng" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Ühildumatud Võõrustajad" @@ -1220,10 +1247,26 @@ msgstr "Ühine mänguga" msgid "Login" msgstr "Logi sisse" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Viivitus" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Avalikud võõrustajad" @@ -1308,23 +1351,6 @@ msgstr "" "\n" "Vaata debug.txt info jaoks." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Režiim: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Avalik: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Üksteise vastu: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Serveri nimi: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Esines tõrge jadastamisega:" @@ -1334,6 +1360,11 @@ msgstr "Esines tõrge jadastamisega:" msgid "Access denied. Reason: %s" msgstr "Ligipääsust keelduti. Põhjus: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Silumisteave kuvatud" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automaatne edastus keelatud" @@ -1354,6 +1385,10 @@ msgstr "Ääriste kuvamine hoitavale klotsile" msgid "Block bounds shown for nearby blocks" msgstr "Ääriste kuvamine lähedastele klotsidele" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kaamera värskendamine on keelatud" @@ -1367,10 +1402,6 @@ msgstr "Kaamera värskendamine on lubatud" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Klotsi ääri ei kuvata (mod või mäng tõkestab)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Vaheta parooli" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmirežiim on keelatud" @@ -1399,39 +1430,6 @@ msgstr "Ühenduse viga (Aeg otsas?)" msgid "Connection failed for unknown reason" msgstr "Ühendus nurjus teadmata põhjusel" -#: src/client/game.cpp -msgid "Continue" -msgstr "Jätka" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Vaikimisi juhtimine:\n" -"Menüü pole nähtav:\n" -"- toksa: nupu käitamine\n" -"- kaksiktoksa: aseta/kasuta\n" -"- libista näpuga: vaata ringi\n" -"Menüü/varamu nähtav:\n" -"- kaksiktoksa (välja):\n" -" -->sulgeb\n" -"- puutu vihku, puutu pesa:\n" -" --> teisaldab vihu\n" -"- puutu&lohista, toksa 2-se näpuga\n" -" --> asetab ühe eseme pessa\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1445,31 +1443,15 @@ msgstr "Kliendi loomine..." msgid "Creating server..." msgstr "Serveri loomine..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Siluri info ja profiileri graafik peidetud" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Silumisteave kuvatud" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Siluri info, profiileri graafik ja sõrestik peidetud" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Tõrge kliendi loomisega: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Välju menüüsse" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Välju mängust" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Kiirrežiim on keelatud" @@ -1507,18 +1489,6 @@ msgstr "Udu lubatud" msgid "Fog enabled by game or mod" msgstr "Suumimine on praegu mängu või modi tõttu keelatud" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Mängu teave:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Mäng pausil" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Majutan serverit" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Esemete määratlused..." @@ -1555,14 +1525,6 @@ msgstr "Haakumatus lubatud (pole 'haakumatus' volitust)" msgid "Node definitions..." msgstr "Klotsi määratlused..." -#: src/client/game.cpp -msgid "Off" -msgstr "Väljas" - -#: src/client/game.cpp -msgid "On" -msgstr "Sees" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1575,38 +1537,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "Koormushinnangu kuvamine" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Kaug võõrustaja" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Aadressi lahendamine..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Ärka ellu" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Sulgemine..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Üksikmäng" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Hääle volüüm" - #: src/client/game.cpp msgid "Sound muted" msgstr "Heli vaigistatud" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Heli süsteem on keelatud" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "See kooste ei toeta heli süsteemi" @@ -1680,18 +1626,116 @@ msgstr "Vaate kaugus on nüüd: %d" msgid "Volume changed to %d%%" msgstr "Helitugevus muutus %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Raamvõrgustiku paljastus" -#: src/client/game.cpp -msgid "You died" -msgstr "Said surma" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Suumimine on praegu mängu või modi tõttu keelatud" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Režiim: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Avalik: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Üksteise vastu: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Serveri nimi: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Vaheta parooli" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Jätka" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Vaikimisi juhtimine:\n" +"Menüü pole nähtav:\n" +"- toksa: nupu käitamine\n" +"- kaksiktoksa: aseta/kasuta\n" +"- libista näpuga: vaata ringi\n" +"Menüü/varamu nähtav:\n" +"- kaksiktoksa (välja):\n" +" -->sulgeb\n" +"- puutu vihku, puutu pesa:\n" +" --> teisaldab vihu\n" +"- puutu&lohista, toksa 2-se näpuga\n" +" --> asetab ühe eseme pessa\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Välju menüüsse" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Välju mängust" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Mängu teave:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Mäng pausil" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Majutan serverit" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Väljas" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Sees" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Kaug võõrustaja" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Ärka ellu" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Hääle volüüm" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Said surma" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Vestlus on hetkel tõkestatud mängu või mod-i poolt" @@ -2031,8 +2075,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Veebilehe avamine ebaõnnestus" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "See kooste ei toeta heli süsteemi" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2079,7 +2124,7 @@ msgstr "Iseastuja" msgid "Automatic jumping" msgstr "Automaatne hüppamine" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2091,7 +2136,7 @@ msgstr "Tagasi" msgid "Block bounds" msgstr "Klotsi piirid" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Muuda kaamerat" @@ -2115,7 +2160,7 @@ msgstr "Vähenda valjust" msgid "Double tap \"jump\" to toggle fly" msgstr "Topeltklõpsa \"Hüppamist\" et sisse lülitada lendamine" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Viska maha" @@ -2131,11 +2176,11 @@ msgstr "Suurenda ulatust" msgid "Inc. volume" msgstr "Helitugevus üles" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Seljakott" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hüppamine" @@ -2167,7 +2212,7 @@ msgstr "Järgmine üksus" msgid "Prev. item" msgstr "Eelmine asi" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Kauguse valik" @@ -2179,7 +2224,7 @@ msgstr "Paremale" msgid "Screenshot" msgstr "Kuvatõmmis" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Hiilimine" @@ -2187,15 +2232,15 @@ msgstr "Hiilimine" msgid "Toggle HUD" msgstr "Lülita HUD sisse/välja" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Lülita vestluslogi sisse/välja" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Lülita kiirus sisse" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Lülita lendamine sisse" @@ -2203,11 +2248,11 @@ msgstr "Lülita lendamine sisse" msgid "Toggle fog" msgstr "Lülita udu sisse/välja" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Lülita minikaart sisse/välja" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Lülita läbi seinte minek sisse" @@ -2215,7 +2260,7 @@ msgstr "Lülita läbi seinte minek sisse" msgid "Toggle pitchmove" msgstr "Lülita pitchmove sisse/välja" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Suumi" @@ -2252,7 +2297,7 @@ msgstr "Vana parool" msgid "Passwords do not match!" msgstr "Paroolid ei ole samad!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Välju" @@ -2265,15 +2310,46 @@ msgstr "Vaigistatud" msgid "Sound Volume: %d%%" msgstr "Heli valjus: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Keskmine nupp" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Valmis!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Kaug võõrustaja" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Lülita udu sisse/välja" @@ -2473,8 +2549,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2527,10 +2602,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Lendlevad osakesed klotsi kaevandamisel." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2553,6 +2624,16 @@ msgstr "Haldaja nimi" msgid "Advanced" msgstr "Arenenud sätted" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2924,14 +3005,14 @@ msgstr "" msgid "Clouds" msgstr "Pilved" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Pilved menüüs" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "" @@ -2954,7 +3035,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3089,6 +3170,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3242,18 +3331,10 @@ msgstr "" "Lagendikud ilmuvad kui np_biome ületab selle väärtuse.\n" "Seda eiratakse, kui lipp 'lumistud' on lubatud." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Arendaja valikud" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Kaevamisel tekkivad osakesed" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3281,6 +3362,14 @@ msgstr "Topeltklõpsa \"hüppamist\" lendamiseks" msgid "Double-tapping the jump key toggles fly mode." msgstr "Topeltklõpsates \"hüppamist\" lülitatakse lennurežiim sisse/välja." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3356,8 +3445,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3430,8 +3519,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3446,12 +3534,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3757,10 +3839,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Juhtpuldid" @@ -3988,12 +4066,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4012,6 +4084,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4106,10 +4185,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4732,10 +4807,6 @@ msgstr "" msgid "Maximum users" msgstr "Enim kasutajaid" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Päevasõnum" @@ -4768,6 +4839,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Astmik-tapeetimine" @@ -4858,7 +4933,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5300,17 +5375,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5503,16 +5580,6 @@ msgstr "" msgid "Shader path" msgstr "Varjutaja asukoht" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Varjutajad" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Varju filtreerimis aste" @@ -5676,10 +5743,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5958,10 +6024,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6024,6 +6086,10 @@ msgstr "Lainetavad vedelikud" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6074,7 +6140,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6097,16 +6166,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6347,20 +6414,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6371,10 +6430,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6397,8 +6452,7 @@ msgstr "Kas nähtava ala lõpp udutada." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6543,6 +6597,9 @@ msgstr "" #~ msgid "Address / Port" #~ msgstr "Aadress / kanal" +#~ msgid "Adds particles when digging a node." +#~ msgstr "Lendlevad osakesed klotsi kaevandamisel." + #~ msgid "All Settings" #~ msgstr "Kõik sätted" @@ -6660,12 +6717,21 @@ msgstr "" #~ msgid "Darkness sharpness" #~ msgstr "Pimeduse teravus" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Siluri info ja profiileri graafik peidetud" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Siluri info, profiileri graafik ja sõrestik peidetud" + #~ msgid "Default game" #~ msgstr "Vaikemäng" #~ msgid "Dig key" #~ msgstr "Kaevuri klahv" +#~ msgid "Digging particles" +#~ msgstr "Kaevamisel tekkivad osakesed" + #~ msgid "Disable anticheat" #~ msgstr "Lülita sohituvastus välja" @@ -6687,6 +6753,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Elavad varjud:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Lubatud" + #~ msgid "Enable VBO" #~ msgstr "Luba VBO" @@ -6712,9 +6782,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Edasi klahv" -#~ msgid "Game" -#~ msgstr "Mäng" - #~ msgid "Generate Normal Maps" #~ msgstr "Loo normaalkaardistusi" @@ -6852,18 +6919,28 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Vali modifikatsiooni fail:" +#~ msgid "Shaders" +#~ msgstr "Varjutajad" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaderid (katselised)" #~ msgid "Shaders (unavailable)" #~ msgstr "Varjutajad (pole saadaval)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kaamera värskendamine on keelatud" + #~ msgid "Simple Leaves" #~ msgstr "Lihtsad lehed" #~ msgid "Smooth Lighting" #~ msgstr "Sujuv valgustus" +#~ msgid "Sound system is disabled" +#~ msgstr "Heli süsteem on keelatud" + #~ msgid "Special key" #~ msgstr "Eri klahv" diff --git a/po/eu/luanti.po b/po/eu/luanti.po index 32c0b2c9d..d723da17f 100644 --- a/po/eu/luanti.po +++ b/po/eu/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2022-04-29 20:12+0000\n" "Last-Translator: JonAnder Oier \n" "Language-Team: Basque ] [-t]" msgstr "[guztia | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Arakatu" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editatu" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Hautatu direktorioa" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Hautatu fitxategia" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Hautatu" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ez da ezarpenaren deskripziorik eman)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Zarata" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Utzi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Hutsunetasuna" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Zortzigarrenak" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Desplazamendua" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Iraunkortasuna" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Gorde" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Eskala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Hazia" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X hedapena" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y hedapena" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z hedapena" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Balio absolutua" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "lehenespenak" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Arindua" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Txata" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Garbi" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desgaituta" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Gaituta" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Emaitzarik ez" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Berrezarri lehenespena" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Bilatu" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Erakutsi izen teknikoak" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Hautatu Modak" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Edukia" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Edukia" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Itzal dinamikoak" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Altua" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Baxua" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Erdi" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "Ultra Altua" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Oso Baxua" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +411,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Atzera" @@ -203,11 +447,6 @@ msgstr "Mod-ak" msgid "No packages could be retrieved" msgstr "Ezin izan da paketerik eskuratu" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Emaitzarik ez" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Eguneraketarik ez" @@ -254,18 +493,6 @@ msgstr "Instalaturik jada" msgid "Base Game:" msgstr "Oinarri jokoa:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Utzi" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -395,6 +622,12 @@ msgstr "Ezinezkoa mod bat $1 moduan instalatzea" msgid "Unable to install a $1 as a texture pack" msgstr "Akatsa $1 testura pakete moduan instalatzea" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -459,12 +692,6 @@ msgstr "Aukerako mendekotasunik ez" msgid "Optional dependencies:" msgstr "Aukerako mendekotasunak:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Gorde" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundua:" @@ -618,11 +845,6 @@ msgstr "Ibaiak" msgid "Sea level rivers" msgstr "Itsas mailako ibaiak" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Hazia" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Biomen arteko trantsizio leuna" @@ -764,6 +986,23 @@ msgstr "" "Mod pakete honek berezko izen zehatza du emanda bere modpack.conf-ean eta " "berrizendatutako edozein gainidatziko du hemen." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Gaitu denak" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -788,7 +1027,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ezarpenak" @@ -802,232 +1041,6 @@ msgstr "" "Saia zaitez zerbitzari publikoen zerrenda birgaitzen eta egiazta ezazu zure " "internet konexioa." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Arakatu" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editatu" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Hautatu direktorioa" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Hautatu fitxategia" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Hautatu" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ez da ezarpenaren deskripziorik eman)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Zarata" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Hutsunetasuna" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Zortzigarrenak" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Desplazamendua" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Iraunkortasuna" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Eskala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X hedapena" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y hedapena" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z hedapena" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Balio absolutua" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "lehenespenak" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Arindua" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Txata" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Garbi" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desgaituta" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Gaituta" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Berrezarri lehenespena" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Bilatu" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Erakutsi izen teknikoak" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Hautatu Modak" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Edukia" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Edukia" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Gaituta" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kameraren eguneraketa desaktibatuta dago" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Itzal dinamikoak" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Altua" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Baxua" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Erdi" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "Ultra Altua" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Oso Baxua" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Buruz" @@ -1048,10 +1061,6 @@ msgstr "Garatzaile nagusiak" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Ireki Erabiltzaile Datuen Direktorioa" @@ -1202,10 +1211,22 @@ msgstr "Hasi partida" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Ez. gogokoena" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Helbidea" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Hautatu Modak" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Sormen modua" @@ -1219,6 +1240,11 @@ msgstr "Mina / PvP" msgid "Favorites" msgstr "Gogokoak" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Jolasa" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Zerbitzari bateraezinak" @@ -1231,10 +1257,26 @@ msgstr "Elkartu partidara" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1320,23 +1362,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modua: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Publikoa: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Jokalaria Jokalariaren aurka (PvP): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Zerbitzariaren izena: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1347,6 +1372,11 @@ msgstr "Errore bat gertatu da:" msgid "Access denied. Reason: %s" msgstr "Sarbidea ukatuta. Arrazoia: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Arazketari buruzko informazioa erakusten da" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1367,6 +1397,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kameraren eguneraketa desaktibatuta dago" @@ -1379,10 +1413,6 @@ msgstr "Kameraren eguneraketa gaituta dago" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Pasahitza aldatu" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modu zinematografiko desaktibatuta" @@ -1411,26 +1441,6 @@ msgstr "Konexio-errorea (denbora agortua?)" msgid "Connection failed for unknown reason" msgstr "Konexioak huts egin du arrazoi ezezagun batengatik" -#: src/client/game.cpp -msgid "Continue" -msgstr "Jarraitu" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1444,31 +1454,15 @@ msgstr "Bezeroa sortzen..." msgid "Creating server..." msgstr "Zerbitzaria sortzen..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Arazte informazioa eta profilariaren grafikoa ezkutatuta" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Arazketari buruzko informazioa erakusten da" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Arazte informazioa, profilariaren grafikoa, eta hari-sareta ezkutatuta" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Bezeroa sortzen..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Irten menura" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Irten sistema eragilera" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modu azkarra desaktibatuta" @@ -1505,18 +1499,6 @@ msgstr "Lainoa gaituta" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Jokoari buruzko informazioa:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Itemen definizioak..." @@ -1553,14 +1535,6 @@ msgstr "" msgid "Node definitions..." msgstr "Nodoen definizioak..." -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1573,38 +1547,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "Profilariaren grafikoa ikusigai" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Urruneko zerbitzaria" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Birsortu" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Itzaltzen..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Jokalari bakarra" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Soinuaren bolumena" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1678,18 +1636,103 @@ msgstr "Ikusmen barrutia aldatu da: %d" msgid "Volume changed to %d%%" msgstr "Bolumena %d%%ra aldatu da" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Hil zara" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modua: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Publikoa: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Jokalaria Jokalariaren aurka (PvP): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Zerbitzariaren izena: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Pasahitza aldatu" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Jarraitu" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Irten menura" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Irten sistema eragilera" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Jokoari buruzko informazioa:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Urruneko zerbitzaria" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Birsortu" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Soinuaren bolumena" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Hil zara" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2029,7 +2072,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Huts egin du $1 deskargatzean" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2079,7 +2122,7 @@ msgstr "Aurrera automatikoki" msgid "Automatic jumping" msgstr "Jauzi automatikoa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2091,7 +2134,7 @@ msgstr "Atzera" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Aldatu kamera" @@ -2115,7 +2158,7 @@ msgstr "Jaitsi bolumena" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Laga" @@ -2131,11 +2174,11 @@ msgstr "Handitu barrutia" msgid "Inc. volume" msgstr "Igo bolumena" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inbentarioa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Jauzi" @@ -2167,7 +2210,7 @@ msgstr "Hurrengoa elementua" msgid "Prev. item" msgstr "Aurreko elementua" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Barruti hautaketa" @@ -2179,7 +2222,7 @@ msgstr "Eskuina" msgid "Screenshot" msgstr "Pantaila-argazkia" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "isilean mugitu" @@ -2187,15 +2230,15 @@ msgstr "isilean mugitu" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Txandakatu azkar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Txandakatu hegaz egitea" @@ -2203,11 +2246,11 @@ msgstr "Txandakatu hegaz egitea" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Txandakatu minimapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2215,7 +2258,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2252,7 +2295,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "Pasahitzak ez datoz bat!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2265,16 +2308,47 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Erdiko botoia" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Egina!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Urruneko zerbitzaria" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Joystick mota" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Txandakatu hegaz egitea" @@ -2474,8 +2548,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2528,10 +2601,6 @@ msgstr "Bloke aktiboaren barrutia" msgid "Active object send range" msgstr "Objektu aktiboak bidaltzeko barrutia" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2555,6 +2624,16 @@ msgstr "Munduaren izena" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2928,11 +3007,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2957,7 +3036,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3093,6 +3172,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3246,19 +3333,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Apaingarriak" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3286,6 +3365,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3361,8 +3448,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3439,8 +3526,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3455,12 +3541,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3771,10 +3851,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3999,12 +4075,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4023,6 +4093,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4117,10 +4194,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4741,10 +4814,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4777,6 +4846,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4867,7 +4940,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5310,17 +5383,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5517,16 +5592,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Itzalgailuak" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5689,10 +5754,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5974,10 +6038,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6039,6 +6099,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6089,7 +6153,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6112,16 +6179,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6359,20 +6424,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6383,10 +6440,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6411,8 +6464,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6608,9 +6660,16 @@ msgstr "" #~ msgid "Damage" #~ msgstr "Kaltea" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Arazte informazioa eta profilariaren grafikoa ezkutatuta" + #~ msgid "Debug info toggle key" #~ msgstr "Arazte informazioa txandakatzeko tekla" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Arazte informazioa, profilariaren grafikoa, eta hari-sareta ezkutatuta" + #, fuzzy #~ msgid "Dig key" #~ msgstr "Eskuinera tekla" @@ -6636,6 +6695,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Itzal dinamikoak: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Gaituta" + #, fuzzy #~ msgid "Enable creative mode for all players" #~ msgstr "Gaitu sormen modua mapa sortu berrietan." @@ -6656,9 +6719,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Aurrera tekla" -#~ msgid "Game" -#~ msgstr "Jolasa" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Ezarpenak" @@ -6680,86 +6740,86 @@ msgstr "" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ikusmen barrutia txikitzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ikusmen barrutia txikitzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ikusmen barrutia handitzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Komando lokalak idazteko txat leihoa irekitzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ikusmen barrutia txikitzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kameraren eguneraketa txandakatzeko tekla. Garapenerako soilik erabilia\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Arazte informazioa txandakatzeko tekla\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Profilaria txandakatzeko tekla. Garapenerako soilik erabilia.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ikusmen barruti mugagabea txandakatzeko tekla.\n" -#~ "Ikusi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ikusi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "Left key" #~ msgstr "Ezkerrera tekla" @@ -6815,12 +6875,19 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "Pantaila:" +#~ msgid "Shaders" +#~ msgstr "Itzalgailuak" + #~ msgid "Shaders (experimental)" #~ msgstr "Itzalgailuak (esperimentala)" #~ msgid "Shaders (unavailable)" #~ msgstr "Itzalgailuak (ez dago eskuragarri)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kameraren eguneraketa desaktibatuta dago" + #~ msgid "Simple Leaves" #~ msgstr "Orri sinpleak" diff --git a/po/fa/luanti.po b/po/fa/luanti.po index 62725de1f..b117aa578 100644 --- a/po/fa/luanti.po +++ b/po/fa/luanti.po @@ -7,9 +7,9 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2023-12-03 17:17+0000\n" -"Last-Translator: Krock \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-07 06:13+0000\n" +"Last-Translator: Ilia \n" "Language-Team: Persian \n" "Language: fa\n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 5.3-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -29,7 +29,7 @@ msgstr "" #: builtin/client/chatcommands.lua msgid "Exit to main menu" -msgstr "" +msgstr "خروج به منوی اصلی" #: builtin/client/chatcommands.lua msgid "Invalid command: " @@ -80,6 +80,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "ویرایش" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "لغو" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "ذخیره" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(استفاده از زبان سیستم)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "چت" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "پاک کردن" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "غیرفعال شده" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "فعال شده" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "حرکت" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "بدون نتیجه" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "بازگشت به تنظیمات پیشفرض" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "جست و جو" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "زیاد" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "کم" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "متوسط" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "خیلی زیاد" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "خیلی کم" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -90,23 +328,23 @@ msgstr "" #: builtin/fstk/ui.lua msgid "An error occurred:" -msgstr "" +msgstr "خطایی رخ داد:" #: builtin/fstk/ui.lua msgid "Main menu" -msgstr "" +msgstr "منوی اصلی" #: builtin/fstk/ui.lua msgid "OK" -msgstr "" +msgstr "باشه" #: builtin/fstk/ui.lua msgid "Reconnect" -msgstr "" +msgstr "اتصال دوباره" #: builtin/fstk/ui.lua msgid "The server has requested a reconnect:" -msgstr "" +msgstr "سرور درخواست اتصال دوباره کرده است:" #: builtin/mainmenu/common.lua msgid "Protocol version mismatch. " @@ -158,11 +396,10 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "همه" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -180,7 +417,7 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" -msgstr "" +msgstr "بازی ها" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_install.lua @@ -191,18 +428,13 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Mods" -msgstr "" +msgstr "ماد ها" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -212,8 +444,9 @@ msgid "Queued" msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua +#, fuzzy msgid "Texture Packs" -msgstr "" +msgstr "تکسچر پک ها" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "The package $1 was not found." @@ -247,18 +480,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -270,7 +491,7 @@ msgstr "" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" -msgstr "" +msgstr "نصب" #: builtin/mainmenu/content/dlg_install.lua msgid "Install $1" @@ -306,7 +527,7 @@ msgstr "" #: builtin/mainmenu/content/dlg_package.lua msgid "Description" -msgstr "" +msgstr "توضیحات" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" @@ -318,7 +539,7 @@ msgstr "" #: builtin/mainmenu/content/dlg_package.lua msgid "Information" -msgstr "" +msgstr "اطلاعات" #: builtin/mainmenu/content/dlg_package.lua msgid "Install [$1]" @@ -334,19 +555,19 @@ msgstr "" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "ترجمه" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" -msgstr "" +msgstr "حذف نصب" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Update" -msgstr "" +msgstr "آپدیت" #: builtin/mainmenu/content/dlg_package.lua msgid "Website" -msgstr "" +msgstr "وبسایت" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" @@ -380,6 +601,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -390,7 +617,7 @@ msgstr "" #: builtin/mainmenu/dlg_config_world.lua msgid "Disable all" -msgstr "" +msgstr "غیرفعال کردن همه" #: builtin/mainmenu/dlg_config_world.lua msgid "Disable modpack" @@ -398,7 +625,7 @@ msgstr "" #: builtin/mainmenu/dlg_config_world.lua msgid "Enable all" -msgstr "" +msgstr "فعال کردن همه" #: builtin/mainmenu/dlg_config_world.lua msgid "Enable modpack" @@ -416,7 +643,7 @@ msgstr "" #: builtin/mainmenu/dlg_config_world.lua msgid "Mod:" -msgstr "" +msgstr "ماد:" #: builtin/mainmenu/dlg_config_world.lua msgid "No (optional) dependencies" @@ -442,15 +669,9 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" -msgstr "" +msgstr "جهان:" #: builtin/mainmenu/dlg_config_world.lua msgid "enabled" @@ -486,7 +707,7 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Caves" -msgstr "" +msgstr "غار ها" #: builtin/mainmenu/dlg_create_world.lua msgid "Create" @@ -516,7 +737,7 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Flat terrain" -msgstr "" +msgstr "زمین صاف" #: builtin/mainmenu/dlg_create_world.lua msgid "Floating landmasses in the sky" @@ -532,7 +753,7 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Hills" -msgstr "" +msgstr "تپه ها" #: builtin/mainmenu/dlg_create_world.lua msgid "Humid rivers" @@ -544,11 +765,11 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Install another game" -msgstr "" +msgstr "نصب بازی دیگر" #: builtin/mainmenu/dlg_create_world.lua msgid "Lakes" -msgstr "" +msgstr "دریاچه ها" #: builtin/mainmenu/dlg_create_world.lua msgid "Low humidity and high heat causes shallow or dry rivers" @@ -568,7 +789,7 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Mountains" -msgstr "" +msgstr "کوه ها" #: builtin/mainmenu/dlg_create_world.lua msgid "Mud flow" @@ -580,7 +801,7 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "No game selected" -msgstr "" +msgstr "هیچ بازی ای انتخاب نشده" #: builtin/mainmenu/dlg_create_world.lua msgid "Reduces heat with altitude" @@ -592,17 +813,12 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "Rivers" -msgstr "" +msgstr "رود ها" #: builtin/mainmenu/dlg_create_world.lua msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -647,16 +863,16 @@ msgstr "" #: builtin/mainmenu/dlg_create_world.lua msgid "World name" -msgstr "" +msgstr "نام جهان" #: builtin/mainmenu/dlg_delete_content.lua msgid "Are you sure you want to delete \"$1\"?" -msgstr "" +msgstr "آیا از حذف \"$1\" مطمئن هستید؟" #: builtin/mainmenu/dlg_delete_content.lua #: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_local.lua msgid "Delete" -msgstr "" +msgstr "حذف" #: builtin/mainmenu/dlg_delete_content.lua msgid "pkgmgr: failed to delete \"$1\"" @@ -668,11 +884,11 @@ msgstr "" #: builtin/mainmenu/dlg_delete_world.lua msgid "Delete World \"$1\"?" -msgstr "" +msgstr "جهان \"$1\" حذف شود؟" #: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp msgid "Confirm Password" -msgstr "" +msgstr "تائید گذرواژه" #: builtin/mainmenu/dlg_register.lua msgid "Joining $1" @@ -685,20 +901,20 @@ msgstr "" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua #: builtin/mainmenu/tab_online.lua msgid "Name" -msgstr "" +msgstr "نام" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua #: builtin/mainmenu/tab_online.lua msgid "Password" -msgstr "" +msgstr "گذرواژه" #: builtin/mainmenu/dlg_register.lua msgid "Passwords do not match" -msgstr "" +msgstr "گذرواژه ها یکسان نیستند" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua msgid "Register" -msgstr "" +msgstr "ثبت نام" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "Dismiss" @@ -726,7 +942,7 @@ msgstr "" #: builtin/mainmenu/dlg_rename_modpack.lua msgid "Accept" -msgstr "" +msgstr "تائید" #: builtin/mainmenu/dlg_rename_modpack.lua msgid "Rename Modpack:" @@ -738,6 +954,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "فعال کردن همه" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -752,19 +985,19 @@ msgstr "" #: builtin/mainmenu/dlg_version_info.lua msgid "Later" -msgstr "" +msgstr "بعدا" #: builtin/mainmenu/dlg_version_info.lua msgid "Never" -msgstr "" +msgstr "هیچوقت" #: builtin/mainmenu/dlg_version_info.lua msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" -msgstr "" +msgstr "تنظیمات" #: builtin/mainmenu/serverlistmgr.lua msgid "Public server list is disabled" @@ -774,226 +1007,9 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" -msgstr "" +msgstr "درباره" #: builtin/mainmenu/tab_about.lua msgid "Active Contributors" @@ -1011,10 +1027,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1059,7 +1071,7 @@ msgstr "" #: builtin/mainmenu/tab_content.lua msgid "Installed Packages:" -msgstr "" +msgstr "پکیج های نصب شده:" #: builtin/mainmenu/tab_content.lua msgid "No dependencies." @@ -1071,7 +1083,7 @@ msgstr "" #: builtin/mainmenu/tab_content.lua msgid "Rename" -msgstr "" +msgstr "تغییر نام" #: builtin/mainmenu/tab_content.lua msgid "Update available?" @@ -1099,15 +1111,15 @@ msgstr "" #: builtin/mainmenu/tab_local.lua msgid "Host Game" -msgstr "" +msgstr "میزبانی بازی" #: builtin/mainmenu/tab_local.lua msgid "Host Server" -msgstr "" +msgstr "میزبانی سرور" #: builtin/mainmenu/tab_local.lua msgid "Install a game" -msgstr "" +msgstr "نصب بازی" #: builtin/mainmenu/tab_local.lua msgid "Install games from ContentDB" @@ -1125,11 +1137,11 @@ msgstr "" #: builtin/mainmenu/tab_local.lua msgid "New" -msgstr "" +msgstr "جدید" #: builtin/mainmenu/tab_local.lua msgid "No world created or selected!" -msgstr "" +msgstr "هیچ جهانی ساخته یا انتخاب نشده!" #: builtin/mainmenu/tab_local.lua msgid "Play Game" @@ -1149,18 +1161,29 @@ msgstr "" #: builtin/mainmenu/tab_local.lua msgid "Server Port" -msgstr "" +msgstr "پورت سرور" #: builtin/mainmenu/tab_local.lua msgid "Start Game" -msgstr "" +msgstr "شروع بازی" #: builtin/mainmenu/tab_local.lua msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "حذف از علاقه مندی" + #: builtin/mainmenu/tab_online.lua msgid "Address" +msgstr "آدرس" + +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" msgstr "" #: builtin/mainmenu/tab_online.lua @@ -1174,39 +1197,60 @@ msgstr "" #: builtin/mainmenu/tab_online.lua msgid "Favorites" -msgstr "" +msgstr "علاقه ها" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "بازی ها" #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" -msgstr "" +msgstr "سرور های ناسازگار" #: builtin/mainmenu/tab_online.lua msgid "Join Game" -msgstr "" +msgstr "پیوستن به بازی" #: builtin/mainmenu/tab_online.lua msgid "Login" +msgstr "لاگین" + +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" msgstr "" #: builtin/mainmenu/tab_online.lua msgid "Ping" +msgstr "پینگ" + +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" msgstr "" #: builtin/mainmenu/tab_online.lua msgid "Public Servers" -msgstr "" +msgstr "سرور های عمومی" #: builtin/mainmenu/tab_online.lua msgid "Refresh" -msgstr "" +msgstr "رفرش" #: builtin/mainmenu/tab_online.lua msgid "Remove favorite" -msgstr "" +msgstr "حذف از علاقه مندی" #: builtin/mainmenu/tab_online.lua msgid "Server Description" -msgstr "" +msgstr "توضیحات سرور" #: src/client/client.cpp msgid "Connection aborted (protocol error?)." @@ -1218,7 +1262,7 @@ msgstr "" #: src/client/client.cpp msgid "Done!" -msgstr "" +msgstr "انجام شد!" #: src/client/client.cpp msgid "Initializing nodes" @@ -1242,7 +1286,7 @@ msgstr "" #: src/client/clientlauncher.cpp msgid "Main Menu" -msgstr "" +msgstr "منوی اصلی" #: src/client/clientlauncher.cpp msgid "No world selected and no address provided. Nothing to do." @@ -1250,11 +1294,11 @@ msgstr "" #: src/client/clientlauncher.cpp msgid "Player name too long." -msgstr "" +msgstr "اسم بازیکن زیادی طولانی است." #: src/client/clientlauncher.cpp msgid "Please choose a name!" -msgstr "" +msgstr "لطفا یک اسم انتخاب کنید!" #: src/client/clientlauncher.cpp msgid "Provided password file failed to open: " @@ -1274,23 +1318,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1300,6 +1327,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1320,6 +1351,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1332,10 +1367,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1364,26 +1395,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1395,33 +1406,17 @@ msgstr "" #: src/client/game.cpp msgid "Creating server..." -msgstr "" - -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" +msgstr "ساخت سرور..." #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1448,27 +1443,15 @@ msgstr "" #: src/client/game.cpp msgid "Fog disabled" -msgstr "" +msgstr "مه غیرفعال شد" #: src/client/game.cpp msgid "Fog enabled" -msgstr "" +msgstr "مه فعال شد" #: src/client/game.cpp msgid "Fog enabled by game or mod" -msgstr "" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" +msgstr "مه توسط بازی یا ماد فعال شد" #: src/client/game.cpp msgid "Item definitions..." @@ -1506,14 +1489,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1526,38 +1501,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" -msgstr "" - -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" +msgstr "تک نفره" #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1630,24 +1589,109 @@ msgid "Volume changed to %d%%" msgstr "" #: src/client/game.cpp -msgid "Wireframe shown" +msgid "Wireframe not supported by video driver" msgstr "" #: src/client/game.cpp -msgid "You died" +msgid "Wireframe shown" msgstr "" #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "ادامه" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "خروج به منو" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "خروج به سیستم عامل" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "اطلاعات بازی:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "خاموش" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "روشن" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "شما مردید" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" #: src/client/gameui.cpp msgid "Chat hidden" -msgstr "" +msgstr "چت پنهان" #: src/client/gameui.cpp msgid "Chat shown" @@ -1672,7 +1716,7 @@ msgstr "" #: src/client/keycode.cpp msgid "Apps" -msgstr "" +msgstr "برنامه ها" #: src/client/keycode.cpp msgid "Backspace" @@ -1717,7 +1761,7 @@ msgstr "" #: src/client/keycode.cpp msgid "Help" -msgstr "" +msgstr "کمک" #: src/client/keycode.cpp msgid "Home" @@ -1967,7 +2011,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -1980,6 +2024,8 @@ msgstr "" msgid "" "Install and enable the required mods, or disable the mods causing errors." msgstr "" +"ماد های مورد نیاز را نصب و فعال کن، یا ماد هایی که باعث خطا می شوند را " +"غیرفعال کن." #: src/content/mod_configuration.cpp msgid "" @@ -2015,7 +2061,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2027,7 +2073,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2051,7 +2097,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2067,13 +2113,13 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" -msgstr "" +msgstr "پرش" #: src/gui/guiKeyChangeMenu.cpp msgid "Key already in use" @@ -2097,13 +2143,13 @@ msgstr "" #: src/gui/guiKeyChangeMenu.cpp msgid "Next item" -msgstr "" +msgstr "آیتم بعدی" #: src/gui/guiKeyChangeMenu.cpp msgid "Prev. item" -msgstr "" +msgstr "آیتم قبلی" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2115,7 +2161,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2123,15 +2169,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2139,11 +2185,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2151,9 +2197,9 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" -msgstr "" +msgstr "زوم" #: src/gui/guiKeyChangeMenu.cpp msgid "press key" @@ -2177,19 +2223,19 @@ msgstr "" #: src/gui/guiPasswordChange.cpp msgid "New Password" -msgstr "" +msgstr "گذرواژه جدید" #: src/gui/guiPasswordChange.cpp msgid "Old Password" -msgstr "" +msgstr "گذرواژه قدیمی" #: src/gui/guiPasswordChange.cpp msgid "Passwords do not match!" -msgstr "" +msgstr "گذرواژه ها یکسان نیستند!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" -msgstr "" +msgstr "خروج" #: src/gui/guiVolumeChange.cpp msgid "Muted" @@ -2200,15 +2246,44 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "انجام شد!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2257,7 +2332,7 @@ msgstr "" #: src/network/clientpackethandler.cpp msgid "Server shutting down" -msgstr "" +msgstr "سرور در حال خاموش شدن" #: src/network/clientpackethandler.cpp msgid "" @@ -2403,8 +2478,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2457,10 +2531,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2481,11 +2551,21 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Advanced" +msgstr "پیشرفته" + +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." msgstr "" #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." -msgstr "" +msgstr "بگذار مایعات نیمه شفاف باشند." #: src/settings_translation_file.cpp msgid "" @@ -2603,7 +2683,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Audio" -msgstr "" +msgstr "صدا" #: src/settings_translation_file.cpp msgid "Automatically jump up single-node obstacles." @@ -2703,7 +2783,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Camera" -msgstr "" +msgstr "دوربین" #: src/settings_translation_file.cpp msgid "Camera smoothing" @@ -2773,7 +2853,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Chat font size" -msgstr "" +msgstr "اندازه فونت چت" #: src/settings_translation_file.cpp msgid "Chat log level" @@ -2850,11 +2930,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2879,7 +2959,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -2928,7 +3008,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Console color" -msgstr "" +msgstr "رنگ کنسول" #: src/settings_translation_file.cpp msgid "Console height" @@ -3014,6 +3094,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3030,7 +3118,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Default password" -msgstr "" +msgstr "گذرواژه پیشفرض" #: src/settings_translation_file.cpp msgid "Default privileges" @@ -3165,18 +3253,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3204,6 +3284,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3277,8 +3365,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3351,8 +3439,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3367,12 +3454,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3674,10 +3755,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3901,12 +3978,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3925,6 +3996,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4019,10 +4097,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4154,7 +4228,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Language" -msgstr "" +msgstr "زبان" #: src/settings_translation_file.cpp msgid "Large cave depth" @@ -4637,10 +4711,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4673,6 +4743,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4762,7 +4836,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5145,15 +5219,15 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Screen" -msgstr "" +msgstr "صفحه" #: src/settings_translation_file.cpp msgid "Screen height" -msgstr "" +msgstr "طول صفحه" #: src/settings_translation_file.cpp msgid "Screen width" -msgstr "" +msgstr "عرض صفحه" #: src/settings_translation_file.cpp msgid "Screenshot folder" @@ -5176,7 +5250,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Screenshots" -msgstr "" +msgstr "اسکرین شات ها" #: src/settings_translation_file.cpp msgid "Seabed noise" @@ -5201,17 +5275,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5263,7 +5339,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Server" -msgstr "" +msgstr "سرور" #: src/settings_translation_file.cpp msgid "Server Gameplay" @@ -5279,7 +5355,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Server address" -msgstr "" +msgstr "آدرس سرور" #: src/settings_translation_file.cpp msgid "" @@ -5290,15 +5366,15 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Server description" -msgstr "" +msgstr "توضیحات سرور" #: src/settings_translation_file.cpp msgid "Server name" -msgstr "" +msgstr "نام سرور" #: src/settings_translation_file.cpp msgid "Server port" -msgstr "" +msgstr "پورت سرور" #: src/settings_translation_file.cpp msgid "Server-side occlusion culling" @@ -5404,16 +5480,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5574,10 +5640,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5856,10 +5921,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5918,6 +5979,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5968,7 +6033,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -5991,16 +6059,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6172,7 +6238,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Walking speed" -msgstr "" +msgstr "سرعت راه رفتن" #: src/settings_translation_file.cpp msgid "Walking, flying and climbing speed in fast mode, in nodes per second." @@ -6237,20 +6303,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6261,10 +6319,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6287,8 +6341,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" diff --git a/po/fi/luanti.po b/po/fi/luanti.po index 78a4dec3d..8631d475a 100644 --- a/po/fi/luanti.po +++ b/po/fi/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-24 18:15+0000\n" -"Last-Translator: Jiri Grönroos \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-15 05:00+0000\n" +"Last-Translator: Ricky Tigg \n" "Language-Team: Finnish \n" "Language: fi\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -79,6 +79,245 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[kaikki | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Selaa" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Muokkaa" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Valitse hakemisto" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Valitse tiedosto" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Aseta" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Peruuta" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Tallenna" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Siemen" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Käytä järjestelmän kieltä)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Esteettömyys" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Keskustelu" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Tyhjennä" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Ohjaimet" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Poistettu käytöstä" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Otettu käyttöön" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Yleiset" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Liikkuminen" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Ei tuloksia" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Palauta oletusarvoon" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Palauta oletusarvoon ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Etsi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Näytä lisäasetukset" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Näytä tekniset nimet" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Kosketusnäyttö" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Asiakasmodit" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Sisältö: pelit" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Sisältö: modit" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynaamiset varjot" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -164,7 +403,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Takaisin" @@ -201,11 +439,6 @@ msgstr "Modit" msgid "No packages could be retrieved" msgstr "Paketteja ei löydetty" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Ei tuloksia" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Ei päivityksiä" @@ -251,18 +484,6 @@ msgstr "Asennettu jo" msgid "Base Game:" msgstr "Peruspeli:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Peruuta" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -389,6 +610,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -453,12 +680,6 @@ msgstr "Ei valinnaisia riippuvuuksia" msgid "Optional dependencies:" msgstr "Valinnaiset riippuvuudet:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Tallenna" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Maailma:" @@ -610,11 +831,6 @@ msgstr "Joet" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Siemen" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -750,6 +966,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Ota kaikki käyttöön" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Uusi $1-versio on saatavilla" @@ -778,7 +1011,7 @@ msgstr "Ei koskaan" msgid "Visit website" msgstr "Käy verkkosivustolla" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Asetukset" @@ -792,225 +1025,6 @@ msgstr "" "Kokeile ottaa julkinen palvelinlista uudelleen käyttöön ja tarkista " "internetyhteytesi." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Selaa" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Muokkaa" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Valitse hakemisto" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Valitse tiedosto" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Aseta" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Käytä järjestelmän kieltä)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Esteettömyys" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Keskustelu" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Tyhjennä" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Ohjaimet" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Poistettu käytöstä" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Otettu käyttöön" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Yleiset" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Liikkuminen" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Palauta oletusarvoon" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Palauta oletusarvoon ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Etsi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Näytä lisäasetukset" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Näytä tekniset nimet" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Asiakasmodit" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Sisältö: pelit" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Sisältö: modit" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Otettu käyttöön" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Varjostimet (ei käytettävissä)" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynaamiset varjot" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Tietoja" @@ -1031,10 +1045,6 @@ msgstr "Keskeisimmät kehittäjät" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Avaa käyttäjätietohakemisto" @@ -1184,10 +1194,22 @@ msgstr "Aloita peli" msgid "You need to install a game before you can create a world." msgstr "Sinun tulee asentaa peli, ennen kuin voit luoda maailman." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Poista suosikki" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Osoite" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Asiakas" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Luova tila" @@ -1201,6 +1223,11 @@ msgstr "Vahinko / PvP" msgid "Favorites" msgstr "Suosikit" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Peli" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Palvelimet eivät ole yhteensopivat" @@ -1213,10 +1240,26 @@ msgstr "Liity peliin" msgid "Login" msgstr "Kirjaudu" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Viive" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Julkiset palvelimet" @@ -1300,23 +1343,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Tila: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Julkinen: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Palvelimen nimi: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1327,6 +1353,10 @@ msgstr "Tapahtui virhe:" msgid "Access denied. Reason: %s" msgstr "Pääsy estetty. Syy: %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1347,6 +1377,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1359,10 +1393,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Vaihda salasana" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1391,26 +1421,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Jatka" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1424,30 +1434,14 @@ msgstr "Luodaan asiakasta..." msgid "Creating server..." msgstr "Luodaan palvelinta..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" #: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - -#: src/client/game.cpp -#, fuzzy, c-format +#, c-format msgid "Error creating client: %s" -msgstr "Luodaan asiakasta..." - -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Poistu valikkoon" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Poistu käyttöjärjestelmään" +msgstr "Virhe luotaessa asiakasta: %s" #: src/client/game.cpp msgid "Fast mode disabled" @@ -1485,18 +1479,6 @@ msgstr "Sumu käytössä" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Pelin tiedot:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Peli keskeytetty" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1533,14 +1515,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Pois" - -#: src/client/game.cpp -msgid "On" -msgstr "Päällä" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1553,38 +1527,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Etäpalvelin" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Selvitetään osoitetta..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Synny uudelleen" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Sammutetaan..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Yksinpeli" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Äänenvoimakkuus" - #: src/client/game.cpp msgid "Sound muted" msgstr "Ääni mykistetty" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1656,18 +1614,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Kuolit" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Tila: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Julkinen: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Palvelimen nimi: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Vaihda salasana" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Jatka" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Poistu valikkoon" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Poistu käyttöjärjestelmään" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Pelin tiedot:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Peli keskeytetty" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Pois" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Päällä" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Etäpalvelin" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Synny uudelleen" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Äänenvoimakkuus" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Kuolit" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1995,12 +2038,12 @@ msgid "Minimap in texture mode" msgstr "Pienoiskartta tekstuuritilassa" #: src/client/shader.cpp -#, fuzzy, c-format +#, c-format msgid "Failed to compile the \"%s\" shader." -msgstr "Verkkosivun avaaminen epäonnistui" +msgstr "Varjostimen \"%s\" kääntäminen epäonnistui." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2049,7 +2092,7 @@ msgstr "" msgid "Automatic jumping" msgstr "Hypi automaattisesti" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2061,7 +2104,7 @@ msgstr "Taakse" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Vaihda kameraa" @@ -2085,7 +2128,7 @@ msgstr "Vähennä ääntä" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Pudota" @@ -2101,11 +2144,11 @@ msgstr "" msgid "Inc. volume" msgstr "Lisää ääntä" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventaario" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hyppää" @@ -2137,7 +2180,7 @@ msgstr "Seuraava esine" msgid "Prev. item" msgstr "Edellinen esine" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2149,7 +2192,7 @@ msgstr "Oikea" msgid "Screenshot" msgstr "Kuvakaappaus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Hiivi" @@ -2157,15 +2200,15 @@ msgstr "Hiivi" msgid "Toggle HUD" msgstr "HUD päällä/pois" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Keskusteluloki päällä/pois" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2173,11 +2216,11 @@ msgstr "" msgid "Toggle fog" msgstr "Sumu päällä/pois" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Pienoiskartta päällä/pois" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2185,7 +2228,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2222,7 +2265,7 @@ msgstr "Vanha salasana" msgid "Passwords do not match!" msgstr "Salasanat eivät täsmää!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Poistu" @@ -2235,15 +2278,45 @@ msgstr "Mykistetty" msgid "Sound Volume: %d%%" msgstr "Äänenvoimakkuus: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Valmis!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Etäpalvelin" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Sumu päällä/pois" @@ -2330,9 +2403,9 @@ msgid "" msgstr "" #: src/server.cpp -#, fuzzy, c-format +#, c-format msgid "%s while shutting down: " -msgstr "Sammutetaan..." +msgstr "%s sammutettaessa: " #: src/settings_translation_file.cpp msgid "" @@ -2444,8 +2517,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2498,10 +2570,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2525,6 +2593,16 @@ msgstr "Maailman nimi" msgid "Advanced" msgstr "Lisäasetukset" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2896,14 +2974,14 @@ msgstr "" msgid "Clouds" msgstr "Pilvet" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Pilvet valikossa" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "" @@ -2926,7 +3004,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3061,6 +3139,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3212,18 +3298,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Kehittäjävalinnat" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Älä salli tyhjiä salasanoja" @@ -3251,6 +3329,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3327,8 +3413,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3401,8 +3487,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3417,12 +3502,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3726,10 +3805,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3954,12 +4029,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3978,6 +4047,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4072,10 +4148,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4692,10 +4764,6 @@ msgstr "" msgid "Maximum users" msgstr "Käyttäjiä enintään" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4728,6 +4796,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4819,7 +4891,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5261,17 +5333,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5468,16 +5542,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Varjostimet" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5640,10 +5704,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5922,10 +5985,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5985,6 +6044,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6035,7 +6098,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6058,16 +6124,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6304,20 +6368,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6328,10 +6384,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6354,8 +6406,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6566,6 +6617,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Dynaamiset varjot:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Otettu käyttöön" + #~ msgid "Enable touchscreen" #~ msgstr "Ota kosketusnäyttö käyttöön" @@ -6575,9 +6630,6 @@ msgstr "" #~ msgid "FreeType fonts" #~ msgstr "FreeType-fontit" -#~ msgid "Game" -#~ msgstr "Peli" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Väliaikaiset asetukset" @@ -6633,9 +6685,16 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "Palvelin / yksinpeli" +#~ msgid "Shaders" +#~ msgstr "Varjostimet" + #~ msgid "Shaders (experimental)" #~ msgstr "Varjostimet (kokeellinen)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Varjostimet (ei käytettävissä)" + #~ msgid "Texturing:" #~ msgstr "Teksturointi:" diff --git a/po/fil/luanti.po b/po/fil/luanti.po index 6517795bb..acabb2b56 100644 --- a/po/fil/luanti.po +++ b/po/fil/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2022-06-27 03:16+0000\n" -"Last-Translator: Marco Santos \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-12-26 19:00+0000\n" +"Last-Translator: Kevin Hagen \n" "Language-Team: Filipino \n" "Language: fil\n" @@ -13,7 +13,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1 && n != 2 && n != 3 && (n % 10 == 4 " "|| n % 10 == 6 || n % 10 == 9);\n" -"X-Generator: Weblate 4.13.1-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -80,6 +80,251 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Mag-browse" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Baguhin" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Pumili ng directory" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Pumili ng file" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Walang binigay na paglalarawan)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Noise" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Ikansela" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunarity" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Mga octave" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Offset" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistence" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "I-save" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Scale" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Pagkalat ng X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Pagkalat ng Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Pagkalat ng Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absvalue" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "defaults" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "eased" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Linisin" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Nakasara" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Nakabukas" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Walang mga resulta" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "I-restore ang Default" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Maghanap" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Ipakita ang mga teknikal na pangalan" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Touchthreshold: (px)" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Pumili ng mga Mod" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Content" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Content" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamic na mga anino" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Mataas" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Mababa" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Katamtaman" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "Napakataas" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Napakababa" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -168,7 +413,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "Pabalik" @@ -207,11 +451,6 @@ msgstr "Mga Mod" msgid "No packages could be retrieved" msgstr "Walang makuhang mga package" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Walang mga resulta" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Walang mga update" @@ -257,18 +496,6 @@ msgstr "Naka-install na" msgid "Base Game:" msgstr "Basehang Laro:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Ikansela" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -322,16 +549,15 @@ msgstr "Paglalarawan sa Server" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Magdonate" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" msgstr "" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Impormasyon:" +msgstr "Impormasyon" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -399,6 +625,12 @@ msgstr "Bigong ma-install ang mod bilang $1" msgid "Unable to install a $1 as a texture pack" msgstr "Bigong ma-install ang $1 bilang texture pack" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -463,12 +695,6 @@ msgstr "Walang mga optional na kailangan" msgid "Optional dependencies:" msgstr "Mga optional na kailangan:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "I-save" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundo:" @@ -519,7 +745,7 @@ msgstr "Mga dekorasyon" #: builtin/mainmenu/dlg_create_world.lua msgid "Desert temples" -msgstr "" +msgstr "Mga Templo ng Disyerto" #: builtin/mainmenu/dlg_create_world.lua #, fuzzy @@ -622,11 +848,6 @@ msgstr "Mga ilog" msgid "Sea level rivers" msgstr "Lebel ng dagat sa mga ilog" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Malinis na transition sa pagitan ng mga biome" @@ -769,6 +990,23 @@ msgstr "" "May explicit na pangalan ang modpack na ito na nakalagay sa modpack.conf " "nito na mag-o-override sa kahit anong pag-rename dito." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Buksan lahat" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -793,7 +1031,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Pagsasaayos" @@ -807,231 +1045,6 @@ msgstr "" "Subukang buksan muli ang listahan ng pampublikong server at tingnan ang " "koneksyon mo sa internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Mag-browse" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Baguhin" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Pumili ng directory" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Pumili ng file" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Walang binigay na paglalarawan)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Noise" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunarity" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Mga octave" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Offset" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistence" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Scale" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Pagkalat ng X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Pagkalat ng Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Pagkalat ng Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absvalue" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "defaults" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "eased" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Linisin" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Nakasara" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Nakabukas" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "I-restore ang Default" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Maghanap" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Ipakita ang mga teknikal na pangalan" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Pumili ng mga Mod" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Content" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Content" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Nakabukas" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Nakasara ang pag-update sa kamera" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamic na mga anino" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Mataas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Mababa" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Katamtaman" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "Napakataas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Napakababa" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Patungkol" @@ -1052,10 +1065,6 @@ msgstr "Mga Core Developer" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Buksan ang User Data Directory" @@ -1206,10 +1215,22 @@ msgstr "Magsimula" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Burahin Paborito" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Address" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Client" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Creative mode" @@ -1223,6 +1244,11 @@ msgstr "Pinsala/PvP" msgid "Favorites" msgstr "Mga Paborito" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Laro" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Di compatible na mga Server" @@ -1235,10 +1261,26 @@ msgstr "Sumali sa Laro" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Mga Pampublikong Server" @@ -1325,23 +1367,6 @@ msgstr "" "\n" "Tingnan ang debug.txt para sa mga detalye." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mode: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Pampubliko: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Pangalan ng Server: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "May naganap na serialization error:" @@ -1351,6 +1376,11 @@ msgstr "May naganap na serialization error:" msgid "Access denied. Reason: %s" msgstr "Tinanggihan ang access: Dahilan: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Ipinapakita ang debug info" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Nakasara ang kusang pag-abante" @@ -1371,6 +1401,10 @@ msgstr "Ipinapakita ang block bound para sa kasalukuyang block" msgid "Block bounds shown for nearby blocks" msgstr "Ipinapakita ang mga block bound para sa mga malalapit na block" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Nakasara ang pag-update sa kamera" @@ -1386,10 +1420,6 @@ msgstr "" "Bawal maipakita ang mga block bound (kailangan ng pribilehiyong " "'basic_debug')" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Baguhin ang Password" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Nakasara ang cinematic mode" @@ -1418,39 +1448,6 @@ msgstr "Error sa koneksyon (nag-timeout?)" msgid "Connection failed for unknown reason" msgstr "Bigong makakonekta dahil sa di matukoy na dahilan" -#: src/client/game.cpp -msgid "Continue" -msgstr "Magpatuloy" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Mga Default na Kontrol:\n" -"Kapag walang makikitang Menu:\n" -"- isang pindot: i-activate ang button\n" -"- dobleng pindot: ilagay/gamitin\n" -"- padulasin ang daliri: tumingin-tingin sa paligid\n" -"Kapag makikita ang Menu/Inventory:\n" -"- dobleng pindot (sa labas):\n" -" -->isara\n" -"- pindutin ang stack, pindutin ang slot:\n" -" --> ilipat ang stack\n" -"- pindutin at i-drag, pindutin pangalawang daliri\n" -" --> ilagay ang isang item sa slot\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1464,31 +1461,15 @@ msgstr "Ginagawa ang client..." msgid "Creating server..." msgstr "Ginagawa ang server..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Nakatago ang debug info at profiler graph" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Ipinapakita ang debug info" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Nakatago ang debug info, profiler graph, at wireframe" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Ginagawa ang client..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Umalis sa Menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Umalis sa OS" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Nakasara ang fast mode" @@ -1526,18 +1507,6 @@ msgstr "Nakabukas ang hamog" msgid "Fog enabled by game or mod" msgstr "Kasalukuyang sinara ng laro o mod ang pag-zoom" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Info ng laro:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Nakahinto ang laro" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Nagho-host na server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Mga definition ng item..." @@ -1574,14 +1543,6 @@ msgstr "Nakabukas ang noclip mode (paalala: walang pribilehiyong 'noclip')" msgid "Node definitions..." msgstr "Mga definition ng node..." -#: src/client/game.cpp -msgid "Off" -msgstr "Sarado" - -#: src/client/game.cpp -msgid "On" -msgstr "Bukas" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Nakasara ang pitch move mode" @@ -1594,38 +1555,22 @@ msgstr "Nakabukas ang pitch move mode" msgid "Profiler graph shown" msgstr "Ipinapakita ang profiler graph" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Remote na server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Rineresolba ang address..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Mag-respawn" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Sina-shutdown..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Singleplayer" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume ng Tunog" - #: src/client/game.cpp msgid "Sound muted" msgstr "Naka-mute ang tunog" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Nakasara ang system ng tunog" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Di suportado ang system ng tunog sa build na ito" @@ -1699,18 +1644,116 @@ msgstr "Binago ang viewing range papuntang %d" msgid "Volume changed to %d%%" msgstr "Binago ang volume papuntang %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Ipinapakita ang wireframe" -#: src/client/game.cpp -msgid "You died" -msgstr "Namatay ka" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Kasalukuyang sinara ng laro o mod ang pag-zoom" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mode: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Pampubliko: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Pangalan ng Server: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Baguhin ang Password" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Magpatuloy" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Mga Default na Kontrol:\n" +"Kapag walang makikitang Menu:\n" +"- isang pindot: i-activate ang button\n" +"- dobleng pindot: ilagay/gamitin\n" +"- padulasin ang daliri: tumingin-tingin sa paligid\n" +"Kapag makikita ang Menu/Inventory:\n" +"- dobleng pindot (sa labas):\n" +" -->isara\n" +"- pindutin ang stack, pindutin ang slot:\n" +" --> ilipat ang stack\n" +"- pindutin at i-drag, pindutin pangalawang daliri\n" +" --> ilagay ang isang item sa slot\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Umalis sa Menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Umalis sa OS" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Info ng laro:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Nakahinto ang laro" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Nagho-host na server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Sarado" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Bukas" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Remote na server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Mag-respawn" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume ng Tunog" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Namatay ka" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2050,8 +2093,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Bigong mabuksan ang webpage" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Di suportado ang system ng tunog sa build na ito" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2099,7 +2143,7 @@ msgstr "Kusang abante" msgid "Automatic jumping" msgstr "Kusang talon" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2111,7 +2155,7 @@ msgstr "Pabalik" msgid "Block bounds" msgstr "Mga block bound" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Palitan ang kamera" @@ -2135,7 +2179,7 @@ msgstr "Dec. volume" msgid "Double tap \"jump\" to toggle fly" msgstr "Dobleng pindutin ang \"tumalon\" para makalipad" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Ihulog" @@ -2151,11 +2195,11 @@ msgstr "Inc. range" msgid "Inc. volume" msgstr "Inc. volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventory" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Tumalon" @@ -2187,7 +2231,7 @@ msgstr "Susunod na item" msgid "Prev. item" msgstr "Nakaraang item" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Pagpili sa saklaw" @@ -2199,7 +2243,7 @@ msgstr "Right" msgid "Screenshot" msgstr "Mag-screenshot" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Magdahan-dahan" @@ -2207,15 +2251,15 @@ msgstr "Magdahan-dahan" msgid "Toggle HUD" msgstr "I-toggle ang HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "I-toggle ang chat log" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "I-toggle ang fast" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "I-toggle ang fly" @@ -2223,11 +2267,11 @@ msgstr "I-toggle ang fly" msgid "Toggle fog" msgstr "I-toggle ang hamog" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "I-toggle ang minimap" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "I-toggle ang noclip" @@ -2235,7 +2279,7 @@ msgstr "I-toggle ang noclip" msgid "Toggle pitchmove" msgstr "I-toggle ang pitchmove" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2272,7 +2316,7 @@ msgstr "Lumang Password" msgid "Passwords do not match!" msgstr "Di tugma ang mga password!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Umalis" @@ -2285,15 +2329,46 @@ msgstr "Naka-mute" msgid "Sound Volume: %d%%" msgstr "Volume ng Tunog: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Middle Button" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Tapos na!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Remote na server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "I-toggle ang hamog" @@ -2526,8 +2601,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Suporta sa 3D.\n" "Kasalukuyang suportado:\n" @@ -2595,10 +2669,6 @@ msgstr "Saklaw na aktibong block" msgid "Active object send range" msgstr "Saklaw na mapapadala sa aktibong bagay" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Nagdadagdag ng mga particle habang naghuhukay ng node." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2631,6 +2701,16 @@ msgstr "Idagdag ang pangalan ng item" msgid "Advanced" msgstr "Karagdagan" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3041,15 +3121,14 @@ msgstr "Radius ng ulap" msgid "Clouds" msgstr "Mga ulap" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Epekto sa client side ang mga ulap." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Mga ulap sa menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "May kulay na hamog" @@ -3072,7 +3151,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3207,6 +3286,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3358,19 +3445,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Mga dekorasyon" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3398,6 +3477,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3473,8 +3560,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3547,8 +3634,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3563,12 +3649,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3874,10 +3954,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4103,12 +4179,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4127,6 +4197,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4221,10 +4298,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4841,10 +4914,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4877,6 +4946,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4967,7 +5040,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5412,17 +5485,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5620,16 +5695,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Mga Shader" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5752,7 +5817,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Sneaking speed" -msgstr "" +msgstr "Tulin ng tiyad" #: src/settings_translation_file.cpp msgid "Sneaking speed, in nodes per second." @@ -5793,10 +5858,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6075,10 +6139,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6138,6 +6198,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6188,7 +6252,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6211,16 +6278,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6442,7 +6507,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Weblink color" -msgstr "" +msgstr "Kulay ng weblink" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." @@ -6463,20 +6528,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6487,10 +6544,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6513,8 +6566,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6660,6 +6712,9 @@ msgstr "" #~ "Tandaan na ang ino-override ng pagsasaayos na ito ang address field sa " #~ "main menu." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Nagdadagdag ng mga particle habang naghuhukay ng node." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6743,6 +6798,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "Malilinis na transparent na texture" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Epekto sa client side ang mga ulap." + #~ msgid "Connect" #~ msgstr "Kumonekta" @@ -6781,6 +6840,12 @@ msgstr "" #~ "- Mouse wheel: pumili ng item\n" #~ "- %s: chat\n" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Nakatago ang debug info at profiler graph" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Nakatago ang debug info, profiler graph, at wireframe" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "Nakasara ang unlimited na viewing range" @@ -6797,15 +6862,16 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamic na mga anino: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Nakabukas" + #~ msgid "Enter " #~ msgstr "Ipasok " #~ msgid "Fancy Leaves" #~ msgstr "Magagarang Dahon" -#~ msgid "Game" -#~ msgstr "Laro" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Pagsasaayos" @@ -6859,15 +6925,25 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "Screen:" +#~ msgid "Shaders" +#~ msgstr "Mga Shader" + #~ msgid "Shaders (experimental)" #~ msgstr "Mga Shader (eksperimento)" #~ msgid "Shaders (unavailable)" #~ msgstr "Mga Shader (di available)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Nakasara ang pag-update sa kamera" + #~ msgid "Simple Leaves" #~ msgstr "Simpleng Dahon" +#~ msgid "Sound system is disabled" +#~ msgstr "Nakasara ang system ng tunog" + #~ msgid "Texturing:" #~ msgstr "Pagte-texture:" diff --git a/po/fr/luanti.po b/po/fr/luanti.po index ed71726ba..5865425cf 100644 --- a/po/fr/luanti.po +++ b/po/fr/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: French (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-06 18:04+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-12 12:18+0000\n" "Last-Translator: waxtatect \n" "Language-Team: French \n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,9 +77,247 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Parcourir" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Modifier" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Choisir un répertoire" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Choisir un fichier" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Définir" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Aucune description du paramètre donnée)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Bruit 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Annuler" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunarité" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octaves" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Décalage" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistance" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Sauvegarder" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Échelle" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Graine" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Écart X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Écart Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Écart Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Valeur absolue" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Paramètres par défaut" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Lissé" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Le jeu doit également activer l'exposition automatique)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Le jeu doit également activer le flou lumineux)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Le jeu doit également activer l'éclairage volumétrique)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Utiliser la langue du système)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accessibilité" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatique" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Tchat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Effacer" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Contrôles" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Désactivé" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activé" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Général" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Mouvement" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Pas de résultat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Réinitialiser le réglage par défaut" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Réinitialiser le réglage par défaut ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Rechercher" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Afficher les paramètres avancés" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Montrer les noms techniques" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Disposition de l'écran tactile" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "pause_menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods client" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contenu : Jeux" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contenu : Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Le jeu doit également activer les ombres)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personnalisé" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Ombres dynamiques" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Élevées" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Basses" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Moyennes" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Très élevées" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Très basses" + #: builtin/fstk/ui.lua msgid "" -msgstr "< aucun disponible >" +msgstr "" #: builtin/fstk/ui.lua msgid "An error occurred in a Lua script:" @@ -164,7 +402,6 @@ msgstr "Tout" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Retour" @@ -200,11 +437,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Aucun paquet n'a pu être récupéré" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Pas de résultat" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Aucune mise à jour" @@ -249,18 +481,6 @@ msgstr "Déjà installé" msgid "Base Game:" msgstr "Jeu de base :" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Annuler" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -383,6 +603,14 @@ msgstr "Impossible d'installer un « $1 » comme un « $2 »" msgid "Unable to install a $1 as a texture pack" msgstr "Impossible d'installer un « $1 » comme un pack de textures" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Voici la liste des clients connectés à\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Activé, a une erreur)" @@ -448,12 +676,6 @@ msgstr "Pas de dépendances optionnelles" msgid "Optional dependencies:" msgstr "Dépendances optionnelles :" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Sauvegarder" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Monde :" @@ -608,11 +830,6 @@ msgstr "Rivières" msgid "Sea level rivers" msgstr "Rivières au niveau de la mer" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Graine" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transition progressive entre les biomes" @@ -723,8 +940,8 @@ msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Pendant longtemps, Luanti était livré avec un jeu par défaut appelé « " -"Minetest Game ». Depuis la version 5.8.0, Luanti est livré sans jeu par " +"Pendant longtemps, Luanti était livré avec un jeu par défaut appelé " +"« Minetest Game ». Depuis la version 5.8.0, Luanti est livré sans jeu par " "défaut." #: builtin/mainmenu/dlg_reinstall_mtg.lua @@ -759,6 +976,22 @@ msgstr "" "Ce pack de mods a un nom explicite, donné dans son fichier modpack.conf qui " "remplace tout renommage effectué ici." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Tout développer" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Grouper par préfixe" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "Le serveur $1 utilise un jeu appelé $2 et les mods suivants :" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "Le serveur $1 utilise les mods suivants :" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Une nouvelle version de $1 est disponible" @@ -787,7 +1020,7 @@ msgstr "Jamais" msgid "Visit website" msgstr "Visiter le site web" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Paramètres" @@ -801,223 +1034,6 @@ msgstr "" "Essayer de réactiver la liste des serveurs et vérifier votre connexion " "Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Parcourir" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Modifier" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Choisir un répertoire" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Choisir un fichier" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Définir" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Aucune description du paramètre donnée)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Bruit 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunarité" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octaves" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Décalage" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistance" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Échelle" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Écart X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Écart Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Écart Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Valeur absolue" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Paramètres par défaut" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Lissé" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Le jeu doit également activer l'exposition automatique)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(Le jeu doit également activer le flou lumineux)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Le jeu doit également activer l'éclairage volumétrique)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Utiliser la langue du système)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accessibilité" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Automatique" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Tchat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Effacer" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Contrôles" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Désactivé" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activé" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Général" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Mouvement" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Réinitialiser le réglage par défaut" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Réinitialiser le réglage par défaut ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Rechercher" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Afficher les paramètres avancés" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Montrer les noms techniques" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods client" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contenu : Jeux" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contenu : Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Activer" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Les nuanceurs sont désactivés." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Cette configuration n'est pas recommandée." - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Le jeu doit également activer les ombres)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personnalisé" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Ombres dynamiques" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Élevées" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Basses" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Moyennes" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Très élevées" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Très basses" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "À propos" @@ -1038,10 +1054,6 @@ msgstr "Développeurs principaux" msgid "Core Team" msgstr "Équipe principale" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Périphérique Irrlicht :" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Répertoire de données utilisateur" @@ -1191,10 +1203,22 @@ msgstr "Démarrer" msgid "You need to install a game before you can create a world." msgstr "Vous devez en installer un pour créer un nouveau monde." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Ajouter aux favoris" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresse" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Clients : \n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Mode créatif" @@ -1208,6 +1232,10 @@ msgstr "Dégâts / JcJ" msgid "Favorites" msgstr "Favoris" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Jeu : $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Serveurs incompatibles" @@ -1220,10 +1248,30 @@ msgstr "Rejoindre une partie" msgid "Login" msgstr "Connexion" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Nombre de mods : $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Visiter le site web du serveur" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Filtres possibles :\n" +"game:\n" +"mod:\n" +"player:" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Serveurs publics" @@ -1308,23 +1356,6 @@ msgstr "" "\n" "Voir « debug.txt » pour plus d'informations." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "– Mode : " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "– Public : " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "– JcJ : " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "– Nom du serveur : " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Une erreur de sérialisation est survenue :" @@ -1334,6 +1365,10 @@ msgstr "Une erreur de sérialisation est survenue :" msgid "Access denied. Reason: %s" msgstr "Accès refusé. Raison : %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "Informations de débogage cachées" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Marche automatique désactivée" @@ -1354,6 +1389,10 @@ msgstr "Limites des blocs affichées pour le bloc actuel" msgid "Block bounds shown for nearby blocks" msgstr "Limites des blocs affichées pour les blocs voisins" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "Limites des boîtes affichées" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Mise à jour de la caméra désactivée" @@ -1367,10 +1406,6 @@ msgid "Can't show block bounds (disabled by game or mod)" msgstr "" "Impossible d'afficher les limites des blocs (désactivé par un jeu ou un mod)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Changer le mot de passe" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Mode cinématique désactivé" @@ -1399,35 +1434,6 @@ msgstr "Erreur de connexion (délai expiré ?)." msgid "Connection failed for unknown reason" msgstr "La connexion a échoué pour une raison inconnue." -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuer" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Contrôles :\n" -"Sans menu ouvert :\n" -"– glissement du doigt : regarder autour\n" -"– appui : placer/frapper/utiliser (par défaut)\n" -"– appui long : creuser/utiliser (par défaut)\n" -"Menu/Inventaire ouvert :\n" -"– double-appui (en dehors) : fermer\n" -"– appui sur objets dans l'inventaire : déplacer\n" -"– appui, glissement et appui : pose d'un seul objet par emplacement\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1441,31 +1447,15 @@ msgstr "Création du client…" msgid "Creating server..." msgstr "Création du serveur…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Informations de débogage et graphique du profileur cachés" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Informations de débogage affichées" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Informations de débogage, graphique du profileur et fils de fer cachés" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Erreur de création du client : %s." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Menu principal" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Quitter le jeu" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Mode rapide désactivé" @@ -1502,18 +1492,6 @@ msgstr "Brouillard activé" msgid "Fog enabled by game or mod" msgstr "Brouillard actuellement activé par un jeu ou un mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Infos de jeu :" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Jeu en pause" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Serveur hôte" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Définitions des objets…" @@ -1550,14 +1528,6 @@ msgstr "Collisions désactivées (note : pas de privilège « noclip »)" msgid "Node definitions..." msgstr "Définitions des blocs…" -#: src/client/game.cpp -msgid "Off" -msgstr "Désactivé" - -#: src/client/game.cpp -msgid "On" -msgstr "Activé" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Mode mouvement de tangage désactivé" @@ -1570,38 +1540,22 @@ msgstr "Mode mouvement de tangage activé" msgid "Profiler graph shown" msgstr "Graphique du profileur affiché" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Serveur distant" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Résolution de l'adresse…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Réapparaître" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Fermeture du jeu…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Solo" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume du son" - #: src/client/game.cpp msgid "Sound muted" msgstr "Son coupé" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Le système audio est désactivé" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1679,18 +1633,112 @@ msgstr "Distance de vue réglée à %d, mais limitée à %d par un jeu ou un mod msgid "Volume changed to %d%%" msgstr "Volume réglé sur %d %%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "Fils de fer non pris en charge par le pilote vidéo" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Fils de fer affichés" -#: src/client/game.cpp -msgid "You died" -msgstr "Vous êtes mort" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom actuellement désactivé par un jeu ou un mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "– Mode : " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "– Public : " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "– JcJ : " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "– Nom du serveur : " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Changer le mot de passe" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuer" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Contrôles :\n" +"Sans menu ouvert :\n" +"– glissement du doigt : regarder autour\n" +"– appui : placer/frapper/utiliser (par défaut)\n" +"– appui long : creuser/utiliser (par défaut)\n" +"Menu/Inventaire ouvert :\n" +"– double-appui (en dehors) : fermer\n" +"– appui sur objets dans l'inventaire : déplacer\n" +"– appui, glissement et appui : pose d'un seul objet par emplacement\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Menu principal" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Quitter le jeu" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Infos de jeu :" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Jeu en pause" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Serveur hôte" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Désactivé" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Activé" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Serveur distant" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Réapparaître" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume du son" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Vous êtes mort" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Tchat actuellement désactivé par un jeu ou un mod" @@ -2017,9 +2065,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Échec de la compilation du nuanceur « %s »." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" -"Les nuanceurs sont activés mais GLSL n'est pas pris en charge par le pilote." +msgid "GLSL is not supported by the driver" +msgstr "GLSL n'est pas pris en charge par le pilote vidéo" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2039,7 +2086,7 @@ msgid "" "Note: this may be caused by a dependency cycle, in which case try updating " "the mods." msgstr "" -"Note : ceci peut être dû à un cycle de dépendances, dans ce cas essayer de " +"Note : cela peut être dû à un cycle de dépendances, dans ce cas essayer de " "mettre à jour les mods." #: src/content/mod_configuration.cpp @@ -2070,7 +2117,7 @@ msgstr "Avancer autom." msgid "Automatic jumping" msgstr "Sauts automatiques" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2082,7 +2129,7 @@ msgstr "Reculer" msgid "Block bounds" msgstr "Limites des blocs" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Changer la caméra" @@ -2106,7 +2153,7 @@ msgstr "Réd. le volume" msgid "Double tap \"jump\" to toggle fly" msgstr "Double-appui sur « saut » pour voler" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Lâcher" @@ -2122,11 +2169,11 @@ msgstr "Augm. la distance" msgid "Inc. volume" msgstr "Augm. le volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventaire" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Sauter" @@ -2158,7 +2205,7 @@ msgstr "Objet suivant" msgid "Prev. item" msgstr "Objet précédent" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Distance de vue" @@ -2170,7 +2217,7 @@ msgstr "Droite" msgid "Screenshot" msgstr "Capture d'écran" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Marcher lentement" @@ -2178,15 +2225,15 @@ msgstr "Marcher lentement" msgid "Toggle HUD" msgstr "Interface" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Afficher le tchat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Mode rapide" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Voler" @@ -2194,11 +2241,11 @@ msgstr "Voler" msgid "Toggle fog" msgstr "Brouillard" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Mini-carte" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Mode sans collisions" @@ -2206,7 +2253,7 @@ msgstr "Mode sans collisions" msgid "Toggle pitchmove" msgstr "Mouvement de tang." -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2242,7 +2289,7 @@ msgstr "Ancien mot de passe" msgid "Passwords do not match!" msgstr "Les mots de passe ne correspondent pas !" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Quitter" @@ -2255,15 +2302,46 @@ msgstr "Muet" msgid "Sound Volume: %d%%" msgstr "Volume du son : %d %%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Ajouter un bouton" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Terminé" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Supprimer" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Réinitialiser" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" +"Faire glisser un bouton pour ajouter. Appuyer à l'extérieur pour annuler." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" +"Appuyer sur un bouton pour le sélectionner. Faire glisser un bouton pour le " +"déplacer." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Appuyer à l'extérieur pour désélectionner." + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "Manette" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "Menu de débordement" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "Infos de débogage" @@ -2441,7 +2519,7 @@ msgstr "Nuages 3D" #: src/settings_translation_file.cpp msgid "3D mode" -msgstr "Mode écran 3D" +msgstr "Mode 3D" #: src/settings_translation_file.cpp msgid "3D mode parallax strength" @@ -2498,8 +2576,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Prise en charge de la 3D.\n" "Actuellement disponible :\n" @@ -2509,8 +2586,7 @@ msgstr "" "lignes paires/impaires.\n" "– haut-bas : partage haut et bas de l'écran.\n" "– côte-à-côte : partage côte à côte de l'écran.\n" -"– vision croisée : vision croisée 3D.\n" -"Noter que le mode entrelacé nécessite que les nuanceurs soient activés." +"– vision croisée : vision croisée 3D." #: src/settings_translation_file.cpp msgid "" @@ -2565,10 +2641,6 @@ msgstr "Portée des blocs actifs" msgid "Active object send range" msgstr "Portée des objets actifs envoyés" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Ajoute des particules lorsqu'un bloc est creusé." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2599,6 +2671,19 @@ msgstr "Nom de l’administrateur" msgid "Advanced" msgstr "Avancé" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Tous les tampons de maillage ayant moins de ce nombre de sommets sont " +"fusionnés lors du rendu de la carte.\n" +"Cela améliore les performances de rendu." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Permet aux nuages de paraître en 3D au lieu de plats." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Permet aux liquides d'être translucides." @@ -2615,7 +2700,7 @@ msgstr "" "Des valeurs plus élevées rendent les niveaux de lumière moyens et inférieurs " "plus lumineux.\n" "La valeur « 1,0 » laisse la courbe de lumière intacte.\n" -"Ceci a un effet significatif seulement sur la lumière du jour et la lumière " +"Cela a un effet significatif seulement sur la lumière du jour et la lumière " "artificielle, et a très peu d'effet sur la lumière naturelle nocturne." #: src/settings_translation_file.cpp @@ -2687,7 +2772,7 @@ msgstr "" "effectue un tramage supplémentaire ou si les canaux de couleur ne sont pas " "quantifiés à 8 bits.\n" "Avec OpenGL ES, le tramage fonctionne seulement si les nuanceurs prennent en " -"charge une précision élevée en virgule flottante et ceci peut avoir un " +"charge une précision élevée en virgule flottante et cela peut avoir un " "impact plus important sur les performances." #: src/settings_translation_file.cpp @@ -2746,8 +2831,8 @@ msgstr "" "Des valeurs plus faibles peuvent augmenter la performance du serveur, mais " "peut provoquer l'apparition de problèmes de rendu (certains blocs ne sont " "pas visibles).\n" -"Ceci est particulièrement utile pour les très grandes distances de vue (plus " -"de 500).\n" +"C'est particulièrement utile pour les très grandes distances de vue (plus de " +"500).\n" "Établie en blocs de carte (16 nœuds)." #: src/settings_translation_file.cpp @@ -3003,14 +3088,14 @@ msgstr "Niveau de détails des nuages" msgid "Clouds" msgstr "Nuages" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Activer les nuages côté client." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nuages dans le menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Profondeur de couleur pour la texture de post-traitement" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Brouillard coloré" @@ -3036,7 +3121,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Liste séparés par des virgules des étiquettes des paquets à cacher du dépôt " "de contenus.\n" @@ -3181,7 +3266,7 @@ msgid "" "This also applies to the object crosshair." msgstr "" "Opacité du réticule (entre 0 et 255).\n" -"Ceci s'applique également au réticule de l'objet." +"Cela s'applique également au réticule de l'objet." #: src/settings_translation_file.cpp msgid "Crosshair color" @@ -3193,7 +3278,7 @@ msgid "" "Also controls the object crosshair color" msgstr "" "Couleur du réticule (R,V,B).\n" -"Ceci s'applique également à la couleur du réticule de l'objet." +"Cela s'applique également à la couleur du réticule de l'objet." #: src/settings_translation_file.cpp msgid "Debug log file size threshold" @@ -3207,6 +3292,18 @@ msgstr "Niveau du journal de débogage" msgid "Debugging" msgstr "Débogage" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Détermine la profondeur de couleur de la texture utilisée pour les " +"opérations de post-traitement.\n" +"Réduire cette valeur peut améliorer les performances, mais certains effets (" +"ex. : le tramage) nécessitent plus de 8 bits pour fonctionner." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Intervalle de mise à jour des objets sur le serveur" @@ -3246,8 +3343,8 @@ msgid "" "but also uses more resources." msgstr "" "Définir la qualité du filtrage des ombres.\n" -"Ceci simule l'effet d'ombres douces en appliquant un disque PCF ou Poisson " -"mais utilise également plus de ressources." +"Cela simule l'effet d'ombres douces en appliquant le PCF ou le disque de " +"Poisson mais utilise également plus de ressources." #: src/settings_translation_file.cpp msgid "" @@ -3265,7 +3362,7 @@ msgstr "" "Les anciens clients sont compatibles dans le sens où ils ne plantent pas " "lors de la connexion aux serveurs récents,\n" "mais ils peuvent ne pas prendre en charge certaines fonctionnalités.\n" -"Ceci permet un contrôle plus précis que « strict_protocol_version_checking »." +"Cela permet un contrôle plus précis que « strict_protocol_version_checking »." "\n" "Luanti applique toujours son propre minimum interne, activer « " "strict_protocol_version_checking » le remplace." @@ -3342,7 +3439,7 @@ msgid "" "down the rate of mesh updates, thus reducing jitter on slower clients." msgstr "" "Délai entre les mises à jour du maillage du client en ms.\n" -"Augmenter ceci ralentit le taux de mise à jour et réduit donc les " +"Augmenter cela ralentit le taux de mise à jour et réduit donc les " "tremblements sur les clients lents." #: src/settings_translation_file.cpp @@ -3386,18 +3483,10 @@ msgstr "" "Quand l'option « snowbiomes » est activée (avec le nouveau système de " "biomes), ce paramètre est ignoré." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Désynchroniser les animations de blocs" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Options de développeur" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Particules au minage" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Refuser les mots de passe vides" @@ -3430,6 +3519,18 @@ msgstr "Double-appui sur « saut » pour voler" msgid "Double-tapping the jump key toggles fly mode." msgstr "Double-appui sur la touche « saut » pour voler." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Dessine les triangles triés par transparence regroupés par leurs tampons de " +"maillage.\n" +"Cela empêche le tri par transparence entre les tampons de maillage, mais " +"évite les situations où le tri par transparence serait très lent autrement." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Afficher les informations de débogage de la génération de terrain." @@ -3490,7 +3591,7 @@ msgid "" msgstr "" "Activer le filtrage par disque de Poisson.\n" "Si activé, utilise le disque de Poisson pour créer des « ombres douces ». " -"Sinon, utilise le filtrage PCF." +"Sinon, utilise le PCF." #: src/settings_translation_file.cpp msgid "Enable Post Processing" @@ -3498,7 +3599,7 @@ msgstr "Activer le post-traitement" #: src/settings_translation_file.cpp msgid "Enable Raytraced Culling" -msgstr "Activer l'élimination des blocs invisibles par Ray Tracing" +msgstr "Activer l'élimination des blocs invisibles par lancer de rayons" #: src/settings_translation_file.cpp msgid "" @@ -3515,12 +3616,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Activer les ombres colorées.\n" -"Sur les nœuds vraiment transparents, projette des ombres colorées. Ceci est " -"coûteux." +"Activer les ombres colorées pour les nœuds translucides.\n" +"Cela utilise beaucoup de ressources." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3609,12 +3709,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Activer/désactiver l'usage d'un serveur IPv6.\n" -"Ignoré si « bind_address » est activé.\n" -"A besoin de « enable_ipv6 » pour être activé." +"Ignoré si « bind_address » est activé." #: src/settings_translation_file.cpp msgid "" @@ -3633,14 +3731,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Active l'animation des objets de l'inventaire." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"Active la mise en cache des mailles orientés « facedir ».\n" -"Ceci n'a d'effet que si les nuanceurs sont désactivées." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Active le débogage et la vérification des erreurs du pilote OpenGL." @@ -3886,7 +3976,7 @@ msgid "" "be\n" "sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." msgstr "" -"Pour les polices de style pixel qui ne s'adaptent pas bien, ceci garantit " +"Pour les polices de style pixel qui ne s'adaptent pas bien, cela garantit " "que les tailles de police utilisées avec cette police sont toujours " "divisibles par cette valeur, en pixels.\n" "Par exemple une police de style pixel de 16 pixels de haut doit avoir cette " @@ -3965,7 +4055,7 @@ msgstr "" "Distance maximale à laquelle les clients ont connaissance des objets, " "établie en blocs de carte (16 nœuds).\n" "\n" -"Définir ceci plus grand que « active_block_range », ainsi le serveur " +"Définir cela plus grand que « active_block_range », ainsi le serveur " "maintient les objets actifs jusqu’à cette distance dans la direction où un " "joueur regarde (cela peut éviter que des mobs disparaissent soudainement de " "la vue)." @@ -3992,10 +4082,6 @@ msgstr "Taille de l'interface graphique" msgid "GUI scaling filter" msgstr "Filtrage des images de l'interface graphique" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtrage de mise à l'échelle txr2img de l'interface graphique" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Manettes de jeu" @@ -4200,7 +4286,7 @@ msgid "" "Decrease this to increase liquid resistance to movement." msgstr "" "Ralentissement lors du déplacement dans un liquide.\n" -"Réduire ceci pour augmenter la résistance au mouvement." +"Réduire cette valeur pour augmenter la résistance au mouvement." #: src/settings_translation_file.cpp msgid "How wide to make rivers." @@ -4262,16 +4348,6 @@ msgstr "" "Si activé, la touche « Aux1 » est utilisée à la place de la touche « Marcher " "lentement » pour monter ou descendre." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Si activé, l'enregistrement du compte est séparé de la connexion dans " -"l'interface utilisateur.\n" -"Si désactivé, les nouveaux comptes sont enregistrés automatiquement lors de " -"la connexion." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4297,6 +4373,17 @@ msgstr "" "Si activé, les joueurs ne peuvent pas se connecter sans un mot de passe ou " "de le remplacer par un mot de passe vide." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Si activé, l'enregistrement du compte sur le serveur est séparé de la " +"connexion dans l'interface utilisateur.\n" +"Si désactivé, la connexion à un serveur entraîne automatiquement " +"l'enregistrement d'un nouveau compte." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4306,7 +4393,7 @@ msgid "" msgstr "" "Si activé, le serveur effectue la détermination des blocs de carte " "invisibles selon la position des yeux du joueur.\n" -"Ceci peut réduire le nombre de blocs envoyés au client de 50 à 80 %.\n" +"Cela peut réduire le nombre de blocs envoyés au client de 50 à 80 %.\n" "Les clients ne reçoivent plus la plupart des blocs invisibles, de sorte que " "l'utilité du mode sans collisions est réduite." @@ -4383,7 +4470,7 @@ msgid "" "This is usually only needed by core/builtin contributors" msgstr "" "Instrumenter « Intégré » (« builtin »).\n" -"Ceci est habituellement nécessaire seulement pour les développeurs " +"Cela est habituellement nécessaire seulement pour les développeurs " "principaux." #: src/settings_translation_file.cpp @@ -4422,10 +4509,6 @@ msgstr "" "Intervalle de sauvegarde des changements importants dans le monde, établi en " "secondes." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Intervalle d'envoi de l'heure aux clients, établi en secondes." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animation des objets de l'inventaire" @@ -4666,7 +4749,7 @@ msgid "" "- trace" msgstr "" "Niveau de journalisation à écrire dans « debug.txt » :\n" -"– < rien > (pas de journalisation)\n" +"–  (pas de journalisation)\n" "– aucun (messages sans niveau)\n" "– erreur\n" "– avertissement\n" @@ -5160,10 +5243,6 @@ msgstr "" msgid "Maximum users" msgstr "Joueurs maximums" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Mise en cache des maillages" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Message du jour" @@ -5198,6 +5277,10 @@ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" "Limite minimale du nombre aléatoire de petites grottes par tranche de carte." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Nombre minimal de sommets pour les tampons de maillage" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-mapping" @@ -5294,12 +5377,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nom du joueur.\n" -"Lorsqu'un serveur est lancé, les clients se connectant avec ce nom sont " -"administrateurs.\n" +"Lorsqu'un serveur est lancé, le client se connectant avec ce nom est " +"administrateur.\n" "Lors du démarrage à partir du menu principal, celui-ci est remplacé." #: src/settings_translation_file.cpp @@ -5527,7 +5610,7 @@ msgstr "" "des boutons de la souris.\n" "Activer cette option lorsque vous creusez ou placez trop souvent par " "accident.\n" -"Sur écrans tactiles, ceci a un effet seulement pour creuser." +"Sur écrans tactiles, cela a un effet seulement pour le minage." #: src/settings_translation_file.cpp msgid "Prevent mods from doing insecure things like running shell commands." @@ -5663,8 +5746,8 @@ msgstr "" "CHAT_MESSAGES : 2 (désactive l'appel « send_chat_message » côté client)\n" "READ_ITEMDEFS : 4 (désactive l'appel « get_item_def » côté client)\n" "READ_NODEDEFS : 8 (désactive l'appel « get_node_def » côté client)\n" -"LOOKUP_NODES_LIMIT : 16 (limite l'appel « get_node » côté client à « " -"csm_restriction_noderange »)\n" +"LOOKUP_NODES_LIMIT : 16 (limite l'appel « get_node » côté client à " +"« csm_restriction_noderange »)\n" "READ_PLAYERINFO : 32 (désactive l'appel « get_player_names » côté client)" #: src/settings_translation_file.cpp @@ -5762,7 +5845,7 @@ msgstr "" "Met à l'échelle l'interface graphique par une valeur spécifiée par " "l'utilisateur, à l'aide d'un filtre au plus proche voisin avec anticrénelage." "\n" -"Ceci lisse certains bords grossiers, et mélange les pixels en réduisant " +"Cela lisse certains bords grossiers, et mélange les pixels en réduisant " "l'échelle.\n" "Au détriment d'un effet de flou sur des pixels en bordure quand les images " "sont mises à l'échelle par des valeurs fractionnelles." @@ -5830,17 +5913,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5848,17 +5933,22 @@ msgstr "" "\n" "* Aucun – Pas d'anticrénelage (par défaut)\n" "\n" -"* FSAA – Anticrénelage de la scène complète (incompatible avec « Post-" -"traitement » et « Sous-échantillonnage »)\n" +"* FSAA – Anticrénelage matériel de la scène complète\n" "Alias anticrénelage multi-échantillon (MSAA), lisse les bords des blocs mais " "n'affecte pas l'intérieur des textures.\n" -"Un redémarrage est nécessaire pour modifier cette option.\n" "\n" -"* FXAA – Anticrénelage approximatif rapide (nécessite des nuanceurs)\n" +"Si le post-traitement est désactivé, la modification de FSAA nécessite un " +"redémarrage.\n" +"De même, si le post-traitement est désactivé, le FSAA ne fonctionne pas avec " +"le sous-échantillonnage,\n" +"pour un paramètre « Mode 3D » défini sur une autre valeur que celle par " +"défaut.\n" +"\n" +"* FXAA – Anticrénelage approximatif rapide\n" "Applique un filtre de post-traitement pour détecter et lisser les bords à " "contraste élevé, fournit un équilibre entre vitesse et qualité d'image.\n" "\n" -"* SSAA – Anticrénelage par super-échantillonnage (nécessite des nuanceurs)\n" +"* SSAA – Anticrénelage par super-échantillonnage\n" "Rendu d'une image haute résolution de la scène, puis réduit l'échelle pour " "diminuer le crénelage. C'est la méthode la plus lente et la plus précise." @@ -6097,24 +6187,12 @@ msgid "" msgstr "" "Définit la qualité de la texture de l'ombre sur 32 bits.\n" "Si désactivé, une texture de 16 bits est utilisée.\n" -"Ceci peut causer beaucoup plus d'artefacts sur l'ombre." +"Cela peut causer beaucoup plus d'artefacts sur l'ombre." #: src/settings_translation_file.cpp msgid "Shader path" msgstr "Chemin des nuanceurs" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Nuanceurs" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" -"Les nuanceurs sont un élément fondamental du rendu et permettent des effets " -"visuels avancés." - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Qualité du filtre d’ombre" @@ -6312,16 +6390,14 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Répartit une mise à jour complète de la carte des ombres sur un nombre donné " "d'images.\n" "Des valeurs plus élevées peuvent rendre les ombres plus lentes, des valeurs " -"plus faibles consomment plus de ressources.\n" -"Valeur minimale : 1 ; valeur maximale : 16" +"plus faibles consomment plus de ressources." #: src/settings_translation_file.cpp msgid "" @@ -6588,11 +6664,11 @@ msgid "" msgstr "" "Le rayon du volume de blocs autour de chaque joueur soumis au bloc actif, " "établi en blocs de carte (16 nœuds).\n" -"Dans les blocs actifs, les objets sont chargés et les « ABMs » sont " -"exécutés.\n" +"Dans les blocs actifs, les objets sont chargés et les « ABMs » sont exécutés." +"\n" "C'est également la distance minimale dans laquelle les objets actifs (mobs) " "sont conservés.\n" -"Ceci doit être configuré avec « active_object_send_range_blocks »." +"Cela doit être configuré avec « active_object_send_range_blocks »." #: src/settings_translation_file.cpp msgid "" @@ -6623,7 +6699,7 @@ msgstr "" "Intensité (obscurité) de l'ombrage des blocs avec l'occlusion ambiante.\n" "Les valeurs plus faibles sont plus sombres, les valeurs plus hautes sont " "plus claires.\n" -"Une plage valide de valeurs pour ceci se situe entre 0,25 et 4,0.\n" +"Une plage valide de valeurs pour cela se situe entre 0,25 et 4,0.\n" "Si la valeur est en dehors de cette plage alors elle est définie à la plus " "proche des valeurs valides." @@ -6701,10 +6777,6 @@ msgstr "" "Heure de la journée lorsqu'un nouveau monde est créé, en milliheures (0–" "23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalle d'envoi de l'heure" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Vitesse du temps" @@ -6724,7 +6796,7 @@ msgid "" msgstr "" "Pour réduire le décalage, le transfert des blocs est ralenti quand un joueur " "construit quelque chose.\n" -"Ceci détermine la durée du ralentissement après placement ou destruction " +"Cela détermine la durée du ralentissement après placement ou destruction " "d'un nœud." #: src/settings_translation_file.cpp @@ -6769,7 +6841,11 @@ msgstr "Liquides translucides" #: src/settings_translation_file.cpp msgid "Transparency Sorting Distance" -msgstr "Distance de tri de la transparence" +msgstr "Tri de la transparence par distance" + +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Tri de la transparence regroupés par tampons" #: src/settings_translation_file.cpp msgid "Trees noise" @@ -6838,14 +6914,20 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Le sous-échantillonnage ressemble à l'utilisation d'une résolution d'écran " "inférieure.\n" "Il ne s'applique qu'au rendu 3D, gardant l'interface graphique intacte.\n" -"Ceci doit donner un bonus de performance conséquent, au détriment de la " +"Cela doit donner un bonus de performance conséquent, au détriment de la " "qualité d'image.\n" -"Les valeurs plus élevées réduisent la qualité du détail des images." +"Les valeurs plus élevées réduisent la qualité du détail des images.\n" +"Note : le sous-échantillonnage n'est actuellement pas pris en charge,\n" +"si le paramètre « Mode 3D » est définie sur une autre valeur que celle par " +"défaut." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6867,19 +6949,19 @@ msgstr "Limite haute Y des donjons." msgid "Upper Y limit of floatlands." msgstr "Limite haute Y des terrains flottants." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Activer les nuages 3D au lieu des nuages 2D (plats)." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Utiliser l'animation des nuages pour l'arrière-plan du menu principal." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Utiliser le filtrage anisotrope lorsque l'on regarde les textures sous un " -"certain angle." +"certain angle.\n" +"Cela apporte une amélioration significative lorsqu'il est utilisé avec le " +"mip-mapping." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -6916,10 +6998,10 @@ msgid "" "This flag enables use of raytraced occlusion culling test for\n" "client mesh sizes smaller than 4x4x4 map blocks." msgstr "" -"Utiliser l'élimination des blocs invisibles par Ray Tracing avec le nouvel " -"algorithme.\n" +"Utiliser l'élimination des blocs invisibles par lancer de rayons avec le " +"nouvel algorithme.\n" "Cette option active l'utilisation du test d'élimination des blocs invisibles " -"par Ray Tracing,\n" +"par lancer de rayons,\n" "pour les maillages clients de taille inférieure à 4 × 4 × 4 blocs de carte." #: src/settings_translation_file.cpp @@ -7156,38 +7238,25 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Quand « gui_scaling_filter_txr2img » est activé, copier les images du " -"matériel au logiciel pour mise à l'échelle.\n" -"Si désactivé, l'ancienne méthode de mise à l'échelle est utilisée, pour les " -"pilotes vidéos qui ne supportent pas le chargement des textures depuis le " -"matériel." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"En utilisant le filtrage bilinéaire/trilinéaire/anisotrope, les textures de " -"basse résolution peuvent être floues.\n" -"Elles sont donc agrandies avec l'interpolation au plus proche voisin pour " -"préserver des pixels nets.\n" -"Ceci détermine la taille minimale pour les textures agrandies ;\n" +"En utilisant le filtrage bilinéaire/trilinéaire, les textures de basse " +"résolution peuvent être floues.\n" +"Cette option les agrandies automatiquement afin de préserver des pixels nets." +"\n" +"Cela définit la taille minimale pour les textures agrandies ;\n" "les valeurs plus élevées ont un rendu plus net, mais nécessitent plus de " -"mémoire. Les puissances de 2 sont recommandées.\n" -"Ce paramètre est appliqué seulement si le filtrage bilinéaire/trilinéaire/" -"anisotrope est activé.\n" -"Ceci est également utilisé comme taille de texture de nœud de base pour " +"mémoire.\n" +"Ce paramètre est appliqué UNIQUEMENT si l'un des filtres mentionnés est " +"activé.\n" +"Cela est également utilisé comme taille de texture de nœud de base pour " "l'agrandissement automatique des textures alignées sur le monde." #: src/settings_translation_file.cpp @@ -7198,12 +7267,6 @@ msgstr "" "Si l'arrière-plan des badges doit être affiché par défaut.\n" "Les mods peuvent toujours définir un arrière-plan." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Détermine la désynchronisation des animations de texture de nœud par bloc de " -"carte." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7230,13 +7293,11 @@ msgstr "Détermine la visibilité du brouillard au bout de l'aire visible." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" -"S'il faut couper le son. Vous pouvez réactiver le son à tout moment, sauf si " -"le système audio est désactivé (« enable_sound=false »).\n" +"S'il faut couper le son. Vous pouvez réactiver le son à tout moment.\n" "Dans le jeu, vous pouvez basculer l'état du son avec la touche « Muet » ou " "en utilisant le menu pause." @@ -7335,7 +7396,7 @@ msgstr "" "Distance Y sur laquelle les terrains flottants passent d'une densité " "maximale à une densité nulle.\n" "L'effilage commence à cette distance, depuis la limite en Y.\n" -"Pour une couche solide de terrain flottant, ceci contrôle la hauteur des " +"Pour une couche solide de terrain flottant, cela contrôle la hauteur des " "collines et des montagnes.\n" "Doit être inférieure ou égale à la moitié de la distance entre les limites Y." @@ -7428,6 +7489,9 @@ msgstr "Limite parallèle de cURL" #~ "Noter que le champ de l'adresse dans le menu principal remplace ce " #~ "paramètre." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Ajoute des particules lorsqu'un bloc est creusé." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7587,6 +7651,9 @@ msgstr "Limite parallèle de cURL" #~ msgid "Clean transparent textures" #~ msgstr "Textures transparentes filtrées" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Activer les nuages côté client." + #~ msgid "Command key" #~ msgstr "Touche commande" @@ -7684,9 +7751,16 @@ msgstr "Limite parallèle de cURL" #~ msgid "Darkness sharpness" #~ msgstr "Démarcation de l'obscurité" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Informations de débogage et graphique du profileur cachés" + #~ msgid "Debug info toggle key" #~ msgstr "Touche infos de débogage" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Informations de débogage, graphique du profileur et fils de fer cachés" + #~ msgid "Dec. volume key" #~ msgstr "Touche réduire le volume" @@ -7740,9 +7814,15 @@ msgstr "Limite parallèle de cURL" #~ msgid "Del. Favorite" #~ msgstr "Supprimer favori" +#~ msgid "Desynchronize block animation" +#~ msgstr "Désynchroniser les animations de blocs" + #~ msgid "Dig key" #~ msgstr "Touche creuser" +#~ msgid "Digging particles" +#~ msgstr "Particules au minage" + #~ msgid "Disable anticheat" #~ msgstr "Désactiver l'anti-triche" @@ -7770,6 +7850,9 @@ msgstr "Limite parallèle de cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Ombres dynamiques :" +#~ msgid "Enable" +#~ msgstr "Activer" + #~ msgid "Enable VBO" #~ msgstr "Activer Vertex Buffer Object: objet tampon de vertex" @@ -7804,6 +7887,13 @@ msgstr "Limite parallèle de cURL" #~ "ou bien celui-ci est auto-généré.\n" #~ "Nécessite les shaders pour être activé." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Active la mise en cache des mailles orientés « facedir ».\n" +#~ "Ceci n'a d'effet que si les nuanceurs sont désactivées." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Autorise le mappage tonal cinématographique" @@ -7851,9 +7941,6 @@ msgstr "Limite parallèle de cURL" #~ "Option expérimentale, peut causer un espace vide visible entre les blocs\n" #~ "quand paramétré avec un nombre supérieur à 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS maximum sur le menu pause" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7939,8 +8026,8 @@ msgstr "Limite parallèle de cURL" #~ msgid "Full screen BPP" #~ msgstr "Bits par pixel en mode plein écran" -#~ msgid "Game" -#~ msgstr "Jeu" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtrage de mise à l'échelle txr2img de l'interface graphique" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8109,661 +8196,667 @@ msgstr "Limite parallèle de cURL" #~ msgid "Instrumentation" #~ msgstr "Instrumentalisation" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Intervalle d'envoi de l'heure aux clients, établi en secondes." + #~ msgid "Invalid gamespec." #~ msgstr "Jeu spécifié invalide." #~ msgid "Inventory key" #~ msgstr "Touche inventaire" +#~ msgid "Irrlicht device:" +#~ msgstr "Périphérique Irrlicht :" + #~ msgid "Jump key" #~ msgstr "Touche sauter" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour réduire la distance d'affichage.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour réduire le volume.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour creuser.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour lâcher l'objet sélectionné.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour augmenter la distance d'affichage.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour augmenter le volume.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sauter.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour se déplacer rapidement en mode rapide.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour déplacer le joueur en arrière.\n" #~ "Désactive également l’avance automatique, lorsqu’elle est active.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour déplacer le joueur en avant.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour déplacer le joueur à gauche.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour déplacer le joueur à droite.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour rendre le jeu muet.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour ouvrir la fenêtre de tchat pour entrer des commandes.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour ouvrir la fenêtre de tchat pour entrer des commandes " #~ "locales.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour ouvrir la fenêtre de tchat.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour ouvrir l'inventaire.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour placer.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 11ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 12ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 13ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 14ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 15ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 16ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 17ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 18ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 19ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 20ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 21ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 22ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 23ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 24ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 25ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 26ᵉ case des la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 27ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 28ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 29ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 30ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 31ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la 32ᵉ case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la huitième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la cinquième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la première case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la quatrième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner l'objet suivant dans la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la neuvième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner l'objet précédent dans la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la deuxième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la septième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la sixième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la dixième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour sélectionner la troisième case de la barre d'action.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour se déplacer lentement.\n" #~ "Également utilisée pour descendre et plonger dans l'eau si " #~ "« aux1_descends » est désactivé.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour changer de vue entre la première et troisième personne.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour prendre des captures d'écran.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche d'avance automatique.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour passer en mode cinématique.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher la mini-carte.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour passer en mode rapide.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour voler.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour passer en mode sans collision.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour passer en mode mouvement de tangage.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche de mise à jour de la caméra. Seulement utilisé pour le " #~ "développement.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher la zone de tchat.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher les infos de débogage.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher le brouillard.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/masquer le HUD (affichage tête haute).\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher la grande console de tchat.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour afficher/cacher le profileur. Utilisé pour le développement.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour activer/désactiver la distance de vue illimitée.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Touche pour zoomer si possible.\n" -#~ "Voir http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Voir http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8838,6 +8931,9 @@ msgstr "Limite parallèle de cURL" #~ msgid "Menus" #~ msgstr "Menus" +#~ msgid "Mesh cache" +#~ msgstr "Mise en cache des maillages" + #~ msgid "Minimap" #~ msgstr "Mini-carte" @@ -9057,6 +9153,9 @@ msgstr "Limite parallèle de cURL" #~ "carte sont plus rapides, mais cela consomme plus de ressources.\n" #~ "Valeur minimale 0,001 seconde et maximale 0,2 seconde." +#~ msgid "Shaders" +#~ msgstr "Nuanceurs" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (expérimental)" @@ -9071,6 +9170,16 @@ msgstr "Limite parallèle de cURL" #~ "Les nuanceurs permettent des effets visuels avancés et peuvent améliorer " #~ "les performances de certaines cartes graphiques." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Les nuanceurs sont un élément fondamental du rendu et permettent des " +#~ "effets visuels avancés." + +#~ msgid "Shaders are disabled." +#~ msgstr "Les nuanceurs sont désactivés." + #~ msgid "Shadow limit" #~ msgstr "Limite des ombres" @@ -9102,6 +9211,9 @@ msgstr "Limite parallèle de cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Lisse la rotation de la caméra. 0 pour désactiver." +#~ msgid "Sound system is disabled" +#~ msgstr "Le système audio est désactivé" + #~ msgid "Special" #~ msgstr "Spécial" @@ -9152,6 +9264,12 @@ msgstr "Limite parallèle de cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Cette police sera utilisée pour certaines langues." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Cette configuration n'est pas recommandée." + +#~ msgid "Time send interval" +#~ msgstr "Intervalle d'envoi de l'heure" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Pour activer les shaders, le pilote OpenGL doit être utilisé." @@ -9278,6 +9396,18 @@ msgstr "Limite parallèle de cURL" #~ msgid "Waving water" #~ msgstr "Vagues" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Quand « gui_scaling_filter_txr2img » est activé, copier les images du " +#~ "matériel au logiciel pour mise à l'échelle.\n" +#~ "Si désactivé, l'ancienne méthode de mise à l'échelle est utilisée, pour " +#~ "les pilotes vidéos qui ne supportent pas le chargement des textures " +#~ "depuis le matériel." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9291,6 +9421,12 @@ msgstr "Limite parallèle de cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Si les donjons font parfois saillie du terrain." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Détermine la désynchronisation des animations de texture de nœud par bloc " +#~ "de carte." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Détermine la possibilité des joueurs de tuer d'autres joueurs." diff --git a/po/ga/luanti.po b/po/ga/luanti.po index 3c1d5aa14..d897f814c 100644 --- a/po/ga/luanti.po +++ b/po/ga/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Irish ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cealaigh" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Sábháil" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Síol" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Cuardaigh" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Tairseach ollphluaise" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -163,7 +402,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -199,11 +437,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -248,18 +481,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cealaigh" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -384,6 +605,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -446,12 +673,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Sábháil" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Domhan:" @@ -602,11 +823,6 @@ msgstr "Aibhneacha" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Síol" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -742,6 +958,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -766,7 +998,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -778,223 +1010,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Cuardaigh" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1015,10 +1030,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1163,10 +1174,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1180,6 +1201,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Cluichí" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1192,10 +1218,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1278,23 +1320,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1304,6 +1329,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1324,6 +1353,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1336,10 +1369,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Athraigh Pasfhocal" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1368,26 +1397,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1401,31 +1410,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1462,18 +1455,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1510,14 +1491,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1530,38 +1503,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Athsceith" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1633,18 +1590,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Fuair tú bás" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Athraigh Pasfhocal" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Athsceith" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Fuair tú bás" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1972,7 +2014,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2020,7 +2062,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2032,7 +2074,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2056,7 +2098,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2072,11 +2114,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2108,7 +2150,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2120,7 +2162,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2128,15 +2170,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2144,11 +2186,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2156,7 +2198,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2192,7 +2234,7 @@ msgstr "Sean Pasfhocal" msgid "Passwords do not match!" msgstr "Ní hionann na pasfhocail!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2205,15 +2247,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2409,8 +2479,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2463,10 +2532,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2489,6 +2554,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2857,11 +2932,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2886,7 +2961,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3021,6 +3096,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3172,18 +3255,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Dícheadaigh pasfhocail folamh" @@ -3211,6 +3286,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3284,8 +3367,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3358,8 +3441,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3374,12 +3456,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3681,10 +3757,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3908,12 +3980,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3932,6 +3998,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4026,10 +4099,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4644,10 +4713,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4680,6 +4745,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4770,7 +4839,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5209,17 +5278,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5412,16 +5483,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5582,10 +5643,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5864,10 +5924,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5927,6 +5983,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5977,7 +6037,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6000,16 +6063,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6246,20 +6307,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6270,10 +6323,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6296,8 +6345,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" diff --git a/po/gd/luanti.po b/po/gd/luanti.po index 6ec37f392..26dddc5d8 100644 --- a/po/gd/luanti.po +++ b/po/gd/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-08-17 10:48+0000\n" "Last-Translator: Eoghan Murray \n" "Language-Team: Gaelic ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -164,7 +402,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "Backspace" @@ -201,11 +438,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -250,18 +482,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -384,6 +604,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -446,12 +672,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "" @@ -602,11 +822,6 @@ msgstr "Aibhnean" msgid "Sea level rivers" msgstr "Aibhnean air àirde na mara" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -743,6 +958,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -767,7 +998,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -779,223 +1010,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1016,10 +1030,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1165,11 +1175,21 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr " " +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1184,6 +1204,10 @@ msgstr "– Dochann: " msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1196,10 +1220,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1285,27 +1325,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -#, fuzzy -msgid "- Mode: " -msgstr " " - -#: src/client/game.cpp -#, fuzzy -msgid "- Public: " -msgstr " " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -#, fuzzy -msgid "- PvP: " -msgstr " " - -#: src/client/game.cpp -#, fuzzy -msgid "- Server Name: " -msgstr " " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1315,6 +1334,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1335,6 +1358,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1347,10 +1374,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1379,26 +1402,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1412,31 +1415,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1473,18 +1460,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Fiosrachadh mun gheama:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1521,14 +1496,6 @@ msgstr "Tha am modh gun bhearradh an comas (an aire: gun sochair “noclip”)" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1541,38 +1508,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1645,16 +1596,105 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" #: src/client/game.cpp -msgid "You died" +msgid "Zoom currently disabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Zoom currently disabled by game or mod" +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Mode: " +msgstr " " + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Public: " +msgstr " " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- PvP: " +msgstr " " + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Server Name: " +msgstr " " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Fiosrachadh mun gheama:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" msgstr "" #: src/client/gameui.cpp @@ -1986,7 +2026,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2035,7 +2075,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2047,7 +2087,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2071,7 +2111,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "Thoir gnogag dhùbailte air “leum” airson sgiathadh a thoglachadh" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2087,11 +2127,11 @@ msgstr "Meudaich an t-astar" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2123,7 +2163,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2135,7 +2175,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Tàislich" @@ -2143,15 +2183,15 @@ msgstr "Tàislich" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Toglaich sgiathadh" @@ -2159,11 +2199,11 @@ msgstr "Toglaich sgiathadh" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Toglaich am modh gun bhearradh" @@ -2171,7 +2211,7 @@ msgstr "Toglaich am modh gun bhearradh" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2207,7 +2247,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2220,15 +2260,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr " " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Dì-bhugachadh gineadair nam mapa" @@ -2432,8 +2500,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2486,10 +2553,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2512,6 +2575,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2891,11 +2964,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2920,7 +2993,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3056,6 +3129,14 @@ msgstr "Ìre an loga dì-bhugachaidh" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3209,18 +3290,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3248,6 +3321,14 @@ msgstr "Thoir gnogag dhùbailte airson leum no sgiathadh" msgid "Double-tapping the jump key toggles fly mode." msgstr "Toglaichidh gnogag dhùbailte air iuchair an leuma am modh sgiathaidh." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Dumpaich fiosrachadh dì-bhugachaidh aig gineadair nam mapa." @@ -3321,8 +3402,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3395,8 +3476,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3411,12 +3491,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3729,10 +3803,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3974,12 +4044,6 @@ msgstr "" "chleachdadh\n" "airson dìreadh." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3998,6 +4062,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4097,10 +4168,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4762,10 +4829,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4800,6 +4863,10 @@ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" "An àireamh as lugha de dh’uamhan beaga air thuaiream anns gach cnap mapa." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4894,7 +4961,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5341,17 +5408,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5546,16 +5615,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5724,10 +5783,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6025,10 +6083,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6087,6 +6141,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6141,7 +6199,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6164,16 +6225,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6412,20 +6471,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6436,10 +6487,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6462,8 +6509,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6782,386 +6828,386 @@ msgstr "" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thoglaicheas an sgiathadh.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a ghluaiseas gu luath sa mhodh luath.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a ghluaiseas an cluicheadair dhan taobh chlì.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a ghluaiseas an cluicheadair dhan taobh deas.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thoglaicheas an sgiathadh.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 11mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 12mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 13mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 14mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 15mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 16mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 17mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 18mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an 19mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 20mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 21mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 22mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 23mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 24mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 25mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 26mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 27mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 28mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 29mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 30mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 31mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas am 32mh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an t-ochdamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an còigeamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas a’ chiad slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an ceathramh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an ath-nì air a’ ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an naoidheamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an nì roimhe air a’ ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an dàrna slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an seachdamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an siathamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an deicheamh slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thaghas an treas slot dhen ghrad-bhàr.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair airson tàisleachadh.\n" #~ "Tha i ‘ga cleachdadh airson dìreadh agus dìreadh san uisge ma bhios " #~ "aux1_descends à comas.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thoglaicheas an sgiathadh.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "An iuchair a thoglaicheas am modh gun bhearradh.\n" -#~ "Faic http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Faic http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "Makes all liquids opaque" #~ msgstr "Dèan gach lionn trìd-dhoilleir" diff --git a/po/gl/luanti.po b/po/gl/luanti.po index 90dba133f..06cd26432 100644 --- a/po/gl/luanti.po +++ b/po/gl/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-02 23:00+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-13 12:44+0000\n" "Last-Translator: ninjum \n" "Language-Team: Galician \n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +77,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[todo | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Explorar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Seleccionar directorio" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Seleccionar ficheiro" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Establecer" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ningunha descripción da configuración dada)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Ruído 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancelar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaridade" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oitavas" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Desprazamento" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistencia" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Gardar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Escala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Semente" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Amplitude X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Amplitude Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Amplitude Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Valor absoluto" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Predefinido" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Suavizado" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(O xogo tamén necesitará habilitar a exposición automática.)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(O xogo tamén necesitará habilitar efecto de bloom.)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(O xogo tamén necesitará habilitar a iluminación volumétrica.)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Usar a linguaxe do sistema)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accesibilidade" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automático" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Limpar" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controis" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desactivado" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activado" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Xeral" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Movemento" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Non hai resultados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Restablecer a configuración predeterminada" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Restablecer a configuración predeterminada ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Procurar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Amosar configuracións avanzadas" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar nomes técnicos" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Disposición da pantalla táctil" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "_menú de pausa" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Modificacións de cliente" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contido: Xogos" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contido: modificacións" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(O xogo tamén precisará activar as sombras)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personalizado" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Sombras dinámicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Baixo" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Moi alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Moi baixo" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -163,7 +401,6 @@ msgstr "Todo" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Voltar" @@ -199,11 +436,6 @@ msgstr "Modificacións" msgid "No packages could be retrieved" msgstr "Non se puido recuperar ningún paquete" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Non hai resultados" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Sen actualizacións" @@ -248,18 +480,6 @@ msgstr "Xa está instalado" msgid "Base Game:" msgstr "Xogo base:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancelar" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -383,6 +603,14 @@ msgstr "Non se puido instalar un $1 como un $2" msgid "Unable to install a $1 as a texture pack" msgstr "Non se puido instalar $1 como paquete de texturas" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Esta é a lista de clientes conectados a\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Activado, ten erro)" @@ -447,12 +675,6 @@ msgstr "Sen dependencias opcionais" msgid "Optional dependencies:" msgstr "Dependencias opcionais:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Gardar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundo:" @@ -606,11 +828,6 @@ msgstr "Ríos" msgid "Sea level rivers" msgstr "Ríos ao nivel do mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Semente" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transición suave entre biomas" @@ -666,7 +883,7 @@ msgstr "Desexa eliminar \"$1\"?" #: builtin/mainmenu/dlg_delete_content.lua #: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_local.lua msgid "Delete" -msgstr "Eliminar" +msgstr "Borrar" #: builtin/mainmenu/dlg_delete_content.lua msgid "pkgmgr: failed to delete \"$1\"" @@ -754,6 +971,22 @@ msgstr "" "Este paquete de modificacións ten un nome explícito no seu modpack.conf que " "non permitirá cambios de nome aquí." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Expandir todo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Agrupar por prefixo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "O servidor $1 usa un xogo chamado $2 e as seguintes modificacións:" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "O servidor $1 usa as seguintes modificacións:" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Unha nova versión $1 está dispoñible" @@ -782,7 +1015,7 @@ msgstr "Nunca" msgid "Visit website" msgstr "Visitar sitio web" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Configuración" @@ -796,223 +1029,6 @@ msgstr "" "Tente volver activar a lista de servidores públicos e verifique a súa " "conexión a Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Explorar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Seleccionar directorio" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Seleccionar ficheiro" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Establecer" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ningunha descripción da configuración dada)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Ruído 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaridade" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oitavas" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Desprazamento" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistencia" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Escala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Amplitude X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Amplitude Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Amplitude Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Valor absoluto" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Predefinido" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Suavizado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(O xogo tamén necesitará habilitar a exposición automática.)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(O xogo tamén necesitará habilitar efecto de bloom.)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(O xogo tamén necesitará habilitar a iluminación volumétrica.)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Usar a linguaxe do sistema)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accesibilidade" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Automático" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Limpar" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controis" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desactivado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activado" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Xeral" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Movemento" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Restablecer a configuración predeterminada" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Restablecer a configuración predeterminada ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Procurar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Amosar configuracións avanzadas" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar nomes técnicos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Modificacións de cliente" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contido: Xogos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contido: modificacións" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Habilitar" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Os sombreadores están deshabilitados." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Esta non é unha configuración recomendada." - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(O xogo tamén precisará activar as sombras)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personalizado" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Sombras dinámicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Baixo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Moi alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Moi baixo" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Acerca de" @@ -1033,10 +1049,6 @@ msgstr "Desenvolvedores principais" msgid "Core Team" msgstr "Equipo Central" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Dispositivo Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Abrir dir. datos de usuario" @@ -1186,10 +1198,22 @@ msgstr "Xogar só" msgid "You need to install a game before you can create a world." msgstr "Tes que instalar un xogo antes de poder crear un mundo." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Engadir aos favoritos" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Enderezo" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Clientes:\n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modo creativo" @@ -1203,6 +1227,10 @@ msgstr "Dano / PvP" msgid "Favorites" msgstr "Favoritos" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Xogo: $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servidores incompatibles" @@ -1215,10 +1243,30 @@ msgstr "Xogar en liña" msgid "Login" msgstr "Identificarse" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Número de modificacións: $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Abrir o sitio web do servidor" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Filtros posibles\n" +"xogo:\n" +"mod:\"\n" +"xogador: close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controis:\n" -"Sen menú aberto:\n" -"- deslizar o dedo: mirar arredor\n" -"- toque: colocar/perforar/utilizar (predeterminado)\n" -"- Toque longo: cavar/utilizar (predeterminado)\n" -"Menú/inventario aberto:\n" -"- Dobre toque (exterior):\n" -" --> pechar\n" -"- pila táctil, rañura táctil:\n" -" --> mover pila\n" -"- toca e arrastra, toca co segundo dedo\n" -" --> coloca un único obxecto na rañura\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1439,32 +1442,15 @@ msgstr "Creando cliente..." msgid "Creating server..." msgstr "Creando servidor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Información de depuración e gráfico de análise do mundo ocultos" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Info de depuración mostrada" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" -"Info de depuración, gráfico de análise do mundo e estrutura de arames ocultos" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Erro creando cliente: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Saír ao menú" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Saír do xogo" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modo rápido desactivado" @@ -1501,18 +1487,6 @@ msgstr "Néboa activada" msgid "Fog enabled by game or mod" msgstr "Néboa habilitada polo xogo ou mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Información do xogo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Xogo pausado" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Servidor anfitrión" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definicións dos obxectos..." @@ -1549,14 +1523,6 @@ msgstr "Modo espectador activado (nota: sen permiso 'noclip')" msgid "Node definitions..." msgstr "Definicións de nodos..." -#: src/client/game.cpp -msgid "Off" -msgstr "Desactivado" - -#: src/client/game.cpp -msgid "On" -msgstr "Activado" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Modo de movemiento rotación vertical desactivado" @@ -1569,38 +1535,22 @@ msgstr "Modo de movemiento de rotación vertical activado" msgid "Profiler graph shown" msgstr "Gráfico de análise do mundo mostrado" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Servidor remoto" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Resolvendo enderezo..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reaparecer" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Cerrando..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Un xogador" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume do son" - #: src/client/game.cpp msgid "Sound muted" msgstr "Sonido silenciado" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "O sistema de son está desactivado" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "O sistema de son non é compatible con esta versión" @@ -1676,18 +1626,115 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volume cambiado a %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "O wireframe non é compatible co controlador de vídeo" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Estrutura de arames mostrada" -#: src/client/game.cpp -msgid "You died" -msgstr "Morreches" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "O zoom está actualmente desactivado polo xogo ou mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modo: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Público: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Xogador contra xogador: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nome do servidor: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Cambiar contrasinal" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controis:\n" +"Sen menú aberto:\n" +"- deslizar o dedo: mirar arredor\n" +"- toque: colocar/perforar/utilizar (predeterminado)\n" +"- Toque longo: cavar/utilizar (predeterminado)\n" +"Menú/inventario aberto:\n" +"- Dobre toque (exterior):\n" +" --> pechar\n" +"- pila táctil, rañura táctil:\n" +" --> mover pila\n" +"- toca e arrastra, toca co segundo dedo\n" +" --> coloca un único obxecto na rañura\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Saír ao menú" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Saír do xogo" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Información do xogo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Xogo pausado" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Servidor anfitrión" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Desactivado" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Activado" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Servidor remoto" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reaparecer" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume do son" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Morreches" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat actualmente desactivado polo xogo ou mod" @@ -2014,8 +2061,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Produciuse un erro ao compilar o sombreador \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "Os sombreadores están habilitados pero o controlador non admite GLSL." +msgid "GLSL is not supported by the driver" +msgstr "GLSL non é compatible co controlador" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2066,7 +2113,7 @@ msgstr "Avance automático" msgid "Automatic jumping" msgstr "Salto automático" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2078,7 +2125,7 @@ msgstr "Atrás" msgid "Block bounds" msgstr "Lím. bloques" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Cambiar cámara" @@ -2102,7 +2149,7 @@ msgstr "Baixar volume" msgid "Double tap \"jump\" to toggle fly" msgstr "Con 2 veces \"saltar\" voas" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Soltar" @@ -2118,11 +2165,11 @@ msgstr "Aum. alcance" msgid "Inc. volume" msgstr "Subir volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventario" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Saltar" @@ -2154,7 +2201,7 @@ msgstr "Seg. obxecto" msgid "Prev. item" msgstr "Obxecto anterior" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Sel. alcance" @@ -2166,7 +2213,7 @@ msgstr "Dereita" msgid "Screenshot" msgstr "Captura" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Ir Agachado" @@ -2174,15 +2221,15 @@ msgstr "Ir Agachado" msgid "Toggle HUD" msgstr "Alt. HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Alt. rexistro chat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Alt. correr" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Alt. voo" @@ -2190,11 +2237,11 @@ msgstr "Alt. voo" msgid "Toggle fog" msgstr "Alt. néboa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Alt. minimapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Modo espectar" @@ -2202,7 +2249,7 @@ msgstr "Modo espectar" msgid "Toggle pitchmove" msgstr "Alt. rot. vertical" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2238,7 +2285,7 @@ msgstr "Anterior contrasinal" msgid "Passwords do not match!" msgstr "Os contrasinais non coinciden!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Pechar" @@ -2251,15 +2298,43 @@ msgstr "Silenciado" msgid "Sound Volume: %d%%" msgstr "Son: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Engadir botón" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Feito" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Eliminar" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Restablecer" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "Comeza a arrastrar un botón para engadir. Toca fóra para cancelar." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "Toca un botón para seccionalo. Arrastra un botón para movelo." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Toca fóra para deseleccionar." + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "Joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "Menú de desbordamento" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "Activar/desactivar depuración" @@ -2493,19 +2568,17 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Soporte 3D.\n" "Soportado actualmente:\n" -"- none: sen saída 3D.\n" -"- anaglyph: 3D en cor ciano/maxenta.\n" -"- interlaced: soporte de pantalla polarizada baseada en liñas par/ímpar.\n" -"- topbottom: pantalla dividida superior/inferior.\n" -"- sidebyside: pantalla dividida lado a lado.\n" -" - crossview: 3D para ver cruzado\n" -"Teña en conta que o modo entrelazado require cos sombreadores estean " -"activados." +"- ningún: sen saída 3D.\n" +"- anáglifo: 3D en cor ciano/maxenta.\n" +"- entrelazado: soporte de pantalla polarizada baseada en liñas par/ímpar." +"\n" +"- arriba-abaixo: pantalla dividida superior/inferior.\n" +"- lado a lado: pantalla dividida lado a lado.\n" +"- vista cruzada: 3D para ver cruzado" #: src/settings_translation_file.cpp msgid "" @@ -2560,10 +2633,6 @@ msgstr "Rango de bloque activo" msgid "Active object send range" msgstr "Rango de envío en obxetos activos" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Añade partículas ao excavar un nó." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2593,6 +2662,19 @@ msgstr "Nome de administrador" msgid "Advanced" msgstr "Avanzado" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Todos os buffers de malla con menos de este número de vértices serán " +"fusionados\n" +"durante o renderizado do mapa. Isto mellora o rendemento do renderizado." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Permitir que as nubes se vexan en 3D en vez de planas." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Permite que os líquidos sexan translúcidos." @@ -2996,14 +3078,14 @@ msgstr "Radio de nubes" msgid "Clouds" msgstr "Nubes" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "As nubes son un efecto do lado do cliente." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nubes no menú" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Profundidade de cor para a textura de post-procesamento" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Néboa colorida" @@ -3028,7 +3110,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Lista de bandeiras separadas por comas que se ocultarán no repositorio de " "contido.\n" @@ -3199,6 +3281,19 @@ msgstr "Nivel de rexistro de depuración" msgid "Debugging" msgstr "Depuración" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Decide a profundidade de cor da textura utilizada para o proceso de post-" +"procesamento.\n" +"Reducir isto pode mellorar o rendemento, pero algúns efectos (por exemplo, " +"tramado)\n" +"require máis de 8 bits para funcionar." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Intervalo de servidor dedicado" @@ -3379,18 +3474,10 @@ msgstr "" "Os desertos aparecen cando np_biome supera este valor.\n" "Cando a marca 'snowbiomes' actívase, isto é ignorado." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Desincronizar a animación dos bloques" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opcións de desenvolvedor" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Partículas ao excavar" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Non permitir contrasinais baleiros" @@ -3423,6 +3510,19 @@ msgstr "Pulsar dúas veces \"salto\" para voar" msgid "Double-tapping the jump key toggles fly mode." msgstr "Pulsar dúas veces \"salto\" serve para activar e desactivar o voo." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Debuxar triángulos ordenados por transparencia agrupados polos seus buffers " +"de malla.\n" +"Isto rompe a orde de transparencia entre os buffers de malla, pero evita " +"situacións\n" +"onde a orde de transparencia sería moi lenta noutro caso." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Mostrar información de depuración do xerador de terreos." @@ -3507,12 +3607,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Activar sombras coloridas.\n" -"Se o valor é verdadeiro, os bloques traslúcidos proxectarán sombras " -"coloridas. Esta opción precisa de moitos recursos." +"Activar sombras coloreadas para nós translúcidos.\n" +"Isto é custoso." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3600,12 +3699,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" -"Activa/desactiva a execución dun servidor IPv6.\n" -"Ignorado se establécese bind_address.\n" -"É preciso enable_ipv6 para activalo." +"Activar/desactivar a execución dun servidor IPv6.\n" +"Ignorado se está configurada a bind_address." #: src/settings_translation_file.cpp msgid "" @@ -3623,14 +3720,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Activa a animación de obxectos no inventario." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"Habilita a caché de mallas rotadas por cara.\n" -"Isto só é efectivo cos sombreadores deshabilitados." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3982,10 +4071,6 @@ msgstr "Escala de IGU" msgid "GUI scaling filter" msgstr "Filtro de escala de IGU" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtro de escala de IGU \"txr2img\"" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Mandos" @@ -4253,14 +4338,6 @@ msgstr "" "para baixar e\n" "descender." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Activar confirmación de rexistro ao se conectar ao servidor\n" -"Se está desactivado, rexistrarase unha nova conta automáticamente." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4286,6 +4363,17 @@ msgstr "" "Se está habilitado, os xogadores non poden unirse sen un contrasinal ou " "cambiar o seu contrasinal a un contrasinal baleiro." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Se está activado, o rexistro da conta do servidor é separado do inicio de " +"sesión na interface de usuario.\n" +"Se está desactivado, conectar a un servidor rexistrará automaticamente unha " +"nova conta." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4409,10 +4497,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "Intervalo para gardado de cambios importantes no mundo, indicado en segundos." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Intervalo de envío da hora do día aos clientes, expresado en segundos." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animacións dos obxectos do inventario" @@ -5145,10 +5229,6 @@ msgstr "" msgid "Maximum users" msgstr "Usuarios máximos" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Caché de malla" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Mensaxe do día" @@ -5181,6 +5261,10 @@ msgstr "Ruído 3D que determina a cantidade de calabozos por chunk." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Límite mínimo do número aleatorio de covas pequenas por chunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Contaxe mínima de vértices para os buffers de malla" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mapeo de Mip" @@ -5276,13 +5360,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nome do xogador.\n" -"Cando se executa un servidor, os clientes que se conectan con este nome son " -"administradores.\n" -"Ao comezar desde o menú principal, isto substitúese." +"Cando se executa un servidor, un cliente que se conecte con este nome será " +"administrador.\n" +"Cando se inicie desde o menú principal, isto será substituído." #: src/settings_translation_file.cpp msgid "" @@ -5795,23 +5879,26 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "Ver https://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6079,18 +6166,6 @@ msgstr "" msgid "Shader path" msgstr "Camiño dos sombreadores" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Sombreadores" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" -"Os sombreadores son unha parte fundamental do renderizado e permiten efectos " -"visuais avanzados." - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Calidade do filtro de sombras" @@ -6282,17 +6357,15 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" -"Distribuír unha actualización completa do mapa de sombras sobre unha " -"determinada cantidade de fotogramas.\n" -"Os valores máis altos poden facer cas sombras sexan lentas e os valores máis " -"baixos\n" -"consumirán máis recursos.\n" -"Valor mínimo: 1; Valor máximo 16" +"Espallar unha actualización completa do mapa de sombras ao longo dun número " +"determinado de fotogramas.\n" +"Valores máis altos poden facer que as sombras vaian con retardo, mentres que " +"valores máis baixos\n" +"consumirán máis recursos." #: src/settings_translation_file.cpp msgid "" @@ -6575,7 +6648,7 @@ msgid "" msgstr "" "O backend de renderizado.\n" "Nota: É necesario reiniciar despois de cambiar isto!\n" -"OpenGL é o predeterminado para escritorio, e OGLES2 para Android" +"OpenGL é o predeterminado para escritorio, e OGLES2 para Android." #: src/settings_translation_file.cpp msgid "" @@ -6672,10 +6745,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Hora do día en que se inicia un novo mundo, en milihoras (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalo de envío de tempo" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Velocidade do tempo" @@ -6742,6 +6811,10 @@ msgstr "Líquidos translúcidos" msgid "Transparency Sorting Distance" msgstr "Distancia de ordenación de transparencias" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Grupo de orde de transparencia por buffers" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Ruído das árbores" @@ -6805,14 +6878,20 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "A submostraxe é semellante ao uso dunha resolución de pantalla inferior, " "pero aplícase\n" "só para o mundo, mantendo a GUI intacta.\n" "Debería dar un aumento máis significativo do rendemento a costa dunha imaxe " "menos detallada.\n" -"Os valores máis altos dan como resultado unha imaxe menos detallada." +"Os valores máis altos dan como resultado unha imaxe menos detallada.\n" +"Nota: A submostraxe actualmente non está soportada se a configuración " +"'3d_mode' está establecida\n" +"cun valor non predeterminado." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6834,17 +6913,18 @@ msgstr "Límite Y superior dos calabozos." msgid "Upper Y limit of floatlands." msgstr "Límite Y superior dos terreos flotantes." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Activa as nubes 3D en lugar de nubes 2D (planas)." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Usa unha animación de nube para o fondo do menú principal." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." -msgstr "Usar filtrado anisotrópico ao observar texturas desde un ángulo." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." +msgstr "" +"Usar filtrado anisotrópico ao observar texturas desde un ángulo.\n" +"Isto proporciona unha mellora significativa cando se usa xunto con " +"mipmapping." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -6852,15 +6932,15 @@ msgstr "Usar filtrado bilineal ao escalar texturas." #: src/settings_translation_file.cpp msgid "Use crosshair for touch screen" -msgstr "Usar retículo para pantalla táctil" +msgstr "Usar punto de mira na pantalla táctil" #: src/settings_translation_file.cpp msgid "" "Use crosshair to select object instead of whole screen.\n" "If enabled, a crosshair will be shown and will be used for selecting object." msgstr "" -"Usar retículo para seleccionar obxectos en vez de toda a pantalla.\n" -"Se está activado, mostrarase un retículo que se utilizará para seleccionar " +"Usar punto de mira para escoller obxectos en troques de toda a pantalla.\n" +"Se está activado, amosarase un punto de mira que se empregará para escoller " "obxectos." #: src/settings_translation_file.cpp @@ -7117,39 +7197,25 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Cando gui_scaling_filter_txr2img teña un valor verdadeiro, copia esas " -"imaxes\n" -"do hardware ao software para escalar. Cando sexa falso, retrocede\n" -"ao método de escala antigo para controladores de vídeo que non o fan\n" -"admite correctamente a descarga de texturas desde o hardware." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"Cando se usan filtros bilineais/trilineais/anisótropos, texturas de baixa " -"resolución\n" -"poden ser borrosas, polo que amplíaos automaticamente co veciño máis " -"próximo\n" -"interpolación para preservar píxeles nítidos. Isto establece o tamaño mínimo " -"de textura\n" -"para as texturas mejoradas; valores máis altos parecen máis nítidos, pero " -"requiren máis\n" -"memoria. Recoméndase potencias de 2. Esta configuración só se aplica se\n" -"O filtrado bilineal/trilineal/anisótropo está activado.\n" -"Tamén se usa como tamaño de textura do nodo base para aliñados ao mundo\n" +"Cando se usa filtrado bilineal/trilineal, as texturas de baixa resolución\n" +"poden quedar borrosas, polo que esta opción amplía automaticamente as " +"texturas para preservar\n" +"píxeles nítidos. Isto define o tamaño mínimo da textura para as texturas " +"ampliadas;\n" +"valores máis altos son máis nítidos, pero requiren máis memoria.\n" +"Esta configuración APLÍCASE SÓ se algún dos filtros mencionados está " +"habilitado.\n" +"Este tamén se usa como tamaño de textura do nodo base para aliñados ao " +"mundo\n" "autoescalado de texturas." #: src/settings_translation_file.cpp @@ -7160,12 +7226,6 @@ msgstr "" "Indica se os fondos das etiquetas de nome deberían mostrarse por defecto.\n" "As modificacións aínda poden establecer un fondo." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Indica se as animacións de textura de nós deben desincronizarse por bloque " -"de mapas." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7193,16 +7253,15 @@ msgstr "Indica se hai que poñar néboa ao final da zona visible." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" -"Indica se hai que silenciar os sons. Podes activar o son en calquera " -"momento, a non ser que\n" -"esté desactivado (enable_sound=false).\n" -"No xogo podes cambiar o estado de silencio coa tecla de silencio ou no\n" -"menú de pausa." +"Se activar ou desactivar os sons. Pódese reactivar o son en calquera momento." +"\n" +"No xogo, podes alternar o estado de silencio coa tecla de silencio ou " +"utilizando\n" +"o menú de pausa." #: src/settings_translation_file.cpp msgid "" @@ -7375,6 +7434,9 @@ msgstr "Límite paralelo de cURL" #~ "Teña en conta que o campo de enderezo do menú principal anula esta " #~ "configuración." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Añade partículas ao excavar un nó." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7465,6 +7527,9 @@ msgstr "Límite paralelo de cURL" #~ msgid "Clean transparent textures" #~ msgstr "Limpar texturas transparentes" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "As nubes son un efecto do lado do cliente." + #~ msgid "Command key" #~ msgstr "Tecla comando" @@ -7528,9 +7593,17 @@ msgstr "Límite paralelo de cURL" #~ msgid "Damage" #~ msgstr "Dano" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Información de depuración e gráfico de análise do mundo ocultos" + #~ msgid "Debug info toggle key" #~ msgstr "Alt. inf. para depuración" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Info de depuración, gráfico de análise do mundo e estrutura de arames " +#~ "ocultos" + #~ msgid "Dec. volume key" #~ msgstr "Tecla baixar volume" @@ -7563,9 +7636,15 @@ msgstr "Límite paralelo de cURL" #~ msgid "Del. Favorite" #~ msgstr "Eliminar fav." +#~ msgid "Desynchronize block animation" +#~ msgstr "Desincronizar a animación dos bloques" + #~ msgid "Dig key" #~ msgstr "Tecla romper bloque" +#~ msgid "Digging particles" +#~ msgstr "Partículas ao excavar" + #~ msgid "Disable anticheat" #~ msgstr "Desactivar anticheat" @@ -7587,6 +7666,9 @@ msgstr "Límite paralelo de cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Sombras dinámicas:" +#~ msgid "Enable" +#~ msgstr "Habilitar" + #~ msgid "Enable creative mode for all players" #~ msgstr "Activar o modo creativo para todos os xogadores" @@ -7606,6 +7688,13 @@ msgstr "Límite paralelo de cURL" #~ "Activar os objectos buffer de vértice.\n" #~ "Isto debería mellorar muito o rendimento gráfico." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Habilita a caché de mallas rotadas por cara.\n" +#~ "Isto só é efectivo cos sombreadores deshabilitados." + #~ msgid "Enables minimap." #~ msgstr "Activa o minimapa." @@ -7690,8 +7779,8 @@ msgstr "Límite paralelo de cURL" #~ msgid "Forward key" #~ msgstr "Tecla avance" -#~ msgid "Game" -#~ msgstr "Xogo" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtro de escala de IGU \"txr2img\"" #~ msgid "HUD scale factor" #~ msgstr "Factor de escala HUD" @@ -7838,663 +7927,670 @@ msgstr "Límite paralelo de cURL" #~ msgid "Instrumentation" #~ msgstr "Instrumentación" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Intervalo de envío da hora do día aos clientes, expresado en segundos." + #~ msgid "Invalid gamespec." #~ msgstr "Especificación do xogo non válida." #~ msgid "Inventory key" #~ msgstr "Tecla de inventario" +#~ msgid "Irrlicht device:" +#~ msgstr "Dispositivo Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tecla de salto" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para disminuir o campo de visión.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para disminuir o volume.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para romper bloques.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para soltar o obxecto seleccionado.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar o campo de visión.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar o volume.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para saltar.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para moverse máis axilmente en modo rápido.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o xogador cara atrás.\n" #~ "Tamén desactivará o desprazamento automático cando estea activo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para moverse cara adiante.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para moverse cara esquerda.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para moverse cara dereita.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para silenciar o xogo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a xanela do chat e escribir comandos.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a xanela do chat e escribir comandos locales.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a xanela do chat.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir o inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para colocar un obxecto.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 11 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 12 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 13 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 14 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 15 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 16 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 17 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 18 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 19 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 20 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 21 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 22 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 23 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 24 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 25 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 26 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 27 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 28 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 29 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 30 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 31 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 32 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 8 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 5 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 1 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 4 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar o seguinte obxecto na barra de acceso directo do " #~ "inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 9 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar o obxecto anterior na barra de acceso directo do " #~ "inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 2 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 7 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 6 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 10 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para seleccionar a rañura 3 do inventario.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para agacharse.\n" #~ "Tamén serve para descender dentro da auga se aux1_descends está " #~ "desactivado.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para cambiar entre a cámara en primeira e terceira persoa.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para facer capturas.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar avance automático.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo cinemático.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar visualización do minimapa.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo rápido.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar voo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo espectador.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo de rotación horizontal.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar actualización da cámara. Usado só para o " #~ "desenvolvemento.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar chat.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar visualización de información de depuración.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar a visualización da néboa.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar visualización do HUD.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar visualización do chat de consola largo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar a análise do mundo. Emprégase para o " #~ "desenvolvemento.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar campo de visión ilimitado.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para facer zoom cando sexa posible.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8549,6 +8645,9 @@ msgstr "Límite paralelo de cURL" #~ msgid "Menus" #~ msgstr "Menús" +#~ msgid "Mesh cache" +#~ msgstr "Caché de malla" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -8671,6 +8770,9 @@ msgstr "Límite paralelo de cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Servidor / Un xogador" +#~ msgid "Shaders" +#~ msgstr "Sombreadores" + #~ msgid "Shaders (experimental)" #~ msgstr "Sombreadores (experimental)" @@ -8686,6 +8788,16 @@ msgstr "Límite paralelo de cURL" #~ "rendemento nalgunhas\n" #~ "tarxetas gráficas." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Os sombreadores son unha parte fundamental do renderizado e permiten " +#~ "efectos visuais avanzados." + +#~ msgid "Shaders are disabled." +#~ msgstr "Os sombreadores están deshabilitados." + #~ msgid "Shape of the minimap. Enabled = round, disabled = square." #~ msgstr "Forma do minimapa. Activado = redondo, desactivado = cadrado." @@ -8708,6 +8820,9 @@ msgstr "Límite paralelo de cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Suaviza a rotación da cámara. 0 para desactivar." +#~ msgid "Sound system is disabled" +#~ msgstr "O sistema de son está desactivado" + #~ msgid "Texture path" #~ msgstr "Camiño dos packs de textura" @@ -8732,6 +8847,12 @@ msgstr "Límite paralelo de cURL" #~ "Suaviza a cámara ao mirar arredor. Tamén se chama suavización do rato.\n" #~ "Útil para gravar vídeos." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Esta non é unha configuración recomendada." + +#~ msgid "Time send interval" +#~ msgstr "Intervalo de envío de tempo" + #~ msgid "Toggle camera mode key" #~ msgstr "Tecla para alternar o modo cámara" @@ -8811,6 +8932,24 @@ msgstr "Límite paralelo de cURL" #~ msgid "Waving Plants" #~ msgstr "Movemento das plantas" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Cando gui_scaling_filter_txr2img teña un valor verdadeiro, copia esas " +#~ "imaxes\n" +#~ "do hardware ao software para escalar. Cando sexa falso, retrocede\n" +#~ "ao método de escala antigo para controladores de vídeo que non o fan\n" +#~ "admite correctamente a descarga de texturas desde o hardware." + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Indica se as animacións de textura de nós deben desincronizarse por " +#~ "bloque de mapas." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Se permitir que os xogadores se danen e se maten entre si." diff --git a/po/he/luanti.po b/po/he/luanti.po index c1d1248b3..a58aea72e 100644 --- a/po/he/luanti.po +++ b/po/he/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Hebrew (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-05-04 14:07+0000\n" "Last-Translator: jhon game \n" "Language-Team: Hebrew ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "דפדף" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "עריכה" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "נא לבחור תיקיה" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "נא לבחור קובץ" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(לא נוסף תיאור להגדרה)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "רעש דו-מיימדי" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ביטול" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "מרווחיות" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "אוקטבות" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "היסט" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "התמדה" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "שמירה" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "קנה מידה" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "זרע" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "מרווחיות X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "מרווחיות Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "מרווחיות Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "ערך מוחלט" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "ברירת מחדל" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "החלקת ערכים" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "צ'אט" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "נקה" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "מושבת" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "מופעל" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "אין תוצאות" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "שחזור לברירת המחדל" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "חיפוש" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "הצגת שמות טכניים" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "סף נגיעה: (px)" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "בחירת שיפורים" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "תוכן" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "תוכן" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -169,7 +414,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "אחורה" @@ -207,11 +451,6 @@ msgstr "שיפורים" msgid "No packages could be retrieved" msgstr "לא ניתן להביא את החבילות" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "אין תוצאות" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "אין עדכונים" @@ -257,18 +496,6 @@ msgstr "כבר מותקן" msgid "Base Game:" msgstr "משחק בסיסי:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "ביטול" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -397,6 +624,12 @@ msgstr "אין אפשרות להתקין שיפור בשם $1" msgid "Unable to install a $1 as a texture pack" msgstr "לא ניתן להתקין $1 כחבילת טקסטורות" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -461,12 +694,6 @@ msgstr "אין תלויות רשות" msgid "Optional dependencies:" msgstr "תלויות אופציונאליות:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "שמירה" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "עולם:" @@ -618,11 +845,6 @@ msgstr "נהרות" msgid "Sea level rivers" msgstr "נהרות בגובה פני הים" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "זרע" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "מעבר חלק בין אזורי אקלים שונים" @@ -762,6 +984,23 @@ msgstr "" "לערכת שיפורים זו יש שם מפורש שניתן בקובץ modpack.conf שלה שיעקוף כל שינוי שם " "מכאן." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "להפעיל הכול" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -786,7 +1025,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "הגדרות" @@ -799,231 +1038,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "נא לנסות לצאת ולהיכנס מחדש לרשימת השרתים ולבדוק את החיבור שלך לאינטרנט." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "דפדף" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "עריכה" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "נא לבחור תיקיה" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "נא לבחור קובץ" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(לא נוסף תיאור להגדרה)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "רעש דו-מיימדי" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "מרווחיות" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "אוקטבות" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "היסט" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "התמדה" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "קנה מידה" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "מרווחיות X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "מרווחיות Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "מרווחיות Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "ערך מוחלט" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "ברירת מחדל" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "החלקת ערכים" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "צ'אט" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "נקה" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "מושבת" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "מופעל" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "שחזור לברירת המחדל" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "חיפוש" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "הצגת שמות טכניים" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "בחירת שיפורים" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "תוכן" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "תוכן" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "מופעל" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "עדכון מצלמה מבוטל" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1045,10 +1059,6 @@ msgstr "מפתחים עיקריים" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "נא לבחור תיקיית משתמש" @@ -1199,11 +1209,23 @@ msgstr "התחלת המשחק" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "מחק מועדף" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- כתובת: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "לקוח" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "מצב יצירתי" @@ -1219,6 +1241,11 @@ msgstr "חבלה" msgid "Favorites" msgstr "מועדף" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "משחק" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1231,10 +1258,26 @@ msgstr "הצטרפות למשחק" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "פינג" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1324,23 +1367,6 @@ msgstr "" "\n" "בדוק את debug.txt לפרטים נוספים." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- מצב: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- ציבורי: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- קרב: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- שם שרת: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1351,6 +1377,11 @@ msgstr "אירעה שגיאה:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "מידע דיבאג מוצג" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "התקדמות אוטומטית קדימה מבוטלת" @@ -1371,6 +1402,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "עדכון מצלמה מבוטל" @@ -1384,10 +1419,6 @@ msgstr "עדכון מצלמה מופעל" msgid "Can't show block bounds (disabled by game or mod)" msgstr "המבט מקרוב מושבת על ידי המשחק או השיפור" -#: src/client/game.cpp -msgid "Change Password" -msgstr "שנה סיסמה" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "מצב קולנועי מבוטל" @@ -1417,39 +1448,6 @@ msgstr "בעיה בחיבור (נגמר זמן ההמתנה?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "המשך" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"פקדי ברירת מחדל:\n" -"לא נראה תפריט:\n" -"- לחיצה בודדת: הפעלת כפתור\n" -"- הקשה כפולה: מקום / שימוש\n" -"- החלק אצבע: הביט סביב\n" -"תפריט / מלאי גלוי:\n" -"- לחיצה כפולה (בחוץ):\n" -"--> סגור\n" -"- מחסנית מגע, חריץ מגע:\n" -"--> הזז מחסנית\n" -"- גע וגרור, הקש על האצבע השנייה\n" -"--> מקם פריט יחיד לחריץ\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1463,31 +1461,15 @@ msgstr "יוצר לקוח..." msgid "Creating server..." msgstr "יוצר שרת..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "מידע דיבאג וגרף פרופיילר מוסתר" - #: src/client/game.cpp msgid "Debug info shown" msgstr "מידע דיבאג מוצג" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "מידע דיבאג, גרף פרופיילר, ומצב שלד מוסתר" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "יוצר לקוח..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "יציאה לתפריט" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "יציאה למערכת ההפעלה" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "מצב המהירות מושבת" @@ -1525,18 +1507,6 @@ msgstr "ערפל מופעל" msgid "Fog enabled by game or mod" msgstr "המבט מקרוב מושבת על ידי המשחק או השיפור" -#: src/client/game.cpp -msgid "Game info:" -msgstr "מידע על המשחק:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "המשחק הושהה" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "שרת אירוח" - #: src/client/game.cpp msgid "Item definitions..." msgstr "הגדרות פריט..." @@ -1574,14 +1544,6 @@ msgstr "מעבר דרך קירות מופעל (שים לב, אין הרשאת 'n msgid "Node definitions..." msgstr "הגדרות קוביה..." -#: src/client/game.cpp -msgid "Off" -msgstr "מכובה" - -#: src/client/game.cpp -msgid "On" -msgstr "דולק" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "תנועה לכיוון מבט מכובה" @@ -1594,38 +1556,22 @@ msgstr "תנועה לכיוון מבט מופעל" msgid "Profiler graph shown" msgstr "גרף פרופיילר מוצג" -#: src/client/game.cpp -msgid "Remote server" -msgstr "שרת מרוחק" - #: src/client/game.cpp msgid "Resolving address..." msgstr "מפענח כתובת..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "הזדמן" - #: src/client/game.cpp msgid "Shutting down..." msgstr "מכבה..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "שחקן יחיד" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "ווליום שמע" - #: src/client/game.cpp msgid "Sound muted" msgstr "שמע מושתק" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "מערכת שמע לא מופעלת" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "מערכת שמע לא נתמכת בבניה הנוכחית" @@ -1699,18 +1645,116 @@ msgstr "טווח ראיה השתנה ל %d" msgid "Volume changed to %d%%" msgstr "עוצמת שמע שונתה ל %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "מסגרת שלדית מוצגת" -#: src/client/game.cpp -msgid "You died" -msgstr "מתת" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "המבט מקרוב מושבת על ידי המשחק או השיפור" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- מצב: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- ציבורי: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- קרב: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- שם שרת: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "שנה סיסמה" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "המשך" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"פקדי ברירת מחדל:\n" +"לא נראה תפריט:\n" +"- לחיצה בודדת: הפעלת כפתור\n" +"- הקשה כפולה: מקום / שימוש\n" +"- החלק אצבע: הביט סביב\n" +"תפריט / מלאי גלוי:\n" +"- לחיצה כפולה (בחוץ):\n" +"--> סגור\n" +"- מחסנית מגע, חריץ מגע:\n" +"--> הזז מחסנית\n" +"- גע וגרור, הקש על האצבע השנייה\n" +"--> מקם פריט יחיד לחריץ\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "יציאה לתפריט" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "יציאה למערכת ההפעלה" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "מידע על המשחק:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "המשחק הושהה" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "שרת אירוח" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "מכובה" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "דולק" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "שרת מרוחק" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "הזדמן" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "ווליום שמע" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "מתת" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2050,8 +2094,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "הורדת $1 נכשלה" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "מערכת שמע לא נתמכת בבניה הנוכחית" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2101,7 +2146,7 @@ msgstr "קדימה אוטומטי" msgid "Automatic jumping" msgstr "קפיצה אוטומטית" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2113,7 +2158,7 @@ msgstr "אחורה" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "שנה מצלמה" @@ -2137,7 +2182,7 @@ msgstr "הנמך ווליום" msgid "Double tap \"jump\" to toggle fly" msgstr "לחיצה כפולה על \"קפיצה\" כדי לכבות או להדליק את מצב התעופה" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "הפל" @@ -2153,11 +2198,11 @@ msgstr "הגדל טווח" msgid "Inc. volume" msgstr "הגבר ווליום" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "תיק חפצים" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "קפיצה" @@ -2189,7 +2234,7 @@ msgstr "הפריט הבא" msgid "Prev. item" msgstr "הפריט הקודם" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "בחר טווח" @@ -2201,7 +2246,7 @@ msgstr "ימינה" msgid "Screenshot" msgstr "צילום מסך" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "התכופף" @@ -2209,15 +2254,15 @@ msgstr "התכופף" msgid "Toggle HUD" msgstr "מתג מידע על מסך" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "מתג צא'ט לוג" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "מתג מצב מהיר" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "מתג תעופה" @@ -2225,11 +2270,11 @@ msgstr "מתג תעופה" msgid "Toggle fog" msgstr "מתג ערפל" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "מתג מפה קטנה" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "מתג מעבר דרך קירות" @@ -2237,7 +2282,7 @@ msgstr "מתג מעבר דרך קירות" msgid "Toggle pitchmove" msgstr "מתג תנועה לכיוון מבט" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "זום" @@ -2274,7 +2319,7 @@ msgstr "סיסמה ישנה" msgid "Passwords do not match!" msgstr "סיסמאות לא תואמות!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "יציאה" @@ -2287,15 +2332,46 @@ msgstr "מושתק" msgid "Sound Volume: %d%%" msgstr "עוצמת שמע: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "כפתור אמצעי" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "הסתיים!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "שרת מרוחק" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "מתג ערפל" @@ -2518,8 +2594,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "תמיכה בתלת מימד.\n" "נתמך כרגע:\n" @@ -2584,10 +2659,6 @@ msgstr "טווח בלוק פעיל" msgid "Active object send range" msgstr "טווח שליחת אובייקט פעיל" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "הוסף חלקיקים כשחופרים בקוביה." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2616,6 +2687,16 @@ msgstr "הוסף שם פריט" msgid "Advanced" msgstr "מתקדם" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3024,11 +3105,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -3053,7 +3134,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3188,6 +3269,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3339,20 +3428,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "קישוטים" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "חלקיקים" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3380,6 +3460,14 @@ msgstr "הקשה כפולה על \"קפיצה\" לתעופה" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3455,8 +3543,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3529,8 +3617,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3545,12 +3632,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3856,10 +3937,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4087,12 +4164,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4111,6 +4182,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4205,10 +4283,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4831,10 +4905,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4867,6 +4937,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "מיפמאפינג" @@ -4957,7 +5031,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5403,17 +5477,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5620,16 +5696,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "שיידרים" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5793,10 +5859,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6075,10 +6140,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6138,6 +6199,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6188,7 +6253,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6211,16 +6279,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6465,20 +6531,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6489,10 +6547,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6515,8 +6569,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6673,6 +6726,9 @@ msgstr "(cURL) מגבלה לפעולות במקביל" #~ "השאר את זה ריק כדי להפעיל שרת מקומי.\n" #~ "שים לב ששדה הכתובת בתפריט הראשי עוקף הגדרה זו." +#~ msgid "Adds particles when digging a node." +#~ msgstr "הוסף חלקיקים כשחופרים בקוביה." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6802,10 +6858,20 @@ msgstr "(cURL) מגבלה לפעולות במקביל" #~ msgid "Damage enabled" #~ msgstr "נזק מופעל" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "מידע דיבאג וגרף פרופיילר מוסתר" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "מידע דיבאג, גרף פרופיילר, ומצב שלד מוסתר" + #, fuzzy #~ msgid "Dig key" #~ msgstr "מקש התזוזה ימינה" +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "חלקיקים" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "ביטול טווח ראיה בלתי מוגבל" @@ -6818,6 +6884,10 @@ msgstr "(cURL) מגבלה לפעולות במקביל" #~ msgid "Download one from minetest.net" #~ msgstr "הורד אחד מאתר minetest.net" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "מופעל" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "אפשר בכל" @@ -6837,9 +6907,6 @@ msgstr "(cURL) מגבלה לפעולות במקביל" #~ msgid "Forward key" #~ msgstr "מקש התזוזה קדימה" -#~ msgid "Game" -#~ msgstr "משחק" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "הגדרות" @@ -6921,12 +6988,22 @@ msgstr "(cURL) מגבלה לפעולות במקביל" #~ msgid "Screen:" #~ msgstr "מסך:" +#~ msgid "Shaders" +#~ msgstr "שיידרים" + #~ msgid "Shaders (experimental)" #~ msgstr "שיידרים (נסיוני)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "עדכון מצלמה מבוטל" + #~ msgid "Simple Leaves" #~ msgstr "עלים פשוטים" +#~ msgid "Sound system is disabled" +#~ msgstr "מערכת שמע לא מופעלת" + #~ msgid "Special" #~ msgstr "מיוחד" diff --git a/po/hi/luanti.po b/po/hi/luanti.po index 3c1e3365a..34cb7b5de 100644 --- a/po/hi/luanti.po +++ b/po/hi/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-11-17 00:07+0000\n" "Last-Translator: Ritwik \n" "Language-Team: Hindi ] [-t]" msgstr "[सभी | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "ढूंढें" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "बदलें" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "फाईल पाथ चुनें" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "फाईल चुनें" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "सिलेक्ट" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(सेटिंग के बारे में कुछ नहीं बताया गया है)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "द्वि आयामी नॉइस" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "रद्द करें" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "लैकुनारिटी" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "सप्टक (आक्टेव)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "आफसेट" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "हठ (पर्सिस्टेन्स)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "सहेजें" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "स्केल" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "बीज" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X स्प्रेड" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y स्प्रेड" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z स्प्रेड" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "एब्सोल्यूट वैल्यू" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "डीफाल्ट" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "आरामदायक (ईज़्ड)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "बातें" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "खाली करें" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "कंट्रोल्स" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "रुका हुआ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "चालू" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "तेज चलन" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "परिणाम शून्य" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "मूल चुनें" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "ढूंढें" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "तकनीकी नाम देखें" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "माउस संवेदनशीलता" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "ग्राहक Mods" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "वस्तुएं" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "वस्तुएं" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "<अनुपलब्ध>" @@ -165,7 +410,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "पीछे" @@ -202,11 +446,6 @@ msgstr "माॅड" msgid "No packages could be retrieved" msgstr "कोई संदूक प्राप्त नहीं किया जा सका" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "परिणाम शून्य" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "अद्यतन अनुपलब्ध" @@ -252,18 +491,6 @@ msgstr "पहले ही संस्थापित है" msgid "Base Game:" msgstr "मूल खेल :" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "रद्द करें" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -393,6 +620,12 @@ msgstr "मॉड को $1 के रूप में इन्स्टाल msgid "Unable to install a $1 as a texture pack" msgstr "$1 कला संकुल के रूप में इन्स्टाल नहीं किया जा सका" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(सक्षम, त्रुटि है)" @@ -457,12 +690,6 @@ msgstr "वैकल्पिक निर्भरतायें नहीं msgid "Optional dependencies:" msgstr "वैकल्पिक निर्भरतायें :" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "सहेजें" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "विश्व :" @@ -613,11 +840,6 @@ msgstr "नदियाँ" msgid "Sea level rivers" msgstr "समुद्र तल की नदियाँ" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "बीज" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "जीवोमों के बीच सहज परिवर्तन" @@ -757,6 +979,23 @@ msgid "" "override any renaming here." msgstr "modpack.conf फाईल में इस माॅडपैक को जो नाम दिया गया है वही माना जाएगा।" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "सब सक्षम करें" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "एक नया $1 संस्करण उपलब्ध है" @@ -785,7 +1024,7 @@ msgstr "कभी नहीं" msgid "Visit website" msgstr "जालस्थल पर जायें" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "सेटिंग" @@ -798,231 +1037,6 @@ msgstr "क्लाइंट की तरफ से स्क्रिप् msgid "Try reenabling public serverlist and check your internet connection." msgstr "सार्वजनिक सर्वर शृंखला (सर्वर लिस्ट) को 'हां' करें और इंटरनेट कनेक्शन जांचें।" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "ढूंढें" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "बदलें" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "फाईल पाथ चुनें" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "फाईल चुनें" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "सिलेक्ट" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(सेटिंग के बारे में कुछ नहीं बताया गया है)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "द्वि आयामी नॉइस" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "लैकुनारिटी" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "सप्टक (आक्टेव)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "आफसेट" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "हठ (पर्सिस्टेन्स)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "स्केल" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X स्प्रेड" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y स्प्रेड" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z स्प्रेड" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "एब्सोल्यूट वैल्यू" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "डीफाल्ट" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "आरामदायक (ईज़्ड)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "बातें" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "खाली करें" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "कंट्रोल्स" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "रुका हुआ" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "चालू" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "तेज चलन" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "मूल चुनें" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "ढूंढें" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "तकनीकी नाम देखें" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "ग्राहक Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "वस्तुएं" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "वस्तुएं" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "चालू" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "कैमरा रुका हुआ" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "जानकारी" @@ -1043,10 +1057,6 @@ msgstr "मुख्य डेवेलपर" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1196,11 +1206,23 @@ msgstr "खेल शुरू करें" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "पसंद हटाएं" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- एड्रेस : " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "ग्राहक Mods" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "असीमित संसाधन" @@ -1216,6 +1238,11 @@ msgstr "- हानि : " msgid "Favorites" msgstr "पसंद" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "खेल" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1228,10 +1255,26 @@ msgstr "खेल में शामिल होएं" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "पिंग" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1321,23 +1364,6 @@ msgstr "" "\n" "अधिक जानकारी के लिए debug.txt देखें।" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- तकनीक : " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- सार्वजनिक : " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- खिलाड़ियों में मारा-पीटी : " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- सर्वर का नाम : " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1348,6 +1374,11 @@ msgstr "एक खराबी हो गयी :" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "डीबग जानकारी दिखाई दे रही है" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "स्वचाल रुका हुआ" @@ -1368,6 +1399,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "कैमरा रुका हुआ" @@ -1381,10 +1416,6 @@ msgstr "कैमरा चालू" msgid "Can't show block bounds (disabled by game or mod)" msgstr "खेल या मॉड़ के वजह से इस समय ज़ूम मना है" -#: src/client/game.cpp -msgid "Change Password" -msgstr "पासवर्ड बदलें" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "सिनेमा चाल रुका हुआ" @@ -1413,39 +1444,6 @@ msgstr "कनेक्शन खराबी (समय अंत?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "आगे बढ़ें" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"आम कंट्रोल्स :\n" -"कोई मेनू खुला नहीं है :\n" -"-एक बार टैप : बटन दबेगा\n" -"-दो टॉप: डालना/ इस्तेमाल करना\n" -"-उंगली फिसलाना : मुड़ना\n" -"कोई मेनू या वस्तु सूची खुली है :\n" -"-बाहर दो बार टैप :\n" -"--> बंद\n" -"- ढेर छूएं, स्थान छूएं\n" -"--> ढेर का स्थान बदलने के लिए\n" -"- छुए व खींचे, दूसरी उंगली से टैप करें\n" -"--> एक वस्तु स्थान में डालें\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1459,31 +1457,15 @@ msgstr "क्लाइंट बनाया जा रहा है ..." msgid "Creating server..." msgstr "सर्वर बनाया जा रहा है ..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "डीबग जानकारी व प्रोफाइल गायब" - #: src/client/game.cpp msgid "Debug info shown" msgstr "डीबग जानकारी दिखाई दे रही है" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "डीबग जानकारी, प्रोफाइलर व रूपरेखा गायब" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "क्लाइंट बनाया जा रहा है ..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "बंद करके मेनू पर जाएं" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "बंद करके ओ॰ एस॰ में जाएं" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "तेज चलन रुका हुआ" @@ -1521,18 +1503,6 @@ msgstr "कोहरा चालू" msgid "Fog enabled by game or mod" msgstr "खेल या मॉड़ के वजह से इस समय ज़ूम मना है" -#: src/client/game.cpp -msgid "Game info:" -msgstr "खेल की जानकारी :" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "खेल रुका हुआ है" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "सर्वर चलन" - #: src/client/game.cpp msgid "Item definitions..." msgstr "वस्तुओं के अर्थ ..." @@ -1570,14 +1540,6 @@ msgstr "तरल चाल चालू (सूचना: आपके पा msgid "Node definitions..." msgstr "डिब्बों का अर्थ ..." -#: src/client/game.cpp -msgid "Off" -msgstr "ऑफ" - -#: src/client/game.cpp -msgid "On" -msgstr "ऑन" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "पिच चलन रुका हुआ" @@ -1590,38 +1552,22 @@ msgstr "पिच चलन चालू" msgid "Profiler graph shown" msgstr "प्रोफाईलर दिखाई दे रहा है" -#: src/client/game.cpp -msgid "Remote server" -msgstr "बाहर का सर्वर" - #: src/client/game.cpp msgid "Resolving address..." msgstr "एड्रेस समझा जा रहा है ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "पुनः जीवित हों" - #: src/client/game.cpp msgid "Shutting down..." msgstr "शट डाउन हो रहा है ..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "एक-खिलाडी" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "आवाज़ वॉल्यूम" - #: src/client/game.cpp msgid "Sound muted" msgstr "आवाज़ बंद" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1695,18 +1641,116 @@ msgstr "दृष्टि सीमा बदलकर %d है" msgid "Volume changed to %d%%" msgstr "वॉल्यूम को बदलकर %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "डिब्बे रेखांकित" -#: src/client/game.cpp -msgid "You died" -msgstr "आपकी मौत हो गयी" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "खेल या मॉड़ के वजह से इस समय ज़ूम मना है" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- तकनीक : " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- सार्वजनिक : " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- खिलाड़ियों में मारा-पीटी : " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- सर्वर का नाम : " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "पासवर्ड बदलें" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "आगे बढ़ें" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"आम कंट्रोल्स :\n" +"कोई मेनू खुला नहीं है :\n" +"-एक बार टैप : बटन दबेगा\n" +"-दो टॉप: डालना/ इस्तेमाल करना\n" +"-उंगली फिसलाना : मुड़ना\n" +"कोई मेनू या वस्तु सूची खुली है :\n" +"-बाहर दो बार टैप :\n" +"--> बंद\n" +"- ढेर छूएं, स्थान छूएं\n" +"--> ढेर का स्थान बदलने के लिए\n" +"- छुए व खींचे, दूसरी उंगली से टैप करें\n" +"--> एक वस्तु स्थान में डालें\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "बंद करके मेनू पर जाएं" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "बंद करके ओ॰ एस॰ में जाएं" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "खेल की जानकारी :" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "खेल रुका हुआ है" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "सर्वर चलन" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "ऑफ" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "ऑन" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "बाहर का सर्वर" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "पुनः जीवित हों" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "आवाज़ वॉल्यूम" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "आपकी मौत हो गयी" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2047,7 +2091,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "$1 का डाऊनलोड असफल हुआ" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2098,7 +2142,7 @@ msgstr "स्वचालन" msgid "Automatic jumping" msgstr "कूदने के लिए बटन दबाना अनावश्यक" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2110,7 +2154,7 @@ msgstr "पीछे जाएं" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "कैमरा बदलना" @@ -2134,7 +2178,7 @@ msgstr "आवाज़ कम" msgid "Double tap \"jump\" to toggle fly" msgstr "उड़ने के लिए दो बार कूदें" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "वस्तु गिराना" @@ -2150,11 +2194,11 @@ msgstr "दृष्टि सीमा अधिक" msgid "Inc. volume" msgstr "आवाज अधिक" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "वस्तु सूची" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "कूदना" @@ -2186,7 +2230,7 @@ msgstr "अगला वस्तु" msgid "Prev. item" msgstr "पिछली वस्तु" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "दृष्टि सीमा चुनना" @@ -2198,7 +2242,7 @@ msgstr "दाहिना" msgid "Screenshot" msgstr "स्क्रीनशॉट" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "संभल के चलना" @@ -2206,15 +2250,15 @@ msgstr "संभल के चलना" msgid "Toggle HUD" msgstr "हे. अ. डि" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "बातें दिखना" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "तेज चलन" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "उड़ना" @@ -2222,11 +2266,11 @@ msgstr "उड़ना" msgid "Toggle fog" msgstr "कोहरा" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "छोटा नक्शा" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "तरल चाल" @@ -2234,7 +2278,7 @@ msgstr "तरल चाल" msgid "Toggle pitchmove" msgstr "पिच चलन" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "ज़ूम" @@ -2271,7 +2315,7 @@ msgstr "पुराना पासवर्ड" msgid "Passwords do not match!" msgstr "पासवर्ड अलग-अलग हैं!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "निकास" @@ -2284,15 +2328,46 @@ msgstr "चुप" msgid "Sound Volume: %d%%" msgstr "आवाज " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "बीच का बटन" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "हो गया !" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "बाहर का सर्वर" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "कोहरा" @@ -2492,8 +2567,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2546,10 +2620,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2573,6 +2643,16 @@ msgstr "दुनिया का नाम" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2949,11 +3029,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2978,7 +3058,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3113,6 +3193,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3264,19 +3352,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "सजावट" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3304,6 +3384,14 @@ msgstr "उड़ने के लिए दो बार कूदें" msgid "Double-tapping the jump key toggles fly mode." msgstr "दो बार कूदने से उड़ान चलन चालू हो जाता है।" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3379,8 +3467,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3453,8 +3541,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3469,12 +3556,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3777,10 +3858,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4012,12 +4089,6 @@ msgstr "" "अगर यहां चालू हुआ तो नीचे उतरने के लिए स्पेशल\n" "की का इस्तेमाल होगा।" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4036,6 +4107,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4133,10 +4211,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4753,10 +4827,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4790,6 +4860,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4880,7 +4954,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5324,17 +5398,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5531,16 +5607,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "छाया बनावट" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5706,10 +5772,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5988,10 +6053,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6053,6 +6114,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6103,7 +6168,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6126,16 +6194,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6373,20 +6439,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6397,10 +6455,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6423,8 +6477,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6650,6 +6703,12 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "हानि व मृत्यु हो सकती है" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "डीबग जानकारी व प्रोफाइल गायब" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "डीबग जानकारी, प्रोफाइलर व रूपरेखा गायब" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "दृष्टि सीमित" @@ -6665,6 +6724,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "$1 का डाऊनलोड व इन्स्टाल चल रहा है, कृपया ठहरें ..." +#, fuzzy +#~ msgid "Enable" +#~ msgstr "चालू" + #~ msgid "Enter " #~ msgstr "डालें " @@ -6682,9 +6745,6 @@ msgstr "" #~ msgid "Flying" #~ msgstr "उडना" -#~ msgid "Game" -#~ msgstr "खेल" - #~ msgid "Generate Normal Maps" #~ msgstr "मामूली नक्शे बनाएं" @@ -6804,6 +6864,9 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "स्क्रीन :" +#~ msgid "Shaders" +#~ msgstr "छाया बनावट" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "फ्लोटलैंड्स (आसमान में तैरते हुए भूमि-खंड) (प्रायोगिक)" @@ -6811,6 +6874,10 @@ msgstr "" #~ msgid "Shaders (unavailable)" #~ msgstr "छाया बनावट (अनुपलब्ध)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "कैमरा रुका हुआ" + #~ msgid "Simple Leaves" #~ msgstr "मामूली पत्ते" diff --git a/po/hu/luanti.po b/po/hu/luanti.po index 68ec9326e..873f21142 100644 --- a/po/hu/luanti.po +++ b/po/hu/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Hungarian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-26 09:15+0000\n" -"Last-Translator: Unacceptium \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-29 00:05+0000\n" +"Last-Translator: Balázs Kovács \n" "Language-Team: Hungarian \n" "Language: hu\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -63,9 +63,8 @@ msgid "Command not available: " msgstr "A parancs nem elérhető: " #: builtin/common/chatcommands.lua -#, fuzzy msgid "Get help for commands (-t: output in chat)" -msgstr "Segítség kérése a parancsokhoz" +msgstr "Segítség kérése a parancsokhoz (-t: megjelenítés a csevegésben)" #: builtin/common/chatcommands.lua msgid "" @@ -75,9 +74,248 @@ msgstr "" "kilistázásához a '.help all' parancsot." #: builtin/common/chatcommands.lua -#, fuzzy msgid "[all | ] [-t]" -msgstr "[all | ]" +msgstr "[all | ] [-t]" + +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Tallózás" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Szerkesztés" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Útvonal kiválasztása" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Fájl kiválasztása" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Beállít" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nincs megadva leírás a beállításhoz)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D zaj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Mégse" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Hézagosság" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktávok" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Eltolás" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Folytonosság" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Mentés" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Mérték" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Kezdőérték" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X kiterjedés" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y kiterjedés" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z kiterjedés" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "abszolút érték" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "alapértelmezett" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "könyített" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(A játéknak engedélyeznie kell az automatikus expozíciót is)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(A játéknak engedélyeznie kell a ragyogást is)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(A játéknak engedélyeznie kell a sugaras megvilágítást is)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Eszköz nyelve)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Kényelmes használat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatikus" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Csevegés" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Törlés" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Irányítás" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Letiltva" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Engedélyezve" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Általános" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Mozgás" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Nincs találat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Beállítások viszaállítása alapértelmezettre" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Beállítások alapértelmezettre állítása ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Keresés" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Haladó beállítások mutatása" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Technikai nevek megjelenítése" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Érintőképernyő" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS a szünet menüben" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Kliens modok" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Tartalom: játékok" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Tartalom: modok" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(A játéknak engedélyeznie kell az árnyékokat is)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Egyedi" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dinamikus árnyékok" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Magas" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Alacsony" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Közepes" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Nagyon magas" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Nagyon alacsony" #: builtin/fstk/ui.lua msgid "" @@ -140,12 +378,12 @@ msgid "Failed to download $1" msgstr "$1 letöltése nem sikerült" #: builtin/mainmenu/content/contentdb.lua -#, fuzzy msgid "" "Failed to extract \"$1\" (insufficient disk space, unsupported file type or " "broken archive)" msgstr "" -"$1 kibontása sikertelen (nem támogatott fájltípus vagy sérült archívum)" +"\"$1\" kibontása sikertelen (nincs elég hely a lemezen, nem támogatott " +"fájltípus vagy sérült archívum)" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "" @@ -161,18 +399,16 @@ msgstr "$1 letöltése…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Mind" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Vissza" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "A ContentDB nem elérhető, ha a Minetest cURL nélkül lett lefordítva" +msgstr "A ContentDB nem elérhető, ha cURL nélkül lett lefordítva a Luanti" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -180,7 +416,7 @@ msgstr "Letöltés…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Kiemelt" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -202,11 +438,6 @@ msgstr "Modok" msgid "No packages could be retrieved" msgstr "A csomagok nem nyerhetők vissza" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Nincs találat" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Nincsenek frissítések" @@ -216,7 +447,6 @@ msgid "Queued" msgstr "Sorba állítva" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" msgstr "Textúracsomagok" @@ -252,27 +482,14 @@ msgstr "Már telepítve" msgid "Base Game:" msgstr "Alapjáték:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Mégse" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "Függőségek:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Hiba történt a csomag függőségeinek beszerzésekor" +msgstr "Hiba történt a(z) $1 csomag függőségeinek beszerzésekor" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -307,44 +524,40 @@ msgid "Overwrite" msgstr "Felülírás" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" -msgstr "ContentDB URL" +msgstr "ContentDB oldal" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Szerver leírása" +msgstr "Leírás" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Adományoz" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Fórumtéma" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Információ:" +msgstr "Információk" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" -msgstr "$1 telepítése" +msgstr "[$1] telepítése" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Problémajelzés" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Forráskód" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Fordítás" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -355,13 +568,12 @@ msgid "Update" msgstr "Frissítés" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Weboldal megtekintése" +msgstr "Weboldal" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "készítő: $1 — $2 letöltés — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -391,6 +603,12 @@ msgstr "$1 nem telepíthető $2 ként" msgid "Unable to install a $1 as a texture pack" msgstr "Egy $1 telepítése textúracsomagként meghiúsult" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Engedélyezve, hibás)" @@ -455,12 +673,6 @@ msgstr "Nincsenek választható függőségek" msgid "Optional dependencies:" msgstr "Választható függőségek:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Mentés" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Világ:" @@ -577,11 +789,11 @@ msgstr "Térképgenerálás" #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Mapgen flags" -msgstr "Térképgenerátor jelzői" +msgstr "Térképgenerátor kapcsolói" #: builtin/mainmenu/dlg_create_world.lua msgid "Mapgen-specific flags" -msgstr "Térképgenerátor saját jelzői" +msgstr "Térképgenerátor változatától függő kapcsolók" #: builtin/mainmenu/dlg_create_world.lua msgid "Mountains" @@ -615,11 +827,6 @@ msgstr "Folyók" msgid "Sea level rivers" msgstr "Tengerszinti folyók" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Kezdőérték" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Lágy átmenet a biomok között" @@ -724,14 +931,12 @@ msgid "Dismiss" msgstr "Elhagy(ás)" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"A Minetest motort hosszú ideig a \"Minetest Game\" nevű alapértelmezett " -"játékkal települt. A Minetest 5.8.0 óta a Minetest alapértelmezett játék " -"nélkül települ." +"A Luanti sokáig a \"Minetest Game\" nevű alapértelmezett játékkal települt. " +"Az 5.8.0 verzió óta a Luanti alapértelmezett játék nélkül települ." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -765,6 +970,23 @@ msgstr "" "Ennek a modcsomagnak a neve a modpack.conf fájlban meghatározott, ami " "felülír minden itteni átnevezést." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Összes engedélyezése" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "$1 új verziója elérhető" @@ -793,7 +1015,7 @@ msgstr "Soha" msgid "Visit website" msgstr "Weboldal megtekintése" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Beállítások" @@ -807,231 +1029,9 @@ msgstr "" "Próbáld újra engedélyezni a nyilvános szerverlistát, és ellenőrizd az " "internetkapcsolatot." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Tallózás" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Szerkesztés" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Útvonal kiválasztása" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Fájl kiválasztása" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Beállít" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nincs megadva leírás a beállításhoz)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D zaj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Hézagosság" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktávok" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Eltolás" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Folytonosság" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Mérték" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X kiterjedés" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y kiterjedés" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z kiterjedés" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "abszolút érték" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "alapértelmezett" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "könyített" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(A játéknak engedélyeznie kell az árnyékokat is)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(A játéknak engedélyeznie kell az árnyékokat is)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(A játéknak engedélyeznie kell az árnyékokat is)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Eszköz nyelve)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Kényelmes használat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Csevegés" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Törlés" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Irányítás" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Letiltva" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Engedélyezve" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Általános" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Mozgások" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Beállítások viszaállítása alapértelmezettre" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Beállítások alapértelmezettre állítása ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Keresés" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Haladó beállítások mutatása" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Technikai nevek megjelenítése" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Kliens modok" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Tartalom: játékok" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Tartalom: modok" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Engedélyezve" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kamera frissítés letiltva" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(A játéknak engedélyeznie kell az árnyékokat is)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Egyedi" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dinamikus árnyékok" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Magas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Alacsony" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Közepes" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Nagyon magas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Nagyon alacsony" - #: builtin/mainmenu/tab_about.lua msgid "About" -msgstr "Róla" +msgstr "Névjegy" #: builtin/mainmenu/tab_about.lua msgid "Active Contributors" @@ -1049,10 +1049,6 @@ msgstr "Játékmotor-fejlesztők" msgid "Core Team" msgstr "Csapat magja" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht készülék:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Felhasználói adatok mappája" @@ -1155,18 +1151,16 @@ msgid "Install games from ContentDB" msgstr "Játékok telepítése ContentDB-ről" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "A Minetest Game már nem települ alapból" +msgstr "A Luanti már nem tartalmaz alapból telepített játékot." #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" -"A Minetest egy játék-létrehozó felület, amely lehetővé teszi sok különböző " -"játék játszását." +"A Luanti egy játékkészítő-felület, amely sok különböző játék játszását teszi " +"lehetővé." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1201,14 +1195,26 @@ msgid "Start Game" msgstr "Indítás" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "You need to install a game before you can create a world." -msgstr "Először egy játékot kell telepítened ahhoz, hogy modokat telepíthess" +msgstr "" +"Először egy játékot kell telepítened ahhoz, hogy létrehozz egy világot." + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Kedvenc eltávolítása" #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Cím" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Kliens" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreatív mód" @@ -1222,6 +1228,11 @@ msgstr "Sérülés / PvP" msgid "Favorites" msgstr "Kedvencek" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Játék" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Nem kompatibilis szerverek" @@ -1234,10 +1245,28 @@ msgstr "Csatlakozás játékhoz" msgid "Login" msgstr "Bejelentkezés" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "A pályablokk-betöltő szálak száma" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Dedikált szerver lépés" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Nyilvános szerverek" @@ -1322,23 +1351,6 @@ msgstr "" "\n" "A részletekért tekintsd meg a debug.txt fájlt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mód: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Nyilvános: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Szerver neve: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Hiba történt a sorosítás közben:" @@ -1348,6 +1360,11 @@ msgstr "Hiba történt a sorosítás közben:" msgid "Access denied. Reason: %s" msgstr "Hozzáférés megtagadva. Oka: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Hibakereső információ engedélyezve" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Önjárás letiltva" @@ -1368,6 +1385,10 @@ msgstr "Blokkhatárok mutatása az aktuális blokk esetén" msgid "Block bounds shown for nearby blocks" msgstr "Közeli blokkok blokkhatárainak megjelenítése" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kamera frissítés letiltva" @@ -1381,10 +1402,6 @@ msgid "Can't show block bounds (disabled by game or mod)" msgstr "" "Nem lehet megjeleníteni a blokkhatárokat (mod vagy játék által letiltva)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Jelszó módosítása" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Operatőr mód letiltva" @@ -1413,39 +1430,6 @@ msgstr "Kapcsolódási hiba (időtúllépés?)" msgid "Connection failed for unknown reason" msgstr "Kapcsolat megszakadt ismeretlen okból" -#: src/client/game.cpp -msgid "Continue" -msgstr "Folytatás" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Alapértelmezett irányítás:\n" -"Nincs látható menü:\n" -"-ujj csúsztatása: nézelődés\n" -"- egy érintés: gomb aktiválás\n" -"- dupla érintés: lehelyezés/használat\n" -"Menü/leltár látható:\n" -"- dupla érintés (kívül):\n" -" -->bezárás\n" -"- köteg, vagy hely érintése:\n" -" --> köteg mozgatás\n" -"- \"érint&húz\", érintés 2. ujjal\n" -" --> letesz egyetlen tárgyat a helyre\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1459,31 +1443,15 @@ msgstr "Kliens létrehozása…" msgid "Creating server..." msgstr "Szerver létrehozása…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Hibakereső információ és pofiler elrejtése" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Hibakereső információ engedélyezve" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Hibakereső információk, profilergrafika, drótkeret rejtett" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Hiba a kliens létrehozása közben: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Kilépés a főmenübe" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Kilépés a játékból" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Gyors mód letiltva" @@ -1517,21 +1485,8 @@ msgid "Fog enabled" msgstr "köd engedélyezve" #: src/client/game.cpp -#, fuzzy msgid "Fog enabled by game or mod" -msgstr "Nagyítás letiltva (szerver, vagy mod által)" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "Játékinformációk:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Játék szüneteltetve" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Szerver készítése" +msgstr "A köd be van kapcsolva a játék vagy mod által" #: src/client/game.cpp msgid "Item definitions..." @@ -1569,14 +1524,6 @@ msgstr "Noclip mód engedélyezve (de nincs jogosultságod)" msgid "Node definitions..." msgstr "Kockák meghatározása…" -#: src/client/game.cpp -msgid "Off" -msgstr "Ki" - -#: src/client/game.cpp -msgid "On" -msgstr "Be" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Pályamozgás mód letiltva" @@ -1589,38 +1536,22 @@ msgstr "Pályamozgás mód engedélyezve" msgid "Profiler graph shown" msgstr "Profilergrafika megjelenítése" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Távoli szerver" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Cím feloldása…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Újraéledés" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Leállítás…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Egyjátékos" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Hangerő" - #: src/client/game.cpp msgid "Sound muted" msgstr "Hang némítva" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "A hangrendszer letiltva" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "A hangrendszer nem támogatott ebben build-ben" @@ -1698,18 +1629,117 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Hangerő átállítva: %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "" +"Az árnyalók engedélyezve vannak, de a GLSL nem támogatott a meghajtó által." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Drótváz megjelenítése" -#: src/client/game.cpp -msgid "You died" -msgstr "Meghaltál" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Nagyítás letiltva (szerver, vagy mod által)" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mód: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Nyilvános: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Szerver neve: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Jelszó módosítása" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Folytatás" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Irányítás:\n" +"Nincs nyitva menü:\n" +"-ujj csúsztatása: nézelődés\n" +"- érintés: lehelyez/üt/használ (alapértelmezésben)\n" +"- hosszan érintés: ás/használ (alapértelmezésben)\n" +"Menü/felszerelés nyitva:\n" +"- dupla érintés (kívül):\n" +" -->bezárás\n" +"- tárgyköteg érintése, tárgyhely érintése:\n" +" --> köteg mozgatása\n" +"- érint&húz, érintés 2. ujjal\n" +" --> letesz egyetlen tárgyat a helyre\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Kilépés a főmenübe" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Kilépés a játékból" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Játékinformációk:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Játék szüneteltetve" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Szerver készítése" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Ki" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Be" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Távoli szerver" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Újraéledés" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Hangerő" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Meghaltál" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "A csevegést a játék vagy egy mod nem engedélyezi" @@ -2031,12 +2061,13 @@ msgid "Minimap in texture mode" msgstr "Kistérkép textúramódban" #: src/client/shader.cpp -#, fuzzy, c-format +#, c-format msgid "Failed to compile the \"%s\" shader." -msgstr "Weblap megnyitása nem sikerült" +msgstr "A(z) \"%s\" árnyékoló lefordítása nem sikerült." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "" "Az árnyalók engedélyezve vannak, de a GLSL nem támogatott a meghajtó által." @@ -2089,7 +2120,7 @@ msgstr "Önjárás" msgid "Automatic jumping" msgstr "Automatikus ugrás" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2101,7 +2132,7 @@ msgstr "Hátra" msgid "Block bounds" msgstr "Blokkhatárok" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Nézet váltása" @@ -2125,7 +2156,7 @@ msgstr "Halkítás" msgid "Double tap \"jump\" to toggle fly" msgstr "Nyomj duplán az „ugrásra” a repülés be-/kikapcsolásához" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Eldobás" @@ -2141,11 +2172,11 @@ msgstr "Látótáv növelése" msgid "Inc. volume" msgstr "Hangosítás" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Felszerelés" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Ugrás" @@ -2177,7 +2208,7 @@ msgstr "Következő tárgy" msgid "Prev. item" msgstr "Előző elem" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Látótávolság választása" @@ -2189,7 +2220,7 @@ msgstr "Jobbra" msgid "Screenshot" msgstr "Képernyőkép" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Lopakodás" @@ -2197,15 +2228,15 @@ msgstr "Lopakodás" msgid "Toggle HUD" msgstr "Műszerfal ki-be" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Csevegésnapló váltása" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Gyors mód váltása" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Repülés váltása" @@ -2213,11 +2244,11 @@ msgstr "Repülés váltása" msgid "Toggle fog" msgstr "Köd váltása" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Kistérkép ki-be" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Noclip mód váltása" @@ -2225,7 +2256,7 @@ msgstr "Noclip mód váltása" msgid "Toggle pitchmove" msgstr "Pályamozgás mód váltása" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Nagyítás" @@ -2242,9 +2273,8 @@ msgid "Open URL?" msgstr "URL megnyitása?" #: src/gui/guiOpenURL.cpp -#, fuzzy msgid "Unable to open URL" -msgstr "Weblap megnyitása nem sikerült" +msgstr "URL megnyitása nem sikerült" #: src/gui/guiPasswordChange.cpp msgid "Change" @@ -2262,7 +2292,7 @@ msgstr "Régi jelszó" msgid "Passwords do not match!" msgstr "A jelszavak nem egyeznek!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Kilépés" @@ -2275,38 +2305,69 @@ msgstr "Némitva" msgid "Sound Volume: %d%%" msgstr "Hangerő: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp #, fuzzy -msgid "Joystick" -msgstr "Botkormány ID" +msgid "Add button" +msgstr "Középső gomb" -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Kész!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Távoli szerver" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Botkormány" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "Túlcsorduló menü" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Köd váltása" +msgstr "Hibakeresés be-/kikapcsolása" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"Egy másik kliens is csatlakozott már ezzel a névvel. Ha váratlanul " +"bezáródott a kliensed, próbáld újra egy perc múlva." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." msgstr "" +"Nem engedélyezett az üres jelszó. Állíts be egy jelszót, és próbáld újra." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Belső szerverhiba" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Régi jelszó" +msgstr "Érvénytelen jelszó" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2329,46 +2390,48 @@ msgstr "A nevet már használja valaki. Válassz egy másik nevet" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "A játékosnév nem megengedett karaktereket tartalmaz" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "A játékosnév túl hosszú." +msgstr "Nem engedélyezett játékosnév" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Leállítás…" +msgstr "A szerver leáll" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "A szerver belső hibát észlelt. A kapcsolatod meg fog szakadni." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "A szerver egyjátékos módban fut. Nem tudsz csatlakozni." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Túl sok felhasználó" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "A kapcsolat megszakadt ismeretlen okból." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"A kliensed nem várt kérést küldött a szervernek. Próbálj újracsatlakozni, " +"vagy frissíteni a kliensedet." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"A kliensed verziója nem támogatott.\n" +"Kérlek, lépj kapcsolatba a szerveradminisztrátorral." #: src/server.cpp #, c-format @@ -2504,6 +2567,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "3D-s zaj, amely meghatározza a tömlöcök számát egy pályadarabkánként." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2512,8 +2576,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D támogatás.\n" "Jelenleg támogatott:\n" @@ -2577,10 +2640,6 @@ msgstr "Aktív blokk kiterjedési terület" msgid "Active object send range" msgstr "Aktív objektum küldés hatótávolsága" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Részecskéket mutat a kockák ásásakor." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2612,6 +2671,17 @@ msgstr "Adminisztrátor neve" msgid "Advanced" msgstr "Haladó" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "3D felhők használata lapos helyett." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "A folyadékok áttetszőségét teszi lehetővé." @@ -2660,15 +2730,15 @@ msgstr "Elsimítási skála" #: src/settings_translation_file.cpp msgid "Antialiasing method" -msgstr "Élsimítási folyamat" +msgstr "Élsimítási módszer" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Csaláselhárításra vonatkozó kapcsolók" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Csaláselhárító mozgási tűréshatára" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2683,7 +2753,6 @@ msgid "Apple trees noise" msgstr "Almafa zaj" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Apply dithering to reduce color banding artifacts.\n" "Dithering significantly increases the size of losslessly-compressed\n" @@ -2693,19 +2762,17 @@ msgid "" "With OpenGL ES, dithering only works if the shader supports high\n" "floating-point precision and it may have a higher performance impact." msgstr "" -"DITHERING-et alkalmaz a színsávosodás csökkentéséhez.\n" -"a DITHERING feltűnően növeli a veszteségmentesen\n" -"tömörített képernyőképek méretét, de hibásan\n" -"működik, ha a kijelző, vagy az operációs rendszer\n" -"önmagától is DITHERING-et alkalmaz, vagy ha a\n" -"színcsatornák nem hozzávetőlegesek 8 bithez.\n" -"OpenGL ES-el a DITHERING csak akkor működik, ha\n" -"az árnyalók támogatják a precíz lebegő-pontos számítást, így tőbb erőforrást " -"használ." +"Zajmodulációt alkalmaz a színsávosodás csökkentéséhez.\n" +"A zajmoduláció jelentősen növeli a veszteségmentesen tömörített\n" +"képernyőképek méretét, de hibásan működik, ha a kijelző, vagy az\n" +"operációs rendszer önmagától is zajmodulációt alkalmaz, vagy ha a\n" +"színcsatornák nincsenek 8 bitre alakítva.\n" +"OpenGL ES-el a zajmoduláció csak akkor működik, ha az árnyaló támogatja\n" +"a precíz lebegőpontos számítást, és nagyobb hatása lehet a teljesítményre." #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Tükröződő árnyékolás alkalmazása a kockákon." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2724,7 +2791,6 @@ msgid "Ask to reconnect after crash" msgstr "Összeomlás után újracsatlakozás kérése" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will aggressively optimize which blocks are sent " "to\n" @@ -2741,14 +2807,13 @@ msgstr "" "küldje a klienseknek.\n" "Kis értékek valószínűleg sokat javítanak a teljesítményen, látható " "megjelenítési\n" -"hibák árán. (Néhány víz alatti és barlangokban lévő blokk nem jelenik meg,\n" -"néha a felszínen lévők sem.)\n" -"Ha ez az érték nagyobb, mint a \"max_block_send_distance\", akkor nincs\n" +"hibák árán (néhány barlangokban lévő blokk nem jól jelenik meg).\n" +"Ha az itt beállított érték nagyobb, mint a max_block_send_distance, akkor " +"nincs\n" "optimalizáció.\n" "A távolság blokkokban értendő (16 kocka)." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will perform a simpler and cheaper occlusion " "check.\n" @@ -2758,15 +2823,12 @@ msgid "" "This is especially useful for very large viewing range (upwards of 500).\n" "Stated in MapBlocks (16 nodes)." msgstr "" -"Ennél a távolságnál a szerver agresszívan optimalizálja, hogy melyik " -"blokkokat\n" -"küldje a klienseknek.\n" +"Ennél a távolságnál a szerver egyszerűbb és gyorsabb kitakarásvizsgálatot " +"végez.\n" "Kis értékek valószínűleg sokat javítanak a teljesítményen, látható " "megjelenítési\n" -"hibák árán. (Néhány víz alatti és barlangokban lévő blokk nem jelenik meg,\n" -"néha a felszínen lévők sem.)\n" -"Ha ez az érték nagyobb, mint a \"max_block_send_distance\", akkor nincs\n" -"optimalizáció.\n" +"hibák árán (hiányzó blokkok).\n" +"Ez főleg nagyon nagy látótávolság (500 vagy nagyobb) esetén hasznos.\n" "A távolság blokkokban értendő (16 kocka)." #: src/settings_translation_file.cpp @@ -2830,14 +2892,12 @@ msgid "Biome noise" msgstr "Biom zaj" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block bounds HUD radius" -msgstr "Blokkhatárok" +msgstr "Blokkhatárok mutatásának sugara" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block cull optimize distance" -msgstr "Max blokk küldési távolság" +msgstr "Blokkok kitakarásoptimalizálási távolsága" #: src/settings_translation_file.cpp msgid "Block send optimize distance" @@ -2989,7 +3049,7 @@ msgstr "Kliens" #: src/settings_translation_file.cpp msgid "Client Mesh Chunksize" -msgstr "Kliense háló chunkméret" +msgstr "Kliens pályadarabka-mérete" #: src/settings_translation_file.cpp msgid "Client and Server" @@ -3023,14 +3083,14 @@ msgstr "Felhők sugara" msgid "Clouds" msgstr "Felhők" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "A felhő kliens oldali effektus." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Felhők a menüben" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Színezett köd" @@ -3057,15 +3117,15 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" -"A tartalomtárban elrejtendő jelölők vesszővel tagolt listája.\n" +"A tartalomtárban elrejtendő kapcsolók vesszővel tagolt listája.\n" "\"nonfree\" használatával elrejthetők azok a csomagok, amelyek nem tartoznak " "a\n" -"\"szabad szoftverek kategóriájába a Free Software Foundation meghatározása " +"\"szabad szoftverek\" kategóriájába a Free Software Foundation meghatározása " "szerint.\n" -"Megadhatja továbbá a tartalom besorolásait is.\n" -"Ezek a jelölők függetlenek a Minetest verziótól, ezért nézze meg\n" +"Megadható továbbá a tartalomértékelés is.\n" +"Ezek a kapcsolók függetlenek a Luanti verziótól, ezért nézd meg\n" "a teljes listát itt: https://content.minetest.net/help/content_flags/" #: src/settings_translation_file.cpp @@ -3141,7 +3201,7 @@ msgstr "Tartalomtár" #: src/settings_translation_file.cpp msgid "ContentDB Flag Blacklist" -msgstr "ContentDB zászló feketelista" +msgstr "ContentDB kapcsolóinak feketelistája" #: src/settings_translation_file.cpp msgid "ContentDB Max Concurrent Downloads" @@ -3230,6 +3290,14 @@ msgstr "Hibakereső naplózás szintje" msgid "Debugging" msgstr "Hibakeresés" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Dedikált szerver lépés" @@ -3273,7 +3341,6 @@ msgstr "" "de egyéb erőforrásokat is használ." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Define the oldest clients allowed to connect.\n" "Older clients are compatible in the sense that they will not crash when " @@ -3285,11 +3352,15 @@ msgid "" "Luanti still enforces its own internal minimum, and enabling\n" "strict_protocol_version_checking will effectively override this." msgstr "" -"Régi verziójú kliensek csatlakozásának tiltása.\n" -"A régi kliensek kompatibilisek olyan értelemben, hogy nem omlanak össze ha " -"egy új verziójú\n" -"szerverhez csatlakoznak, de nem biztos, hogy támogatnak minden elvárt " -"funkciót." +"A legrégebbi kliens meghatározása, amely még csatlakozhat.\n" +"A régi kliensek kompatibilisek olyan értelemben, hogy nem omlanak össze, ha " +"egy új\n" +"verziójú szerverhez csatlakoznak, de nem biztos, hogy támogatnak minden " +"elvárt új funkciót.\n" +"Ez részletesebb finomhangolást tesz lehetővé, mint a " +"strict_protocol_version_checking.\n" +"A Luanti ekkor is támaszt bizonyos belső minimumkövetelményeket, de a\n" +"strict_protocol_version_checking teljesen felülírja ezt." #: src/settings_translation_file.cpp msgid "Defines areas where trees have apples." @@ -3361,8 +3432,8 @@ msgid "" "Delay between mesh updates on the client in ms. Increasing this will slow\n" "down the rate of mesh updates, thus reducing jitter on slower clients." msgstr "" -"A világ modelljének frissítési időköze a klienseken. Ennek a megnövelése\n" -"lelassítja a frissítéseket,így csökkenti a lassú kliensek szaggatását." +"A világ 3D-modelljének frissítési időköze a klienseken. Ennek a megnövelése\n" +"ritkábbá teszi a frissítéseket, így csökkenti a lassú kliensek szaggatását." #: src/settings_translation_file.cpp msgid "Delay in sending blocks after building" @@ -3402,20 +3473,13 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" "Sivatag akkor keletkezik, ha az np_biome meghaladja ezt az értéket.\n" -"Ha az új biom rendszer engedélyezve van, akkor ez mellőzésre kerül." - -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Blokkanimáció deszinkronizálása" +"Ha a 'snowbiomes' kapcsoló engedélyezve van, akkor ez figyelmen kívül lesz " +"hagyva." #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Fejlesztői beállítások" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Ásási részecskék" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Üres jelszavak tiltása" @@ -3425,16 +3489,16 @@ msgid "Display Density Scaling Factor" msgstr "Képsűrűség méretezési faktor" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Distance in nodes at which transparency depth sorting is enabled.\n" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"Távolság azokban a csomópontokban, amelyeknél az átlátszósági mélység " -"szerinti rendezés engedélyezve van\n" -"Ezzel korlátozhatja az átlátszósági mélységrendezés teljesítményre gyakorolt " -"hatását" +"Az a kockákban mért távolság, aminél az átlátszósági mélység szerinti " +"rendezés engedélyezve van.\n" +"Ezzel korlátozhatod az átlátszósági mélységi rendezés teljesítményre " +"gyakorolt hatását.\n" +"Állítsd 0-ra a teljes letiltáshoz." #: src/settings_translation_file.cpp msgid "Domain name of server, to be displayed in the serverlist." @@ -3448,6 +3512,14 @@ msgstr "Az ugrás gomb dupla megnyomása a repüléshez" msgid "Double-tapping the jump key toggles fly mode." msgstr "Az ugrás gomb kétszeri megnyomásával lehet repülés módba váltani." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "A pályagenerátor hibakeresési információinak kiírása." @@ -3465,9 +3537,8 @@ msgid "Dungeon noise" msgstr "Tömlöc zaj" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" -msgstr "Grafikai hatások" +msgstr "Látványhatások" #: src/settings_translation_file.cpp msgid "Enable Automatic Exposure" @@ -3482,9 +3553,8 @@ msgid "Enable Bloom Debug" msgstr "Hibakeresés engedélyezése ragyogáshoz" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Debanding" -msgstr "Sérülés engedélyezése" +msgstr "Sávtalanítás engedélyezése" #: src/settings_translation_file.cpp msgid "" @@ -3513,9 +3583,8 @@ msgstr "" "Különben a PCF szűrőt használja." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Post Processing" -msgstr "Utófeldolgozás" +msgstr "Utófeldolgozás engedélyezése" #: src/settings_translation_file.cpp msgid "Enable Raytraced Culling" @@ -3534,9 +3603,10 @@ msgstr "" "szimulálja az emberi szem viselkedését." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Színes árnyékok engedélyezése.\n" "Igaz érték esetén az áttetsző kockák színes árnyékot vetnek. " @@ -3569,11 +3639,9 @@ msgstr "" "Engedélyezze az egérgörgőt (görgetést) a tárgy kiválasztásához a hotbáron." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable random mod loading (mainly used for testing)." msgstr "" -"Véletlenszerű felhasználói bemenet engedélyezése (csak teszteléshez " -"használható)." +"Véletlenszerű modbetöltés engedélyezése (főleg teszteléshez használható)." #: src/settings_translation_file.cpp msgid "Enable random user input (only used for testing)." @@ -3582,11 +3650,8 @@ msgstr "" "használható)." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" -"A lágy megvilágítás engedélyezése egyszerű környezeti árnyékolással.\n" -"A sebesség érdekében vagy másféle kinézetért kikapcsolhatod." +msgstr "A lágy megvilágítás engedélyezése egyszerű környezeti árnyékolással." #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3608,7 +3673,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "A frissítés elérhető jelzés engedélyezése a tartalom fülön" #: src/settings_translation_file.cpp msgid "" @@ -3631,10 +3696,10 @@ msgstr "" "fejmozgás van." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "IPv6 szerver futtatásának engedélyezése/letiltása.\n" "Nincs figyelembe véve, ha bind_address van beállítva.\n" @@ -3656,21 +3721,13 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Az felszerelésben lévő tárgyak animációjának engedélyezése." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Az elforgatott hálók irányának gyorsítótárazásának engedélyezése." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Engedélyezi a debug-ot és a hibakeresést az OpenGL meghajtón." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enables smooth scrolling." -msgstr "Utófeldolgozás" +msgstr "Lágy görgetés engedélyezése." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." @@ -3683,6 +3740,10 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"Engedélyezi az érintőképernyős irányítást, ami lehetővé teszi, hogy " +"érintőképernyővel játszd a játékot.\n" +"\"auto\" esetén az érintőképernyős irányítás be- vagy kikapcsolásra kerül\n" +"automatikusan a legutóbb használt irányítási módtól függően." #: src/settings_translation_file.cpp msgid "" @@ -4016,10 +4077,6 @@ msgstr "Felhasználói felület méretaránya" msgid "GUI scaling filter" msgstr "Felhasználói felület méretarány szűrő" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Felhasználói felület méretarány szűrő txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gampadok" @@ -4035,7 +4092,7 @@ msgid "" "and jungle grass, in all other mapgens this flag controls all decorations." msgstr "" "Globális pályagenerálási jellemzők.\n" -"A Mapgen v6 generátorban a 'decorations' jelző szabályozza az összes " +"A Mapgen v6 generátorban a 'decorations' kapcsoló szabályozza az összes " "dekorációt,\n" "kivéve a fákat és a dzsungelfüvet, a többi pályagenerátornál pedig az " "összeset." @@ -4272,6 +4329,9 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"Ha engedélyezve van, és van telepített ContentDB-s csomag, akkor a Luanti " +"kapcsolatba léphet a ContentDB-vel, hogy\n" +"ellenőrizze, hogy van-e csomagfrissítés, amikor megnyílik a főmenü." #: src/settings_translation_file.cpp msgid "" @@ -4279,19 +4339,9 @@ msgid "" "and\n" "descending." msgstr "" -"Ha engedélyezve van, a \"Sneak\" billentyű helyett az \"Aux1\" billentyű " -"kerül\n" -"felhasználásra a lemászáshoz, és felmászáshoz." - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Ha engedélyezve van, a fiókregisztráció elkülönül a felhasználói felületen " -"való bejelentkezéstől.\n" -"Ha le van tiltva, az új fiókok automatikusan regisztrálva lesznek a " -"bejelentkezéskor." +"Ha engedélyezve van, a \"Lopakodás\" billentyű helyett az \"Aux1\" billentyű " +"segítségével\n" +"lehet lemászni és leereszkedni." #: src/settings_translation_file.cpp msgid "" @@ -4318,6 +4368,18 @@ msgstr "" "Ha engedélyezve van, az új játékosok nem csatlakozhatnak jelszó nélkül, vagy " "nem változtathatják üresre a jelszavukat." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Ha engedélyezve van, a fiókregisztráció elkülönül a felhasználói felületen " +"való bejelentkezéstől.\n" +"Ha le van tiltva, az új fiókok automatikusan regisztrálva lesznek a " +"bejelentkezéskor." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4412,13 +4474,12 @@ msgid "Instrument chat commands on registration." msgstr "Csevegésparancsok behangolása regisztrációkor." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Instrument global callback functions on registration.\n" "(anything you pass to a core.register_*() function)" msgstr "" -"A globális callback függvények behangolása regisztrációkor.\n" -"(bármi, amit átadsz egy minetest.register_*() függvénynek)" +"A globális callback függvények instrumentálása regisztrációkor.\n" +"(bármi, amit átadsz egy core.register_*() függvénynek)" #: src/settings_translation_file.cpp msgid "" @@ -4441,10 +4502,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "Fontos változások mentésének időköze a világban, másodpercekben megadva." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "A napszak kliensnek való küldésének gyakorisága, másodpercben megadva." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Felszerelésben lévő tárgyak animációi" @@ -4477,7 +4534,7 @@ msgstr "Elem entitás TTL" #: src/settings_translation_file.cpp msgid "Iterations" -msgstr "Ismétlések" +msgstr "Ismétlésszám" #: src/settings_translation_file.cpp msgid "" @@ -4486,11 +4543,11 @@ msgid "" "increases processing load.\n" "At iterations = 20 this mapgen has a similar load to mapgen V7." msgstr "" -"A rekurzív függvény ismétlései.\n" -"Ennek növelése növeli a finom részletek mennyiségét és\n" -"növeli a feldolgozási terhelést.\n" -" 20 ismétlésnél ez a pályageneráló hasonló terheléssel rendelkezik, mint a " -"V7." +"A rekurzív függvény függvényhívásainak száma.\n" +"Ennek növelése növeli a finom részletek mennyiségét,\n" +"ugyanakkor viszont növeli a feldolgozási terhelést.\n" +"Ha ismétlésszám = 20, akkor ez a pályageneráló hasonló terheléssel " +"rendelkezik, mint a V7." #: src/settings_translation_file.cpp msgid "Joystick ID" @@ -4625,7 +4682,6 @@ msgid "Leaves style" msgstr "Levelek stílusa" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Leaves style:\n" "- Fancy: all faces visible\n" @@ -4633,13 +4689,11 @@ msgid "" "- Opaque: disable transparency" msgstr "" "Levelek stílusa:\n" -"- fancy: (szép) minden oldal látható\n" -"- simple: (egyszerű) csak a külső oldalak láthatók, a special_tiles-t " -"használja, ha meg van adva\n" +"- fancy: (szép) minden felület látható\n" +"- simple: (egyszerű) csak a külső felületek láthatók\n" "- opaque: (átlátszatlan) átlátszóság kikapcsolása" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Length of a server tick (the interval at which everything is generally " "updated),\n" @@ -4648,9 +4702,13 @@ msgid "" "This is a lower bound, i.e. server steps may not be shorter than this, but\n" "they are often longer." msgstr "" -"A szerver jelölés hossza és az időköz, amelyen az objektumokat általában " -"frissíti\n" -"a hálózat, másodpercben megadva." +"A szerver órajelének hossza (az az időköz, ami eltelik két általános " +"objektumfrissítés között),\n" +"másodpercben megadva.\n" +"Ez nem érvényes a kliens menüjéből indított munkamenetekre.\n" +"Ez egy alsó korlát, azaz a szerverlépések nem lehetnek ennél rövidebben, " +"viszont\n" +"gyakorta ennél hosszabbak." #: src/settings_translation_file.cpp msgid "Length of liquid waves." @@ -4768,9 +4826,8 @@ msgid "Liquid queue purge time" msgstr "Folyadék sortisztítási ideje" #: src/settings_translation_file.cpp -#, fuzzy msgid "Liquid reflections" -msgstr "Folyadék folyékonysága" +msgstr "Folyadékok tükröződése" #: src/settings_translation_file.cpp msgid "Liquid sinking" @@ -4782,7 +4839,7 @@ msgstr "A folyadékok frissítési időköze másodpercben." #: src/settings_translation_file.cpp msgid "Liquid update tick" -msgstr "Folyadékfrissítés tick" +msgstr "Folyadékok frissítésének időköze" #: src/settings_translation_file.cpp msgid "Load the game profiler" @@ -4878,7 +4935,6 @@ msgid "Map generation attributes specific to Mapgen v5." msgstr "A v5 pályagenerátor saját generálási jellemzői." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Map generation attributes specific to Mapgen v6.\n" "The 'snowbiomes' flag enables the new 5 biome system.\n" @@ -4887,11 +4943,13 @@ msgid "" "The 'temples' flag disables generation of desert temples. Normal dungeons " "will appear instead." msgstr "" -"A v6 pályagenerátor saját generálási jellemzői.\n" -"A 'snowbiomes' jelölő engedélyezi az új 5 biomos rendszert.\n" -"Amikor a 'snowbiomes' jelölő engedélyezett, a dzsungelek automatikusan " -"engedélyezve lesznek\n" -"és a 'jungles' jelölő figyelmen kívül lesz hagyva." +"A v6 pályagenerátor saját generálási kapcsolói.\n" +"A 'snowbiomes' kapcsoló engedélyezi az új 5 biomos rendszert.\n" +"Amikor a 'snowbiomes' kapcsoló engedélyezett, a dzsungelek automatikusan " +"engedélyezve lesznek,\n" +"és a 'jungles' kapcsoló figyelmen kívül lesz hagyva.\n" +"A 'temples' kapcsoló megakadályozza a sivatagi templomok generálását. " +"Közönséges tömlöcök lesznek helyettük." #: src/settings_translation_file.cpp msgid "" @@ -4923,11 +4981,11 @@ msgstr "Pályablokk korlát" #: src/settings_translation_file.cpp msgid "Mapblock mesh generation delay" -msgstr "Pályablokkrács generálási késleltetése" +msgstr "Pályablokk 3D-modell generálási késleltetés" #: src/settings_translation_file.cpp msgid "Mapblock mesh generation threads" -msgstr "Pályablokkrács-generálási szálak" +msgstr "Pályablokk 3D-modell generálási szálak" #: src/settings_translation_file.cpp msgid "Mapblock unload timeout" @@ -4939,7 +4997,7 @@ msgstr "Kárpátok pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen Carpathian specific flags" -msgstr "Kárpátok pályagenerátor saját jelzői" +msgstr "Kárpátok pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen Flat" @@ -4947,7 +5005,7 @@ msgstr "Lapos pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen Flat specific flags" -msgstr "Lapos pályagenerátor saját jelzői" +msgstr "Lapos pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen Fractal" @@ -4955,7 +5013,7 @@ msgstr "Fraktál pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen Fractal specific flags" -msgstr "Fraktál pályagenerátor saját jelzői" +msgstr "Fraktál pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen V5" @@ -4963,7 +5021,7 @@ msgstr "V5 pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen V5 specific flags" -msgstr "V5 pályagenerátor saját jelzői" +msgstr "V5 pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen V6" @@ -4971,7 +5029,7 @@ msgstr "V6 pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen V6 specific flags" -msgstr "V6 pályagenerátor saját jelzői" +msgstr "V6 pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen V7" @@ -4979,7 +5037,7 @@ msgstr "V7 pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen V7 specific flags" -msgstr "V7 pályagenerátor saját jelzői" +msgstr "V7 pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen Valleys" @@ -4987,7 +5045,7 @@ msgstr "Völgyek pályagenerátor" #: src/settings_translation_file.cpp msgid "Mapgen Valleys specific flags" -msgstr "Völgyek pályagenerátor saját jelzői" +msgstr "Völgyek pályagenerátor saját kapcsolói" #: src/settings_translation_file.cpp msgid "Mapgen debug" @@ -5015,7 +5073,7 @@ msgstr "Max. objektumtakarítás az extra blokkora" #: src/settings_translation_file.cpp msgid "Max. packets per iteration" -msgstr "Maximum csomagok ismétlésenként" +msgstr "Max. csomagszám lépésenként" #: src/settings_translation_file.cpp msgid "Maximum FPS" @@ -5112,6 +5170,10 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"Az elküldött csomagok maximális száma az alacsony szintű hálózati kód " +"küldési lépéseiben.\n" +"Általában nem kell ezt megváltoztatnod, de terhelt szerverek számára " +"előnyösebb a nagyobb szám." #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5173,10 +5235,6 @@ msgstr "" msgid "Maximum users" msgstr "Maximum felhasználók" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Poligonháló cashe" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Napi üzenet" @@ -5198,9 +5256,8 @@ msgid "Minimap scan height" msgstr "Kistérkép-letapogatási magasság" #: src/settings_translation_file.cpp -#, fuzzy msgid "Minimum dig repetition interval" -msgstr "Lehelyezés-ismétlési időköz" +msgstr "Ásásismétlési időköz" #: src/settings_translation_file.cpp msgid "Minimum limit of random number of large caves per mapchunk." @@ -5214,6 +5271,10 @@ msgstr "" "A véletlenszerűen egy pályadarabkára jutó kis barlangok számának minimális " "korlátja." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mipmapping" @@ -5275,9 +5336,8 @@ msgid "Mouse sensitivity multiplier." msgstr "Egér érzékenységi faktora." #: src/settings_translation_file.cpp -#, fuzzy msgid "Movement threshold" -msgstr "Üreg küszöb" +msgstr "Mozgásfelismerési küszöb" #: src/settings_translation_file.cpp msgid "Mud noise" @@ -5308,9 +5368,10 @@ msgstr "" "- Az opcionális lebegő földek a v7-ben (alapértelmezés szerint tiltott)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "A játékos neve.\n" @@ -5350,7 +5411,7 @@ msgstr "Kockák kiemelése" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "Kocka tükröződése" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5408,14 +5469,13 @@ msgid "Number of messages a player may send per 10 seconds." msgstr "Üzenetek száma amit egy játékos küldhet / 10 s." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of threads to use for mesh generation.\n" "Value of 0 (default) will let Luanti autodetect the number of available " "threads." msgstr "" -"A háló létrehozásához használt szálak száma.\n" -"A 0 (alapértelmezett) érték lehetővé teszi, hogy a Minetest automatikusan " +"A 3D-modellek létrehozásához használt szálak száma.\n" +"A 0 (alapértelmezett) érték lehetővé teszi, hogy a Luanti automatikusan " "felismerje az elérhető szálak számát." #: src/settings_translation_file.cpp @@ -5444,23 +5504,20 @@ msgstr "" "egy felugró ablak." #: src/settings_translation_file.cpp -#, fuzzy msgid "OpenGL debug" -msgstr "Pályagenerátor-hibakereső" +msgstr "OpenGL hibakereső" #: src/settings_translation_file.cpp -#, fuzzy msgid "Optimize GUI for touchscreens" -msgstr "Célkereszt haszálata érintőképernyőn" +msgstr "Felhasználói felület optimalizálása érintőképernyőhöz" #: src/settings_translation_file.cpp msgid "Optional override for chat weblink color." msgstr "A csevegésben lévő internetes linkek színének opcionális felülírása." #: src/settings_translation_file.cpp -#, fuzzy msgid "Other Effects" -msgstr "Grafikai hatások" +msgstr "Egyéb hatások" #: src/settings_translation_file.cpp msgid "" @@ -5581,7 +5638,6 @@ msgid "Prometheus listener address" msgstr "Prometheus figyelési cím" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Prometheus listener address.\n" "If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" @@ -5589,9 +5645,9 @@ msgid "" "Metrics can be fetched on http://127.0.0.1:30000/metrics" msgstr "" "Prometheus figyelési cím.\n" -"Ha a Minetest-et az ENABLE_PROMETHEUS opció engedélyezésével állítták " -"össze,\n" -"elérhetővé válnak a Prometheus mérőszám figyelői ezen a címen.\n" +"Ha a Luanti kódját az ENABLE_PROMETHEUS opció engedélyezésével fordították " +"le,\n" +"elérhetővé válnak a Prometheus mérőszámfigyelői ezen a címen.\n" "A mérőszámok itt érhetők el: http://127.0.0.1:30000/metrics" #: src/settings_translation_file.cpp @@ -5618,6 +5674,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"A sugár, amelyet akkor kell használni, amikor a blokkhatárok mutatása a " +"közeli blokkokra van beállítva." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5850,39 +5908,41 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" -"válasszon Antialiasing módot az alkalmazásához.\n" +"Válassza ki az alkalmazandó élsimítási módszert.\n" "\n" -"*none-nincs (alapértelmezett)\n" +"* None - Nincs élsimítás (alapértelmezett)\n" "\n" -"*FSAA-hardver általi teljesképernyős antialiasing, nem műkődik " -"Árnyalókkal(shaders)\n" -"illetve Többalapos antialiasing (MSAA)\n" +"* FSAA - Hardver általi teljesképernyős élsimítás\n" +"(nem műkődik utófeldolgozással és alulminavételezéssel)\n" +"Többszörös mintavételezésű élsimításként is ismert (MSAA)\n" "Kisimítja a blokkéleket,de nem érinti a textúrák belsejét.\n" -"alkalmazásához újraindítás szükséges.\n" +"Ezen opció megváltoztatásakor újraindítás szükséges.\n" "\n" -"*FXAA-gyors pontos antialiasing (shaders szükséges)\n" -"alkalmaz egy post-processing filtert, hogy észlelje és simítsa a " -"nagykontrasztú éleket.\n" -"köztes a gyors és minőségi kép közt.\n" +"* FXAA - Gyors közelítő élsimítás (árnyékolók szükségesek)\n" +"Utófeldolgozási szűrőt használ a nagy kontrasztú élek észlelésére és " +"kisimítására.\n" +"Köztes megoldás a sebesség és a jó képminőség között.\n" "\n" -"*SSAA-Szuper-alapos antialiasing (shaders szükséges)\n" -"Jobb képminőséget renderel a jelenetről, majd lekicsinyíti, hogy kissebb " -"legyen\n" -"az antialiasing effekt. ez a leglassabb és legpontosabb módszer." +"* SSAA - Felülmintavételezéses élsimítás (árnyékolók szükségesek)\n" +"Először renderel egy jobb minőségű képet a látottakról, majd lekicsinyíti " +"az\n" +"élhibák csökkentéséhez. Ez a leglassabb, de legpontosabb módszer." #: src/settings_translation_file.cpp msgid "Selection box border color (R,G,B)." @@ -5943,11 +6003,12 @@ msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." msgstr "" +"Az online játékosok nevének felvétele a szerverlistára. Ha nincs " +"engedélyezve, akkor csak a játékosszám látszik." #: src/settings_translation_file.cpp -#, fuzzy msgid "Send player names to the server list" -msgstr "Szerver kihirdetése erre a szerverlistára." +msgstr "Játékosnevek küldése a szerverlistára" #: src/settings_translation_file.cpp msgid "Server" @@ -5975,6 +6036,9 @@ msgid "" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"Szerver csaláselhárítási beállításai.\n" +"A kapcsolók az elhárítás működését jelzik. Vedd ki a pipát a kapcsoló " +"mellől, ha ki akarod kapcsolni a neki megfelelő csaláselhárítási modult." #: src/settings_translation_file.cpp msgid "Server description" @@ -6029,13 +6093,12 @@ msgstr "" "Értékhatár: -1-től 1.0-ig" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Set the language. By default, the system language is used.\n" "A restart is required after changing this." msgstr "" -"Nyelv beállítása. Hagyd üresen a rendszer nyelvének használatához.\n" -"A változtatás után a játék újraindítása szükséges." +"Nyelv beállítása. Alapértelmezetten a rendszer nyelvét használja.\n" +"Ennek megváltoztatásakor újra kell indítani a játékot." #: src/settings_translation_file.cpp msgid "" @@ -6079,6 +6142,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." msgstr "" +"Állítsd igazra a sugaras megvilágítási hatás (mint a felhőn áttörő " +"fénysugár) engedélyezéséhez." #: src/settings_translation_file.cpp msgid "Set to true to enable waving leaves." @@ -6118,16 +6183,6 @@ msgstr "" msgid "Shader path" msgstr "Árnyaló útvonala" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Árnyalók" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Árnyék szűrő minőség" @@ -6188,7 +6243,7 @@ msgid "" msgstr "" "Oldalirányú hossza annak a pályablokk-kockának amelyet a kliens egynek " "tekint,\n" -"amikor rácsgenerálást végez.\n" +"amikor a 3D-modelleket generálja.\n" "A nagyobb értékek növelik a GPU kihasználtságát a rajzolási hívások " "csökkentésével,\n" "ami előnyös a nagy teljesítményű GPU-k számára.\n" @@ -6197,7 +6252,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +msgstr "Az áttetszőség szimulálása, amikor a lombra nézel a napsütésben." #: src/settings_translation_file.cpp msgid "" @@ -6252,19 +6307,16 @@ msgid "Smooth lighting" msgstr "Lágy megvilágítás" #: src/settings_translation_file.cpp -#, fuzzy msgid "Smooth scrolling" -msgstr "Lágy megvilágítás" +msgstr "Lágy görgetés" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " "cinematic mode by using the key set in Controls." msgstr "" "A kameraforgást lágyítja operatőr módban. 0 a letiltáshoz. Az operatőr módra " -"váltáshoz nyomd meg a gombot, amelyet a Gombok megváltoztatásánál " -"beállítottál." +"váltáshoz nyomd meg a gombot, amelyet a Irányítás menüben megadtál." #: src/settings_translation_file.cpp msgid "" @@ -6281,9 +6333,8 @@ msgid "Sneaking speed, in nodes per second." msgstr "Lopakodás sebessége kocka/másodpercben." #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "3D felhők" +msgstr "Árnyalatos felhők" #: src/settings_translation_file.cpp msgid "Soft shadow radius" @@ -6294,9 +6345,8 @@ msgid "Sound" msgstr "Hang" #: src/settings_translation_file.cpp -#, fuzzy msgid "Sound Extensions Blacklist" -msgstr "ContentDB zászló feketelista" +msgstr "Hangbővítmények feketelistája" #: src/settings_translation_file.cpp msgid "" @@ -6324,11 +6374,11 @@ msgstr "" "kötegek méretét bizonyos vagy az összes tárgy esetén." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Az árnyéktérkép firssítését szétterjeszti a megadott számú képkockára.\n" "Magasabb érték esetén az árnyékok késhetnek, alacsabb érékek\n" @@ -6525,7 +6575,6 @@ msgstr "" "A profilok mentésének relatív elérési útja a világod elérési útjához képest." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The gesture for punching players/entities.\n" "This can be overridden by games and mods.\n" @@ -6537,26 +6586,28 @@ msgid "" "Known from the classic Luanti mobile controls.\n" "Combat is more or less impossible." msgstr "" -"A játékos/entitás ütési gesztus.\n" -"Felülírhatják modok és játék is.\n" +"A játékosok vagy lények megütésének gesztusa.\n" +"Ezt eges modok vagy játékok felülírhatják.\n" "\n" -"*rövid_érintés\n" -"Könnyű használni, ismert sok más játékból, amit nem nevezünk meg.\n" +"* short_tap\n" +"(rövid érintés) Könnyű használni, és jól ismert sok más játékból, aminek nem " +"mondjuk ki a nevét.\n" "\n" -"*hosszú_érintés\n" -"ismert a klasszikus Minetest telefonos irányitásból.\n" -"az ütés valamivel nehezebb lessz." +"* long_tap\n" +"(hosszú érintés) A Luanti klasszikus mobiltelefonos irányitása is ezt " +"használta.\n" +"Ezzel szinte lehetetlen harcolni." #: src/settings_translation_file.cpp msgid "The identifier of the joystick to use" msgstr "A használni kívánt joystick azonosítója" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The length in pixels after which a touch interaction is considered movement." msgstr "" -"Az érintőképernyős interakció aktiválódásához szükséges távolság pixelekben." +"Az a pixelekben kifejezett távolság, amitől hosszabb képernyőhúzás " +"mozgásként értelmezendő." #: src/settings_translation_file.cpp msgid "" @@ -6568,17 +6619,16 @@ msgstr "" "A hullámzó folyadékok felszínének maximális magassága.\n" "4,0 = A hullámok magasága két kocka.\n" "0,0 = A hullámok egyáltalán nem mozognak.\n" -"Az alapértelmezett érték 1,0 (1/2 node/kocka).\n" -"A hullámzó folyadék engedélyezése szükséges hozzá." +"Az alapértelmezett érték 1,0 (1/2 kocka)." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The minimum time in seconds it takes between digging nodes when holding\n" "the dig button." msgstr "" -"Az az idő másodpercben kifejezve, amely a csomópontok ismételt elhelyezése\n" -"között telik el, amikor lenyomva tartja az elhelyezés gombot." +"Az a másodpercben kifejezett legrövidebb idő, aminek két kocka kiásása " +"között el kell telni,\n" +"amikor lenyomva tartod az ásás gombját." #: src/settings_translation_file.cpp msgid "The network interface that the server listens on." @@ -6612,19 +6662,15 @@ msgstr "" "megadni." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The rendering back-end.\n" "Note: A restart is required after changing this!\n" "OpenGL is the default for desktop, and OGLES2 for Android." msgstr "" "A renderelő háttérprogram.\n" -"Ha ezt megváltoztatod, újraindítás szükséges.\n" -"Megjegyzés: Androidon, hagyd OGLES1-en, ha bizonytalan vagy! Lehet, hogy nem " -"indul az app különben.\n" -"Más platformokon az OpenGL az ajánlott.\n" -"Az árnyalókat (Shaders) az OpenGL (csak asztali rendszeren) és OGLES2 " -"(kísérleti) támogatja." +"Megjegyzés: Ha ezt megváltoztatod, újraindítás szükséges.\n" +"Asztali verzióban az OpenGL, az Android verzióban az OGLES2 az " +"alapértelmezett." #: src/settings_translation_file.cpp msgid "" @@ -6721,10 +6767,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Az új világ létrehozásakor érvényes napszak milliórában (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Idő küldési gyakoriság" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Idő sebessége" @@ -6752,6 +6794,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"A mozgási csalás figyelésének határértéke.\n" +"Növeld az értékét, ha a játékosok mozgása szakadozottá válik." #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6762,9 +6806,8 @@ msgid "Touchscreen" msgstr "Érintőképernyő" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "Érintőképernyő érzékenysége" +msgstr "Érintőképernyős irányítás" #: src/settings_translation_file.cpp msgid "Touchscreen sensitivity" @@ -6779,19 +6822,22 @@ msgid "Tradeoffs for performance" msgstr "Teljesítménybeli kompromisszumok" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent foliage" -msgstr "Átlátszatlan folyadékok" +msgstr "Átlátszó lombok" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent liquids" -msgstr "Átlátszatlan folyadékok" +msgstr "Átlátszó folyadékok" #: src/settings_translation_file.cpp msgid "Transparency Sorting Distance" msgstr "Átlátszósági rendezési távolság" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Átlátszósági rendezési távolság" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Fa zaj" @@ -6833,12 +6879,14 @@ msgstr "" "Ez a beállítás csak teljesítményhibák esetén állítandó át." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "URL to JSON file which provides information about the newest Luanti " "release.\n" "If this is empty the engine will never check for updates." -msgstr "A JSON fájl URL-ja a legújabb Minetest kiadásról" +msgstr "" +"A JSON fájl URL-je, amely a legújabb Luanti kiadásról szolgáltat " +"információkat.\n" +"Ha ez üres, a játékmotor nem fogja ellenőrizni a frissítéseket." #: src/settings_translation_file.cpp msgid "URL to the server list displayed in the Multiplayer Tab." @@ -6849,12 +6897,16 @@ msgid "Undersampling" msgstr "Alulmintavételezés" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Az alulmintavételezés olyan, mintha kisebb képernyőfelbontást használnál, " "de\n" @@ -6883,16 +6935,15 @@ msgstr "A tömlöcök felső Y határa." msgid "Upper Y limit of floatlands." msgstr "A lebegő földek felső Y határa." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "3D felhők használata lapos helyett." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Felhő animáció használata a főmenü háttereként." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Anizotróp szűrés használata, ha adott szögből nézzük a textúrákat." #: src/settings_translation_file.cpp @@ -6928,12 +6979,12 @@ msgid "" "client mesh sizes smaller than 4x4x4 map blocks." msgstr "" "Sugárkövetés használata az új kitakarásfigyelőhöz.\n" -"Ez a beállítás engedélyezi a sugárkövetéses kitakarástesztelést\n" +"Ez a kapcsoló engedélyezi a sugárkövetéses kitakarástesztelést\n" "a 4x4x4 pályablokknál kisebb térrészekhez a kliensben." #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "Lágy felhőárnyékolás használata." #: src/settings_translation_file.cpp msgid "" @@ -7024,9 +7075,8 @@ msgid "" "Vertical screen synchronization. Your system may still force VSync on even " "if this is disabled." msgstr "" -"Függőleges képernyő szinkronizálás (VSync). a rendszer\n" -"akkor is engedélyezettre kényszerítheti, ha itt\n" -"ki van kapcsolva." +"Függőleges képernyő-szinkronizálás. A rendszered azonban akkor is " +"kényszerítheti a VSync-et, ha itt ki van kapcsolva." #: src/settings_translation_file.cpp msgid "Video driver" @@ -7053,9 +7103,8 @@ msgid "Volume" msgstr "Hangerő" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volume multiplier when the window is unfocused." -msgstr "Hangerő többszörös kifókuszált ablak esetén." +msgstr "Hangerőmódosítás mértéke háttérbe rakott ablak esetén." #: src/settings_translation_file.cpp msgid "" @@ -7066,14 +7115,12 @@ msgstr "" "A hangrendszer engedélyezésére van szükség hozzá." #: src/settings_translation_file.cpp -#, fuzzy msgid "Volume when unfocused" -msgstr "FPS, amikor a játék meg van állítva, vagy nincs fókuszban" +msgstr "Háttérben futáskori hangerő" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volumetric lighting" -msgstr "Lágy megvilágítás" +msgstr "Sugaras megvilágítás" #: src/settings_translation_file.cpp msgid "" @@ -7143,13 +7190,16 @@ msgstr "Internetes hivatkozások színe" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "Engedélyezésekor szimulálva lesz a folyadékokon való tükröződés." #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"Engedélyezésekor a felhasználói felület az érintőképernyős használatra lesz " +"optimalizálva.\n" +"Az eszközöd képarányától függ, hogy ez alapértelmezetten engedélyezve lesz-e." #: src/settings_translation_file.cpp msgid "" @@ -7162,25 +7212,14 @@ msgstr "" "generálódik (pl. a felszerelésben lévő kockák textúrára renderelése)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Ha a gui_scaling_filter_txr2img be van kapcsolva, ezeket a képeket\n" -"a hardverről a szoftverbe másolja méretezésre. Ha ki van kapcsolva,\n" -"a régi méretezési módszert használja, azoknál a videó drivereknél,\n" -"amelyek nem megfelelően támogatják a textúra hardverről való letöltését." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7206,12 +7245,6 @@ msgstr "" "Látszódjon-e a névcédulák háttere alapértelmezésként.\n" "A modok ettől még beállíthatják a hátteret." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Legyen-e független a kockák textúraanimációinak időzítése az egyes " -"pályablokkokban." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7237,9 +7270,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "A látható terület vége el legyen-e ködösítve." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7267,15 +7300,15 @@ msgid "Window maximized" msgstr "Az ablak már teljes képernyős" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Windows systems only: Start Luanti with the command line window in the " "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"Csak Windows rendszeren: Minetest indítása parancssorral a háttérben.\n" -"Ugyanazokat az információkat tartalmazza, mint a debug.txt fájl " -"(alapértelmezett név)." +"Csak Windows rendszeren: A Luanti indításakor megnyílik a parancssor a " +"háttérben.\n" +"Ugyanazokat az információkat tartalmazza, mint a debug.txt (alapértelmezett " +"nevű) fájl." #: src/settings_translation_file.cpp msgid "" @@ -7433,6 +7466,9 @@ msgstr "cURL párhuzamossági korlát" #~ "Hagyd üresen helyi szerver indításához.\n" #~ "Megjegyzés: a cím mező a főmenüben felülírja ezt a beállítást." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Részecskéket mutat a kockák ásásakor." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7573,6 +7609,9 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Clean transparent textures" #~ msgstr "Tiszta átlátszó textúrák" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "A felhő kliens oldali effektus." + #~ msgid "Command key" #~ msgstr "Parancs gomb" @@ -7667,9 +7706,15 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Darkness sharpness" #~ msgstr "a sötétség élessége" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Hibakereső információ és pofiler elrejtése" + #~ msgid "Debug info toggle key" #~ msgstr "Hibakereső információra váltás gomb" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Hibakereső információk, profilergrafika, drótkeret rejtett" + #~ msgid "Dec. volume key" #~ msgstr "Hangerő csökkentés gomb" @@ -7723,9 +7768,15 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Del. Favorite" #~ msgstr "Kedvenc törlése" +#~ msgid "Desynchronize block animation" +#~ msgstr "Blokkanimáció deszinkronizálása" + #~ msgid "Dig key" #~ msgstr "Ásás gomb" +#~ msgid "Digging particles" +#~ msgstr "Ásási részecskék" + #~ msgid "Disable anticheat" #~ msgstr "Csalás elleni védelem letiltása" @@ -7750,6 +7801,9 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Dynamic shadows:" #~ msgstr "Dinamikus árnyékok:" +#~ msgid "Enable" +#~ msgstr "Engedélyez" + #~ msgid "Enable VBO" #~ msgstr "VBO engedélyez" @@ -7773,6 +7827,14 @@ msgstr "cURL párhuzamossági korlát" #~ "Vertex buffer objektumok engedélyezése.\n" #~ "Ez nagyban javíthatja a grafikus teljesítményt." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "A facedir-t használó forgatott 3D-moddellek gyorsítótárazásának " +#~ "engedélyezése.\n" +#~ "Ennek csak az árnyékolók letiltásakor van hatása." + #~ msgid "Enables filmic tone mapping" #~ msgstr "filmes tónus effektek bekapcsolása" @@ -7816,9 +7878,6 @@ msgstr "cURL párhuzamossági korlát" #~ "Kísérleti opció, látható rések jelenhetnek meg a blokkok között\n" #~ "ha nagyobbra van állítva, mint 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS a szünet menüben" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7906,8 +7965,8 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Full screen BPP" #~ msgstr "Teljes képernyő BPP" -#~ msgid "Game" -#~ msgstr "Játék" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Felhasználói felület méretarány szűrő txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8072,659 +8131,666 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Instrumentation" #~ msgstr "Behangolás" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "A napszak kliensnek való küldésének gyakorisága, másodpercben megadva." + #~ msgid "Invalid gamespec." #~ msgstr "Érvénytelen játékmeghatározás." #~ msgid "Inventory key" #~ msgstr "Felszerelés gomb" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht készülék:" + #~ msgid "Jump key" #~ msgstr "Ugrás gomb" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a látóterület csökkentéséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a hangerő csökkentéséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az ásáshoz.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az éppen kijelölt tárgy eldobásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a látóterület növeléséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a hangerő növeléséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az ugráshoz.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a gyors mozgáshoz gyors módban.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a játékos hátrafelé mozgásához.\n" #~ "Kikapcsolja az önjárást is, ha aktív.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a játékos előre mozgásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a játékos balra mozgatásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a játékos jobbra mozgatásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a játék némításához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a csevegőablak megnyitásához, parancsok beírásához.\n" -#~ "Lásd: //irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: //irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a csevegőablak megnyitásához, helyi parancsok beírásához.\n" -#~ "Lásd: //irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: //irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a csevegőablak megnyitásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a felszerelés megnyitásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a lehelyezéshez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 11. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 12. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 13. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 14. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 15. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 16. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 17. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 18. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 19. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 20. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 21. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 22. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 23. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 24. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 25. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 26. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 27. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 28. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 29. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 30. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 31. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 32. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 8. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 5. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 1. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 4. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a következő elem kiválasztásához az eszköztárban.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 9. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az előző elem kiválasztásához az eszköztárban.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 2. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 7. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 6. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 10. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a 3. eszköztárhely kiválasztásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a lopakodáshoz.\n" #~ "A lefelé mászáshoz és vízben történő ereszkedéshez is ezt lehet " #~ "használni, ha az aux1_descends le van tiltva.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a belső és külső nézetre váltáshoz.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb képernyőkép készítéshez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az automatikus előrehaladás bekapcsolásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb az operatőr mód kapcsolgatásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a kistérkép váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a gyors mód váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a repülés mód váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a noclip mód váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb pályamozgás mód váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a kamerafrissítés váltásához. Csak fejlesztők számára.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a csevegés megjelenítéséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a hibakeresési információ megjelenítéséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a köd váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a HUD váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a nagy csevegéskonzol megjelenítéséhez.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "A profiler kijelzőjének kapcsológombja. Fejlesztéshez használatos.\n" -#~ "Lásd http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a végtelen látóterület váltásához.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Gomb a nagyításhoz amikor lehetséges.\n" -#~ "Lásd: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lásd: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8797,6 +8863,9 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Menus" #~ msgstr "Menük" +#~ msgid "Mesh cache" +#~ msgstr "3D-modell gyorsítótár" + #~ msgid "Minimap" #~ msgstr "Kistérkép" @@ -8969,6 +9038,9 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Server / Singleplayer" #~ msgstr "Szerver / Egyjátékos" +#~ msgid "Shaders" +#~ msgstr "Árnyalók" + #~ msgid "Shaders (experimental)" #~ msgstr "Árnyalók (kísérleti)" @@ -8986,6 +9058,16 @@ msgstr "cURL párhuzamossági korlát" #~ "néhány videókártya esetében.\n" #~ "Csak OpenGL-el működnek." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Az árnyékolók a renderelés alapját képezik, és bonyolultabb " +#~ "látványhatásokat tesznek lehetővé." + +#~ msgid "Shaders are disabled." +#~ msgstr "Árnyékolók letiltva." + #, fuzzy #~ msgid "Shadow limit" #~ msgstr "Térképblokk korlát" @@ -9021,6 +9103,9 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Kameraforgás lágyítása. 0 = letiltás." +#~ msgid "Sound system is disabled" +#~ msgstr "A hangrendszer letiltva" + #~ msgid "Special" #~ msgstr "Különleges" @@ -9061,6 +9146,12 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "This font will be used for certain languages." #~ msgstr "Ezt a betűtípust bizonyos nyelvek használják." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Ezek a beállításokat nem ajánlott egyszerre alkalmazni." + +#~ msgid "Time send interval" +#~ msgstr "Idő küldési gyakoriság" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Az árnyalók engedélyezéséhez OpenGL driver használata szükséges." @@ -9153,6 +9244,17 @@ msgstr "cURL párhuzamossági korlát" #~ msgid "Waving water" #~ msgstr "Hullámzó víz" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Ha a gui_scaling_filter_txr2img be van kapcsolva, ezeket a képeket\n" +#~ "a hardverről a szoftverbe másolja méretezésre. Ha ki van kapcsolva,\n" +#~ "a régi méretezési módszert használja, azoknál a videó drivereknél,\n" +#~ "amelyek nem megfelelően támogatják a textúra hardverről való letöltését." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9163,6 +9265,12 @@ msgstr "cURL párhuzamossági korlát" #~ "Ha ki van kapcsolva, bittérképes és XML vektoros betűtípusok lesznek " #~ "használva helyette." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Legyen-e független a kockák textúraanimációinak időzítése az egyes " +#~ "pályablokkokban." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Engedélyezve van-e, hogy a játékosok sebezzék és megöljék egymást." diff --git a/po/ia/luanti.po b/po/ia/luanti.po deleted file mode 100644 index 2f7ebc947..000000000 --- a/po/ia/luanti.po +++ /dev/null @@ -1,6404 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the minetest package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: minetest\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2023-12-03 17:17+0000\n" -"Last-Translator: Krock \n" -"Language-Team: Interlingua \n" -"Language: ia\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.3-dev\n" - -#: builtin/client/chatcommands.lua -msgid "Clear the out chat queue" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Empty command." -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Exit to main menu" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Invalid command: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Issued command: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "List online players" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Online players: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "The out chat queue is now empty." -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "This command is disabled by server." -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Available commands:" -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Available commands: " -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Command not available: " -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Get help for commands (-t: output in chat)" -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "" -"Use '.help ' to get more information, or '.help all' to list everything." -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "[all | ] [-t]" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "An error occurred in a Lua script:" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "An error occurred:" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "Main menu" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "OK" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "Reconnect" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "The server has requested a reconnect:" -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Protocol version mismatch. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Server enforces protocol version $1. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Server supports protocol versions between $1 and $2. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "We only support protocol version $1." -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "We support protocol versions between version $1 and $2." -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Error installing \"$1\": $2" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Failed to download \"$1\"" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Failed to download $1" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "" -"Failed to extract \"$1\" (insufficient disk space, unsupported file type or " -"broken archive)" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "" -"$1 downloading,\n" -"$2 queued" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "$1 downloading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "All" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Back" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Downloading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Featured" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Games" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/serverlistmgr.lua -#: src/client/game.cpp -msgid "Loading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Mods" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -msgid "No packages could be retrieved" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "No updates" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Queued" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Texture Packs" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "The package $1 was not found." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Update All [$1]" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 and $2 dependencies will be installed." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 by $2" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 required dependencies could not be found." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 will be installed, and $2 dependencies will be skipped." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Already installed" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Base Game:" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua -msgid "Dependencies:" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Error getting dependencies for package $1" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install $1" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install missing dependencies" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Not found" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Please check that the base game is correct." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "You need to install a game before you can install a mod" -msgstr "" - -#: builtin/mainmenu/content/dlg_overwrite.lua -msgid "\"$1\" already exists. Would you like to overwrite it?" -msgstr "" - -#: builtin/mainmenu/content/dlg_overwrite.lua -msgid "Overwrite" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "ContentDB page" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Description" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Donate" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Forum Topic" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Information" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Install [$1]" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Issue Tracker" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Source" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Translate" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Uninstall" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Update" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Website" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "$1 (Enabled)" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "$1 mods" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Failed to install $1 to $2" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Install: Unable to find suitable folder name for $1" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to find a valid mod, modpack, or game" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to install a $1 as a $2" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to install a $1 as a texture pack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "(Enabled, has error)" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "(Unsatisfied)" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable all" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable modpack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable all" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable modpack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "" -"Failed to enable mod \"$1\" as it contains disallowed characters. Only " -"characters [a-z0-9_] are allowed." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Find More Mods" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Mod:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No (optional) dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No game description provided." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No hard dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No modpack description provided." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No optional dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua -msgid "Optional dependencies:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "World:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "enabled" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "A world named \"$1\" already exists" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Additional terrain" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Altitude chill" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Altitude dry" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Biome blending" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Biomes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Caverns" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Caves" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Create" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Decorations" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Desert temples" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Development Test is meant for developers." -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "" -"Different dungeon variant generated in desert biomes (only if dungeons " -"enabled)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Dungeons" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Flat terrain" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floating landmasses in the sky" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floatlands (experimental)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Generate non-fractal terrain: Oceans and underground" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Hills" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Humid rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Increases humidity around rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Install another game" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Lakes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Low humidity and high heat causes shallow or dry rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen flags" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mapgen-specific flags" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mountains" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mud flow" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Network of tunnels and caves" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "No game selected" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces heat with altitude" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces humidity with altitude" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Sea level rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Smooth transition between biomes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "" -"Structures appearing on the terrain (no effect on trees and jungle grass " -"created by v6)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Structures appearing on the terrain, typically trees and plants" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle, Tundra, Taiga" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Terrain surface erosion" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Trees and jungle grass" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Vary river depth" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Very large caverns deep in the underground" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "World name" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "Are you sure you want to delete \"$1\"?" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_local.lua -msgid "Delete" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "pkgmgr: failed to delete \"$1\"" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "pkgmgr: invalid path \"$1\"" -msgstr "" - -#: builtin/mainmenu/dlg_delete_world.lua -msgid "Delete World \"$1\"?" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp -msgid "Confirm Password" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Joining $1" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Missing name" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua -#: builtin/mainmenu/tab_online.lua -msgid "Name" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua -#: builtin/mainmenu/tab_online.lua -msgid "Password" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Passwords do not match" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua -msgid "Register" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Dismiss" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "" -"For a long time, Luanti shipped with a default game called \"Minetest " -"Game\". Since version 5.8.0, Luanti ships without a default game." -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "" -"If you want to continue playing in your Minetest Game worlds, you need to " -"reinstall Minetest Game." -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Minetest Game is no longer installed by default" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Reinstall Minetest Game" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "Accept" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "Rename Modpack:" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "" -"This modpack has an explicit name given in its modpack.conf which will " -"override any renaming here." -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "A new $1 version is available" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "" -"Installed version: $1\n" -"New version: $2\n" -"Visit $3 to find out how to get the newest version and stay up to date with " -"features and bugfixes." -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Later" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Never" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Visit website" -msgstr "" - -#: builtin/mainmenu/init.lua -msgid "Settings" -msgstr "" - -#: builtin/mainmenu/serverlistmgr.lua -msgid "Public server list is disabled" -msgstr "" - -#: builtin/mainmenu/serverlistmgr.lua -msgid "Try reenabling public serverlist and check your internet connection." -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "About" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Active Contributors" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Active renderer:" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Core Developers" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Core Team" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Open User Data Directory" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "" -"Opens the directory that contains user-provided worlds, games, mods,\n" -"and texture packs in a file manager / explorer." -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Contributors" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Core Developers" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Share debug log" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Browse online content" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Browse online content [$1]" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Content" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Content [$1]" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Disable Texture Pack" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Installed Packages:" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "No dependencies." -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "No package description available" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Rename" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Update available?" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Use Texture Pack" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Announce Server" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Bind Address" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Creative Mode" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Enable Damage" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Host Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Host Server" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Install a game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Install games from ContentDB" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Luanti doesn't come with a game by default." -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "" -"Luanti is a game-creation platform that allows you to play many different " -"games." -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "New" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "No world created or selected!" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Play Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_online.lua -msgid "Port" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Select Mods" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Select World:" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Server Port" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Start Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "You need to install a game before you can create a world." -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Address" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Creative mode" -msgstr "" - -#. ~ PvP = Player versus Player -#: builtin/mainmenu/tab_online.lua -msgid "Damage / PvP" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Favorites" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Incompatible Servers" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Join Game" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Login" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Ping" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Public Servers" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Refresh" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Remove favorite" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Server Description" -msgstr "" - -#: src/client/client.cpp -msgid "Connection aborted (protocol error?)." -msgstr "" - -#: src/client/client.cpp src/client/game.cpp -msgid "Connection timed out." -msgstr "" - -#: src/client/client.cpp -msgid "Done!" -msgstr "" - -#: src/client/client.cpp -msgid "Initializing nodes" -msgstr "" - -#: src/client/client.cpp -msgid "Initializing nodes..." -msgstr "" - -#: src/client/client.cpp -msgid "Loading textures..." -msgstr "" - -#: src/client/client.cpp -msgid "Rebuilding shaders..." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Could not find or load game: " -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Main Menu" -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "No world selected and no address provided. Nothing to do." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Player name too long." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Please choose a name!" -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Provided password file failed to open: " -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Provided world path doesn't exist: " -msgstr "" - -#: src/client/clientmedia.cpp src/client/game.cpp -msgid "Media..." -msgstr "" - -#: src/client/game.cpp src/client/shader.cpp src/server.cpp -msgid "" -"\n" -"Check debug.txt for details." -msgstr "" - -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - -#: src/client/game.cpp -msgid "A serialization error occurred:" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Access denied. Reason: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Automatic forward disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Automatic forward enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds hidden" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds shown for current block" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds shown for nearby blocks" -msgstr "" - -#: src/client/game.cpp -msgid "Camera update disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Camera update enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Can't show block bounds (disabled by game or mod)" -msgstr "" - -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - -#: src/client/game.cpp -msgid "Cinematic mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Cinematic mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Client disconnected" -msgstr "" - -#: src/client/game.cpp -msgid "Client side scripting is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Connecting to server..." -msgstr "" - -#: src/client/game.cpp -msgid "Connection error (timed out?)" -msgstr "" - -#: src/client/game.cpp -msgid "Connection failed for unknown reason" -msgstr "" - -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Couldn't resolve address: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Creating client..." -msgstr "" - -#: src/client/game.cpp -msgid "Creating server..." -msgstr "" - -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - -#: src/client/game.cpp -msgid "Debug info shown" -msgstr "" - -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Error creating client: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode enabled (note: no 'fast' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode enabled (note: no 'fly' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Fog disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fog enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fog enabled by game or mod" -msgstr "" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - -#: src/client/game.cpp -msgid "Item definitions..." -msgstr "" - -#: src/client/game.cpp -msgid "KiB/s" -msgstr "" - -#: src/client/game.cpp -msgid "MiB/s" -msgstr "" - -#: src/client/game.cpp -msgid "Minimap currently disabled by game or mod" -msgstr "" - -#: src/client/game.cpp -msgid "Multiplayer" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode enabled (note: no 'noclip' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Node definitions..." -msgstr "" - -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - -#: src/client/game.cpp -msgid "Pitch move mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Pitch move mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Profiler graph shown" -msgstr "" - -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - -#: src/client/game.cpp -msgid "Resolving address..." -msgstr "" - -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - -#: src/client/game.cpp -msgid "Shutting down..." -msgstr "" - -#: src/client/game.cpp -msgid "Singleplayer" -msgstr "" - -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - -#: src/client/game.cpp -msgid "Sound muted" -msgstr "" - -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Sound system is not supported on this build" -msgstr "" - -#: src/client/game.cpp -msgid "Sound unmuted" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "The server is probably running a different version of %s." -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Unable to connect to %s because IPv6 is disabled" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Unable to listen on %s because IPv6 is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range enabled, but forbidden by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing changed to %d (the minimum)" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d (the maximum)" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "" -"Viewing range changed to %d (the maximum), but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d, but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Volume changed to %d%%" -msgstr "" - -#: src/client/game.cpp -msgid "Wireframe shown" -msgstr "" - -#: src/client/game.cpp -msgid "You died" -msgstr "" - -#: src/client/game.cpp -msgid "Zoom currently disabled by game or mod" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat currently disabled by game or mod" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat hidden" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat shown" -msgstr "" - -#: src/client/gameui.cpp -msgid "HUD hidden" -msgstr "" - -#: src/client/gameui.cpp -msgid "HUD shown" -msgstr "" - -#: src/client/gameui.cpp -msgid "Profiler hidden" -msgstr "" - -#: src/client/gameui.cpp -#, c-format -msgid "Profiler shown (page %d of %d)" -msgstr "" - -#: src/client/keycode.cpp -msgid "Apps" -msgstr "" - -#: src/client/keycode.cpp -msgid "Backspace" -msgstr "" - -#. ~ Usually paired with the Pause key -#: src/client/keycode.cpp -msgid "Break Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Caps Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Clear Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Control Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Delete Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Down Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "End" -msgstr "" - -#: src/client/keycode.cpp -msgid "Erase EOF" -msgstr "" - -#: src/client/keycode.cpp -msgid "Execute" -msgstr "" - -#: src/client/keycode.cpp -msgid "Help" -msgstr "" - -#: src/client/keycode.cpp -msgid "Home" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Accept" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Convert" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Escape" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Mode Change" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Nonconvert" -msgstr "" - -#: src/client/keycode.cpp -msgid "Insert" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Control" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Menu" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Windows" -msgstr "" - -#. ~ Key name, common on Windows keyboards -#: src/client/keycode.cpp -msgid "Menu Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Middle Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Num Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad *" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad +" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad -" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad ." -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad /" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 0" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 1" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 2" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 3" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 4" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 5" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 6" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 7" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 8" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 9" -msgstr "" - -#: src/client/keycode.cpp -msgid "OEM Clear" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Down" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Up" -msgstr "" - -#. ~ Usually paired with the Break key -#: src/client/keycode.cpp -msgid "Pause Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Play" -msgstr "" - -#. ~ "Print screen" key -#: src/client/keycode.cpp -msgid "Print" -msgstr "" - -#: src/client/keycode.cpp -msgid "Return Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Control" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Menu" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Windows" -msgstr "" - -#: src/client/keycode.cpp -msgid "Scroll Lock" -msgstr "" - -#. ~ Key name -#: src/client/keycode.cpp -msgid "Select" -msgstr "" - -#: src/client/keycode.cpp -msgid "Shift Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Sleep" -msgstr "" - -#: src/client/keycode.cpp -msgid "Snapshot" -msgstr "" - -#: src/client/keycode.cpp -msgid "Space" -msgstr "" - -#: src/client/keycode.cpp -msgid "Tab" -msgstr "" - -#: src/client/keycode.cpp -msgid "Up Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 1" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 2" -msgstr "" - -#: src/client/keycode.cpp -msgid "Zoom Key" -msgstr "" - -#: src/client/minimap.cpp -msgid "Minimap hidden" -msgstr "" - -#: src/client/minimap.cpp -#, c-format -msgid "Minimap in radar mode, Zoom x%d" -msgstr "" - -#: src/client/minimap.cpp -#, c-format -msgid "Minimap in surface mode, Zoom x%d" -msgstr "" - -#: src/client/minimap.cpp -msgid "Minimap in texture mode" -msgstr "" - -#: src/client/shader.cpp -#, c-format -msgid "Failed to compile the \"%s\" shader." -msgstr "" - -#: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" - -#. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" -#: src/content/mod_configuration.cpp -#, c-format -msgid "%s is missing:" -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "" -"Install and enable the required mods, or disable the mods causing errors." -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "" -"Note: this may be caused by a dependency cycle, in which case try updating " -"the mods." -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "Some mods have unsatisfied dependencies:" -msgstr "" - -#: src/gui/guiChatConsole.cpp -msgid "Failed to open webpage" -msgstr "" - -#: src/gui/guiChatConsole.cpp -msgid "Opening webpage" -msgstr "" - -#: src/gui/guiFormSpecMenu.cpp -msgid "Proceed" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "\"Aux1\" = climb down" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Autoforward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/settings_translation_file.cpp -msgid "Automatic jumping" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Aux1" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Backward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Block bounds" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Change camera" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Command" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Console" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Double tap \"jump\" to toggle fly" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Drop" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Forward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Inventory" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Jump" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Key already in use" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Keybindings." -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Left" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Local command" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Mute" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Next item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Prev. item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Range select" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Right" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Screenshot" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Sneak" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle HUD" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle chat log" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fast" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fly" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle fog" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle minimap" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle noclip" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle pitchmove" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Zoom" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "press key" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Open" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Open URL?" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Unable to open URL" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Change" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "New Password" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Old Password" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Passwords do not match!" -msgstr "" - -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp -msgid "Exit" -msgstr "" - -#: src/gui/guiVolumeChange.cpp -msgid "Muted" -msgstr "" - -#: src/gui/guiVolumeChange.cpp -#, c-format -msgid "Sound Volume: %d%%" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Joystick" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Toggle debug" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Another client is connected with this name. If your client closed " -"unexpectedly, try again in a minute." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Internal server error" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Invalid password" -msgstr "" - -#. ~ DO NOT TRANSLATE THIS LITERALLY! -#. This is a special string which needs to contain the translation's -#. language code (e.g. "de" for German). -#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp -#: src/script/lua_api/l_mainmenu.cpp -msgid "LANG_CODE" -msgstr "ia" - -#: src/network/clientpackethandler.cpp -msgid "" -"Name is not registered. To create an account on this server, click 'Register'" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Name is taken. Please choose another name" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name contains disallowed characters" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name not allowed" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Server shutting down" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"The server has experienced an internal error. You will now be disconnected." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Too many users" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Unknown disconnect reason." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Your client sent something the server didn't expect. Try reconnecting or " -"updating your client." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Your client's version is not supported.\n" -"Please contact the server administrator." -msgstr "" - -#: src/server.cpp -#, c-format -msgid "%s while shutting down: " -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"(X,Y,Z) offset of fractal from world center in units of 'scale'.\n" -"Can be used to move a desired point to (0, 0) to create a\n" -"suitable spawn point, or to allow 'zooming in' on a desired\n" -"point by increasing 'scale'.\n" -"The default is tuned for a suitable spawn point for Mandelbrot\n" -"sets with default parameters, it may need altering in other\n" -"situations.\n" -"Range roughly -2 to 2. Multiply by 'scale' for offset in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"(X,Y,Z) scale of fractal in nodes.\n" -"Actual fractal size will be 2 to 3 times larger.\n" -"These numbers can be made very large, the fractal does\n" -"not have to fit inside the world.\n" -"Increase these to 'zoom' into the detail of the fractal.\n" -"Default is for a vertically-squashed shape suitable for\n" -"an island, set all 3 numbers equal for the raw shape." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of ridged mountains." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of rolling hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of step mountains." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of ridged mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of rolling hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of step mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that locates the river valleys and channels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D mode parallax strength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining giant caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining mountain structure and height.\n" -"Also defines structure of floatland mountain terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining structure of floatlands.\n" -"If altered from the default, the noise 'scale' (0.7 by default) may need\n" -"to be adjusted, as floatland tapering functions best when this noise has\n" -"a value range of approximately -2.0 to 2.0." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining structure of river canyon walls." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise that determines number of dungeons per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D support.\n" -"Currently supported:\n" -"- none: no 3d output.\n" -"- anaglyph: cyan/magenta color 3d.\n" -"- interlaced: odd/even line based polarization screen support.\n" -"- topbottom: split screen top/bottom.\n" -"- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"A chosen map seed for a new map, leave empty for random.\n" -"Will be overridden when creating a new world in the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server crashes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server shuts down." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM time budget" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Absolute limit of queued blocks to emerge" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration in air" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration of gravity, in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active block management interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active block range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active object send range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adjust the detected display density, used for scaling UI elements." -msgstr "" - -#: src/settings_translation_file.cpp -#, c-format -msgid "" -"Adjusts the density of the floatland layer.\n" -"Increase value to increase density. Can be positive or negative.\n" -"Value = 0.0: 50% of volume is floatland.\n" -"Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" -"to be sure) creates a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Admin name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Advanced" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Allows liquids to be translucent." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Alters the light curve by applying 'gamma correction' to it.\n" -"Higher values make middle and lower light levels brighter.\n" -"Value '1.0' leaves the light curve unaltered.\n" -"This only has significant effect on daylight and artificial\n" -"light, it has very little effect on natural night light." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Always fly fast" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ambient occlusion gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Amplifies the valleys." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anisotropic filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Announce server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Announce to this serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anti-aliasing scale" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Antialiasing method" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat movement tolerance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name to tooltip." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Apple trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Apply dithering to reduce color banding artifacts.\n" -"Dithering significantly increases the size of losslessly-compressed\n" -"screenshots and it works incorrectly if the display or operating system\n" -"performs additional dithering or if the color channels are not quantized\n" -"to 8 bits.\n" -"With OpenGL ES, dithering only works if the shader supports high\n" -"floating-point precision and it may have a higher performance impact." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Apply specular shading to nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Arm inertia" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Arm inertia, gives a more realistic movement of\n" -"the arm when the camera moves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ask to reconnect after crash" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"At this distance the server will aggressively optimize which blocks are sent " -"to\n" -"clients.\n" -"Small values potentially improve performance a lot, at the expense of " -"visible\n" -"rendering glitches (some blocks might not be rendered correctly in caves).\n" -"Setting this to a value greater than max_block_send_distance disables this\n" -"optimization.\n" -"Stated in MapBlocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"At this distance the server will perform a simpler and cheaper occlusion " -"check.\n" -"Smaller values potentially improve performance, at the expense of " -"temporarily visible\n" -"rendering glitches (missing blocks).\n" -"This is especially useful for very large viewing range (upwards of 500).\n" -"Stated in MapBlocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Audio" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically jump up single-node obstacles." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically report to the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Autoscaling mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Aux1 key for climbing/descending" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base terrain height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base texture size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Basic privileges" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bind address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome API" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block bounds HUD radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block cull optimize distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block send optimize distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bobbing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Build inside player" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Builtin" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera smoothing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera smoothing in cinematic mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #1" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #2" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern taper" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern upper limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Center of light curve boost range.\n" -"Where 0.0 is minimum light level, 1.0 is maximum light level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat command time message threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat commands" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message count limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message kick threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message max length" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat weblinks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chunk size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Clickable weblinks (middle-click or Ctrl+left-click) enabled in chat console " -"output." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client Mesh Chunksize" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client and Server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client modding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client side modding restrictions" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client-side Modding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client-side node lookup range restriction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Climbing speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cloud radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds in menu" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of AL and ALC extensions that should not be used.\n" -"Useful for testing. See al_extensions.[h,cpp] for details." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of flags to hide in the content repository.\n" -"\"nonfree\" can be used to hide packages which do not qualify as 'free " -"software',\n" -"as defined by the Free Software Foundation.\n" -"You can also specify content ratings.\n" -"These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of mods that are allowed to access HTTP APIs, which\n" -"allow them to upload and download data to/from the internet." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of trusted mods that are allowed to access insecure\n" -"functions even when mod security is on (via request_insecure_environment())." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Compression level to use when saving mapblocks to disk.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Compression level to use when sending mapblocks to the client.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connect glass" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connect to external media server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connects glass if supported by node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Content Repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB Flag Blacklist" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB Max Concurrent Downloads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls length of day/night cycle.\n" -"Examples:\n" -"72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls sinking speed in liquid when idling. Negative values will cause\n" -"you to rise instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Controls steepness/depth of lake depressions." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Controls steepness/height of hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls width of tunnels, a smaller value creates wider tunnels.\n" -"Value >= 10.0 completely disables generation of tunnels and avoids the\n" -"intensive noise calculations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crash message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair alpha (opaqueness, between 0 and 255).\n" -"This also applies to the object crosshair." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair color (R,G,B).\n" -"Also controls the object crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log file size threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debugging" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dedicated server step" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Default maximum number of forceloaded mapblocks.\n" -"Set this to -1 to disable the limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default password" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default privileges" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default report format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default stack size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Define shadow filtering quality.\n" -"This simulates the soft shadows effect by applying a PCF or Poisson disk\n" -"but also uses more resources." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Define the oldest clients allowed to connect.\n" -"Older clients are compatible in the sense that they will not crash when " -"connecting\n" -"to new servers, but they may not support all new features that you are " -"expecting.\n" -"This allows for more fine-grained control than " -"strict_protocol_version_checking.\n" -"Luanti still enforces its own internal minimum, and enabling\n" -"strict_protocol_version_checking will effectively override this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas where trees have apples." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas with sandy beaches." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain and steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines full size of caverns, smaller values create larger caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines large-scale river channel structure." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines location and terrain of optional hills and lakes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the base ground level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the depth of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Defines the size of the sampling grid for FSAA and SSAA antialiasing " -"methods.\n" -"Value of 2 means taking 2x2 = 4 samples." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river valley." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines tree areas and tree density." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Delay between mesh updates on the client in ms. Increasing this will slow\n" -"down the rate of mesh updates, thus reducing jitter on slower clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay in sending blocks after building" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay showing tooltips, stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Deprecated Lua API handling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find giant caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Description of server, to be displayed when players join and in the " -"serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Desert noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Deserts occur when np_biome exceeds this value.\n" -"When the 'snowbiomes' flag is enabled, this is ignored." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Developer Options" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Disallow empty passwords" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Display Density Scaling Factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Distance in nodes at which transparency depth sorting is enabled.\n" -"Use this to limit the performance impact of transparency depth sorting.\n" -"Set to 0 to disable it entirely." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Domain name of server, to be displayed in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Double tap jump for fly" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Double-tapping the jump key toggles fly mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dump the mapgen debug information." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Automatic Exposure" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Bloom" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Bloom Debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Debanding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable IPv6 support (for both client and server).\n" -"Required for IPv6 connections to work at all." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Lua modding support on client.\n" -"This support is experimental and API can change." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Poisson disk filtering.\n" -"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " -"filtering." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Raytraced Culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable automatic exposure correction\n" -"When enabled, the post-processing engine will\n" -"automatically adjust to the brightness of the scene,\n" -"simulating the behavior of human eye." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable console window" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable joysticks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable joysticks. Requires a restart to take effect" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod channels support." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mouse wheel (scroll) for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random mod loading (mainly used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random user input (only used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable split login/register" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable to disallow old clients from connecting.\n" -"Older clients are compatible in the sense that they will not crash when " -"connecting\n" -"to new servers, but they may not support all new features that you are " -"expecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable updates available indicator on content tab" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable usage of remote media server (if provided by server).\n" -"Remote servers offer a significantly faster way to download media (e.g. " -"textures)\n" -"when connecting to the server." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable view bobbing and amount of view bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables Hable's 'Uncharted 2' filmic tone mapping.\n" -"Simulates the tone curve of photographic film and how this approximates the\n" -"appearance of high dynamic range images. Mid-range contrast is slightly\n" -"enhanced, highlights and shadows are gradually compressed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables animation of inventory items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables debug and error-checking in the OpenGL driver." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables smooth scrolling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables the post processing pipeline." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables the touchscreen controls, allowing you to play the game with a " -"touchscreen.\n" -"\"auto\" means that the touchscreen controls will be enabled and disabled\n" -"automatically depending on the last used input method." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables tradeoffs that reduce CPU load or increase rendering performance\n" -"at the expense of minor visual glitches that do not impact game playability." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine profiling data print interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Entity methods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Exponent of the floatland tapering. Alters the tapering behavior.\n" -"Value = 1.0 creates a uniform, linear tapering.\n" -"Values > 1.0 create a smooth tapering suitable for the default separated\n" -"floatlands.\n" -"Values < 1.0 (for example 0.25) create a more defined surface level with\n" -"flatter lowlands, suitable for a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Exposure compensation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS when unfocused or paused" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Factor noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fall bobbing factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fallback font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view in degrees." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"File in client/serverlist/ that contains your favorite servers displayed in " -"the\n" -"Multiplayer Tab." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filmic tone mapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filtering and Antialiasing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed map seed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed virtual joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Fixes the position of virtual joystick.\n" -"If disabled, virtual joystick will center to first-touch's position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland density" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland taper exponent" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland tapering distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog start" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font bold by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font italic by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the default font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the monospace font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Font size of the recent chat text and chat prompt in point (pt).\n" -"Value 0 will use the default font size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"For pixel-style fonts that do not scale well, this ensures that font sizes " -"used\n" -"with this font will always be divisible by this value, in pixels. For " -"instance,\n" -"a pixel font 16 pixels tall should have this set to 16, so it will only ever " -"be\n" -"sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Format of player chat messages. The following strings are valid " -"placeholders:\n" -"@name, @message, @timestamp (optional)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Format of screenshots." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Opacity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background opacity (between 0 and 255)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fourth of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fractal type" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fraction of the visible distance at which fog starts to be rendered" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far blocks are generated for clients, stated in mapblocks (16 " -"nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far clients know about objects, stated in mapblocks (16 nodes).\n" -"\n" -"Setting this larger than active_block_range will also cause the server\n" -"to maintain active objects up to this distance in the direction the\n" -"player is looking. (This can avoid mobs suddenly disappearing from view)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Full screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fullscreen mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Gamepads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Global callbacks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Global map generation attributes.\n" -"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n" -"and jungle grass, in all other mapgens this flag controls all decorations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at maximum light level.\n" -"Controls the contrast of the highest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at minimum light level.\n" -"Controls the contrast of the lowest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics and Audio" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Gravity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ground noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HTTP mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HUD" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HUD scaling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Handling for deprecated Lua API calls:\n" -"- none: Do not log deprecated calls\n" -"- log: mimic and log backtrace of deprecated call (default).\n" -"- error: abort on usage of deprecated call (suggested for mod developers)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Have the profiler instrument itself:\n" -"* Instrument an empty function.\n" -"This estimates the overhead, that instrumentation is adding (+1 function " -"call).\n" -"* Instrument the sampler being used to update the statistics." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height select noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hill steepness" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hill threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness3 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness4 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Homepage of server, to be displayed in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal acceleration in air when jumping or falling,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration in fast mode,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration on ground or when climbing,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Enable mouse wheel for selection" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Invert mouse wheel direction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How deep to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How fast liquid waves will move. Higher = faster.\n" -"If negative, liquid waves will move backwards." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How long the server will wait before unloading unused mapblocks, stated in " -"seconds.\n" -"Higher value is smoother, but will use more RAM." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How much you are slowed down when moving inside a liquid.\n" -"Decrease this to increase liquid resistance to movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How wide to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "IPv6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "IPv6 server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If FPS would go higher than this, limit it by sleeping\n" -"to not waste CPU power for no benefit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If disabled, \"Aux1\" key is used to fly fast if both fly and fast mode are\n" -"enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled and you have ContentDB packages installed, Luanti may contact " -"ContentDB to\n" -"check for package updates when opening the mainmenu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, \"Aux1\" key instead of \"Sneak\" key is used for climbing down " -"and\n" -"descending." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, actions are recorded for rollback.\n" -"This option is only read when server starts." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, invalid world data won't cause the server to shut down.\n" -"Only enable this if you know what you are doing." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, players cannot join without a password or change theirs to an " -"empty password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, the server will perform map block occlusion culling based on\n" -"on the eye position of the player. This can reduce the number of blocks\n" -"sent to the client by 50-80%. Clients will no longer receive most\n" -"invisible blocks, so that the utility of noclip mode is reduced." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, you can place nodes at the position (feet + eye level) where you " -"stand.\n" -"This is helpful when working with nodeboxes in small areas." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the CSM restriction for node range is enabled, get_node calls are " -"limited\n" -"to this distance from the player to the node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the execution of a chat command takes longer than this specified time in\n" -"seconds, add the time information to the chat command message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the file size of debug.txt exceeds the number of megabytes specified in\n" -"this setting when it is opened, the file is moved to debug.txt.1,\n" -"deleting an older debug.txt.1 if it exists.\n" -"debug.txt is only moved if this setting is positive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "If this is set, players will always (re)spawn at the given position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ignore world errors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console background alpha (opaqueness, between 0 and 255)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console background color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Initial vertical speed when jumping, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument builtin.\n" -"This is usually only needed by core/builtin contributors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument chat commands on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument global callback functions on registration.\n" -"(anything you pass to a core.register_*() function)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Active Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Loading Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument the methods of entities on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of saving important changes in the world, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Inventory items animations" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert vertical mouse movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Item entity TTL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Iterations" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Iterations of the recursive function.\n" -"Increasing this increases the amount of fine detail, but also\n" -"increases processing load.\n" -"At iterations = 20 this mapgen has a similar load to mapgen V7." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick ID" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick button repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick dead zone" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick frustum sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick type" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"W component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"X component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"Y component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"Z component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia w" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia x" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia z" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Jumping speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Keyboard and Mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Kick players who sent more than X messages per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lake steepness" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lake threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Language" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave proportion flooded" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Leaves style" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Leaves style:\n" -"- Fancy: all faces visible\n" -"- Simple: only outer faces\n" -"- Opaque: disable transparency" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of a server tick (the interval at which everything is generally " -"updated),\n" -"stated in seconds.\n" -"Does not apply to sessions hosted from the client menu.\n" -"This is a lower bound, i.e. server steps may not be shorter than this, but\n" -"they are often longer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of liquid waves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between Active Block Modifier (ABM) execution cycles, stated " -"in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of time between NodeTimer execution cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between active block management cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Level of logging to be written to debug.txt:\n" -"- (no logging)\n" -"- none (messages with no level)\n" -"- error\n" -"- warning\n" -"- action\n" -"- info\n" -"- verbose\n" -"- trace" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost center" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost spread" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve high gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve low gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).\n" -"Only mapchunks completely within the mapgen limit are generated.\n" -"Value is stored per-world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Limits number of parallel HTTP requests. Affects:\n" -"- Media fetch if server uses remote_media setting.\n" -"- Serverlist download and server announcement.\n" -"- Downloads performed by main menu (e.g. mod manager).\n" -"Only has an effect if compiled with cURL." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity smoothing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid loop max" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid queue purge time" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid reflections" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid sinking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid update interval in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid update tick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Load the game profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Load the game profiler to collect game profiling data.\n" -"Provides a /profiler command to access the compiled profile.\n" -"Useful for mod developers and server operators." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Loading Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Main menu script" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Make fog and sky colors depend on daytime (dawn/sunset) and view direction." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Disk Storage" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Network Transfer" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map directory" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen Carpathian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Flat.\n" -"Occasional lakes and hills can be added to the flat world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Fractal.\n" -"'terrain' enables the generation of non-fractal terrain:\n" -"ocean, islands and underground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Valleys.\n" -"'altitude_chill': Reduces heat with altitude.\n" -"'humid_rivers': Increases humidity around rivers.\n" -"'vary_river_depth': If enabled, low humidity and high heat causes rivers\n" -"to become shallower and occasionally dry.\n" -"'altitude_dry': Reduces humidity with altitude." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen v5." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v6.\n" -"The 'snowbiomes' flag enables the new 5 biome system.\n" -"When the 'snowbiomes' flag is enabled jungles are automatically enabled and\n" -"the 'jungles' flag is ignored.\n" -"The 'temples' flag disables generation of desert temples. Normal dungeons " -"will appear instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v7.\n" -"'ridges': Rivers.\n" -"'floatlands': Floating land masses in the atmosphere.\n" -"'caverns': Giant caves deep underground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map save interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map shadows update frames" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock mesh generation delay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock mesh generation threads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock unload timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Flat" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Flat specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Fractal" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Fractal specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Valleys" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Valleys specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max block generate distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max block send distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max liquids processed per step." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max. clearobjects extra blocks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max. packets per iteration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS when the window is not focused, or when the game is paused." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum distance to render shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum forceloaded blocks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum hotbar width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum liquid resistance. Controls deceleration when entering liquid at\n" -"high speed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks that are simultaneously sent per client.\n" -"The maximum total count is calculated dynamically:\n" -"max_total = ceil((#clients + max_users) * per_client / 4)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of blocks that can be queued for loading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks to be queued that are to be generated.\n" -"This limit is enforced per player." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks to be queued that are to be loaded from file.\n" -"This limit is enforced per player." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of concurrent downloads. Downloads exceeding this limit will " -"be queued.\n" -"This should be lower than curl_parallel_limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of mapblocks for client to be kept in memory.\n" -"Set to -1 for unlimited amount." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of packets sent per send step in the low-level networking " -"code.\n" -"You generally don't need to change this, however busy servers may benefit " -"from a higher number." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of players that can be connected simultaneously." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of recent chat messages to show" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of statically stored objects in a block." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum objects per block" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum proportion of current window to be used for hotbar.\n" -"Useful if there's something to be displayed right or left of hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum simultaneous block sends per client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum size of the outgoing chat queue" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum size of the outgoing chat queue.\n" -"0 to disable queueing and -1 to make the queue size unlimited." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum time a file download (e.g. a mod download) may take, stated in " -"milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum time an interactive request (e.g. server list fetch) may take, " -"stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum users" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Message of the day" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Message of the day displayed to players connecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Method used to highlight selected object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimal level of logging to be written to chat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimap scan height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum dig repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mipmapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Miscellaneous" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod channels" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Modifies the size of the HUD elements." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain variation noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain zero level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Movement threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mud noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Multiplier for fall bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mute sound" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of map generator to be used when creating a new world.\n" -"Creating a world in the main menu will override this.\n" -"Current mapgens in a highly unstable state:\n" -"- The optional floatlands of v7 (disabled by default)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" -"When starting from the main menu, this is overridden." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of the server, to be displayed when players join and in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Network port to listen (UDP).\n" -"This value will be overridden when starting from the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Networking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "New users need to input this password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node and Entity Highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node specular" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "NodeTimer interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Noises" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Number of emerge threads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of emerge threads to use.\n" -"Value 0:\n" -"- Automatic selection. The number of emerge threads will be\n" -"- 'number of processors - 2', with a lower limit of 1.\n" -"Any other value:\n" -"- Specifies the number of emerge threads, with a lower limit of 1.\n" -"WARNING: Increasing the number of emerge threads increases engine mapgen\n" -"speed, but this may harm game performance by interfering with other\n" -"processes, especially in singleplayer and/or when running Lua code in\n" -"'on_generated'. For many users the optimum setting may be '1'." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of extra blocks that can be loaded by /clearobjects at once.\n" -"This is a trade-off between SQLite transaction overhead and\n" -"memory consumption (4096=100MB, as a rule of thumb)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Number of messages a player may send per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of threads to use for mesh generation.\n" -"Value of 0 (default) will let Luanti autodetect the number of available " -"threads." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Occlusion Culler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Occlusion Culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Opaqueness (alpha) of the shadow behind the default font, between 0 and 255." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Open the pause menu when the window's focus is lost. Does not pause if a " -"formspec is\n" -"open." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "OpenGL debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Optimize GUI for touchscreens" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Optional override for chat weblink color." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Other Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path of the fallback font. Must be a TrueType font.\n" -"This font will be used for certain languages or if the default font is " -"unavailable." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to save screenshots at. Can be an absolute or relative path.\n" -"The folder will be created if it doesn't already exist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to shader directory. If no path is defined, default location will be " -"used." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the default font. Must be a TrueType font.\n" -"The fallback font will be used if the font cannot be loaded." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the monospace font. Must be a TrueType font.\n" -"This font is used for e.g. the console and profiler screen." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Pause on lost window focus" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks load from disk" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks to generate" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Physics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Place repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Poisson filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prevent digging and placing from repeating when holding the respective " -"buttons.\n" -"Enable this when you dig or place too often by accident.\n" -"On touchscreens, this only affects digging." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prevent mods from doing insecure things like running shell commands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Print the engine's profiling data in regular intervals (in seconds).\n" -"0 = disable. Useful for developers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Privileges that players with basic_privs can grant" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prometheus listener address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prometheus listener address.\n" -"If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" -"enable metrics listener for Prometheus on that address.\n" -"Metrics can be fetched on http://127.0.0.1:30000/metrics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Proportion of large caves that contain liquid." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Protocol version minimum" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Punch gesture" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Radius of cloud area stated in number of 64 node cloud squares.\n" -"Values larger than 26 will start to produce sharp cutoffs at cloud area " -"corners." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Radius to use when the block bounds HUD feature is set to near blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Raises terrain to make valleys around the rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random input" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random mod load order" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Recent Chat Messages" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Regular font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Remember screen size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Remote media" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Remove color codes from incoming chat messages\n" -"Use this to stop players from being able to use color in their messages" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Replaces the default main menu with a custom one." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Report path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Restricts the access of certain client-side functions on servers.\n" -"Combine the byteflags below to restrict client-side features, or set to 0\n" -"for no restrictions:\n" -"LOAD_CLIENT_MODS: 1 (disable loading client-provided mods)\n" -"CHAT_MESSAGES: 2 (disable send_chat_message call client-side)\n" -"READ_ITEMDEFS: 4 (disable get_item_def call client-side)\n" -"READ_NODEDEFS: 8 (disable get_node_def call client-side)\n" -"LOOKUP_NODES_LIMIT: 16 (limits get_node call client-side to\n" -"csm_restriction_noderange)\n" -"READ_PLAYERINFO: 32 (disable get_player_names call client-side)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge underwater noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridged mountain size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River valley width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rollback recording" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hill size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hills spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Safe digging and placing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sandy beaches occur when np_beach exceeds this value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Save the map received by the client on disk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Save window size automatically when modified.\n" -"If true, screen size is saved in screen_w and screen_h, and whether the " -"window\n" -"is maximized is stored in window_maximized.\n" -"(Autosaving window_maximized only works if compiled with SDL.)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Saving map received from server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Scale GUI by a user specified value.\n" -"Use a nearest-neighbor-anti-alias filter to scale the GUI.\n" -"This will smooth over some of the rough edges, and blend\n" -"pixels when scaling down, at the cost of blurring some\n" -"edge pixels when images are scaled by non-integer sizes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot folder" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Screenshot quality. Only used for JPEG format.\n" -"1 means worst quality; 100 means best quality.\n" -"Use 0 for default quality." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshots" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Seabed noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Select the antialiasing method to apply.\n" -"\n" -"* None - No antialiasing (default)\n" -"\n" -"* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" -"A.K.A multi-sample antialiasing (MSAA)\n" -"Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" -"\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" -"Applies a post-processing filter to detect and smoothen high-contrast " -"edges.\n" -"Provides balance between speed and image quality.\n" -"\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" -"Renders higher-resolution image of the scene, then scales down to reduce\n" -"the aliasing effects. This is the slowest and the most accurate method." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box border color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Selects one of 18 fractal types.\n" -"1 = 4D \"Roundy\" Mandelbrot set.\n" -"2 = 4D \"Roundy\" Julia set.\n" -"3 = 4D \"Squarry\" Mandelbrot set.\n" -"4 = 4D \"Squarry\" Julia set.\n" -"5 = 4D \"Mandy Cousin\" Mandelbrot set.\n" -"6 = 4D \"Mandy Cousin\" Julia set.\n" -"7 = 4D \"Variation\" Mandelbrot set.\n" -"8 = 4D \"Variation\" Julia set.\n" -"9 = 3D \"Mandelbrot/Mandelbar\" Mandelbrot set.\n" -"10 = 3D \"Mandelbrot/Mandelbar\" Julia set.\n" -"11 = 3D \"Christmas Tree\" Mandelbrot set.\n" -"12 = 3D \"Christmas Tree\" Julia set.\n" -"13 = 3D \"Mandelbulb\" Mandelbrot set.\n" -"14 = 3D \"Mandelbulb\" Julia set.\n" -"15 = 3D \"Cosine Mandelbulb\" Mandelbrot set.\n" -"16 = 3D \"Cosine Mandelbulb\" Julia set.\n" -"17 = 4D \"Mandelbulb\" Mandelbrot set.\n" -"18 = 4D \"Mandelbulb\" Julia set." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Send names of online players to the serverlist. If disabled only the player " -"count is revealed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Send player names to the server list" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Gameplay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Server anticheat configuration.\n" -"Flags are positive. Uncheck the flag to disable corresponding anticheat " -"module." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server description" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server port" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server-side occlusion culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server/Env Performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist and MOTD" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist file" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the default tilt of Sun/Moon orbit in degrees.\n" -"Games may change orbit tilt via API.\n" -"Value of 0 means no tilt / vertical orbit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the exposure compensation in EV units.\n" -"Value of 0.0 (default) means no exposure compensation.\n" -"Range: from -1 to 1.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the language. By default, the system language is used.\n" -"A restart is required after changing this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the maximum length of a chat message (in characters) sent by clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the shadow strength gamma.\n" -"Adjusts the intensity of in-game dynamic shadows.\n" -"Lower value means lighter shadows, higher value means darker shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the soft shadow radius size.\n" -"Lower values mean sharper shadows, bigger values mean softer shadows.\n" -"Minimum value: 1.0; maximum value: 15.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable Shadow Mapping." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set to true to enable bloom effect.\n" -"Bright colors will bleed over the neighboring objects." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving leaves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving liquids (like water)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving plants." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set to true to render debugging breakdown of the bloom effect.\n" -"In debug mode, the screen is split into 4 quadrants:\n" -"top-left - processed base image, top-right - final image\n" -"bottom-left - raw base image, bottom-right - bloom texture." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Sets shadow texture quality to 32 bits.\n" -"On false, 16 bits texture will be used.\n" -"This can cause much more artifacts in the shadow." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shader path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow filter quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map max distance in nodes to render shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture in 32 bits" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shadow offset (in pixels) of the default font. If 0, then shadow will not be " -"drawn." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow strength gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show debug info" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show entity selection boxes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Show entity selection boxes\n" -"A restart is required after changing this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show name tag backgrounds by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shutdown message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Side length of a cube of map blocks that the client will consider together\n" -"when generating meshes.\n" -"Larger values increase the utilization of the GPU by reducing the number of\n" -"draw calls, benefiting especially high-end GPUs.\n" -"Systems with a low-end GPU (or no GPU) would benefit from smaller values." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" -"WARNING: There is no benefit, and there are several dangers, in\n" -"increasing this value above 5.\n" -"Reducing this value increases cave and dungeon density.\n" -"Altering this value is for special usage, leaving it unchanged is\n" -"recommended." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sky Body Orbit Tilt" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slice w" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slope and fill work together to modify the heights." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale humidity variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale temperature variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth scrolling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " -"cinematic mode by using the key set in Controls." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Smooths rotation of camera, also called look or mouse smoothing. 0 to " -"disable." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft shadow radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound Extensions Blacklist" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Specifies URL from which client fetches media instead of using UDP.\n" -"$filename should be accessible from $remote_media$filename via cURL\n" -"(obviously, remote_media should end with a slash).\n" -"Files that are not present will be fetched the usual way." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Specifies the default stack size of nodes, items and tools.\n" -"Note that mods or games may explicitly set a stack for certain (or all) " -"items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread a complete update of shadow map over given number of frames.\n" -"Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread of light curve boost range.\n" -"Controls the width of the range to be boosted.\n" -"Standard deviation of the light curve boost Gaussian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Static spawn point" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Steepness noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Step mountain size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Step mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strength of 3D mode parallax." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Strength of light curve boost.\n" -"The 3 'boost' parameters define a range of the light\n" -"curve that is boosted in brightness." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strict protocol checking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strip color codes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Surface level of optional water placed on a solid floatland layer.\n" -"Water is disabled by default and will only be placed if this value is set\n" -"to above 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (the start of the\n" -"upper tapering).\n" -"***WARNING, POTENTIAL DANGER TO WORLDS AND SERVER PERFORMANCE***:\n" -"When enabling water placement, floatlands must be configured and tested\n" -"to be a solid layer by setting 'mgv7_floatland_density' to 2.0 (or other\n" -"required value depending on 'mgv7_np_floatland'), to avoid\n" -"server-intensive extreme water flow and to avoid vast flooding of the\n" -"world surface below." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Synchronous SQLite" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Temperature variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain alternative noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain base noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain higher noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Terrain noise threshold for hills.\n" -"Controls proportion of world area covered by hills.\n" -"Adjust towards 0.0 for a larger proportion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Terrain noise threshold for lakes.\n" -"Controls proportion of world area covered by lakes.\n" -"Adjust towards 0.0 for a larger proportion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain persistence noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Texture size to render the shadow map on.\n" -"This must be a power of two.\n" -"Bigger numbers create better shadows but it is also more expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Textures on a node may be aligned either to the node or to the world.\n" -"The former mode suits better things like machines, furniture, etc., while\n" -"the latter makes stairs and microblocks fit surroundings better.\n" -"However, as this possibility is new, thus may not be used by older servers,\n" -"this option allows enforcing it for certain node types. Note though that\n" -"that is considered EXPERIMENTAL and may not work properly." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The URL for the content repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The dead zone of the joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The default format in which profiles are being saved,\n" -"when calling `/profiler save [format]` without format." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The delay in milliseconds after which a touch interaction is considered a " -"long tap." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The file path relative to your world path in which profiles will be saved to." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The gesture for punching players/entities.\n" -"This can be overridden by games and mods.\n" -"\n" -"* short_tap\n" -"Easy to use and well-known from other games that shall not be named.\n" -"\n" -"* long_tap\n" -"Known from the classic Luanti mobile controls.\n" -"Combat is more or less impossible." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The identifier of the joystick to use" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The length in pixels after which a touch interaction is considered movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The maximum height of the surface of waving liquids.\n" -"4.0 = Wave height is two nodes.\n" -"0.0 = Wave doesn't move at all.\n" -"Default is 1.0 (1/2 node)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The minimum time in seconds it takes between digging nodes when holding\n" -"the dig button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The network interface that the server listens on." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The privileges that new users automatically get.\n" -"See /privs in game for a full list on your server and mod configuration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The radius of the volume of blocks around every player that is subject to " -"the\n" -"active block stuff, stated in mapblocks (16 nodes).\n" -"In active blocks objects are loaded and ABMs run.\n" -"This is also the minimum range in which active objects (mobs) are " -"maintained.\n" -"This should be configured together with active_object_send_range_blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The rendering back-end.\n" -"Note: A restart is required after changing this!\n" -"OpenGL is the default for desktop, and OGLES2 for Android." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The sensitivity of the joystick axes for moving the\n" -"in-game view frustum around." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The strength (darkness) of node ambient-occlusion shading.\n" -"Lower is darker, Higher is lighter. The valid range of values for this\n" -"setting is 0.25 to 4.0 inclusive. If the value is out of range it will be\n" -"set to the nearest valid value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time (in seconds) that the liquids queue may grow beyond processing\n" -"capacity until an attempt is made to decrease its size by dumping old queue\n" -"items. A value of 0 disables the functionality." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time budget allowed for ABMs to execute on each step\n" -"(as a fraction of the ABM Interval)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated events\n" -"when holding down a joystick button combination." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated node placements when holding\n" -"the place button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The type of joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" -"enabled. Also, the vertical distance over which humidity drops by 10 if\n" -"'altitude_dry' is enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Third of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Threshold for long taps" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Time in seconds for item entity (dropped items) to live.\n" -"Setting it to -1 disables the feature." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time of day when a new world is started, in millihours (0-23999)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Timeout for client to remove unused map data from memory, in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"To reduce lag, block transfers are slowed down when a player is building " -"something.\n" -"This determines how long they are slowed down after placing or removing a " -"node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Tolerance of movement cheat detector.\n" -"Increase the value if players experience stuttery movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tooltip delay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen controls" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tradeoffs for performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent foliage" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Transparency Sorting Distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"True = 256\n" -"False = 128\n" -"Usable to make minimap smoother on slower machines." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trusted mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Type of occlusion_culler\n" -"\n" -"\"loops\" is the legacy algorithm with nested loops and O(n³) complexity\n" -"\"bfs\" is the new algorithm based on breadth-first-search and side culling\n" -"\n" -"This setting should only be changed if you have performance problems." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"URL to JSON file which provides information about the newest Luanti " -"release.\n" -"If this is empty the engine will never check for updates." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "URL to the server list displayed in the Multiplayer Tab." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Undersampling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Undersampling is similar to using a lower screen resolution, but it applies\n" -"to the game world only, keeping the GUI intact.\n" -"It should give a significant performance boost at the cost of less detailed " -"image.\n" -"Higher values result in a less detailed image." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unlimited player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unload unused server data" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Update information URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use a cloud animation for the main menu background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use bilinear filtering when scaling textures." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use crosshair for touch screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use crosshair to select object instead of whole screen.\n" -"If enabled, a crosshair will be shown and will be used for selecting object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use mipmaps when scaling textures. May slightly increase performance,\n" -"especially when using a high-resolution texture pack.\n" -"Gamma-correct downscaling is not supported." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use raytraced occlusion culling in the new culler.\n" -"This flag enables use of raytraced occlusion culling test for\n" -"client mesh sizes smaller than 4x4x4 map blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use smooth cloud shading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use trilinear filtering when scaling textures.\n" -"If both bilinear and trilinear filtering are enabled, trilinear filtering\n" -"is applied." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use virtual joystick to trigger \"Aux1\" button.\n" -"If enabled, virtual joystick will also tap \"Aux1\" button when out of main " -"circle." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "User Interfaces" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "VSync" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley fill" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley profile" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley slope" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of biome filler depth." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of maximum mountain height (in nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of number of caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Variation of terrain vertical scale.\n" -"When noise is < -0.55 terrain is near-flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies depth of biome surface nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Varies roughness of terrain.\n" -"Defines the 'persistence' value for terrain_base and terrain_alt noises." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Vertical climbing speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Vertical screen synchronization. Your system may still force VSync on even " -"if this is disabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Video driver" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "View bobbing factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "View distance in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Viewing range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Virtual joystick triggers Aux1 button" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume multiplier when the window is unfocused." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Volume of all sounds.\n" -"Requires the sound system to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume when unfocused" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volumetric lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"W coordinate of the generated 3D slice of a 4D fractal.\n" -"Determines which 3D slice of the 4D shape is generated.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking and flying speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking, flying and climbing speed in fast mode, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water surface level of the world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving Nodes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving leaves" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wavelength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving plants" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Weblink color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "When enabled, liquid reflections are simulated." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When enabled, the GUI is optimized to be more usable on touchscreens.\n" -"Whether this is enabled by default depends on your hardware form-factor." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter is true, all GUI images need to be\n" -"filtered in software, but some images are generated directly\n" -"to hardware (e.g. render-to-texture for nodes in inventory)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" -"This is also used as the base node texture size for world-aligned\n" -"texture autoscaling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether name tag backgrounds should be shown by default.\n" -"Mods may still set a background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether players are shown to clients without any range limit.\n" -"Deprecated, use the setting player_transfer_distance instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether the window is maximized." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to ask clients to reconnect after a (Lua) crash.\n" -"Set this to true if your server is set up to restart automatically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether to fog out the end of the visible area." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" -"In-game, you can toggle the mute state with the mute key or by using the\n" -"pause menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to show the client debug info (has the same effect as hitting F5)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width of the selection box lines around nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Window maximized" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Windows systems only: Start Luanti with the command line window in the " -"background.\n" -"Contains the same information as the file debug.txt (default name)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"World directory (everything in the world is stored here).\n" -"Not needed if starting from the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "World start time" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"World-aligned textures may be scaled to span several nodes. However,\n" -"the server may not send the scale you want, especially if you use\n" -"a specially-designed texture pack; with this option, the client tries\n" -"to determine the scale automatically basing on the texture size.\n" -"See also texture_min_size.\n" -"Warning: This option is EXPERIMENTAL!" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "World-aligned textures mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of flat ground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y of mountain density gradient zero level. Used to shift mountains " -"vertically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of upper limit of large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-distance over which caverns expand to full size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y-distance over which floatlands taper from full density to nothing.\n" -"Tapering starts at this distance from the Y limit.\n" -"For a solid floatland layer, this controls the height of hills/mountains.\n" -"Must be less than or equal to half the distance between the Y limits." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of average terrain surface." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of cavern upper limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of higher terrain that creates cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of lower terrain and seabed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of seabed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL file download timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL interactive timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL parallel limit" -msgstr "" diff --git a/po/id/luanti.po b/po/id/luanti.po index fa6738bb0..67d9ca13d 100644 --- a/po/id/luanti.po +++ b/po/id/luanti.po @@ -2,10 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Indonesian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-06 05:16+0000\n" -"Last-Translator: Muhammad Rifqi Priyo Susanto " -"\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-11 02:02+0000\n" +"Last-Translator: Linerly \n" "Language-Team: Indonesian \n" "Language: id\n" @@ -13,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -78,6 +77,244 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[semua | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Jelajahi" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Sunting" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Pilih direktori" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Pilih berkas" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Atur" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Tiada keterangan pengaturan yang diberikan)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Noise 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Batal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakuna (celah)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaf" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Pergeseran" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Kegigihan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Simpan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Persebaran X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Persebaran Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Persebaran Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "nilai mutlak" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "bawaan" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "kehalusan (eased)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Permainan perlu menyalakan eksposur otomatis juga)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Permainan perlu menyalakan bloom juga)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Permainan perlu menyalakan pencahayaan volumetris juga)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Gunakan bahasa sistem)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Aksesibilitas" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Otomatis" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Obrolan" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Bersihkan/Jernih" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Kontrol" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Dimatikan" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Dinyalakan" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Umum" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Pergerakan" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Tidak ada hasil" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Atur ke bawaan" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Atur ke bawaan ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Cari" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Tampilkan pengaturan lanjutan" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Tampilkan nama teknis" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Tata letak layar sentuh" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "pause_menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mod Klien" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Konten: Permainan" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Konten: Mod" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Permainan perlu menyalakan bayangan juga)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Ubah suai" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Bayangan dinamis" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Tinggi" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Rendah" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Menengah" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Sangat Tinggi" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Sangat Rendah" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -139,12 +376,12 @@ msgid "Failed to download $1" msgstr "Gagal mengunduh $1" #: builtin/mainmenu/content/contentdb.lua -#, fuzzy msgid "" "Failed to extract \"$1\" (insufficient disk space, unsupported file type or " "broken archive)" msgstr "" -"Gagak mengekstrak \"$1\" (jenis berkas tidak didukung atau arsip rusak)" +"Gagak mengekstrak \"$1\" (ruang penyimpanan tidak cukup, jenis berkas tidak " +"didukung atau arsip rusak)" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "" @@ -160,18 +397,16 @@ msgstr "$1 Diunduh..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Semua" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Kembali" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB tidak tersedia saat Minetest dikompilasi tanpa cURL" +msgstr "ContentDB tidak tersedia saat Luanti dikompilasi tanpa cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -179,7 +414,7 @@ msgstr "Mengunduh..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Unggulan" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +436,6 @@ msgstr "Mod" msgid "No packages could be retrieved" msgstr "Tiada paket yang dapat diambil" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Tidak ada hasil" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Tiada pembaruan" @@ -215,9 +445,8 @@ msgid "Queued" msgstr "Diantrekan" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" -msgstr "Paket tekstur" +msgstr "Paket Tekstur" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "The package $1 was not found." @@ -251,27 +480,14 @@ msgstr "Telah terpasang" msgid "Base Game:" msgstr "Permainan Dasar:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Batal" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "Dependensi:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Bermasalah dalam mengambil dependensi paket" +msgstr "Kesalahan mengambil dependensi paket $1" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -306,44 +522,40 @@ msgid "Overwrite" msgstr "Timpa" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" -msgstr "URL ContentDB" +msgstr "Laman ContentDB" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Keterangan Server" +msgstr "Keterangan" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Berdonasi" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Topik Forum" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Informasi:" +msgstr "Informasi" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" -msgstr "Pasang $1" +msgstr "Pasang [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Pelacak Isu" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Sumber" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Terjemahkan" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -354,13 +566,12 @@ msgid "Update" msgstr "Perbarui" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Kunjungi situs web" +msgstr "Situs Web" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "oleh $1 — $2 unduhan — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -390,6 +601,14 @@ msgstr "Gagal memasang $1 sebagai $2" msgid "Unable to install a $1 as a texture pack" msgstr "Gagal memasang $1 sebagai paket tekstur" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Ini daftar klien yang terhubung ke\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Dinyalakan, bermasalah)" @@ -454,12 +673,6 @@ msgstr "Tiada dependensi opsional" msgid "Optional dependencies:" msgstr "Dependensi opsional:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Simpan" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Dunia:" @@ -610,11 +823,6 @@ msgstr "Sungai" msgid "Sea level rivers" msgstr "Sungai setinggi permukaan laut" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Pergantian halus antarbioma" @@ -719,14 +927,12 @@ msgid "Dismiss" msgstr "Abaikan" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Sudah sejak lama mesin Minetest dirilis beserta permainan bawaan yang " -"disebut \"Minetest Game\". Sejak Minetest 5.8.0, Minetest dirilis tanpa " -"permainan bawaan." +"Sudah sejak lama Luanti dirilis beserta permainan bawaan yang disebut " +"\"Minetest Game\". Sejak versi 5.8.0, Luanti dirilis tanpa permainan bawaan." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -760,6 +966,22 @@ msgstr "" "Paket mod ini memiliki nama tersurat yang diberikan dalam modpack.conf yang " "akan menimpa penggantian nama yang ada." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Buka semua" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Kelompokkan berdasarkan awalan" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "Server $1 menggunakan permainan bernama $2 dan mod berikut:" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "Server $1 menggunakan mod berikut:" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Versi baru $1 tersedia" @@ -788,7 +1010,7 @@ msgstr "Tidak Pernah" msgid "Visit website" msgstr "Kunjungi situs web" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Pengaturan" @@ -801,228 +1023,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Coba nyalakan ulang daftar server publik dan periksa sambungan internet Anda." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Jelajahi" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Sunting" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Pilih direktori" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Pilih berkas" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Atur" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Tiada keterangan pengaturan yang diberikan)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Noise 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakuna (celah)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaf" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Pergeseran" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Kegigihan" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Persebaran X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Persebaran Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Persebaran Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "nilai mutlak" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "bawaan" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "kehalusan (eased)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Permainan perlu menyalakan bayangan juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Permainan perlu menyalakan bayangan juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Permainan perlu menyalakan bayangan juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Gunakan bahasa sistem)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Aksesibilitas" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Obrolan" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Bersihkan/Jernih" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Kontrol" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Dimatikan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Dinyalakan" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Umum" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Pergerakan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Atur ke bawaan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Atur ke bawaan ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Cari" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Tampilkan pengaturan lanjutan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Tampilkan nama teknis" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mod Klien" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Konten: Permainan" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Konten: Mod" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Dinyalakan" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Pembaruan kamera dimatikan" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Permainan perlu menyalakan bayangan juga)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Ubah suai" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Bayangan dinamis" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Tinggi" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Rendah" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Menengah" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Sangat Tinggi" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Sangat Rendah" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Tentang" @@ -1043,10 +1043,6 @@ msgstr "Pengembang Inti" msgid "Core Team" msgstr "Tim Inti" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Perangkat Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Buka Direktori Data Pengguna" @@ -1148,17 +1144,15 @@ msgid "Install games from ContentDB" msgstr "Pasang permainan dari ContentDB" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "Minetest tidak berisi permainan secara bawaan." +msgstr "Luanti tidak berisi permainan secara bawaan." #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" -"Minetest adalah platform pembuatan permainan yang membuat Anda bisa bermain " +"Luanti adalah platform pembuatan permainan yang membuat Anda bisa bermain " "banyak permainan berbeda." #: builtin/mainmenu/tab_local.lua @@ -1197,10 +1191,22 @@ msgstr "Mulai Permainan" msgid "You need to install a game before you can create a world." msgstr "Anda perlu pasang sebuah permainan sebelum bisa membuat dunia." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Tambahkan favorit" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Alamat" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Klien:\n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Mode kreatif" @@ -1214,6 +1220,10 @@ msgstr "Kerusakan/PvP" msgid "Favorites" msgstr "Favorit" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Permainan: $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Server Tidak Kompatibel" @@ -1226,10 +1236,30 @@ msgstr "Gabung Permainan" msgid "Login" msgstr "Masuk" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Jumlah mod: $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Buka situs web server" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Filter yang memungkinkan\n" +"game:\n" +"mod:\n" +"player:" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Server Publik" @@ -1314,23 +1344,6 @@ msgstr "" "\n" "Periksa debug.txt untuk detail." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mode: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Publik: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nama Server: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Sebuah masalah pada serialisasi terjadi:" @@ -1340,6 +1353,10 @@ msgstr "Sebuah masalah pada serialisasi terjadi:" msgid "Access denied. Reason: %s" msgstr "Akses ditolak. Alasan: %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "Semua info awakutu disembunyikan" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Maju otomatis dimatikan" @@ -1360,6 +1377,10 @@ msgstr "Batasan blok ditampilkan untuk blok saat ini" msgid "Block bounds shown for nearby blocks" msgstr "Batasan blok ditampilkan untuk blok sekitar" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "Kotak ikatan ditampilkan" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Pembaruan kamera dimatikan" @@ -1372,10 +1393,6 @@ msgstr "Pembaruan kamera dinyalakan" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Tidak bisa menampilkan batas blok (dilarang oleh permainan atau mod)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Ganti Kata Sandi" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Mode sinema dimatikan" @@ -1404,39 +1421,6 @@ msgstr "Sambungan bermasalah (terlalu lama?)" msgid "Connection failed for unknown reason" msgstr "Sambungan gagal karena sebab yang tidak diketahui" -#: src/client/game.cpp -msgid "Continue" -msgstr "Lanjutkan" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Kontrol:\n" -"Tanpa menu yang terbuka:\n" -"- geser jari: lihat sekeliling\n" -"- ketuk: taruh/gunakan\n" -"- ketuk ganda: gali/pukul/gunakan\n" -"Menu/inventaris terbuka:\n" -"- ketuk ganda (di luar):\n" -" --> tutup\n" -"- sentuh tumpukan, sentuh wadah:\n" -" --> pindah tumpukan\n" -"- sentuh & geser, ketuk jari kedua\n" -" --> taruh barang tunggal ke wadah\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1450,31 +1434,15 @@ msgstr "Membuat klien..." msgid "Creating server..." msgstr "Membuat server..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Info awakutu dan grafik pemrofil disembunyikan" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Info awakutu ditampilkan" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Info awakutu, grafik pemrofil, dan rangka kawat disembunyikan" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Masalah saat membuat klien: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Menu Utama" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Tutup Aplikasi" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Mode cepat dimatikan" @@ -1511,18 +1479,6 @@ msgstr "Kabut dinyalakan" msgid "Fog enabled by game or mod" msgstr "Kabut dinyalakan oleh permainan atau mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informasi permainan:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Permainan dijeda" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Membuat server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definisi barang..." @@ -1559,14 +1515,6 @@ msgstr "Mode tembus blok dinyalakan (catatan: tanpa hak \"noclip\")" msgid "Node definitions..." msgstr "Definisi nodus..." -#: src/client/game.cpp -msgid "Off" -msgstr "Mati" - -#: src/client/game.cpp -msgid "On" -msgstr "Nyala" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Mode gerak sesuai pandang dimatikan" @@ -1579,38 +1527,22 @@ msgstr "Mode gerak sesuai pandang dinyalakan" msgid "Profiler graph shown" msgstr "Grafik pemrofil ditampilkan" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Server jarak jauh" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Mencari alamat..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Bangkit kembali" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Mematikan..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Pemain tunggal" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume Suara" - #: src/client/game.cpp msgid "Sound muted" msgstr "Suara dimatikan" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Sistem suara dimatikan" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Sistem suara tidak didukung dalam buatan ini" @@ -1689,18 +1621,115 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volume diubah ke %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "Kerangka tidak didukung oleh pengandar video" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Rangka kawat ditampilkan" -#: src/client/game.cpp -msgid "You died" -msgstr "Anda mati" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zum sedang dilarang oleh permainan atau mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mode: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Publik: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nama Server: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Ganti Kata Sandi" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Lanjutkan" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Kontrol:\n" +"Tanpa menu terbuka:\n" +"- geser jari: lihat sekeliling\n" +"- ketuk: tempatkan/pukul/gunakan (bawaan)\n" +"- ketuk lama: gali/gunakan (bawaan)\n" +"Menu/inventaris terbuka:\n" +"- ketuk dua kali (luar):\n" +" --> tutup\n" +"- sentuh tumpukan, sentuh slot:\n" +" --> pindahkan tumpukan\n" +"- sentuh & seret, ketuk jari ke-2\n" +" --> tempatkan satu item ke slot\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Menu Utama" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Tutup Aplikasi" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informasi permainan:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Permainan dijeda" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Membuat server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Mati" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Nyala" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Server jarak jauh" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Bangkit kembali" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume Suara" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Anda mati" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Obrolan sedang dilarang oleh permainan atau mod" @@ -2027,8 +2056,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Gagal mengompilasi shader \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "Shader dinyalakan, tetapi GLSL tidak didukung oleh pengandar." +msgid "GLSL is not supported by the driver" +msgstr "GLSL tidak didukung oleh pengandar" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2079,7 +2108,7 @@ msgstr "Maju otomatis" msgid "Automatic jumping" msgstr "Lompat otomatis" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2091,7 +2120,7 @@ msgstr "Mundur" msgid "Block bounds" msgstr "Batasan blok" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Ubah kamera" @@ -2115,7 +2144,7 @@ msgstr "Turunkan volume" msgid "Double tap \"jump\" to toggle fly" msgstr "Tekan ganda \"lompat\" untuk terbang" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Jatuhkan" @@ -2131,11 +2160,11 @@ msgstr "Naikkan jangkauan" msgid "Inc. volume" msgstr "Naikkan volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventaris" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Lompat" @@ -2167,7 +2196,7 @@ msgstr "Barang selanjutnya" msgid "Prev. item" msgstr "Barang sebelumnya" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Jarak pandang" @@ -2179,7 +2208,7 @@ msgstr "Kanan" msgid "Screenshot" msgstr "Tangkapan layar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Menyelinap" @@ -2187,15 +2216,15 @@ msgstr "Menyelinap" msgid "Toggle HUD" msgstr "Alih HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Alih log obrolan" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Gerak cepat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Alih terbang" @@ -2203,11 +2232,11 @@ msgstr "Alih terbang" msgid "Toggle fog" msgstr "Alih kabut" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Alih peta mini" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Tembus nodus" @@ -2215,7 +2244,7 @@ msgstr "Tembus nodus" msgid "Toggle pitchmove" msgstr "Gerak sesuai pandang" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zum" @@ -2251,7 +2280,7 @@ msgstr "Kata Sandi Lama" msgid "Passwords do not match!" msgstr "Kata sandi tidak cocok!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Keluar" @@ -2264,38 +2293,67 @@ msgstr "Dibisukan" msgid "Sound Volume: %d%%" msgstr "Volume Suara: %d%%" -#: src/gui/touchcontrols.cpp -#, fuzzy -msgid "Joystick" -msgstr "ID Joystick" +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Tambahkan tombol" -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Selesai" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Hapus" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Atur ulang" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." msgstr "" +"Mulai menarik tombol untuk menambahkan. Ketuk di luar untuk membatalkan." -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "Ketuk tombol untuk memilih. Tarik tombol untuk memindahkan." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Ketuk di luar untuk membatalkan pilihan." + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Joystick" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "Menu luap" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Alih kabut" +msgstr "Alih pengawakutuan" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"Klien yang lain sedang terhubung dengan nama ini. Jika klien Anda tutup " +"secara tidak terduga, coba lagi dalam beberapa menit." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." msgstr "" +"Kata sandi kosong tidak diperbolehkan. Tetapkan kata sandi dan coba lagi." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Kesalahan server internal" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Kata Sandi Lama" +msgstr "Kata sandi tidak valid" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2317,46 +2375,49 @@ msgstr "Nama sudah digunakan. Harap pilih nama lain" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Nama pemain berisi karakter yang tidak diperbolehkan" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Nama pemain terlalu panjang." +msgstr "Nama pemain tidak diperbolehkan" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Mematikan..." +msgstr "Server dimatikan" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "Server mengalami kesalahan internal. Anda sekarang akan diputuskan." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." msgstr "" +"Server berjalan dalam mode pemain tunggal. Anda tidak dapat bergabung." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Terlalu banyak pengguna" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Alasan pemutusan tidak diketahui." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Klien Anda mengirim sesuatu yang tidak diduga ke server. Coba menghubungkan " +"ulang atau memperbarui klien Anda." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Versi klien Anda tidak didukung.\n" +"Silakan hubungi administrator server." #: src/server.cpp #, c-format @@ -2495,8 +2556,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Dukungan 3D.\n" "Yang didukung saat ini:\n" @@ -2505,8 +2565,7 @@ msgstr "" "- interlaced: garis ganjil/genap berdasarkan polarisasi layar.\n" "- topbottom: pisahkan layar atas/bawah.\n" "- sidebyside: pisahkan layar kiri/kanan.\n" -"- crossview: 3d dengan pandang silang\n" -"Catat bahwa mode interlaced memerlukan penggunaan shader." +"- crossview: 3d dengan pandang silang" #: src/settings_translation_file.cpp msgid "" @@ -2561,10 +2620,6 @@ msgstr "Jangkauan blok aktif" msgid "Active object send range" msgstr "Batas pengiriman objek aktif" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Tambahkan partikel saat menggali nodus." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2594,6 +2649,18 @@ msgstr "Nama pengurus" msgid "Advanced" msgstr "Lanjutan" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Semua penyangga jaring kurang dari jumlah verteks ini akan digabungkan\n" +"saat perenderan peta. Ini meningkatkan performa perenderan." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Perbolehkan awan terlihat 3D daripada datar." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Bolehkan cairan agak tembus pandang." @@ -2646,11 +2713,11 @@ msgstr "Metode antialiasing" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Tanda anticurang" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Toleransi pergerakan anticurang" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2674,10 +2741,19 @@ msgid "" "With OpenGL ES, dithering only works if the shader supports high\n" "floating-point precision and it may have a higher performance impact." msgstr "" +"Terapkan dithering untuk mengurangi artefak pita warna.\n" +"Dithering secara signifikan meningkatkan ukuran tangkapan layar yang " +"dikompresi tanpa kehilangan apa pun\n" +"dan tidak berfungsi dengan benar jika tampilan atau sistem operasi\n" +"melakukan dithering tambahan atau jika saluran warna tidak dikuantisasi\n" +"menjadi 8 bit.\n" +"Dengan OpenGL ES, dithering hanya berfungsi jika shader mendukung\n" +"presisi floating-point yang tinggi dan mungkin memiliki dampak kinerja yang " +"lebih tinggi." #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Terapkan pembayangan spekular ke node." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2696,7 +2772,6 @@ msgid "Ask to reconnect after crash" msgstr "Minta untuk menyambung ulang setelah mogok" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will aggressively optimize which blocks are sent " "to\n" @@ -2715,10 +2790,9 @@ msgstr "" "terkadang juga di darat).\n" "Nilai yang lebih besar daripada max_block_send_distance mematikan\n" "optimasi ini.\n" -"Dalam satuan blok peta (16 nodus)." +"Dalam satuan MapBlock (16 nodus)." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will perform a simpler and cheaper occlusion " "check.\n" @@ -2735,7 +2809,7 @@ msgstr "" "terkadang juga di darat).\n" "Nilai yang lebih besar daripada max_block_send_distance mematikan\n" "optimasi ini.\n" -"Dalam satuan blok peta (16 nodus)." +"Dalam satuan MapBlock (16 nodus)." #: src/settings_translation_file.cpp msgid "Audio" @@ -2798,14 +2872,12 @@ msgid "Biome noise" msgstr "Noise bioma" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block bounds HUD radius" -msgstr "Batasan blok" +msgstr "Rasius HUD batasan blok" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block cull optimize distance" -msgstr "Jarak optimasi pengiriman blok" +msgstr "Jarak optimasi cull blok" #: src/settings_translation_file.cpp msgid "Block send optimize distance" @@ -2991,14 +3063,14 @@ msgstr "Jari-jari awan" msgid "Clouds" msgstr "Awan" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Awan adalah efek sisi klien." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Awan dalam menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Kedalaman warna untuk tekstur pasca-pemrosesan" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Kabut berwarna" @@ -3012,9 +3084,11 @@ msgid "" "Comma-separated list of AL and ALC extensions that should not be used.\n" "Useful for testing. See al_extensions.[h,cpp] for details." msgstr "" +"Daftar ekstensi AL dan ALC yang dipisahkan dengan koma yang tidak boleh " +"digunakan.\n" +"Berguna untuk pengujian. Lihat al_extensions.[h,cpp] untuk detailnya." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Comma-separated list of flags to hide in the content repository.\n" "\"nonfree\" can be used to hide packages which do not qualify as 'free " @@ -3022,16 +3096,17 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" -"Daftar yang dipisahkan dengan koma dari flag yang akan disembunyikan dalam " -"gudang konten.\n" -"\"nonfree\" dapat digunakan untuk menyembunyikan paket yang tidak tergolong\n" -"\"perangkat lunak bebas gratis\" seperti yang ditetapkan oleh Free Software " -"Foundation.\n" -"Anda juga dapat menentukan sensor konten.\n" -"Flag-flag ini tidak bergantung pada versi Minetest,\n" -"maka lihat daftar lengkap di https://content.minetest.net/help/content_flags/" +"Daftar bendera yang dipisahkan dengan koma untuk disembunyikan di repositori " +"konten.\n" +"“nonfree” dapat digunakan untuk menyembunyikan paket yang tidak memenuhi " +"syarat sebagai ‘perangkat lunak bebas’,\n" +"sebagaimana didefinisikan oleh Free Software Foundation.\n" +"Anda juga dapat menentukan peringkat konten.\n" +"Tanda-tanda ini tidak bergantung pada versi Luanti,\n" +"jadi lihat daftar lengkapnya di https://content.minetest.net/help/" +"content_flags/" #: src/settings_translation_file.cpp msgid "" @@ -3192,6 +3267,19 @@ msgstr "Tingkat log awakutu" msgid "Debugging" msgstr "Pengawakutuan" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Tentukan kedalaman warna tekstur yang digunakan untuk alur pasca-pemrosesan." +"\n" +"Mengurangi ini dapat meningkatkan performa, tetapi beberapa efek (mis. " +"debanding)\n" +"memerlukan lebih dari 8 bit supaya bekerja." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Langkah server khusus" @@ -3235,7 +3323,6 @@ msgstr "" "diska Poisson, tetapi menggunakan sumber daya lebih banyak." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Define the oldest clients allowed to connect.\n" "Older clients are compatible in the sense that they will not crash when " @@ -3247,10 +3334,15 @@ msgid "" "Luanti still enforces its own internal minimum, and enabling\n" "strict_protocol_version_checking will effectively override this." msgstr "" -"Nyalakan untuk melarang sambungan dari klien lawas.\n" -"Klien lawas dianggap sesuai jika mereka tidak mogok saat menyambung ke " -"server-\n" -"server baru, tetapi mungkin tidak mendukung semua fitur baru yang diharapkan." +"Tentukan klien tertua yang diizinkan untuk terhubung.\n" +"Klien yang lebih lama kompatibel dalam arti tidak akan macet saat " +"tersambung\n" +"ke server baru, tetapi mereka mungkin tidak mendukung semua fitur baru yang " +"Anda harapkan.\n" +"Hal ini memungkinkan kontrol yang lebih baik daripada pengecekan " +"strict_protocol_version.\n" +"Luanti masih memberlakukan minimum internalnya sendiri, dan mengaktifkan\n" +"strict_protocol_version_checking_checking secara efektif akan menimpa ini." #: src/settings_translation_file.cpp msgid "Defines areas where trees have apples." @@ -3364,18 +3456,10 @@ msgstr "" "Gurun muncul saat np_biome melebihi nilai ini.\n" "Saat flag \"snowbiomes\" dinyalakan, nilai ini diabaikan." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Putuskan penyinkronan animasi blok" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Pilihan Pengembang" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Partikel penggalian" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Larang kata sandi kosong" @@ -3385,14 +3469,15 @@ msgid "Display Density Scaling Factor" msgstr "Pengali Skala Kepadatan Tampilan" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Distance in nodes at which transparency depth sorting is enabled.\n" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"Jarak dalam nodus yang dikenai pengurutan kedalaman transparansi\n" -"Gunakan ini untuk membatasi dampak kinerja akibat pengurutan ini" +"Jarak dalam node di mana pengurutan kedalaman transparansi diaktifkan.\n" +"Gunakan ini untuk membatasi dampak kinerja pengurutan kedalaman " +"transparansi.\n" +"Atur ke 0 untuk menonaktifkannya sepenuhnya." #: src/settings_translation_file.cpp msgid "Domain name of server, to be displayed in the serverlist." @@ -3406,6 +3491,19 @@ msgstr "Tekan ganda lompat untuk terbang" msgid "Double-tapping the jump key toggles fly mode." msgstr "Menekan ganda tombol lompat untuk beralih terbang." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Gambar segitiga diurutkan berdasarkan transparansi berdasarkan penyangga " +"jaringnya.\n" +"Ini merusak pengurutan transparansi antara penyangga jaring, tetapi " +"menghindari situasi\n" +"di mana pengurutan transparansi akan menjadi lebih lambat." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Keluarkan informasi awakutu pembuat peta." @@ -3423,9 +3521,8 @@ msgid "Dungeon noise" msgstr "Noise dungeon" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" -msgstr "Efek Grafika" +msgstr "Efek" #: src/settings_translation_file.cpp msgid "Enable Automatic Exposure" @@ -3440,9 +3537,8 @@ msgid "Enable Bloom Debug" msgstr "Nyalakan Awakutu Bloom" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Debanding" -msgstr "Nyalakan Kerusakan" +msgstr "Nyalakan Debanding" #: src/settings_translation_file.cpp msgid "" @@ -3492,12 +3588,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Menyalakan bayangan berwarna.\n" -"Nilai true berarti nodus agak tembus pandang memiliki bayangan berwarna. Ini " -"memerlukan sumber daya besar." +"Aktif kan bayangan berwarna untuk nodus translusen.\n" +"Ini komputasi mahal." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3524,20 +3619,16 @@ msgid "Enable mouse wheel (scroll) for item selection in hotbar." msgstr "Nyalakan roda tetikus (gulir) untuk memilih barang dalam hotbar." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable random mod loading (mainly used for testing)." -msgstr "Gunakan masukan pengguna acak (hanya digunakan untuk pengujian)." +msgstr "Aktifkan pemuatan mod acak (terutama digunakan untuk pengujian)." #: src/settings_translation_file.cpp msgid "Enable random user input (only used for testing)." msgstr "Gunakan masukan pengguna acak (hanya digunakan untuk pengujian)." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" -"Gunakan pencahayaan halus dengan ambient occlusion sederhana.\n" -"Matikan agar cepat atau untuk tampilan lain." +msgstr "Gunakan pencahayaan halus dengan oklusi ambien sederhana." #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3558,7 +3649,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "Aktifkan indikator tersedia pembaruan pada tab konten" #: src/settings_translation_file.cpp msgid "" @@ -3582,12 +3673,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" -"Nyalakan/matikan server IPv6.\n" -"Diabaikan jika bind_address telah diatur.\n" -"Perlu menyalakan enable_ipv6." +"Aktif kan/nonaktifkan menjalankan server IPv6.\n" +"Diabaikan jika bind_address telah diatur." #: src/settings_translation_file.cpp msgid "" @@ -3605,21 +3694,13 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Jalankan animasi barang inventaris." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Gunakan tembolok untuk facedir mesh yang diputar." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Nyalakan awakutu dan pemeriksa-masalah dalam pengandar OpenGL." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enables smooth scrolling." -msgstr "Nyalakan Pasca-Pengolahan" +msgstr "Mengaktifkan pengguliran halus." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." @@ -3632,6 +3713,11 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"Mengaktifkan kontrol layar sentuh, memungkinkan Anda untuk memainkan " +"permainan dengan layar sentuh.\n" +"\"auto\" berarti kontrol layar sentuh akan diaktifkan dan dinonaktifkan " +"secara otomatis\n" +"tergantung pada metode masukan terakhir yang digunakan." #: src/settings_translation_file.cpp msgid "" @@ -3947,10 +4033,6 @@ msgstr "Skala GUI" msgid "GUI scaling filter" msgstr "Filter skala GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filter txr2img skala GUI" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepad" @@ -4201,6 +4283,9 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"Jika diaktifkan dan Anda memiliki paket ContentDB yang terpasang, Luanti " +"dapat menghubungi ContentDB untuk\n" +"memeriksa pembaruan paket ketika membuka menu utama." #: src/settings_translation_file.cpp msgid "" @@ -4211,14 +4296,6 @@ msgstr "" "Jika dinyalakan, tombol \"Aux1\" digunakan untuk bergerak turun alih-alih\n" "tombol \"menyelinap\"." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Jika dinyalakan, tampilan pendaftaran akun dan masuk akan dipisah.\n" -"Jika dimatikan, akun baru akan didaftarkan secara otomatis saat masuk." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4244,6 +4321,16 @@ msgstr "" "Jika dinyalakan, pemain baru tidak dapat bergabung tanpa kata sandi atau " "menggantinya dengan kata sandi kosong." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Jika diaktifkan, pendaftaran akun server terpisah dari log masuk dalam UI.\n" +"Jika dinonaktifkan, menghubungkan ke server akan mendaftarkan akun secara " +"otomatis." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4312,8 +4399,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "In-game chat console background color (R,G,B)." msgstr "" -"Warna latar belakang konsol obrolan dalam permainan (merah,hijau,biru atau R," -"G,B)." +"Warna latar belakang konsol obrolan dalam permainan (merah,hijau,biru atau " +"R,G,B)." #: src/settings_translation_file.cpp msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." @@ -4337,13 +4424,12 @@ msgid "Instrument chat commands on registration." msgstr "Perkakas perintah obrolan saat pendaftaran." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Instrument global callback functions on registration.\n" "(anything you pass to a core.register_*() function)" msgstr "" "Melengkapi fungsi panggil balik (callback) global saat didaftarkan.\n" -"(semua yang dimasukkan ke fungsi minetest.register_*())" +"(semua yang dimasukkan ke fungsi core.register_*())" #: src/settings_translation_file.cpp msgid "" @@ -4366,10 +4452,6 @@ msgstr "Melengkapi metode entitas dengan perkakas saat didaftarkan." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Jarak waktu penyimpanan perubahan penting dari dunia dalam detik." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Jarak pengiriman waktu harian kepada para klien dalam detik." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animasi barang inventaris" @@ -4545,7 +4627,6 @@ msgid "Leaves style" msgstr "Gaya dedaunan" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Leaves style:\n" "- Fancy: all faces visible\n" @@ -4553,13 +4634,11 @@ msgid "" "- Opaque: disable transparency" msgstr "" "Gaya daun:\n" -"- Fancy: semua sisi terlihat\n" -"- Simple: hanya sisi terluar jika special_tiles yang didefinisikan " -"digunakan\n" -"- Opaque: matikan transparansi" +"- Mewah: semua sisi terlihat\n" +"- Sederhana: hanya sisi terluar\n" +"- Buram: matikan transparansi" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Length of a server tick (the interval at which everything is generally " "updated),\n" @@ -4568,9 +4647,12 @@ msgid "" "This is a lower bound, i.e. server steps may not be shorter than this, but\n" "they are often longer." msgstr "" -"Lama detikan server dan selang waktu bagi objek secara umum untuk " -"diperbarui\n" -"ke jaringan dalam detik." +"Panjang detak server (interval saat segala sesuatu secara umum diperbarui),\n" +"dinyatakan dalam detik.\n" +"Tidak berlaku untuk sesi yang dihosting dari menu klien.\n" +"Ini adalah batas bawah, yaitu langkah server tidak boleh lebih pendek dari " +"ini, tetapi\n" +"sering kali lebih lama." #: src/settings_translation_file.cpp msgid "Length of liquid waves." @@ -4684,9 +4766,8 @@ msgid "Liquid queue purge time" msgstr "Waktu pembersihan antrean cairan" #: src/settings_translation_file.cpp -#, fuzzy msgid "Liquid reflections" -msgstr "Keenceran cairan" +msgstr "Refleksi cairan" #: src/settings_translation_file.cpp msgid "Liquid sinking" @@ -4792,7 +4873,6 @@ msgid "Map generation attributes specific to Mapgen v5." msgstr "Atribut pembuatan peta khusus untuk pembuat peta v5." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Map generation attributes specific to Mapgen v6.\n" "The 'snowbiomes' flag enables the new 5 biome system.\n" @@ -4801,10 +4881,12 @@ msgid "" "The 'temples' flag disables generation of desert temples. Normal dungeons " "will appear instead." msgstr "" -"Atribut pembuatan peta khusus untuk pembuat peta v6.\n" -"Flag \"snowbiomes\" menyalakan sistem 5 bioma yang baru.\n" -"Saat sistem bioma baru digunakan, hutan rimba otomatis dinyalakan dan\n" -"flag \"jungle\" diabaikan." +"Atribut pembuatan peta khusus untuk pembuat v6.\n" +"Tanda 'snowbiomes' mengaktifkan sistem 5 bioma yang baru.\n" +"Ketika tanda 'snowbiomes' diaktifkan, hutan secara otomatis diaktifkan dan\n" +"tanda 'jungles' diabaikan.\n" +"Tanda 'temples' menonaktifkan pembuatan kuil gurun. Sebagai gantinya, ruang " +"bawah tanah normal akan muncul." #: src/settings_translation_file.cpp msgid "" @@ -5023,6 +5105,10 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"Jumlah maksimum paket yang dikirim per langkah pengiriman dalam kode " +"jaringan tingkat rendah.\n" +"Anda biasanya tidak perlu mengubahnya, namun server yang sibuk dapat " +"memperoleh manfaat dari jumlah yang lebih tinggi." #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5083,10 +5169,6 @@ msgstr "" msgid "Maximum users" msgstr "Jumlah pengguna maksimum" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Tembolok mesh" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Pesan hari ini" @@ -5119,6 +5201,10 @@ msgstr "Batas minimal nilai acak untuk gua besar per potongan peta." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Batas minimal nilai acak untuk gua kecil per potongan peta." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Jumlah verteks minimum untuk penyangga jaring" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Pemetaan Ulang" @@ -5214,13 +5300,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" -"Nama si pemain.\n" -"Saat menjalankan server, klien yang tersambung dengan nama ini adalah " -"pengurus.\n" -"Saat menjalankan dari menu utama, nilai ini ditimpa." +"Nama pemain.\n" +"Saat menjalankan server, klien yang tersambung dengan nama ini adalah admin." +"\n" +"Saat memulai dari menu utama, ini ditimpa." #: src/settings_translation_file.cpp msgid "" @@ -5253,7 +5339,7 @@ msgstr "Penyorotan nodus" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "Spekular node" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5308,15 +5394,14 @@ msgid "Number of messages a player may send per 10 seconds." msgstr "Jumlah pesan yang dapat dikirim pemain per 10 detik." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of threads to use for mesh generation.\n" "Value of 0 (default) will let Luanti autodetect the number of available " "threads." msgstr "" "Jumlah utas untuk pembuatan mesh.\n" -"Nilai 0 (bawaan) akan membiarkan Minetest mendeteksi otomatis jumlah utas " -"yang tersedia." +"Nilai 0 (bawaan) akan membiarkan Luanti mendeteksi otomatis jumlah utas yang " +"tersedia." #: src/settings_translation_file.cpp msgid "Occlusion Culler" @@ -5346,18 +5431,16 @@ msgid "OpenGL debug" msgstr "Awakutu OpenGL" #: src/settings_translation_file.cpp -#, fuzzy msgid "Optimize GUI for touchscreens" -msgstr "Gunakan crosshair untuk layar sentuh" +msgstr "Optimalkan GUI untuk layar sentuh" #: src/settings_translation_file.cpp msgid "Optional override for chat weblink color." msgstr "Penimpaan opsional untuk warna tautan web pada obrolan." #: src/settings_translation_file.cpp -#, fuzzy msgid "Other Effects" -msgstr "Efek Grafika" +msgstr "Efek Lainnya" #: src/settings_translation_file.cpp msgid "" @@ -5471,7 +5554,6 @@ msgid "Prometheus listener address" msgstr "Alamat pendengar Prometheus" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Prometheus listener address.\n" "If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" @@ -5479,7 +5561,7 @@ msgid "" "Metrics can be fetched on http://127.0.0.1:30000/metrics" msgstr "" "Alamat pendengar Prometheus.\n" -"Jika Minetest dikompilasi dengan pilihan ENABLE_PROMETHEUS dinyalakan,\n" +"Jika Luanti dikompilasi dengan pilihan ENABLE_PROMETHEUS dinyalakan,\n" "ini menyalakan pendengar metrik untuk Prometheus pada alamat itu.\n" "Metrik dapat diambil pada http://127.0.0.1:30000/metrics" @@ -5507,6 +5589,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"Radius yang digunakan ketika fitur HUD batasan blok ditetapkan dekat blok." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5729,45 +5812,68 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "Lihat https://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" -"Pilih metode antialiasing yang diterapkan.\n" +"Pilih metode antialiasing untuk diterapkan.\n" "\n" -"* None - Tidak ada antialiasing (bawaan)\n" "\n" -"* FSAA - Full-screen antialiasing dari perangkat keras (tidak cocok dengan " -"shader)\n" -"alias multi-sample antialiasing (MSAA)\n" -"Menghaluskan tepian blok, tetapi tidak berpengaruh terhadap isi tekstur.\n" -"Perlu mulai ulang untuk mengganti pilihan ini.\n" "\n" -"* FXAA - Fast approximate antialiasing (perlu shader)\n" -"Menerapkan filter pasca-pengolahan untuk mendeteksi dan menghaluskan tepian " +"* Tidak ada - tidak ada antialiasing (default)\n" +"\n" +"\n" +"\n" +"* FSAA-Antialiasing layar penuh yang disediakan perangkat keras\n" +"\n" +"A.k.a antialiasing multi-sampel (MSAA)\n" +"\n" +"Menghancur tepi blok tetapi tidak mempengaruhi bagian dalam tekstur.\n" +"\n" +"\n" +"\n" +"Jika pemrosesan pos dinonaktifkan, mengubah FSAA memerlukan restart.\n" +"\n" +"Juga, jika pemrosesan pos dinonaktifkan, FSAA tidak akan bekerja sama " +"dengannya\n" +"\n" +"pengaturan undersampling atau non-default \"3D_MODE\".\n" +"\n" +"\n" +"\n" +"* Fxaa - perkiraan cepat antialiasing\n" +"\n" +"Menerapkan filter pasca pemrosesan untuk mendeteksi dan menghaluskan tepi " "kontras tinggi.\n" +"\n" "Memberikan keseimbangan antara kecepatan dan kualitas gambar.\n" "\n" -"* SSAA - Super-sampling antialiasing (perlu shader)\n" -"Menggambar citra resolusi tinggi adegan, lalu diperkecil untuk mengurangi\n" -"efek aliasing. Ini metode terlambat dan terakurat." +"\n" +"\n" +"* SSAA - Antialiasing Super -Sampling\n" +"\n" +"Membuat gambar resolusi yang lebih tinggi dari pemandangan itu, lalu " +"berskala ke bawah untuk mengurangi\n" +"\n" +"Efek aliasing. Ini adalah metode paling lambat dan paling akurat." #: src/settings_translation_file.cpp msgid "Selection box border color (R,G,B)." @@ -5828,11 +5934,12 @@ msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." msgstr "" +"Kirim nama-nama pemain daring ke daftar server. Jika dinonaktifkan hanya " +"jumlah pemain yang ditampilkan." #: src/settings_translation_file.cpp -#, fuzzy msgid "Send player names to the server list" -msgstr "Umumkan ke daftar server ini." +msgstr "Kirim nama-nama pemain ke daftar server" #: src/settings_translation_file.cpp msgid "Server" @@ -5860,6 +5967,9 @@ msgid "" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"Konfigurasi anticheat server.\n" +"Tanda bernilai positif. Hapus centang pada tanda untuk menonaktifkan modul " +"anticheat yang sesuai." #: src/settings_translation_file.cpp msgid "Server description" @@ -5914,13 +6024,12 @@ msgstr "" "Rentang: dari -1 ke 1.0" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Set the language. By default, the system language is used.\n" "A restart is required after changing this." msgstr "" -"Atur bahasa. Biarkan kosong untuk menggunakan bahasa sistem.\n" -"Diperlukan mulai ulang setelah mengganti ini." +"Atur bahasa. Secara bawaan, bahasa sistem digunakan.\n" +"Memerlukan pemulaian ulang setelah mengubah ini." #: src/settings_translation_file.cpp msgid "" @@ -6004,16 +6113,6 @@ msgstr "" msgid "Shader path" msgstr "Jalur shader" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shader" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Kualitas filter bayangan" @@ -6083,7 +6182,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +msgstr "Simulasikan transparansi ketika melihat dedaunan dalam sinar matahari." #: src/settings_translation_file.cpp msgid "" @@ -6135,18 +6234,16 @@ msgid "Smooth lighting" msgstr "Pencahayaan halus" #: src/settings_translation_file.cpp -#, fuzzy msgid "Smooth scrolling" -msgstr "Pencahayaan halus" +msgstr "Pengguliran halus" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " "cinematic mode by using the key set in Controls." msgstr "" -"Menghaluskan rotasi kamera dalam modus sinema, 0 untuk mematikannya. Masuk " -"mode sinema dengan tombol yang diatur di Ubah Tombol." +"Menghaluskan rotasi kamera dalam mode sinema, 0 untuk mematikannya. Masuk " +"mode sinema dengan tombol yang diatur di Kontrol." #: src/settings_translation_file.cpp msgid "" @@ -6165,9 +6262,8 @@ msgid "Sneaking speed, in nodes per second." msgstr "Kelajuan menyelinap dalam nodus per detik." #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "Awan 3D" +msgstr "Awan lembut" #: src/settings_translation_file.cpp msgid "Soft shadow radius" @@ -6205,15 +6301,14 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" -"Menyebarkan pembaruan peta bayangan dalam jumlah bingkai yang diberikan.\n" -"Nilai tinggi bisa membuat bayangan patah-patah, nilai rendah akan perlu\n" -"sumber daya lebih banyak.\n" -"Nilai minimum: 1; nilai maksimum: 16" +"Sebarkan pembaruan lengkap peta bayangan pada sejumlah bingkai tertentu.\n" +"Nilai yang lebih tinggi mungkin membuat bayangan lambat, nilai yang lebih " +"rendah\n" +"akan mengkonsumsi lebih banyak sumber daya." #: src/settings_translation_file.cpp msgid "" @@ -6406,17 +6501,26 @@ msgid "" "Known from the classic Luanti mobile controls.\n" "Combat is more or less impossible." msgstr "" +"Gerakan untuk meninju pemain/entitas.\n" +"Ini dapat ditimpa oleh game dan mod.\n" +"\n" +"* short_tap\n" +"Mudah digunakan dan terkenal dari game lain yang tidak akan disebutkan " +"namanya.\n" +"\n" +"* long_tap\n" +"Dikenal dari kontrol seluler Luanti klasik.\n" +"Pertarungan kurang lebih tidak mungkin." #: src/settings_translation_file.cpp msgid "The identifier of the joystick to use" msgstr "Identitas dari joystick yang digunakan" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The length in pixels after which a touch interaction is considered movement." msgstr "" -"Jarak dalam piksel yang diperlukan untuk memulai interaksi layar sentuh." +"Jarak dalam piksel setelah interaksi sentuhan dianggap sebagai gerakan." #: src/settings_translation_file.cpp msgid "" @@ -6431,13 +6535,12 @@ msgstr "" "Bawaannya 1.0 (1/2 nodus)." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The minimum time in seconds it takes between digging nodes when holding\n" "the dig button." msgstr "" -"Jeda dalam detik antar-penaruhan berulang saat menekan \n" -"tombol taruh." +"Waktu minimum dalam detik antara menggali node ketika\n" +"menekan tombol gali." #: src/settings_translation_file.cpp msgid "The network interface that the server listens on." @@ -6469,16 +6572,14 @@ msgstr "" "Ini harus diatur bersama dengan active_object_range." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The rendering back-end.\n" "Note: A restart is required after changing this!\n" "OpenGL is the default for desktop, and OGLES2 for Android." msgstr "" -"Penggambar video.\n" -"Catatan: Mulai ulang diperlukan setelah mengganti ini!\n" -"OpenGL bawaan untuk desktop, dan OGLES2 untuk Android.\n" -"Shader didukung oleh OpenGL dan OGLES2 (tahap percobaan)." +"Backend perenderan.\n" +"Catatan: Diperlukan pemulaian ulang setelah mengubah ini!\n" +"OpenGL merupakan bawaan untuk desktop, dan OGLES2 untuk Android." #: src/settings_translation_file.cpp msgid "" @@ -6569,10 +6670,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Waktu saat dunia baru dimulai, dalam milijam (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Jarak pengiriman waktu" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Kelajuan waktu" @@ -6600,6 +6697,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"Toleransi pergerakan pendeteksi kecurangan.\n" +"Tingkatkan nilai jika pemain mengalami pergerakan patah-patah." #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6610,9 +6709,8 @@ msgid "Touchscreen" msgstr "Layar Sentuh" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "Ambang batas layar sentuh" +msgstr "Kontrol layar sentuh" #: src/settings_translation_file.cpp msgid "Touchscreen sensitivity" @@ -6627,9 +6725,8 @@ msgid "Tradeoffs for performance" msgstr "Pertukaran untuk kinerja" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent foliage" -msgstr "Cairan agak tembus pandang" +msgstr "Dedaunan tembus pandanga" #: src/settings_translation_file.cpp msgid "Translucent liquids" @@ -6639,6 +6736,10 @@ msgstr "Cairan agak tembus pandang" msgid "Transparency Sorting Distance" msgstr "Jarak Pengurutan Transparansi" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Jarak Pengurutan Transparansi berdasarkan Penyangga" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Noise pepohonan" @@ -6680,13 +6781,13 @@ msgstr "" "Pengaturan ini seharusnya hanya diubah jika Anda mengalami masalah kinerja." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "URL to JSON file which provides information about the newest Luanti " "release.\n" "If this is empty the engine will never check for updates." msgstr "" -"URL ke berkas JSON yang memberikan informasi tentang rilis Minetest terbaru" +"URL ke berkas JSON yang memberikan informasi tentang rilis Luanti terbaru.\n" +"Jika kosong, mesin tidak akan memeriksa pembaruan." #: src/settings_translation_file.cpp msgid "URL to the server list displayed in the Multiplayer Tab." @@ -6702,12 +6803,18 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" -"Undersampling seperti menggunakan resolusi layar yang lebih rendah, tetapi\n" -"hanya berlaku untuk dunia permainan saja, antarmuka grafis tetap.\n" -"Seharusnya memberikan dorongan kinerja dengan gambar yang kurang detail.\n" -"Nilai yang lebih tinggi menghasilkan gambar yang kurang detail." +"Undersampling hampir mirip seperti menggunakan resolusi layer yang lebih " +"rendah, tetapi hanya diterapkan ke dunia permainan saja sambil menjaga GUI.\n" +"Ini seharusnya memberikan peningkatan performa dengan mengurangi detail " +"gambar.\n" +"Nilai yang lebih tinggi membuat detail gambar lebih sedikit.\n" +"Catatan: Undersampling saat ini tidak didukung jika pengaturan \"3d_mode\" " +"ditetapkan ke nilai non-bawaan." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6729,18 +6836,18 @@ msgstr "Batas atas Y dungeon." msgid "Upper Y limit of floatlands." msgstr "Batas atas Y floatland." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Gunakan tampilan awan 3D alih-alih datar." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Gunakan animasi awan untuk latar belakang menu utama." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" -"Gunakan pemfilteran anisotropik saat melihat tekstur pada sudut tertentu." +"Gunakan pemfilteran anisotropik saat melihat tekstur pada sudut tertentu.\n" +"Ini menyediakan peningkatan yang lebih baik ketika digunakan bersama dengan " +"mipmapping." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -6782,7 +6889,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "Gunakan pembayangan awan mulus." #: src/settings_translation_file.cpp msgid "" @@ -6990,13 +7097,17 @@ msgstr "Warna tautan web" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "Ketika diaktifkan, refleksi cairan disimulasikan." #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"Ketika diaktifkan, GUI dioptimalkan supaya dapat digunakan pada layar " +"sentuh.\n" +"Apakah ini diaktifkan secara bawaan tergantung pada faktor bentuk perangkat " +"keras Anda." #: src/settings_translation_file.cpp msgid "" @@ -7010,36 +7121,27 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Saat gui_scaling_filter_txr2img dibolehkan, salin gambar-gambar tersebut\n" -"dari perangkat keras ke perangkat lunak untuk perbesar/perkecil. Saat tidak\n" -"dibolehkan, kembali ke cara lama, untuk pengandar video yang tidak\n" -"mendukung pengunduhan tekstur dari perangkat keras." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"Saat menggunakan filter bilinear/trilinear/anisotropik, tekstur resolusi\n" -"rendah dapat dikaburkan sehingga diperbesar otomatis dengan interpolasi\n" -"nearest-neighbor untuk menjaga ketajaman piksel. Ini mengatur ukuran\n" -"tekstur minimum untuk tekstur yang diperbesar; semakin tinggi semakin\n" -"tajam, tetapi butuh memori lebih. Perpangkatan dua disarankan. Pengaturan\n" -"ini HANYA diterapkan jika menggunakan filter bilinear/trilinear/" -"anisotropik.\n" -"Ini juga digunakan sebagai ukuran dasar tekstur nodus untuk penyekalaan\n" -"otomatis tekstur yang sejajar dengan dunia." +"Saat menggunakan pemfilteran bilinear/trilinear, tekstur resolusi rendah\n" +"bisa dikaburkan, jadi opsi ini secara otomatis meningkatkannya untuk " +"menjaga\n" +"piksel tajam. Ini mendefinisikan ukuran tekstur minimum untuk tekstur yang " +"ditingkatkan;\n" +"Nilai yang lebih tinggi terlihat lebih tajam, tetapi membutuhkan lebih " +"banyak memori.\n" +"Pengaturan ini hanya diterapkan jika salah satu filter yang disebutkan " +"diaktifkan.\n" +"Ini juga digunakan sebagai ukuran tekstur simpul dasar untuk dunia yang " +"selaras\n" +"Tekstur Autoscaling." #: src/settings_translation_file.cpp msgid "" @@ -7049,10 +7151,6 @@ msgstr "" "Apakah latar belakang tanda nama ditampilkan secara bawaan.\n" "Mod masih bisa mengatur latar belakang." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Apakah animasi tekstur nodus harus tidak disinkronkan per blok peta." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7079,15 +7177,14 @@ msgstr "Apakah harus memberi kabut pada akhir daerah yang terlihat." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" -"Apakah akan membisukan suara atau tidak. Anda dapat membunyikan\n" -"suara kapan pun, kecuali sistem suara dimatikan (enable_sound = false).\n" -"Dalam permainan, Anda dapat beralih mode bisu dengan tombol bisu\n" -"atau melalui menu jeda." +"Apakah suara dibisukan atau tidak. Kamu bisa membunyikan suara kapan pun.\n" +"Dalam permainan, kamu bisa sakelar keadaan bisu dengan tombol bisikan atau " +"menggunakan\n" +"menu jeda." #: src/settings_translation_file.cpp msgid "" @@ -7107,13 +7204,12 @@ msgid "Window maximized" msgstr "Jendela dimaksimalkan" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Windows systems only: Start Luanti with the command line window in the " "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"Sistem Windows saja: Mulai Minetest dengan jendela perintah baris di latar " +"Sistem Windows saja: Mulai Luanti dengan jendela perintah baris di latar " "belakang.\n" "Memiliki informasi yang sama dengan berkas debug.txt (nama bawaan)." @@ -7269,6 +7365,9 @@ msgstr "cURL: batas jumlah paralel" #~ "Biarkan kosong untuk memulai sebuah server lokal.\n" #~ "Perhatikan bahwa bidang alamat dalam menu utama menimpa pengaturan ini." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Tambahkan partikel saat menggali nodus." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7426,6 +7525,9 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Clean transparent textures" #~ msgstr "Bersihkan tekstur transparan" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Awan adalah efek sisi klien." + #~ msgid "Command key" #~ msgstr "Tombol perintah" @@ -7521,9 +7623,15 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Darkness sharpness" #~ msgstr "Kecuraman kegelapan" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Info awakutu dan grafik pemrofil disembunyikan" + #~ msgid "Debug info toggle key" #~ msgstr "Tombol info awakutu" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Info awakutu, grafik pemrofil, dan rangka kawat disembunyikan" + #~ msgid "Dec. volume key" #~ msgstr "Tombol turunkan volume" @@ -7577,9 +7685,15 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Del. Favorite" #~ msgstr "Hapus favorit" +#~ msgid "Desynchronize block animation" +#~ msgstr "Putuskan penyinkronan animasi blok" + #~ msgid "Dig key" #~ msgstr "Tombol gali" +#~ msgid "Digging particles" +#~ msgstr "Partikel penggalian" + #~ msgid "Disable anticheat" #~ msgstr "Matikan anticurang" @@ -7607,6 +7721,9 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Dynamic shadows:" #~ msgstr "Bayangan dinamis:" +#~ msgid "Enable" +#~ msgstr "Aktifkan" + #~ msgid "Enable VBO" #~ msgstr "Gunakan VBO" @@ -7639,6 +7756,13 @@ msgstr "cURL: batas jumlah paralel" #~ "tekstur atau harus dihasilkan otomatis.\n" #~ "Membutuhkan penggunaan shader." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Gunakan tembolok untuk facedir mesh yang diputar.\n" +#~ "Ini hanya efektif tanpa shader." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Gunakan pemetaan suasana (tone mapping) filmis" @@ -7688,9 +7812,6 @@ msgstr "cURL: batas jumlah paralel" #~ "Masih tahap percobaan, dapat menyebabkan terlihatnya spasi antarblok\n" #~ "saat diatur dengan angka yang lebih besar dari 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS (bingkai per detik) pada menu jeda" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7776,8 +7897,8 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Full screen BPP" #~ msgstr "BPP layar penuh" -#~ msgid "Game" -#~ msgstr "Permainan" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filter txr2img skala GUI" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -7947,660 +8068,666 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Instrumentation" #~ msgstr "Instrumentasi" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Jarak pengiriman waktu harian kepada para klien dalam detik." + #~ msgid "Invalid gamespec." #~ msgstr "Spesifikasi permainan tidak sah." #~ msgid "Inventory key" #~ msgstr "Tombol inventaris" +#~ msgid "Irrlicht device:" +#~ msgstr "Perangkat Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tombol lompat" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk mengurangi jarak pandang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk mengurangi volume.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk gali.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk menjatuhkan barang yang sedang dipilih.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk menambah jarak pandang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk menambah volume.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk lompat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk bergerak cepat dalam mode cepat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk bergerak mundur.\n" #~ "Akan mematikan maju otomatis, saat dinyalakan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk bergerak maju.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk bergerak ke kiri.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk bergerak ke kanan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk membisukan permainan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk membuka jendela obrolan untuk mengetik perintah.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk membuka jendela obrolan untuk mengetik perintah lokal.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk membuka jendela obrolan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk membuka inventaris.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk taruh.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-11.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-12.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-13.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-14.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-15.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-16.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-17.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-18.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-19.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-20.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-21.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-22.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-23.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-24.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-25.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-26.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-27.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-28.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-29.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-30.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-31.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ke-32.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar kedelapan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar kelima.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar pertama.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar keempat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih barang selanjutnya di hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar kesembilan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih barang sebelumnya di hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar kedua.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ketujuh.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar keenam.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar kesepuluh.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk memilih slot hotbar ketiga.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk menyelinap.\n" #~ "Juga digunakan untuk turun dan menyelam dalam air jika aux1_descends " #~ "dimatikan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk mengganti kamera antara orang pertama dan ketiga.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk mengambil tangkapan layar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih maju otomatis.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih mode sinema.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk mengganti tampilan peta mini.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih mode cepat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih terbang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih mode tembus nodus.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih mode gerak sesuai pandang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih pembaruan kamera. Hanya digunakan dalam " #~ "pengembangan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih tampilan obrolan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih tampilan info awakutu.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih tampilan kabut.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih tampilan HUD.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih tampilan konsol obrolan besar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk menampilkan profiler. Digunakan untuk pengembangan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk beralih menjadi jarak pandang tanpa batas.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tombol untuk zum jika bisa.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8676,6 +8803,9 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Menus" #~ msgstr "Menu" +#~ msgid "Mesh cache" +#~ msgstr "Tembolok mesh" + #~ msgid "Minimap" #~ msgstr "Peta mini" @@ -8881,6 +9011,9 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Server / Singleplayer" #~ msgstr "Server/Pemain tunggal" +#~ msgid "Shaders" +#~ msgstr "Shader" + #~ msgid "Shaders (experimental)" #~ msgstr "Shader (tahap percobaan)" @@ -8898,6 +9031,16 @@ msgstr "cURL: batas jumlah paralel" #~ "pada beberapa kartu video.\n" #~ "Ini hanya bekerja dengan penggambar video OpenGL." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Shader merupakan bagian penting dalam perenderan dan memungkinkan efek " +#~ "visual bertingkat lanjut." + +#~ msgid "Shaders are disabled." +#~ msgstr "Shader dinonaktifkan." + #~ msgid "Shadow limit" #~ msgstr "Batas bayangan" @@ -8929,6 +9072,9 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Penghalusan perputaran kamera. 0 untuk tidak menggunakannya." +#~ msgid "Sound system is disabled" +#~ msgstr "Sistem suara dimatikan" + #~ msgid "Special" #~ msgstr "Spesial" @@ -8977,6 +9123,12 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "This font will be used for certain languages." #~ msgstr "Fon ini akan digunakan pada bahasa tertentu." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Ini bukan konfigurasi yang disarankan." + +#~ msgid "Time send interval" +#~ msgstr "Jarak pengiriman waktu" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Untuk menggunakan shader, pengandar OpenGL harus digunakan." @@ -9097,6 +9249,18 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Waving water" #~ msgstr "Air berombak" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Saat gui_scaling_filter_txr2img dibolehkan, salin gambar-gambar tersebut\n" +#~ "dari perangkat keras ke perangkat lunak untuk perbesar/perkecil. Saat " +#~ "tidak\n" +#~ "dibolehkan, kembali ke cara lama, untuk pengandar video yang tidak\n" +#~ "mendukung pengunduhan tekstur dari perangkat keras." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9109,6 +9273,11 @@ msgstr "cURL: batas jumlah paralel" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Apakah dungeon terkadang muncul dari medan." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Apakah animasi tekstur nodus harus tidak disinkronkan per blok peta." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Apakah pemain boleh melukai dan membunuh satu sama lain." diff --git a/po/it/luanti.po b/po/it/luanti.po index be36b2c9c..901501487 100644 --- a/po/it/luanti.po +++ b/po/it/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Italian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-01-18 07:31+0000\n" "Last-Translator: Filippo Alfieri \n" "Language-Team: Italian ] [-t]" msgstr "[tutto | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Esplora" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Modifica" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Scegli l'indirizzo" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Scegli un file" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Seleziona" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nessuna descrizione fornita per l'impostazione)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Rumore 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Annulla" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunarità" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Ottave" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Scarto" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistenza" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Salva" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Ridimensiona" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seme" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Propagazione X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Propagazione Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Propagazione Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "\"absvalue\"" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "\"defaults\"" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "\"eased\"" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Anche il gioco dovrà abilitare le ombre)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(Anche il gioco dovrà abilitare le ombre)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Anche il gioco dovrà abilitare le ombre)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Usa la lingua di sistema)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accessibilità" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Canc" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controlli" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Disabilitato" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Abilitato" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Generale" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Movimento" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Nessun risultato" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Ripristina predefinito" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Ripristina l'impostazione predefinita ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Ricerca" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Mostra impostazioni avanzate" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostra i nomi tecnici" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Touch screen" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS nel menu di pausa" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Seleziona le Mod" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contenuto: Giochi" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contenuti: Mod" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Anche il gioco dovrà abilitare le ombre)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personalizzato" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Ombre Dinamiche" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Basso" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Molto Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Molto Basso" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +409,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Indietro" @@ -203,11 +445,6 @@ msgstr "Mod" msgid "No packages could be retrieved" msgstr "Non è stato possibile recuperare alcun contenuto" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Nessun risultato" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Nessun aggiornamento" @@ -253,18 +490,6 @@ msgstr "Già installato" msgid "Base Game:" msgstr "Gioco di Base:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Annulla" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -393,6 +618,12 @@ msgstr "Impossibile installare una mod come un $1" msgid "Unable to install a $1 as a texture pack" msgstr "Impossibile installare un $1 come un pacchetto texture" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Attivato, errore rilevato)" @@ -457,12 +688,6 @@ msgstr "Nessuna dipendenza facoltativa" msgid "Optional dependencies:" msgstr "Dipendenze facoltative:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Salva" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mondo:" @@ -613,11 +838,6 @@ msgstr "Fiumi" msgid "Sea level rivers" msgstr "Fiumi a livello del mare" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seme" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transizione uniforme tra biomi" @@ -764,6 +984,23 @@ msgstr "" "Questo pacchetto mod esplicita un nome fornito in modpack.conf che " "sovrascriverà ogni modifica del nome qui effettuata." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Attiva tutto" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Una nuova versione di $1 è disponibile" @@ -792,7 +1029,7 @@ msgstr "Mai" msgid "Visit website" msgstr "Visita il sito Web" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Impostazioni" @@ -806,228 +1043,6 @@ msgstr "" "Prova a riabilitare l'elenco dei server pubblici e controlla la tua " "connessione Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Esplora" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Modifica" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Scegli l'indirizzo" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Scegli un file" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Seleziona" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nessuna descrizione fornita per l'impostazione)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Rumore 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunarità" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Ottave" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Scarto" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistenza" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Ridimensiona" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Propagazione X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Propagazione Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Propagazione Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "\"absvalue\"" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "\"defaults\"" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "\"eased\"" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Anche il gioco dovrà abilitare le ombre)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Anche il gioco dovrà abilitare le ombre)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Anche il gioco dovrà abilitare le ombre)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Usa la lingua di sistema)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accessibilità" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Canc" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controlli" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Disabilitato" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Abilitato" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Generale" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Movimento" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Ripristina predefinito" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Ripristina l'impostazione predefinita ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Ricerca" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Mostra impostazioni avanzate" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostra i nomi tecnici" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Seleziona le Mod" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contenuto: Giochi" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contenuti: Mod" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Abilitato" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Aggiornamento della telecamera disabilitato" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Anche il gioco dovrà abilitare le ombre)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personalizzato" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Ombre Dinamiche" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Basso" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Molto Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Molto Basso" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Informazioni" @@ -1048,10 +1063,6 @@ msgstr "Sviluppatori Principali" msgid "Core Team" msgstr "Squadra Principale" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Dispositivo Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Apri l'Indirizzo dei Dati Utente" @@ -1201,10 +1212,22 @@ msgstr "Gioca" msgid "You need to install a game before you can create a world." msgstr "Devi installare un gioco prima di poter installare un mod" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Rimuovi preferito" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Indirizzo" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Client" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modalità creativa" @@ -1218,6 +1241,11 @@ msgstr "Ferimento / PvP" msgid "Favorites" msgstr "Preferiti" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Gioco" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Server Incompatibili" @@ -1230,10 +1258,28 @@ msgstr "Unisciti al Gioco" msgid "Login" msgstr "Accedi" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Numero di thread emerge" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Passo dedicato del server" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Server Pubblici" @@ -1318,23 +1364,6 @@ msgstr "" "\n" "Controlla debug.txt per i dettagli." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modalità: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Pubblico: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nome del Server: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Si è verificato un errore di serializzazione:" @@ -1344,6 +1373,11 @@ msgstr "Si è verificato un errore di serializzazione:" msgid "Access denied. Reason: %s" msgstr "Accesso negato. Motivo: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Info debug mostrate" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Avanzamento automatico disabilitato" @@ -1364,6 +1398,10 @@ msgstr "I limiti del blocco sono mostrati per il blocco attuale" msgid "Block bounds shown for nearby blocks" msgstr "I limiti del blocco sono mostrati per i blocchi vicini" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Aggiornamento della telecamera disabilitato" @@ -1377,10 +1415,6 @@ msgstr "Aggiornamento telecamera abilitato" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Impossibile mostrare i limiti del blocco (disabilitato da mod o gioco)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Cambia la Password" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modalità cinematica disattiva" @@ -1409,39 +1443,6 @@ msgstr "Errore di connessione (scaduta?)" msgid "Connection failed for unknown reason" msgstr "Connessione fallita per motivo sconosciuto" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continua" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controlli Predefiniti:\n" -"Nessun menu visibile:\n" -"- tocco singolo: attiva pulsante\n" -"- tocco doppio; piazza/utilizza\n" -"- trascina il dito: guarda attorno\n" -"Menu/Inventario visibile:\n" -"- doppio tocco (esterno):\n" -" -->chiudi\n" -"- tocco pila, tocco casella:\n" -" --> sposta pila\n" -"- tocca e trascina, tocco 2° dito\n" -" --> piazza oggetto singolo nella casella\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1455,31 +1456,15 @@ msgstr "Creazione del client..." msgid "Creating server..." msgstr "Creazione del server..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Info di debug e grafico profiler nascosti" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Info debug mostrate" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Info debug, grafico profiler e struttura a fili nascosti" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Errore di creazione del client: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Menu Principale" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Torna al S.O." - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modalità rapida disabilitata" @@ -1517,18 +1502,6 @@ msgstr "Nebbia attivata" msgid "Fog enabled by game or mod" msgstr "Ingrandimento attualmente disabilitato dal gioco o da un mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informazioni del gioco:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Gioco in pausa" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Server ospitante" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definizione degli oggetti..." @@ -1565,14 +1538,6 @@ msgstr "Modalità incorporea abilitata (nota: privilegio 'noclip' mancante)" msgid "Node definitions..." msgstr "Definizione dei nodi..." -#: src/client/game.cpp -msgid "Off" -msgstr "Disattivato" - -#: src/client/game.cpp -msgid "On" -msgstr "Attivato" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Modalità inclinazione movimento disabilitata" @@ -1585,38 +1550,22 @@ msgstr "Modalità inclinazione movimento abilitata" msgid "Profiler graph shown" msgstr "Grafico profiler visualizzato" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Server remoto" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Risoluzione dell'indirizzo..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Rinasci" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Uscita dal gioco..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Gioco locale" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume del Suono" - #: src/client/game.cpp msgid "Sound muted" msgstr "Suono disattivato" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Il sistema audio è disabilitato" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Il sistema audio non è supportato su questa compilazione" @@ -1694,18 +1643,116 @@ msgstr "Raggio visivo cambiato a %d" msgid "Volume changed to %d%%" msgstr "Volume cambiato a %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Struttura a fili visualizzata" -#: src/client/game.cpp -msgid "You died" -msgstr "Sei morto" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Ingrandimento attualmente disabilitato dal gioco o da un mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modalità: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Pubblico: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nome del Server: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Cambia la Password" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continua" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controlli Predefiniti:\n" +"Nessun menu visibile:\n" +"- tocco singolo: attiva pulsante\n" +"- tocco doppio; piazza/utilizza\n" +"- trascina il dito: guarda attorno\n" +"Menu/Inventario visibile:\n" +"- doppio tocco (esterno):\n" +" -->chiudi\n" +"- tocco pila, tocco casella:\n" +" --> sposta pila\n" +"- tocca e trascina, tocco 2° dito\n" +" --> piazza oggetto singolo nella casella\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Menu Principale" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Torna al S.O." + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informazioni del gioco:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Gioco in pausa" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Server ospitante" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Disattivato" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Attivato" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Server remoto" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Rinasci" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume del Suono" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Sei morto" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat attualmente disabilitata dal gioco o da un mod" @@ -2045,8 +2092,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Impossibile aprire la pagina web" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Il sistema audio non è supportato su questa compilazione" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2096,7 +2144,7 @@ msgstr "Avanzam. autom." msgid "Automatic jumping" msgstr "Salto automatico" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Speciale" @@ -2108,7 +2156,7 @@ msgstr "Indietreggia" msgid "Block bounds" msgstr "Limiti del blocco nascosto" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Cambia vista" @@ -2132,7 +2180,7 @@ msgstr "Diminuisci volume" msgid "Double tap \"jump\" to toggle fly" msgstr "Doppio \"salta\" per volare" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Getta via" @@ -2148,11 +2196,11 @@ msgstr "Aumenta raggio" msgid "Inc. volume" msgstr "Aumenta volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventario" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Salta" @@ -2184,7 +2232,7 @@ msgstr "Oggetto successivo" msgid "Prev. item" msgstr "Oggetto precedente" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Selezione raggio" @@ -2196,7 +2244,7 @@ msgstr "Destra" msgid "Screenshot" msgstr "Screenshot" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Furtivo" @@ -2204,15 +2252,15 @@ msgstr "Furtivo" msgid "Toggle HUD" msgstr "HUD sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Log chat sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Corsa sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Volo sì/no" @@ -2220,11 +2268,11 @@ msgstr "Volo sì/no" msgid "Toggle fog" msgstr "Nebbia sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Minimappa sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Incorporeità sì/no" @@ -2232,7 +2280,7 @@ msgstr "Incorporeità sì/no" msgid "Toggle pitchmove" msgstr "Beccheggio sì/no" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Ingrandimento" @@ -2269,7 +2317,7 @@ msgstr "Vecchia password" msgid "Passwords do not match!" msgstr "Le password non corrispondono!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Uscita" @@ -2282,16 +2330,47 @@ msgstr "Silenziato" msgid "Sound Volume: %d%%" msgstr "Volume suono: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Pulsante Centrale" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Fatto!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Server remoto" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID del joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Nebbia sì/no" @@ -2525,8 +2604,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Supporto 3D.\n" "Attualmente supportati:\n" @@ -2592,10 +2670,6 @@ msgstr "Raggio dei blocchi attivi" msgid "Active object send range" msgstr "Raggio di invio degli oggetti attivi" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Aggiunge particelle quando scavi un nodo." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2627,6 +2701,17 @@ msgstr "Nome amministratore" msgid "Advanced" msgstr "Avanzate" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Usare l'aspetto 3D per le nuvole invece di quello piatto." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3036,15 +3121,14 @@ msgstr "Raggio delle nuvole" msgid "Clouds" msgstr "Nuvole" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Le nuvole sono un effetto sul lato client." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nuvole nel menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Nebbia colorata" @@ -3068,7 +3152,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Elenco di valori separato da virgole che si vuole nascondere dal deposito " "dei contenuti.\n" @@ -3243,6 +3327,14 @@ msgstr "Livello del registro di debug" msgid "Debugging" msgstr "Debugging" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Passo dedicato del server" @@ -3421,18 +3513,10 @@ msgstr "" "I deserti si presentano quando np_biome supera questo valore.\n" "Quando è attivo il parametro 'snowbiomes', viene ignorato." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "De-sincronizza l'animazione del blocco" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opzioni per sviluppatori" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Particelle di scavo" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Rifiutare le password vuote" @@ -3465,6 +3549,14 @@ msgid "Double-tapping the jump key toggles fly mode." msgstr "" "Premendo due volte il tasto di salto si (dis)attiva la modalità di volo." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Scarica le informazioni di debug del generatore della mappa." @@ -3551,9 +3643,10 @@ msgstr "" "simulando il comportamento dell'occhio umano." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Abilità ombre colorate.\n" "Se abilitato nodi traslucidi producono ombre colorate. Questo è costoso." @@ -3648,10 +3741,10 @@ msgstr "" "Per esempio: 0 per nessun ondeggiamento, 1.0 per normale, 2.0 per doppio." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Abilita/Disabilita l'esecuzione di un server IPv6.\n" "Ignorata se si imposta bind_address.\n" @@ -3675,13 +3768,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Attiva l'animazione degli oggetti dell'inventario." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Attiva la cache delle mesh ruotate con facedir." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -4039,10 +4125,6 @@ msgstr "Scala dell'interfaccia grafica" msgid "GUI scaling filter" msgstr "Filtro di scala dell'interfaccia grafica" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtro di scala txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepad" @@ -4313,16 +4395,6 @@ msgstr "" "per\n" "scendere e immergersi." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Se abilitata, la registrazione dell'account sarà separata dall'accesso " -"nell'interfaccia utente.\n" -"Se disabilitata, i nuovi account saranno registrati automaticamente " -"all'accesso." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4348,6 +4420,18 @@ msgstr "" "Se abilitata, i nuovi giocatori non possono accedere senza password o " "cambiare la propria con una vuota." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Se abilitata, la registrazione dell'account sarà separata dall'accesso " +"nell'interfaccia utente.\n" +"Se disabilitata, i nuovi account saranno registrati automaticamente " +"all'accesso." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4402,8 +4486,8 @@ msgid "" "debug.txt is only moved if this setting is positive." msgstr "" "Se la dimensione del file debug.txt supera il numero di Mb indicati in\n" -"questa impostazione quando viene aperto, il file viene rinominato in debug." -"txt.1,\n" +"questa impostazione quando viene aperto, il file viene rinominato in " +"debug.txt.1,\n" "eliminando un eventuale debug.txt.1 più vecchio.\n" "debug.txt viene rinominato solo se c'è questa impostazione." @@ -4478,10 +4562,6 @@ msgstr "" "Intervallo di salvataggio dei cambiamenti importanti nel mondo, fissato in " "secondi." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Intervallo di invio dell'ora del giorno ai client, in secondi." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animazioni degli oggetti dell'inventario" @@ -5222,10 +5302,6 @@ msgstr "" msgid "Maximum users" msgstr "Utenti massimi" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Cache mesh" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Messaggio del giorno" @@ -5260,6 +5336,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Limite minimo di piccole grotte casuali per pezzo di mappa." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "MIP mapping" @@ -5354,9 +5434,10 @@ msgstr "" "- 'floatlands' in v7 (disabilitato per impostazione predefinita)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nome del giocatore.\n" @@ -5903,17 +5984,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6192,16 +6275,6 @@ msgstr "" msgid "Shader path" msgstr "Percorso shader" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shader" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Qualità filtro ombra" @@ -6403,10 +6476,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Diffondi un aggiornamento completo della mappa d'ombra su un certo numero di " "frame.\n" @@ -6794,10 +6866,6 @@ msgstr "" "Ora del giorno in cui è avviato un nuovo mondo, in millesimi di ora " "(0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervallo del tempo di invio" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Velocità del tempo" @@ -6867,6 +6935,11 @@ msgstr "Liquidi opachi" msgid "Transparency Sorting Distance" msgstr "Distanza di Ordinamento della Trasparenza" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Distanza di Ordinamento della Trasparenza" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Rumore degli alberi" @@ -6926,12 +6999,16 @@ msgid "Undersampling" msgstr "Sotto-campionamento" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Il sotto-campionamento è analogo all'uso di una risoluzione schermo " "inferiore,\n" @@ -6961,17 +7038,15 @@ msgstr "Livello Y superiore dei sotterranei." msgid "Upper Y limit of floatlands." msgstr "Livello Y superiore delle terre fluttuanti." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Usare l'aspetto 3D per le nuvole invece di quello piatto." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Usare un'animazione con le nuvole per lo sfondo del menu principale." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Usare il filtraggio anisotropico quando si guardano le textures da " "un'angolazione." @@ -7253,25 +7328,14 @@ msgstr "" "nell'inventario)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Quando gui_scaling_filter_txr2img è Vero, copia quelle immagini\n" -"dall'hardware al software per il ridimensionamento. Quando è Falso,\n" -"ripiega sul vecchio metodo di ridimensionamento, per i driver video che\n" -"non supportano correttamente lo scaricamento delle textures dall'hardware." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7299,12 +7363,6 @@ msgstr "" "predefinita.\n" "Le mod possono comunque impostare uno sfondo." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Se le animazioni delle texture dei nodi dovrebbero essere asincrone per " -"blocco mappa." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7331,9 +7389,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Se annebbiare o meno la fine dell'area visibile." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7535,6 +7593,9 @@ msgstr "Limite parallelo cURL" #~ "Si noti che il campo indirizzo nel menu principale sovrascrive questa " #~ "impostazione." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Aggiunge particelle quando scavi un nodo." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7681,6 +7742,10 @@ msgstr "Limite parallelo cURL" #~ msgid "Clean transparent textures" #~ msgstr "Pulizia delle textures trasparenti" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Le nuvole sono un effetto sul lato client." + #~ msgid "Command key" #~ msgstr "Tasto comando" @@ -7776,9 +7841,15 @@ msgstr "Limite parallelo cURL" #~ msgid "Darkness sharpness" #~ msgstr "Nitidezza dell'oscurità" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Info di debug e grafico profiler nascosti" + #~ msgid "Debug info toggle key" #~ msgstr "Tasto di (dis)attivazione delle informazioni di debug" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Info debug, grafico profiler e struttura a fili nascosti" + #~ msgid "Dec. volume key" #~ msgstr "Tasto dim. volume" @@ -7841,9 +7912,15 @@ msgstr "Limite parallelo cURL" #~ "posizionare le caverne di liquido.\n" #~ "Limite verticale della lava nelle caverne grandi." +#~ msgid "Desynchronize block animation" +#~ msgstr "De-sincronizza l'animazione del blocco" + #~ msgid "Dig key" #~ msgstr "Tasto scava" +#~ msgid "Digging particles" +#~ msgstr "Particelle di scavo" + #~ msgid "Disable anticheat" #~ msgstr "Disattiva anti-trucchi" @@ -7868,6 +7945,10 @@ msgstr "Limite parallelo cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Ombre dinamiche:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Abilitato" + #~ msgid "Enable VBO" #~ msgstr "Abilitare i VBO" @@ -7901,6 +7982,12 @@ msgstr "Limite parallelo cURL" #~ "con i pacchetti texture, o devono essere generate automaticamente.\n" #~ "Necessita l'attivazione degli shader." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Attiva la cache delle mesh ruotate con facedir." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Attiva il filmic tone mapping" @@ -7944,9 +8031,6 @@ msgstr "Limite parallelo cURL" #~ "Opzione sperimentale, potrebbe causare spazi visibili tra i blocchi\n" #~ "quando impostata su numeri maggiori di 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS nel menu di pausa" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -8033,8 +8117,8 @@ msgstr "Limite parallelo cURL" #~ msgid "Full screen BPP" #~ msgstr "BPP dello schermo intero" -#~ msgid "Game" -#~ msgstr "Gioco" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtro di scala txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8198,667 +8282,673 @@ msgstr "Limite parallelo cURL" #~ msgid "Instrumentation" #~ msgstr "Predisposizione" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Intervallo di invio dell'ora del giorno ai client, in secondi." + #~ msgid "Invalid gamespec." #~ msgstr "Requisiti del gioco non validi." #~ msgid "Inventory key" #~ msgstr "Tasto inventario" +#~ msgid "Irrlicht device:" +#~ msgstr "Dispositivo Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tasto salta" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per diminuire il raggio visivo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per abbassare il volume.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scavare.\n" -#~ "Vedi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vedi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per buttare l'oggetto attualmente selezionato.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per aumentare il raggio visivo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per alzare il volume.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per saltare.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per correre in modalità veloce.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per muovere indietro il giocatore.\n" #~ "Disabiliterà anche l'avanzamento automatico, quando attivo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per muovere in avanti il giocatore.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per muovere a sinistra il giocatore.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per muovere a destra il giocatore.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per silenziare il gioco.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per aprire la finestra di chat per inserire comandi.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per aprire la finestra di chat per inserire comandi locali.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per aprire la finestra di chat.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per aprire l'inventario.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per piazzare.\n" -#~ "Vedi http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Vedi http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere l'11° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 12° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 13° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 14° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 15° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 16° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 17° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 18° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 19° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 20° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 21° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 22° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 23° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 24° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 25° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 26° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 27° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 28° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 29° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 30° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 31° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il 32° riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere l'ottavo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il quinto riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il primo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il quarto riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere l'oggetto successivo nella barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il nono riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere l'oggetto precedente nella barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il secondo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il settimo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il sesto riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il decimo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il terzo riquadro della barra di scelta rapida.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per muoversi furtivamente.\n" #~ "Usato anche per scendere, e per immergersi in acqua se aux1_descends è " #~ "disattivato.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per passare tra la telecamera in prima o terza persona.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scattare gli screenshot.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere l'avanzamento automatico.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la modalità cinematic.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la visualizzazione della minimappa.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la modalità veloce.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il volo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la modalità incorporea.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la modalità di inclinazione del movimento. \n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto di scelta dell'aggiornamento della telecamera. Usato solo per lo " #~ "sviluppo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la visualizzazione della chat.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la visualizzazione delle informazioni di debug.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per attivare/disattivare la visualizzazione della nebbia.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per attivare/disattivare la visualizzazione dell'HUD.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la visualizzazione della console grande di chat.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere la visualizzazione del generatore di profili. Usato " #~ "per lo sviluppo.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per scegliere il raggio visivo illimitato.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tasto per usare l'ingrandimento della visuale quando possibile.\n" -#~ "Si veda http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Si veda http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Associamenti tasti. (Se questo menu si incasina, togli roba da minetest." -#~ "conf)" +#~ "Associamenti tasti. (Se questo menu si incasina, togli roba da " +#~ "minetest.conf)" #~ msgid "Large chat console key" #~ msgstr "Tasto console grande di chat" @@ -8929,6 +9019,9 @@ msgstr "Limite parallelo cURL" #~ msgid "Menus" #~ msgstr "Menu" +#~ msgid "Mesh cache" +#~ msgstr "Cache mesh" + #~ msgid "Minimap" #~ msgstr "Minimappa" @@ -9141,6 +9234,9 @@ msgstr "Limite parallelo cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Server / Gioco locale" +#~ msgid "Shaders" +#~ msgstr "Shader" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (sperimentali)" @@ -9158,6 +9254,10 @@ msgstr "Limite parallelo cURL" #~ "le prestazioni su alcune schede video.\n" #~ "Ciò funziona solo col supporto video OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Aggiornamento della telecamera disabilitato" + #~ msgid "Shadow limit" #~ msgstr "Limite dell'ombra" @@ -9191,6 +9291,9 @@ msgstr "Limite parallelo cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Rende fluida la rotazione della telecamera. 0 per disattivare." +#~ msgid "Sound system is disabled" +#~ msgstr "Il sistema audio è disabilitato" + #~ msgid "Special" #~ msgstr "Speciale" @@ -9240,6 +9343,9 @@ msgstr "Limite parallelo cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Questo carattere sarà usato per certe Lingue." +#~ msgid "Time send interval" +#~ msgstr "Intervallo del tempo di invio" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Per abilitare gli shader si deve usare il driver OpenGL." @@ -9367,6 +9473,17 @@ msgstr "Limite parallelo cURL" #~ msgid "Waving water" #~ msgstr "Acqua ondeggiante" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Quando gui_scaling_filter_txr2img è Vero, copia quelle immagini\n" +#~ "dall'hardware al software per il ridimensionamento. Quando è Falso,\n" +#~ "ripiega sul vecchio metodo di ridimensionamento, per i driver video che\n" +#~ "non supportano correttamente lo scaricamento delle textures dall'hardware." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9379,6 +9496,12 @@ msgstr "Limite parallelo cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Se i sotterranei saltuariamente si protendono dal terreno." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Se le animazioni delle texture dei nodi dovrebbero essere asincrone per " +#~ "blocco mappa." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Se permettere ai giocatori di ferirsi e uccidersi a vicenda." diff --git a/po/ja/luanti.po b/po/ja/luanti.po index 03fc99149..93178bbb2 100644 --- a/po/ja/luanti.po +++ b/po/ja/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: freeminer\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-11-04 01:00+0000\n" "Last-Translator: BreadW \n" "Language-Team: Japanese ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "参照" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "編集" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "ディレクトリの選択" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "ファイルの選択" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "適用" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(設定の説明はありません)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2Dノイズ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "キャンセル" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "空隙性" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "オクターブ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "オフセット" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "永続性" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "保存" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "スケール" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed値" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Xの広がり" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Yの広がり" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Zの広がり" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "絶対値" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "既定値" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "緩和する" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(ゲームも自動露出を有効にする必要があります)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(ゲームもブルームを有効にする必要があります)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(ゲームもボリュームライティングを有効にする必要があります)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(システム言語を使用)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "アクセシビリティ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "自動" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "チャット" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "クリア" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "キー割り当て" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "無効" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "有効" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "一般" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "動き" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "見つかりませんでした" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "初期状態に戻す" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "初期値に戻す ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "検索" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "高度な設定を表示" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "技術名称を表示" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "タッチスクリーン" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "ポーズメニューでのFPS" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "クライアントMOD" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "コンテンツ: ゲーム" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "コンテンツ: MOD" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(ゲームは影を有効にする必要があります)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "指定" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "動的な影" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "強め" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "弱め" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "普通" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "とても強く" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "とても弱く" + #: builtin/fstk/ui.lua msgid "" msgstr "<利用できません>" @@ -163,7 +403,6 @@ msgstr "すべて" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "戻る" @@ -199,11 +438,6 @@ msgstr "MOD" msgid "No packages could be retrieved" msgstr "パッケージを取得できませんでした" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "見つかりませんでした" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "更新なし" @@ -248,18 +482,6 @@ msgstr "インストール済み" msgid "Base Game:" msgstr "基盤ゲーム:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "キャンセル" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -381,6 +603,12 @@ msgstr "$1 を $2 としてインストールできません" msgid "Unable to install a $1 as a texture pack" msgstr "$1をテクスチャパックとしてインストールすることができません" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(有効、エラーあり)" @@ -445,12 +673,6 @@ msgstr "任意依存MODなし" msgid "Optional dependencies:" msgstr "任意依存MOD:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "保存" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "ワールド:" @@ -603,11 +825,6 @@ msgstr "川" msgid "Sea level rivers" msgstr "海面の高さの川" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed値" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "バイオーム間の滑らかな移行" @@ -715,9 +932,8 @@ msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"長い間、Luantiは「Minetest " -"Game」と呼ばれるデフォルトのゲームとともに提供してきました。バージョン 5.8.0 " -"以降のLuantiはデフォルトゲームなしで提供します。" +"長い間、Luantiは「Minetest Game」と呼ばれるデフォルトのゲームとともに提供して" +"きました。バージョン 5.8.0 以降のLuantiはデフォルトゲームなしで提供します。" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -751,6 +967,23 @@ msgstr "" "このMODパックは、modpack.conf に明示的な名前が付けられており、ここでの名前変" "更をすべて上書きします。" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "すべて有効化" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "新しいバージョン $1 が利用可能" @@ -779,7 +1012,7 @@ msgstr "しない" msgid "Visit website" msgstr "ウェブサイトを見る" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "設定" @@ -791,223 +1024,6 @@ msgstr "公開サーバー一覧は無効" msgid "Try reenabling public serverlist and check your internet connection." msgstr "インターネット接続を確認し、公開サーバー一覧を再有効化してください。" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "参照" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "編集" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "ディレクトリの選択" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "ファイルの選択" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "適用" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(設定の説明はありません)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2Dノイズ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "空隙性" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "オクターブ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "オフセット" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "永続性" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "スケール" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Xの広がり" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Yの広がり" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Zの広がり" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "絶対値" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "既定値" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "緩和する" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(ゲームも自動露出を有効にする必要があります)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(ゲームもブルームを有効にする必要があります)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(ゲームもボリュームライティングを有効にする必要があります)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(システム言語を使用)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "アクセシビリティ" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "自動" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "チャット" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "クリア" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "キー割り当て" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "無効" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "有効" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "一般" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "動き" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "初期状態に戻す" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "初期値に戻す ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "検索" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "高度な設定を表示" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "技術名称を表示" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "クライアントMOD" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "コンテンツ: ゲーム" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "コンテンツ: MOD" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "有効" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "シェーダーは無効です。" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "推奨されている設定ではありません。" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(ゲームは影を有効にする必要があります)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "指定" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "動的な影" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "強め" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "弱め" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "普通" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "とても強く" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "とても弱く" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "私たちについて" @@ -1028,10 +1044,6 @@ msgstr "開発者" msgid "Core Team" msgstr "コアチーム" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht デバイス:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "ディレクトリを開く" @@ -1140,7 +1152,8 @@ msgstr "Luantiはデフォルトではゲームが付属していません。" msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." -msgstr "Luantiは、多くの異なるゲームを遊ぶことができるゲーム制作プラットフォームです." +msgstr "" +"Luantiは、多くの異なるゲームを遊ぶことができるゲーム制作プラットフォームです." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1178,10 +1191,22 @@ msgstr "ゲームスタート" msgid "You need to install a game before you can create a world." msgstr "ワールドを作る前に、ゲームをインストールする必要があります。" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "お気に入りを削除" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "アドレス" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "クライアント" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "クリエイティブモード" @@ -1195,6 +1220,11 @@ msgstr "ダメージ / PvP" msgid "Favorites" msgstr "お気に入り" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "ゲーム" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "互換性のないサーバ" @@ -1207,10 +1237,28 @@ msgstr "ゲームに参加" msgid "Login" msgstr "ログイン" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "出現するスレッド数" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "専用サーバーステップ" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "応答速度" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "公開サーバー" @@ -1295,23 +1343,6 @@ msgstr "" "\n" "詳細はdebug.txtを確認してください。" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- モード: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- 公開サーバー: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- サーバー名: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "シリアライズエラーが発生しました:" @@ -1321,6 +1352,11 @@ msgstr "シリアライズエラーが発生しました:" msgid "Access denied. Reason: %s" msgstr "アクセスが拒否されました。理由: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "デバッグ情報 表示" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "自動前進 無効" @@ -1341,6 +1377,10 @@ msgstr "現在のブロックにブロック境界を表示" msgid "Block bounds shown for nearby blocks" msgstr "近くのブロックにブロック境界を表示" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "カメラ更新 無効" @@ -1353,10 +1393,6 @@ msgstr "カメラ更新 有効" msgid "Can't show block bounds (disabled by game or mod)" msgstr "ブロック境界線を表示できない (ゲームやMODで無効化されている)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "パスワード変更" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "シネマティックモード 無効" @@ -1385,38 +1421,6 @@ msgstr "接続エラー (タイムアウト?)" msgid "Connection failed for unknown reason" msgstr "未知の理由で接続に失敗しました" -#: src/client/game.cpp -msgid "Continue" -msgstr "再開" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"操作方法:\n" -"メニューなし:\n" -"- スライド: 見回す\n" -"- タップ: 置く/パンチ/使う(基本)\n" -"- ロングタップ: 掘る/使う(基本)\n" -"メニュー/インベントリを開く:\n" -"- ダブルタップ (メニューの外):\n" -" --> 閉じる\n" -"- アイテムをタッチし、スロットをタッチ:\n" -" --> アイテムを移動\n" -"- タッチしてドラッグし、二本目の指でタップ:\n" -" --> スロットにアイテムを1つ置く\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1430,31 +1434,15 @@ msgstr "クライアントを作成中..." msgid "Creating server..." msgstr "サーバーを作成中..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "デバッグ情報、観測記録グラフ 非表示" - #: src/client/game.cpp msgid "Debug info shown" msgstr "デバッグ情報 表示" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "デバッグ情報、観測記録グラフ、ワイヤーフレーム 非表示" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "クライアント作成中にエラー: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "メインメニュー" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "終了" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "高速移動モード 無効" @@ -1498,18 +1486,6 @@ msgstr "霧 有効" msgid "Fog enabled by game or mod" msgstr "霧はゲームやMODによって有効化されている" -#: src/client/game.cpp -msgid "Game info:" -msgstr "ゲーム情報:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "ポーズメニュー" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "ホスティングサーバー" - #: src/client/game.cpp msgid "Item definitions..." msgstr "アイテムを定義中..." @@ -1546,14 +1522,6 @@ msgstr "すり抜けモード有効化 (メモ: 'noclip' 特権がありませ msgid "Node definitions..." msgstr "ノードを定義中..." -#: src/client/game.cpp -msgid "Off" -msgstr "オフ" - -#: src/client/game.cpp -msgid "On" -msgstr "オン" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "ピッチ移動モード 無効" @@ -1566,38 +1534,22 @@ msgstr "ピッチ移動モード 有効" msgid "Profiler graph shown" msgstr "観測記録グラフ 表示" -#: src/client/game.cpp -msgid "Remote server" -msgstr "リモートサーバー" - #: src/client/game.cpp msgid "Resolving address..." msgstr "アドレスを解決中..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "リスポーン" - #: src/client/game.cpp msgid "Shutting down..." msgstr "終了中..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "シングルプレイヤー" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "音量" - #: src/client/game.cpp msgid "Sound muted" msgstr "消音" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "サウンドシステムは無効" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "このビルドではサウンド システムがサポートされていない" @@ -1669,18 +1621,116 @@ msgstr "視野を %d に変更、ゲームやMODで %d までに制限されて msgid "Volume changed to %d%%" msgstr "音量を %d%% に変更" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "シェーダーは有効ですが、このドライバはGLSLをサポートしていません。" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "ワイヤーフレーム 表示" -#: src/client/game.cpp -msgid "You died" -msgstr "死んでしまった" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "ズームはゲームやMODによって無効化されている" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- モード: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- 公開サーバー: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- サーバー名: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "パスワード変更" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "再開" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"操作方法:\n" +"メニューなし:\n" +"- スライド: 見回す\n" +"- タップ: 置く/パンチ/使う(基本)\n" +"- ロングタップ: 掘る/使う(基本)\n" +"メニュー/インベントリを開く:\n" +"- ダブルタップ (メニューの外):\n" +" --> 閉じる\n" +"- アイテムをタッチし、スロットをタッチ:\n" +" --> アイテムを移動\n" +"- タッチしてドラッグし、二本目の指でタップ:\n" +" --> スロットにアイテムを1つ置く\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "メインメニュー" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "終了" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "ゲーム情報:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "ポーズメニュー" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "ホスティングサーバー" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "オフ" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "オン" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "リモートサーバー" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "リスポーン" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "音量" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "死んでしまった" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "チャットはゲームやMODによって無効化されている" @@ -2007,7 +2057,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "「%s」シェーダーをコンパイルできませんでした。" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "シェーダーは有効ですが、このドライバはGLSLをサポートしていません。" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2059,7 +2110,7 @@ msgstr "自動前進" msgid "Automatic jumping" msgstr "自動ジャンプ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2071,7 +2122,7 @@ msgstr "後退" msgid "Block bounds" msgstr "ブロック境界線表示切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "視点変更" @@ -2095,7 +2146,7 @@ msgstr "音量を下げる" msgid "Double tap \"jump\" to toggle fly" msgstr "「ジャンプ」2回で飛行モード切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "落とす" @@ -2111,11 +2162,11 @@ msgstr "視野を拡大" msgid "Inc. volume" msgstr "音量を上げる" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "インベントリ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "ジャンプ" @@ -2147,7 +2198,7 @@ msgstr "次のアイテム" msgid "Prev. item" msgstr "前のアイテム" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "視野の選択" @@ -2159,7 +2210,7 @@ msgstr "右移動" msgid "Screenshot" msgstr "スクリーンショット" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "スニーク" @@ -2167,15 +2218,15 @@ msgstr "スニーク" msgid "Toggle HUD" msgstr "HUD表示切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "チャット表示切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "高速移動モード切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "飛行モード切替" @@ -2183,11 +2234,11 @@ msgstr "飛行モード切替" msgid "Toggle fog" msgstr "霧表示切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "ミニマップ表示切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "すり抜けモード切替" @@ -2195,7 +2246,7 @@ msgstr "すり抜けモード切替" msgid "Toggle pitchmove" msgstr "ピッチ移動モード切替" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "ズーム" @@ -2231,7 +2282,7 @@ msgstr "古いパスワード" msgid "Passwords do not match!" msgstr "パスワードが一致しません!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "閉じる" @@ -2244,15 +2295,46 @@ msgstr "消音" msgid "Sound Volume: %d%%" msgstr "音量: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "中ボタン" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "完了!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "リモートサーバー" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "ジョイスティック" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "オーバーフローメニュー" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "デバッグ切替" @@ -2260,8 +2342,9 @@ msgstr "デバッグ切替" msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." -msgstr "別のクライアントがこの名前で接続されています。 " -"クライアントが予期せず終了した場合はもう一度お試しください。" +msgstr "" +"別のクライアントがこの名前で接続されています。 クライアントが予期せず終了した" +"場合はもう一度お試しください。" #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." @@ -2286,7 +2369,8 @@ msgstr "ja" #: src/network/clientpackethandler.cpp msgid "" "Name is not registered. To create an account on this server, click 'Register'" -msgstr "名前が登録されていません。このサーバーにアカウントを作成するには「登録」をク" +msgstr "" +"名前が登録されていません。このサーバーにアカウントを作成するには「登録」をク" "リック" #: src/network/clientpackethandler.cpp @@ -2312,7 +2396,8 @@ msgstr "サーバーで内部エラーが発生しました。 接続が切断 #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "サーバーはシングルプレイヤーモードで実行されています。 接続できません。" +msgstr "" +"サーバーはシングルプレイヤーモードで実行されています。 接続できません。" #: src/network/clientpackethandler.cpp msgid "Too many users" @@ -2326,8 +2411,9 @@ msgstr "未知の切断理由です。" msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." -msgstr "クライアントはサーバーが予期しないものを送信しました。 " -"再接続するか、クライアントを更新してください。" +msgstr "" +"クライアントはサーバーが予期しないものを送信しました。 再接続するか、クライ" +"アントを更新してください。" #: src/network/clientpackethandler.cpp msgid "" @@ -2464,6 +2550,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "マップチャンクごとのダンジョンの数を決定する3Dノイズ。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2472,8 +2559,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3Dサポート。\n" "現在のサポート:\n" @@ -2537,10 +2623,6 @@ msgstr "アクティブなブロックの範囲" msgid "Active object send range" msgstr "アクティブなオブジェクトの送信範囲" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "ノード掘削時にパーティクルを追加します。" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2569,6 +2651,17 @@ msgstr "管理者名" msgid "Advanced" msgstr "詳細" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "平らではなく立体な雲を使用します。" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "液体が半透明になることを可能にします。" @@ -2970,14 +3063,14 @@ msgstr "雲の半径" msgid "Clouds" msgstr "雲" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "雲はクライアント側の効果です。" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "メニューに雲" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "色つきの霧" @@ -2995,6 +3088,7 @@ msgstr "" "テストのために有用です。 詳細は al_extensions.[h,cpp] を参照してください。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Comma-separated list of flags to hide in the content repository.\n" "\"nonfree\" can be used to hide packages which do not qualify as 'free " @@ -3002,7 +3096,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "コンテンツリポジトリで非表示にするフラグのカンマ区切りリストです。\n" "『nonfree』を使用すると、フリーソフトウェア財団によって定義されている\n" @@ -3168,6 +3262,14 @@ msgstr "デバッグログのレベル" msgid "Debugging" msgstr "デバッグ" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "専用サーバーステップ" @@ -3224,15 +3326,15 @@ msgid "" "strict_protocol_version_checking will effectively override this." msgstr "" "接続を許可する最も古いクライアントを定義します。\n" -"古いクライアントは、" -"新しいサーバーに接続するときにクラッシュしないという意味では\n" +"古いクライアントは、新しいサーバーに接続するときにクラッシュしないという意味" +"では\n" "互換性がありますが、期待するすべての新機能をサポートしていない可能性がありま" "す。\n" -"これにより、strict_protocol_version_checking " -"よりきめ細かい制御が可能になります。\n" +"これにより、strict_protocol_version_checking よりきめ細かい制御が可能になりま" +"す。\n" "Luantiは独自の内部最小値を強制しますが、\n" -"strict_protocol_version_checking " -"を有効にすると、実質的にこれが上書きされます。" +"strict_protocol_version_checking を有効にすると、実質的にこれが上書きされま" +"す。" #: src/settings_translation_file.cpp msgid "Defines areas where trees have apples." @@ -3342,18 +3444,10 @@ msgstr "" "砂漠は np_biome がこの値を超えたときに出現します。\n" "'snowbiomes' フラグを有効にすると、これは無視されます。" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "ブロックのアニメーションの非同期化" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "開発者向けオプション" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "掘削時パーティクル" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "空のパスワードを許可しない" @@ -3385,6 +3479,14 @@ msgstr "「ジャンプ」キー二回押しで飛行モード" msgid "Double-tapping the jump key toggles fly mode." msgstr "ジャンプキー2回押しで飛行モードへ切り替えます。" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "マップジェネレータのデバッグ情報を出力します。" @@ -3467,9 +3569,10 @@ msgstr "" "人間の目の振る舞いをシミュレートします。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "色つきの影を有効にします。\n" "有効にすると半透明ノードでは色つきの影を落とします。これは負荷が大きいです。" @@ -3538,8 +3641,8 @@ msgid "" "textures)\n" "when connecting to the server." msgstr "" -"リモートメディアサーバーの使用を有効にします " -"(サーバーによって提供されている場合)。\n" +"リモートメディアサーバーの使用を有効にします (サーバーによって提供されている" +"場合)。\n" "リモートサーバはサーバーに接続するときにメディア (例えば、テクスチャ) を\n" "ダウンロードするための非常に高速な方法を提供します。" @@ -3552,10 +3655,10 @@ msgstr "" "例: 0 揺れなし; 1.0 標準の揺れ; 2.0 標準の倍の揺れ。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "IPv6サーバーの実行を有効/無効にします。\n" "bind_address が設定されている場合は無視されます。\n" @@ -3577,14 +3680,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "インベントリのアイテムのアニメーションを有効にします。" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"facesir回転メッシュのキャッシュを有効にします。\n" -"これはシェーダーが無効になっている場合にのみ有効です。" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "OpenGL ドライバでデバッグとエラーチェックを有効にします。" @@ -3925,10 +4020,6 @@ msgstr "GUIの拡大縮小" msgid "GUI scaling filter" msgstr "GUI拡大縮小フィルタ" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI拡大縮小フィルタ txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "ゲームパッド" @@ -4192,14 +4283,6 @@ msgstr "" "有効にすると、降りるとき「スニーク」キーの代りに \n" "「Aux1」キーが使用されます。" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"有効にした場合、アカウント登録はログインとは別になります。\n" -"無効にした場合、新しいアカウントはログイン時に自動的に登録されます。" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4225,6 +4308,16 @@ msgstr "" "有効にすると、プレーヤーはパスワードなしで参加したり、空のパスワードに変更す" "ることはできません。" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"有効にした場合、アカウント登録はログインとは別になります。\n" +"無効にした場合、新しいアカウントはログイン時に自動的に登録されます。" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4341,10 +4434,6 @@ msgstr "エンティティの方式を登録するとすぐに計測します。 msgid "Interval of saving important changes in the world, stated in seconds." msgstr "ワールドで重要な変化を保存する間隔を秒単位で定めます。" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "クライアントに時刻を送信する間隔を秒単位で定めます。" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "インベントリのアイテムのアニメーション" @@ -4994,8 +5083,8 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" -"低レベルのネットワーク " -"コードで送信ステップごとに送信されるパケットの最大数です。\n" +"低レベルのネットワーク コードで送信ステップごとに送信されるパケットの最大数で" +"す。\n" "通常、これを変更する必要はありませんが、ビジー状態のサーバーでは、数値を大き" "くするとメリットが得られる場合があります。" @@ -5059,10 +5148,6 @@ msgstr "" msgid "Maximum users" msgstr "最大ユーザー数" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "メッシュキャッシュ" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "その日のメッセージ" @@ -5095,6 +5180,10 @@ msgstr "マップチャンクあたりの大きな洞窟の乱数の最小値。 msgid "Minimum limit of random number of small caves per mapchunk." msgstr "マップチャンクあたりの小さな洞窟の乱数の最小値。" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "ミップマッピング" @@ -5188,9 +5277,10 @@ msgstr "" "- v7の浮遊大陸 (既定では無効)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "プレイヤーの名前です。\n" @@ -5472,7 +5562,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." -msgstr "ブロック境界HUD機能がブロックの近くに設定されている場合に使う半径です。" +msgstr "" +"ブロック境界HUD機能がブロックの近くに設定されている場合に使う半径です。" #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5692,23 +5783,26 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "参照 https://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5790,8 +5884,9 @@ msgstr "" msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." -msgstr "オンラインプレイヤーの名前をサーバー一覧に送信します。無効にすると、プレイヤ" -"ー数のみが表示されます。" +msgstr "" +"オンラインプレイヤーの名前をサーバー一覧に送信します。無効にすると、プレイ" +"ヤー数のみが表示されます。" #: src/settings_translation_file.cpp msgid "Send player names to the server list" @@ -5968,16 +6063,6 @@ msgstr "" msgid "Shader path" msgstr "シェーダーパス" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "シェーダー" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "シェーダーはレンダリングの基本的な部分であり、高度な視覚効果を有効にします。" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "影フィルタの品質" @@ -6104,7 +6189,8 @@ msgstr "滑らかなスクロール" msgid "" "Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " "cinematic mode by using the key set in Controls." -msgstr "シネマティックモードでのカメラの旋回を滑らかにし、0 で無効にします。キー割り" +msgstr "" +"シネマティックモードでのカメラの旋回を滑らかにし、0 で無効にします。キー割り" "当てで設定されたキーを使用してシネマティックモードに切替えます。" #: src/settings_translation_file.cpp @@ -6162,11 +6248,11 @@ msgstr "" "明示的に設定する場合があることに注意してください。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "影の描画の完全な更新を指定されたフレーム数に広げます。\n" "値を大きくすると影の描画が遅延することがあり、\n" @@ -6526,10 +6612,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "新しいワールドが開始される時刻。ミリ時間単位 (0〜23999)。" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "時刻送信間隔" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "時間の速さ" @@ -6548,8 +6630,8 @@ msgid "" "node." msgstr "" "ラグを減らすために、プレーヤーが何かを設置しているときブロック転送は\n" -"遅くなります。ノードを設置または破壊した後にどれくらい遅くなるかを決定します" -"。" +"遅くなります。ノードを設置または破壊した後にどれくらい遅くなるかを決定しま" +"す。" #: src/settings_translation_file.cpp msgid "" @@ -6595,6 +6677,11 @@ msgstr "半透明な液体" msgid "Transparency Sorting Distance" msgstr "透明度の並べ替え距離" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "透明度の並べ替え距離" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "木のノイズ" @@ -6651,12 +6738,16 @@ msgid "Undersampling" msgstr "アンダーサンプリング" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "アンダーサンプリングは低い画面解像度を使用するのと似ていますが、\n" "GUIをそのままにしてゲームのワールドにのみ適用されます。\n" @@ -6683,16 +6774,15 @@ msgstr "ダンジョンのY値の上限。" msgid "Upper Y limit of floatlands." msgstr "浮遊大陸の Y の上限。" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "平らではなく立体な雲を使用します。" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "メインメニューの背景には雲のアニメーションを使用します。" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "ある角度からテクスチャを見るときに異方性フィルタリングを使用します。" #: src/settings_translation_file.cpp @@ -6946,8 +7036,8 @@ msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" -"有効にすると、タッチスクリーンでより使いやすくなるように GUI " -"が最適化されます。\n" +"有効にすると、タッチスクリーンでより使いやすくなるように GUI が最適化されま" +"す。\n" "デフォルトで有効になっているかどうかは、ハードウェアのフォームファクタに依存" "します。" @@ -6963,25 +7053,14 @@ msgstr "" "テクスチャへのレンダリング)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"gui_scaling_filter_txr2img が有効な場合、拡大縮小のためにそれらの\n" -"イメージをハードウェアからソフトウェアにコピーします。 無効な場合、\n" -"ハードウェアからのテクスチャのダウンロードを適切にサポートしていない\n" -"ビデオドライバのときは、古い拡大縮小方式に戻ります。" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7005,12 +7084,6 @@ msgstr "" "ネームタグの背景を既定で表示するかどうかです。\n" "MODで背景を設定することもできます。" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"ノードのテクスチャのアニメーションをマップブロックごとに非同期に\n" -"するかどうかの設定です。" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7037,9 +7110,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "可視領域の端に霧を表示するかどうかの設定です。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7073,8 +7146,8 @@ msgid "" "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"Windowsのみ: コマンドライン ウィンドウをバックグラウンドで使用して Luanti " -"を起動します。\n" +"Windowsのみ: コマンドライン ウィンドウをバックグラウンドで使用して Luanti を" +"起動します。\n" "ファイル debug.txt (デフォルト名) と同じ情報が含まれます。" #: src/settings_translation_file.cpp @@ -7230,6 +7303,9 @@ msgstr "cURL並行処理制限" #~ "ローカルサーバーを起動する際は空白に設定してください。\n" #~ "メインメニューのアドレス欄はこの設定を上書きすることに注意してください。" +#~ msgid "Adds particles when digging a node." +#~ msgstr "ノード掘削時にパーティクルを追加します。" + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7384,6 +7460,9 @@ msgstr "cURL並行処理制限" #~ msgid "Clean transparent textures" #~ msgstr "テクスチャの透過を削除" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "雲はクライアント側の効果です。" + #~ msgid "Command key" #~ msgstr "コマンドキー" @@ -7478,9 +7557,15 @@ msgstr "cURL並行処理制限" #~ msgid "Darkness sharpness" #~ msgstr "暗さの鋭さ" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "デバッグ情報、観測記録グラフ 非表示" + #~ msgid "Debug info toggle key" #~ msgstr "デバッグ情報切り替えキー" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "デバッグ情報、観測記録グラフ、ワイヤーフレーム 非表示" + #~ msgid "Dec. volume key" #~ msgstr "音量を下げるキー" @@ -7543,9 +7628,15 @@ msgstr "cURL並行処理制限" #~ "す。\n" #~ "大きな洞窟内の溶岩のY高さ上限。" +#~ msgid "Desynchronize block animation" +#~ msgstr "ブロックのアニメーションの非同期化" + #~ msgid "Dig key" #~ msgstr "掘削キー" +#~ msgid "Digging particles" +#~ msgstr "掘削時パーティクル" + #~ msgid "Disable anticheat" #~ msgstr "対チート機関無効化" @@ -7574,6 +7665,9 @@ msgstr "cURL並行処理制限" #~ msgid "Dynamic shadows:" #~ msgstr "動的な影:" +#~ msgid "Enable" +#~ msgstr "有効" + #~ msgid "Enable VBO" #~ msgstr "VBOを有効化" @@ -7606,6 +7700,13 @@ msgstr "cURL並行処理制限" #~ "テクスチャパックによって提供されるかまたは自動生成される必要があります。\n" #~ "シェーダーが有効である必要があります。" +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "facesir回転メッシュのキャッシュを有効にします。\n" +#~ "これはシェーダーが無効になっている場合にのみ有効です。" + #~ msgid "Enables filmic tone mapping" #~ msgstr "フィルム調トーンマッピング有効にする" @@ -7655,9 +7756,6 @@ msgstr "cURL並行処理制限" #~ "実験的なオプションで、0 より大きい数値に設定すると、ブロック間に\n" #~ "目に見えるスペースが生じる可能性があります。" -#~ msgid "FPS in pause menu" -#~ msgstr "ポーズメニューでのFPS" - #~ msgid "FSAA" #~ msgstr "フルスクリーンアンチエイリアシング" @@ -7741,8 +7839,8 @@ msgstr "cURL並行処理制限" #~ msgid "Full screen BPP" #~ msgstr "フルスクリーンのBPP" -#~ msgid "Game" -#~ msgstr "ゲーム" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI拡大縮小フィルタ txr2img" #~ msgid "Gamma" #~ msgstr "ガンマ" @@ -7910,659 +8008,665 @@ msgstr "cURL並行処理制限" #~ msgid "Instrumentation" #~ msgstr "計測器" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "クライアントに時刻を送信する間隔を秒単位で定めます。" + #~ msgid "Invalid gamespec." #~ msgstr "無効なゲーム情報です。" #~ msgid "Inventory key" #~ msgstr "インベントリキー" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht デバイス:" + #~ msgid "Jump key" #~ msgstr "ジャンプキー" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "視野を縮小するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "音量を下げるキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "掘削するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "現在選択されているアイテムを落とすキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "視野を拡大するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "音量を上げるキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ジャンプするキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "高速移動モード中に高速移動するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "プレイヤーを後方へ移動するキーです。\n" #~ "自動前進中に押すと自動前進を停止します。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "プレイヤーを前方へ移動するキーです。\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "プレイヤーを左方向へ移動させるキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "プレイヤーを右方向へ移動させるキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ゲームを消音にするキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "コマンドを入力するためのチャットウィンドウを開くキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ローカルコマンドを入力するためのチャットウィンドウを開くキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "チャットウィンドウを開くキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "インベントリを開くキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "設置するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "11番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "12番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "13番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "14番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "15番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "16番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "17番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "18番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "19番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "20番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "21番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "22番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "23番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "24番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "25番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "26番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "27番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "28番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "29番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "30番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "31番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "32番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "8番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "5番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "1番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "4番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ホットバーから次のアイテムを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "9番目のホットバースロットを選択するキーです。\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ホットバーから前のアイテムを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "2番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "7番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "6番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "10番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "3番目のホットバースロットを選択するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "スニークするキーです。\n" #~ "aux1_descends が無効になっている場合は、降りるときや水中を潜るためにも使用" #~ "されます。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "一人称から三人称の間でカメラを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "スクリーンショットを撮るキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "自動前進を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "映画風モードを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ミニマップ表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "高速移動モードを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "飛行モードを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "すり抜けモードを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ピッチ移動モードを切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "カメラ更新を切り替えるキー。開発にのみ使用される\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "チャット表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "デバッグ情報の表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "霧の表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "HUDの表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "大型チャットコンソールの表示を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "観測記録の表示を切り替えるキー。開発に使用されます。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "無制限の視野を切り替えるキー。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ズーム可能なときに使用するキーです。\n" -#~ "参照 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "参照 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8637,6 +8741,9 @@ msgstr "cURL並行処理制限" #~ msgid "Menus" #~ msgstr "メニュー" +#~ msgid "Mesh cache" +#~ msgstr "メッシュキャッシュ" + #~ msgid "Minimap" #~ msgstr "ミニマップ" @@ -8853,6 +8960,9 @@ msgstr "cURL並行処理制限" #~ "す。\n" #~ "最小値0.001秒、最大値0.2秒" +#~ msgid "Shaders" +#~ msgstr "シェーダー" + #~ msgid "Shaders (experimental)" #~ msgstr "シェーダー (実験的)" @@ -8867,6 +8977,16 @@ msgstr "cURL並行処理制限" #~ "シェーダーにより高度な視覚効果が可能になり、一部のビデオ カードの\n" #~ "パフォーマンスが向上する場合があります。" +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "シェーダーはレンダリングの基本的な部分であり、高度な視覚効果を有効にしま" +#~ "す。" + +#~ msgid "Shaders are disabled." +#~ msgstr "シェーダーは無効です。" + #~ msgid "Shadow limit" #~ msgstr "影の制限" @@ -8898,6 +9018,9 @@ msgstr "cURL並行処理制限" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "カメラの回転を滑らかにします。無効にする場合は 0。" +#~ msgid "Sound system is disabled" +#~ msgstr "サウンドシステムは無効" + #~ msgid "Special" #~ msgstr "スペシャル" @@ -8945,6 +9068,12 @@ msgstr "cURL並行処理制限" #~ msgid "This font will be used for certain languages." #~ msgstr "このフォントは特定の言語で使用されます。" +#~ msgid "This is not a recommended configuration." +#~ msgstr "推奨されている設定ではありません。" + +#~ msgid "Time send interval" +#~ msgstr "時刻送信間隔" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "" #~ "シェーダーを有効にするにはOpenGLのドライバを使用する必要があります。" @@ -9064,6 +9193,17 @@ msgstr "cURL並行処理制限" #~ msgid "Waving water" #~ msgstr "揺れる水" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "gui_scaling_filter_txr2img が有効な場合、拡大縮小のためにそれらの\n" +#~ "イメージをハードウェアからソフトウェアにコピーします。 無効な場合、\n" +#~ "ハードウェアからのテクスチャのダウンロードを適切にサポートしていない\n" +#~ "ビデオドライバのときは、古い拡大縮小方式に戻ります。" + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9077,6 +9217,12 @@ msgstr "cURL並行処理制限" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "ダンジョンが時折地形から突出するかどうか。" +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "ノードのテクスチャのアニメーションをマップブロックごとに非同期に\n" +#~ "するかどうかの設定です。" + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "他のプレイヤーを殺すことができるかどうかの設定です。" diff --git a/po/jbo/luanti.po b/po/jbo/luanti.po index 5beba681c..f47e8077c 100644 --- a/po/jbo/luanti.po +++ b/po/jbo/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Lojban (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-07-10 01:09+0000\n" "Last-Translator: Qimar \n" "Language-Team: Lojban ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "binxo" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "cuxna fi lu'i le datnyveimei" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "cuxna fi lu'i le datnyvei" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "to'i no da ve skicu le te tcimi'e toi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "je'enai" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "rejgau" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "cunso namcu" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "tavla" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "ganda" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "katci" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr ".i no da ckaji lo se sisku" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "xruti fi le zmiselcu'a" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "sisku" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr ".i ko cuxna fi lu'i le munje" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "kakne le ka se samtcise'a" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "kakne le ka se samtcise'a" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "steci" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "cenba ctino" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "mutce" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "milxe" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "no'e mutce" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "tcetce" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "mlimli" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +408,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "xruti" @@ -202,11 +443,6 @@ msgstr "se samtcise'a" msgid "No packages could be retrieved" msgstr ".i na kakne le ka kibycpa pa bakfu" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr ".i no da ckaji lo se sisku" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "noda cnino" @@ -254,18 +490,6 @@ msgstr "ba'o se ci'erse'a" msgid "Base Game:" msgstr "cfari fa lo nu kelci" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "je'enai" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -398,6 +622,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -462,12 +692,6 @@ msgstr "noda se nitcu" msgid "Optional dependencies:" msgstr "no'e se nitcu" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "rejgau" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "munje" @@ -619,11 +843,6 @@ msgstr "rirxe" msgid "Sea level rivers" msgstr "xamsi nilga'u rirxe" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "cunso namcu" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -761,6 +980,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "katci roda" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -785,7 +1021,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "te tcimi'e" @@ -799,229 +1035,6 @@ msgstr "" ".i ko troci lo nu za'u re'u samymo'i lo liste be lo'i samse'u .i ko cipcta " "lo do te samjo'e" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "binxo" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "cuxna fi lu'i le datnyveimei" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "cuxna fi lu'i le datnyvei" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "to'i no da ve skicu le te tcimi'e toi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "tavla" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "ganda" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "katci" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "xruti fi le zmiselcu'a" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "sisku" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr ".i ko cuxna fi lu'i le munje" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "kakne le ka se samtcise'a" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "kakne le ka se samtcise'a" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "katci" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "na sutra klama kakne" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "steci" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "cenba ctino" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "mutce" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "milxe" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "no'e mutce" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "tcetce" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "mlimli" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1042,10 +1055,6 @@ msgstr "liste lo'i ralju zbapla" msgid "Core Team" msgstr "liste lo'i ralju bende" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1197,10 +1206,22 @@ msgstr "co'a kelci" msgid "You need to install a game before you can create a world." msgstr "sarcu fa lonu cpacu lo se kelci vau lonu samtcise'a" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "co'u cmima lu'i ro nelci se tcita" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "judri" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "lo samtciselse'u" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "finti se kelci" @@ -1215,6 +1236,11 @@ msgstr "cumki fa lonu simxu lonu xrani" msgid "Favorites" msgstr "nelci se tcita" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "se kelci" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1227,10 +1253,26 @@ msgstr "co'a kansa fi le ka kelci" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr ".pin. temci" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1326,24 +1368,6 @@ msgstr "" "\n" ".i sarcu fa le nu do cipcta la'o zoi. debug.txt .zoi kei tu'a le tcila" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- gubni: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -#, fuzzy -msgid "- PvP: " -msgstr "- kakne le ka simxu le ka xrani: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- cmene le samtcise'u: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1354,6 +1378,10 @@ msgstr ".i da nabmi" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1376,6 +1404,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1388,10 +1420,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "basti fi le ka lerpoijaspu" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1425,26 +1453,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "ranji" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1458,31 +1466,15 @@ msgstr ".i ca'o cupra le samtciselse'u" msgid "Creating server..." msgstr ".i ca'o cupra le samtcise'u" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr ".i ca'o cupra le samtciselse'u" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "sisti tu'a le se kelci" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "sisti tu'a le samtci" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "na sutra klama kakne" @@ -1520,18 +1512,6 @@ msgstr "jarco bumru" msgid "Fog enabled by game or mod" msgstr "na curmi lonu jbiji'u" -#: src/client/game.cpp -msgid "Game info:" -msgstr ".i datni le se kelci" - -#: src/client/game.cpp -msgid "Game paused" -msgstr ".i ca'o denpa fo le nu kelci" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr ".i le samtci pe do cu samtcise'u" - #: src/client/game.cpp #, fuzzy msgid "Item definitions..." @@ -1571,14 +1551,6 @@ msgstr "na pagre be roda na'e kakne ki'u lonu na curmi" msgid "Node definitions..." msgstr ".i ca'o samymo'i tu'a lo me la'o gy.node.gy." -#: src/client/game.cpp -msgid "Off" -msgstr "ganda" - -#: src/client/game.cpp -msgid "On" -msgstr "katci" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1591,38 +1563,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr ".i da poi na du le samtci pe do cu samtcise'u" - #: src/client/game.cpp msgid "Resolving address..." msgstr ".i ca'o sisku le ka se judri da kau" -#: src/client/game.cpp -msgid "Respawn" -msgstr "tolcanci" - #: src/client/game.cpp msgid "Shutting down..." msgstr ".i ca'o sisti" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "nonselkansa" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "ni sance" - #: src/client/game.cpp msgid "Sound muted" msgstr "smaji" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1694,18 +1650,104 @@ msgstr "" msgid "Volume changed to %d%%" msgstr ".i fe lo ni sance cu cenba fi li %d ce'i" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "ca'o jarco lo munje greku" -#: src/client/game.cpp -msgid "You died" -msgstr ".i do morsi" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "na curmi lonu jbiji'u" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- gubni: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- PvP: " +msgstr "- kakne le ka simxu le ka xrani: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- cmene le samtcise'u: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "basti fi le ka lerpoijaspu" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "ranji" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "sisti tu'a le se kelci" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "sisti tu'a le samtci" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr ".i datni le se kelci" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr ".i ca'o denpa fo le nu kelci" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr ".i le samtci pe do cu samtcise'u" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "ganda" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "katci" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr ".i da poi na du le samtci pe do cu samtcise'u" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "tolcanci" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "ni sance" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr ".i do morsi" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "na curmi lonu tavla" @@ -2038,7 +2080,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr ".i da nabmi fi le nu kibycpa la'o zoi. $1 .zoi" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2089,7 +2131,7 @@ msgstr "za'i ca'u muvdu" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2101,7 +2143,7 @@ msgstr "ti'a muvdu" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "gafygau lo lerpoijaspu" @@ -2126,7 +2168,7 @@ msgstr "jdikygau lo ni sance" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "falcru" @@ -2142,11 +2184,11 @@ msgstr "" msgid "Inc. volume" msgstr "zengau lo ni sance" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "sorcu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "plipe" @@ -2179,7 +2221,7 @@ msgstr "se lamli'e fi lu'i le dacti" msgid "Prev. item" msgstr "lamli'e fi lu'i le dacti" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "cuxna fi lu'i le se kuspe" @@ -2191,7 +2233,7 @@ msgstr "ri'u muvdu" msgid "Screenshot" msgstr "vidnyxra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "masno cadzu" @@ -2200,17 +2242,17 @@ msgstr "masno cadzu" msgid "Toggle HUD" msgstr "mu'e co'a jonai mo'u vofli" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "mu'e co'a jonai mo'u sutra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle fast" msgstr "mu'e co'a jonai mo'u sutra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle fly" msgstr "mu'e co'a jonai mo'u vofli" @@ -2220,12 +2262,12 @@ msgstr "mu'e co'a jonai mo'u vofli" msgid "Toggle fog" msgstr "mu'e co'a jonai mo'u vofli" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "mu'e co'a jonai mo'u sutra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2234,7 +2276,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "mu'e co'a jonai mo'u sutra" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "jbiji'u" @@ -2274,7 +2316,7 @@ msgstr "lo slabu lerpoijaspu" msgid "Passwords do not match!" msgstr ".i lu'i le re lerpoijaspu na simxu le ka mintu" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "sisti" @@ -2288,15 +2330,46 @@ msgstr "ko da'ergau le batke" msgid "Sound Volume: %d%%" msgstr "lo ni sance " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "midju sma'acu bo tekla" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr ".i mulno" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr ".i da poi na du le samtci pe do cu samtcise'u" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "mu'e co'a jonai mo'u vofli" @@ -2496,8 +2569,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2551,10 +2623,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2578,6 +2646,16 @@ msgstr "cmene le munje" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2953,15 +3031,15 @@ msgstr "" msgid "Clouds" msgstr "dilnu" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Clouds in menu" msgstr "lo ralju" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "le bumgapci cu skari" @@ -2985,7 +3063,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3123,6 +3201,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3274,19 +3360,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "datni" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "kakpa kantu" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3314,6 +3392,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3389,8 +3475,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3463,8 +3549,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3479,12 +3564,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3787,10 +3866,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4016,12 +4091,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4040,6 +4109,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4134,10 +4210,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4755,10 +4827,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4791,6 +4859,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "lo puvrmipmepi" @@ -4880,7 +4952,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5325,17 +5397,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5534,16 +5608,6 @@ msgstr "" msgid "Shader path" msgstr "judri le ti'orkemsamtci" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "ti'orkemsamtci" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5709,10 +5773,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5991,10 +6054,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6055,6 +6114,10 @@ msgstr ".i ca'o samymo'i lo me la'o gy.node.gy." msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6106,7 +6169,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6129,16 +6195,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6382,20 +6446,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6406,10 +6462,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6432,8 +6484,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6634,6 +6685,9 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "za'i ri'u muvdu" +#~ msgid "Digging particles" +#~ msgstr "kakpa kantu" + #, fuzzy #~ msgid "Disable anticheat" #~ msgstr "lo kantu" @@ -6649,6 +6703,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr ".i ca'o kibycpa la'o zoi. $1 .zoi je cu samtcise'a ri .i ko denpa" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "katci" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "selpli" @@ -6661,9 +6719,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "za'i ca'u muvdu" -#~ msgid "Game" -#~ msgstr "se kelci" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "te tcimi'e" @@ -6762,10 +6817,17 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "pa kelci" +#~ msgid "Shaders" +#~ msgstr "ti'orkemsamtci" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "ti'orkemsamtci to na kakne toi" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "na sutra klama kakne" + #, fuzzy #~ msgid "Simple Leaves" #~ msgstr "lo sampu pezli" diff --git a/po/jv/luanti.po b/po/jv/luanti.po index 6447f5806..e4643702a 100644 --- a/po/jv/luanti.po +++ b/po/jv/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-11-17 00:07+0000\n" "Last-Translator: Muhammad Rifqi Priyo Susanto " "\n" @@ -81,6 +81,245 @@ msgstr "" msgid "[all | ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Jlajah" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Besut" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Pilih direktori" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Pilih berkas" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Atur" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Batal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Simpen" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Ngagem basa sistem)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Dipunpejah" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "dipunurupaken" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Umum" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Tanpa asil" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Pados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Konten: Dolanan" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Konten: Mod" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Inggil" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Andhap" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +404,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -201,11 +439,6 @@ msgstr "Mod" msgid "No packages could be retrieved" msgstr "Boten wonten paket ingkang saget dipundhut" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Tanpa asil" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Tanpa pangenggalan" @@ -251,18 +484,6 @@ msgstr "Sampung dipunpasang" msgid "Base Game:" msgstr "Dolanan Dhasar:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Batal" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -387,6 +608,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Dipunurupaken, gadhah salah)" @@ -449,12 +676,6 @@ msgstr "Tanpa dependensi manasuka" msgid "Optional dependencies:" msgstr "Dependensi manasuka:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Simpen" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Jagad:" @@ -605,11 +826,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -745,6 +961,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Urupaken sedaya" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -769,7 +1002,7 @@ msgstr "Boten Nate" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Pangaturan" @@ -781,225 +1014,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Jlajah" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Besut" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Pilih direktori" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Pilih berkas" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Atur" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Ngagem basa sistem)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Dipunpejah" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "dipunurupaken" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Umum" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Pados" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Konten: Dolanan" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Konten: Mod" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "dipunurupaken" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Inggil" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Andhap" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Bab Kami" @@ -1020,10 +1034,6 @@ msgstr "Pangembang Inti" msgid "Core Team" msgstr "Golongan Inti" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1168,10 +1178,21 @@ msgstr "Wiwit Dolanan" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Busek kasenengan" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Alamat" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Cara kreatip" @@ -1185,6 +1206,11 @@ msgstr "Karisakan/PvP" msgid "Favorites" msgstr "Kasenengan" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Dolanan" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Ladosan Boten Cocog" @@ -1197,10 +1223,26 @@ msgstr "Melu Dolanan" msgid "Login" msgstr "Mlebet Log" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Ladosan Publik" @@ -1285,23 +1327,6 @@ msgstr "" "\n" "Priksa debug.txt kagem peprincen." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1311,6 +1336,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1331,6 +1360,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1343,10 +1376,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Gantos Tembung Sandi" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1375,26 +1404,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Nerusaken" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1408,31 +1417,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Menu Utama" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Tutup Aplikasi" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1469,18 +1462,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1517,14 +1498,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Pejah" - -#: src/client/game.cpp -msgid "On" -msgstr "Urup" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1537,38 +1510,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Bangkit Malilh" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Mejahi..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Pandolan Tunggil" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume Swanten" - #: src/client/game.cpp msgid "Sound muted" msgstr "Swanten mbisu" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1640,18 +1597,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volume dipungantos dados %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Panjenengan pejah" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Gantos Tembung Sandi" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Nerusaken" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Menu Utama" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Tutup Aplikasi" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Pejah" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Urup" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Bangkit Malilh" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume Swanten" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Panjenengan pejah" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1978,7 +2020,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2026,7 +2068,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2038,7 +2080,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2062,7 +2104,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2078,11 +2120,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Lumpat" @@ -2114,7 +2156,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2126,7 +2168,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2134,15 +2176,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2150,11 +2192,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2162,7 +2204,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2198,7 +2240,7 @@ msgstr "Sandi Dangu" msgid "Passwords do not match!" msgstr "Sandi boten cocog!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Medal" @@ -2211,15 +2253,44 @@ msgstr "Mbisu" msgid "Sound Volume: %d%%" msgstr "Volume Swanten: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Rampung!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2419,8 +2490,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2473,10 +2543,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2499,6 +2565,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2866,11 +2942,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2895,7 +2971,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3030,6 +3106,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3181,18 +3265,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3220,6 +3296,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3294,8 +3378,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3368,8 +3452,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3384,12 +3467,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3691,10 +3768,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3918,12 +3991,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3942,6 +4009,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4036,10 +4110,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4654,10 +4724,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4690,6 +4756,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4779,7 +4849,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5219,17 +5289,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5422,16 +5494,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5592,10 +5654,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5874,10 +5935,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5936,6 +5993,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5986,7 +6047,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6009,16 +6073,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6255,20 +6317,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6279,10 +6333,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6305,8 +6355,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6433,6 +6482,10 @@ msgstr "" #~ msgid "Change keys" #~ msgstr "Gantos tombol" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "dipunurupaken" + #~ msgid "Uninstall Package" #~ msgstr "Copot Paket" diff --git a/po/kk/luanti.po b/po/kk/luanti.po index 5cdc9e82b..b6015b7e7 100644 --- a/po/kk/luanti.po +++ b/po/kk/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Kazakh (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-10-06 05:16+0000\n" "Last-Translator: Soupborshfe5e4d4ba7c349aa \n" "Language-Team: Kazakh ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Болдырмау" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Сақтау" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "қосылған" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Іздеу" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -159,7 +398,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -195,11 +433,6 @@ msgstr "Модтар" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -245,18 +478,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Болдырмау" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -380,6 +601,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -442,12 +669,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Сақтау" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "" @@ -598,11 +819,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -739,6 +955,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -763,7 +995,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Баптаулар" @@ -775,225 +1007,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "қосылған" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Іздеу" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "қосылған" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1014,10 +1027,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1163,10 +1172,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1180,6 +1199,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Ойын" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1192,10 +1216,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1278,23 +1318,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1305,6 +1328,10 @@ msgstr "Қате кездесті:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1325,6 +1352,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1337,10 +1368,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Құпия сөзді өзгерту" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1369,26 +1396,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Жалғастыру" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1402,31 +1409,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Мәзірге шығу" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Ойыннан шығу" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1463,18 +1454,6 @@ msgstr "Тұман қосылды" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1512,14 +1491,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1532,38 +1503,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Тірілу" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Бір ойыншы" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1635,18 +1590,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Сіз өліп қалдыңыз" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Құпия сөзді өзгерту" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Жалғастыру" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Мәзірге шығу" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Ойыннан шығу" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Тірілу" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Сіз өліп қалдыңыз" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1975,7 +2015,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2023,7 +2063,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2035,7 +2075,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2059,7 +2099,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2075,11 +2115,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2111,7 +2151,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2123,7 +2163,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2131,15 +2171,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2147,11 +2187,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2159,7 +2199,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2195,7 +2235,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2208,15 +2248,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2413,8 +2481,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2467,10 +2534,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2493,6 +2556,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2862,11 +2935,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2891,7 +2964,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3026,6 +3099,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3177,18 +3258,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3216,6 +3289,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3290,8 +3371,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3364,8 +3445,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3380,12 +3460,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3687,10 +3761,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3917,12 +3987,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3941,6 +4005,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4035,10 +4106,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4653,10 +4720,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4689,6 +4752,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4778,7 +4845,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5218,17 +5285,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5421,16 +5490,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5592,10 +5651,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5874,10 +5932,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5936,6 +5990,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5986,7 +6044,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6009,16 +6070,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6255,20 +6314,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6279,10 +6330,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6305,8 +6352,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6431,12 +6477,13 @@ msgstr "" #~ msgid "Change keys" #~ msgstr "Құпия сөзді өзгерту" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "қосылған" + #~ msgid "FreeType fonts" #~ msgstr "FreeType қаріптері" -#~ msgid "Game" -#~ msgstr "Ойын" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Баптаулар" diff --git a/po/kn/luanti.po b/po/kn/luanti.po index cad1ad8f0..27708ed4b 100644 --- a/po/kn/luanti.po +++ b/po/kn/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Kannada (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2021-01-02 07:29+0000\n" "Last-Translator: Tejaswi Hegde \n" "Language-Team: Kannada ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ರದ್ದುಮಾಡಿ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "ಸೇವ್" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +#, fuzzy +msgid "Seed" +msgstr "ಬೀಜ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "ಫಲಿತಾಂಶಗಳಿಲ್ಲ" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "ಹುಡುಕು" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -160,7 +400,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "ಹಿಂದೆ" @@ -197,11 +436,6 @@ msgstr "ಮಾಡ್‍ಗಳು" msgid "No packages could be retrieved" msgstr "ಯಾವುದೇ ಪ್ಯಾಕೇಜ್ ಗಳನ್ನು ಪಡೆಯಲಾಗಲಿಲ್ಲ" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "ಫಲಿತಾಂಶಗಳಿಲ್ಲ" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -248,18 +482,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "ರದ್ದುಮಾಡಿ" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -386,6 +608,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -450,12 +678,6 @@ msgstr "ಯಾವುದೇ ಐಚ್ಛಿಕ ಅವಲಂಬನೆಗಳಿಲ msgid "Optional dependencies:" msgstr "ಐಚ್ಛಿಕ ಅವಲಂಬನೆಗಳು:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "ಸೇವ್" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "ಪ್ರಪಂಚ:" @@ -620,12 +842,6 @@ msgstr "ನದಿಗಳು" msgid "Sea level rivers" msgstr "ಸಮುದ್ರ ಮಟ್ಟದಲ್ಲಿರುವ ನದಿಗಳು" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Seed" -msgstr "ಬೀಜ" - #: builtin/mainmenu/dlg_create_world.lua #, fuzzy msgid "Smooth transition between biomes" @@ -762,6 +978,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "ಎಲ್ಲವನ್ನೂ ಸಕ್ರಿಯಗೊಳಿಸಿ" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -786,7 +1019,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -798,225 +1031,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "ಪಬ್ಲಿಕ್ ಸರ್ವರ್ಲಿಸ್ಟ್ಅನ್ನು ರಿಎನೆಬಲ್ ಮಾಡಿ ಮತ್ತು ಅಂತರ್ಜಾಲ ಸಂಪರ್ಕ ಪರಿಶೀಲಿಸಿ." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "ಹುಡುಕು" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1037,10 +1051,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1186,10 +1196,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1203,6 +1223,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "ಆಟ" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1215,10 +1240,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1302,23 +1343,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1329,6 +1353,10 @@ msgstr "ದೋಷ ವೊಂದು ಸಂಭವಿಸಿದೆ:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1349,6 +1377,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1361,10 +1393,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1393,26 +1421,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1426,31 +1434,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1487,18 +1479,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1535,14 +1515,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1555,38 +1527,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "ಮತ್ತೆ ಹುಟ್ಟು" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1658,18 +1614,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "ನೀನು ಸತ್ತುಹೋದೆ" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "ಮತ್ತೆ ಹುಟ್ಟು" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "ನೀನು ಸತ್ತುಹೋದೆ" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1996,7 +2037,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "$1 ಡೌನ್ಲೋಡ್ ಮಾಡಲು ಆಗಿಲ್ಲ" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2046,7 +2087,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2058,7 +2099,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2082,7 +2123,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2098,11 +2139,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2134,7 +2175,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2146,7 +2187,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2154,15 +2195,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2170,11 +2211,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2182,7 +2223,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2219,7 +2260,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2232,15 +2273,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2435,8 +2504,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2489,10 +2557,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2515,6 +2579,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2883,11 +2957,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2912,7 +2986,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3047,6 +3121,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3198,19 +3280,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "ಅಲಂಕಾರಗಳು" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3238,6 +3312,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3313,8 +3395,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3387,8 +3469,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3403,12 +3484,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3710,10 +3785,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3938,12 +4009,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3962,6 +4027,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4056,10 +4128,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4674,10 +4742,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4710,6 +4774,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4799,7 +4867,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5239,17 +5307,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5443,16 +5513,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5613,10 +5673,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5895,10 +5954,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5957,6 +6012,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6007,7 +6066,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6030,16 +6092,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6276,20 +6336,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6300,10 +6352,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6326,8 +6374,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6457,8 +6504,9 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "$1 ಡೌನ್ಲೋಡ್ ಮತ್ತು ಇನ್ಸ್ಟಾಲ್ ಮಾಡಲಾಗುತ್ತಿದೆ, ದಯವಿಟ್ಟು ನಿರೀಕ್ಷಿಸಿ..." -#~ msgid "Game" -#~ msgstr "ಆಟ" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ" #~ msgid "Ok" #~ msgstr "ಸರಿ" diff --git a/po/ko/luanti.po b/po/ko/luanti.po index eb0caa62f..a29adc07b 100644 --- a/po/ko/luanti.po +++ b/po/ko/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: Korean (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-10 21:04+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-02 12:01+0000\n" "Last-Translator: alasa ala \n" "Language-Team: Korean \n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -81,6 +81,253 @@ msgstr "" msgid "[all | ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "열기" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "수정" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "경로를 선택하세요" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "파일 선택" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "선택" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(설정에 대한 설명이 없습니다)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2차원 소음" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "취소" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "빈약도" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "옥타브" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "오프셋" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "플레이어 전송 거리" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "저장" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "스케일" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "시드" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X 분산" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y 분산" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z 분산" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "절댓값" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "기본값" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "맵 부드러움" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "채팅" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "지우기" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "컨트롤" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "비활성화됨" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "활성화됨" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "빠른 이동" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "결과 없음" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "기본값 복원" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "찾기" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "기술적 이름 보기" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "터치임계값 (픽셀)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "일시정지 메뉴에서 FPS" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "월드 선택:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "컨텐츠" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "컨텐츠" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Dynamic shadows" +msgstr "글꼴 그림자" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -170,7 +417,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "뒤로" @@ -207,11 +453,6 @@ msgstr "모드" msgid "No packages could be retrieved" msgstr "검색할 수 있는 패키지가 없습니다" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "결과 없음" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "업데이트 없음" @@ -258,18 +499,6 @@ msgstr "이미 설치됨" msgid "Base Game:" msgstr "호스트 게임" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "취소" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -400,6 +629,12 @@ msgstr "$1 모드를 설치할 수 없습니다" msgid "Unable to install a $1 as a texture pack" msgstr "$1을 텍스쳐팩으로 설치할 수 없습니다" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -464,12 +699,6 @@ msgstr "선택되지 않은 종속성" msgid "Optional dependencies:" msgstr "종속성 선택:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "저장" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "세계:" @@ -621,11 +850,6 @@ msgstr "강" msgid "Sea level rivers" msgstr "해수면 강" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "시드" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "생물 군계 간 부드러운 전환" @@ -768,6 +992,23 @@ msgstr "" "이 모드팩에는 modpack.conf에 명시적인 이름이 부여되어 있으며, 이는 여기서 이" "름을 바꾸는 것을 적용하지 않습니다." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "모두 활성화" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -792,7 +1033,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "설정" @@ -805,233 +1046,6 @@ msgstr "클라이언트 스크립트가 비활성화됨" msgid "Try reenabling public serverlist and check your internet connection." msgstr "인터넷 연결을 확인한 후 서버 목록을 새로 고쳐보세요." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "열기" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "수정" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "경로를 선택하세요" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "파일 선택" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "선택" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(설정에 대한 설명이 없습니다)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2차원 소음" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "빈약도" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "옥타브" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "오프셋" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "플레이어 전송 거리" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "스케일" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X 분산" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y 분산" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z 분산" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "절댓값" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "기본값" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "맵 부드러움" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "채팅" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "지우기" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "컨트롤" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "비활성화됨" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "활성화됨" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "빠른 이동" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "기본값 복원" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "찾기" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "기술적 이름 보기" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "월드 선택:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "컨텐츠" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "컨텐츠" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "활성화됨" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "카메라 업데이트 비활성화" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Dynamic shadows" -msgstr "글꼴 그림자" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1053,10 +1067,6 @@ msgstr "코어 개발자" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1208,11 +1218,23 @@ msgstr "게임 시작" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "원격 포트" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- 주소: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "클라이언트" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "크리에이티브 모드" @@ -1228,6 +1250,11 @@ msgstr "데미지" msgid "Favorites" msgstr "즐겨찾기" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "게임" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1240,10 +1267,27 @@ msgstr "게임 참가" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "전용 서버 단계" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "핑" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1333,23 +1377,6 @@ msgstr "" "\n" "자세한 내용은 debug.txt을 확인 합니다." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- 모드: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- 공개: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Player vs Player: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- 서버 이름: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1360,6 +1387,11 @@ msgstr "오류가 발생했습니다:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "디버그 정보 표시" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "자동 전진 비활성화" @@ -1380,6 +1412,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "카메라 업데이트 비활성화" @@ -1393,10 +1429,6 @@ msgstr "카메라 업데이트 활성화" msgid "Can't show block bounds (disabled by game or mod)" msgstr "게임 또는 모드에 의해 현재 확대 비활성화" -#: src/client/game.cpp -msgid "Change Password" -msgstr "비밀번호 변경" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "시네마틱 모드 비활성화" @@ -1426,39 +1458,6 @@ msgstr "연결 오류 (시간초과)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "계속" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"기본 컨트롤: \n" -"메뉴 표시 없을 때:\n" -"- 단일 탭: 버튼 활성화\n" -"- 더블 탭: 배치/사용\n" -"- 드래그: 둘러보기\n" -" 메뉴/인벤토리:\n" -"- 더블 탭 (외부):\n" -" -->닫기\n" -"- 무더기(stack) 터치, 슬롯 터치: \n" -" --> 무더기(stack) 이동 \n" -"- 터치 및 드래그, 다른 손가락으로 탭\n" -" --> 슬롯에 한개의 아이템 배치\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1472,31 +1471,15 @@ msgstr "클라이언트 만드는 중..." msgid "Creating server..." msgstr "서버 만드는 중..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "디버그 정보 및 프로파일러 그래프 숨기기" - #: src/client/game.cpp msgid "Debug info shown" msgstr "디버그 정보 표시" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "디버그 정보, 프로파일러 그래프 , 선 표현 숨김" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "클라이언트 만드는 중..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "메뉴로 나가기" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "게임 종료" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "고속 모드 비활성화" @@ -1534,18 +1517,6 @@ msgstr "안개 활성화" msgid "Fog enabled by game or mod" msgstr "게임 또는 모드에 의해 현재 확대 비활성화" -#: src/client/game.cpp -msgid "Game info:" -msgstr "게임 정보:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "게임 일시정지" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "호스팅 서버" - #: src/client/game.cpp msgid "Item definitions..." msgstr "아이템 정의중..." @@ -1583,14 +1554,6 @@ msgstr "Noclip 모드 활성화 (참고 : 'noclip'에 대한 권한 없음)" msgid "Node definitions..." msgstr "Node 정의중..." -#: src/client/game.cpp -msgid "Off" -msgstr "끄기" - -#: src/client/game.cpp -msgid "On" -msgstr "켜기" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "피치 이동 모드 비활성화" @@ -1603,38 +1566,22 @@ msgstr "피치 이동 모드 활성화" msgid "Profiler graph shown" msgstr "프로파일러 그래프 보이기" -#: src/client/game.cpp -msgid "Remote server" -msgstr "원격 서버" - #: src/client/game.cpp msgid "Resolving address..." msgstr "주소 분석중..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "리스폰" - #: src/client/game.cpp msgid "Shutting down..." msgstr "서버가 닫혔습니다..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "싱글 플레이어" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "볼륨 조절" - #: src/client/game.cpp msgid "Sound muted" msgstr "음소거" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "사운드 시스템 비활성화" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "본 빌드에서 지원되지 않는 사운드 시스템" @@ -1708,18 +1655,116 @@ msgstr "시야 범위 %d로 바꿈" msgid "Volume changed to %d%%" msgstr "볼륨 %d%%로 바꿈" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "선 표면 보이기" -#: src/client/game.cpp -msgid "You died" -msgstr "사망했습니다" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "게임 또는 모드에 의해 현재 확대 비활성화" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- 모드: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- 공개: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Player vs Player: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- 서버 이름: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "비밀번호 변경" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "계속" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"기본 컨트롤: \n" +"메뉴 표시 없을 때:\n" +"- 단일 탭: 버튼 활성화\n" +"- 더블 탭: 배치/사용\n" +"- 드래그: 둘러보기\n" +" 메뉴/인벤토리:\n" +"- 더블 탭 (외부):\n" +" -->닫기\n" +"- 무더기(stack) 터치, 슬롯 터치: \n" +" --> 무더기(stack) 이동 \n" +"- 터치 및 드래그, 다른 손가락으로 탭\n" +" --> 슬롯에 한개의 아이템 배치\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "메뉴로 나가기" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "게임 종료" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "게임 정보:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "게임 일시정지" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "호스팅 서버" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "끄기" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "켜기" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "원격 서버" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "리스폰" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "볼륨 조절" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "사망했습니다" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2061,8 +2106,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "$1을 다운로드하는 데에 실패했습니다" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "본 빌드에서 지원되지 않는 사운드 시스템" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2112,7 +2158,7 @@ msgstr "자동전진" msgid "Automatic jumping" msgstr "자동 점프" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2124,7 +2170,7 @@ msgstr "뒤로" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "카메라 변경" @@ -2148,7 +2194,7 @@ msgstr "볼륨 줄이기" msgid "Double tap \"jump\" to toggle fly" msgstr "\"점프\"를 두번 탭하여 비행" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "드롭하기" @@ -2164,11 +2210,11 @@ msgstr "범위 증가" msgid "Inc. volume" msgstr "볼륨 늘리기" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "인벤토리" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "점프" @@ -2200,7 +2246,7 @@ msgstr "다음 아이템" msgid "Prev. item" msgstr "이전.아이템" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "범위 선택" @@ -2212,7 +2258,7 @@ msgstr "오른쪽" msgid "Screenshot" msgstr "스크린샷" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "살금살금" @@ -2220,15 +2266,15 @@ msgstr "살금살금" msgid "Toggle HUD" msgstr "HUD 토글" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "채팅 기록 토글" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "고속 스위치" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "비행 스위치" @@ -2236,11 +2282,11 @@ msgstr "비행 스위치" msgid "Toggle fog" msgstr "안개 토글" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "미니맵 토글" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "자유시점 스위치" @@ -2248,7 +2294,7 @@ msgstr "자유시점 스위치" msgid "Toggle pitchmove" msgstr "피치 이동 토글" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "확대/축소" @@ -2285,7 +2331,7 @@ msgstr "현재 비밀번호" msgid "Passwords do not match!" msgstr "비밀번호가 맞지 않습니다!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "나가기" @@ -2298,15 +2344,46 @@ msgstr "음소거" msgid "Sound Volume: %d%%" msgstr "볼륨 조절: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "가운데 버튼" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "완료!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "원격 서버" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "안개 토글" @@ -2531,8 +2608,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D 지원.\n" "현재 지원되는 것:\n" @@ -2595,10 +2671,6 @@ msgstr "블록 범위 활성" msgid "Active object send range" msgstr "객체 전달 범위 활성화" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "node를 부술 때의 파티클 효과를 추가합니다." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2627,6 +2699,17 @@ msgstr "아이템 이름 추가" msgid "Advanced" msgstr "고급" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "평평하게 보는 대신에 3D 구름 효과를 사용합니다." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3034,15 +3117,14 @@ msgstr "구름 반지름" msgid "Clouds" msgstr "구름" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "구름은 클라이언트에 측면 효과." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "메뉴에 구름" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "색깔있는 안개" @@ -3067,7 +3149,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "컨텐츠 저장소에서 쉼표로 구분된 숨겨진 플래그 목록입니다.\n" "\"nonfree\"는 Free Software Foundation에서 정의한대로 '자유 소프트웨어'로 분" @@ -3221,6 +3303,14 @@ msgstr "디버그 로그 수준" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "전용 서버 단계" @@ -3377,19 +3467,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "블록 애니메이션 비동기화" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "장식" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "입자 효과" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "비밀번호 없으면 불가" @@ -3417,6 +3499,14 @@ msgstr "점프를 두번 탭하여 비행" msgid "Double-tapping the jump key toggles fly mode." msgstr "점프키를 두번 누르면 비행 모드를 활성화시킵니다." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Mapgen 디버그 정보를 덤프 합니다." @@ -3494,8 +3584,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3576,10 +3666,10 @@ msgstr "" "예 : 0은 화면 흔들림 없음; 1.0은 노멀; 2.0은 더블." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "IPv6 서버를 실행 활성화/비활성화.\n" "IPv6 서버는 IPv6 클라이언트 시스템 구성에 따라 제한 될 수 있습니다.\n" @@ -3597,12 +3687,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "인벤토리 아이템의 애니메이션 적용." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3914,10 +3998,6 @@ msgstr "GUI 크기 조정" msgid "GUI scaling filter" msgstr "GUI 크기 조정 필터" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI 크기 조정 필터 txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4149,12 +4229,6 @@ msgstr "" "활성화시, \"sneak\"키 대신 \"특수\"키가 내려가는데 \n" "사용됩니다." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4174,6 +4248,13 @@ msgid "" "empty password." msgstr "적용할 경우, 새로운 플레이어는 빈 암호로 가입 할 수 없습니다." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4271,11 +4352,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "도구 설명 표시 지연, 1000분의 1초." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "인벤토리 아이템 애니메이션" @@ -4907,10 +4983,6 @@ msgstr "" msgid "Maximum users" msgstr "최대 사용자" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "메쉬 캐시" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "메시지" @@ -4944,6 +5016,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "밉매핑(Mipmapping)" @@ -5037,9 +5113,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "플레이어의 이름.\n" @@ -5500,17 +5577,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5743,16 +5822,6 @@ msgstr "" msgid "Shader path" msgstr "쉐이더 경로" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "셰이더" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -5928,10 +5997,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6216,10 +6284,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "시간 전송 간격" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "시간 속도" @@ -6289,6 +6353,10 @@ msgstr "불투명한 액체" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6342,7 +6410,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6365,17 +6436,15 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "평평하게 보는 대신에 3D 구름 효과를 사용합니다." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "주 메뉴 배경에 구름 애니메이션을 사용 합니다." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "각도에 따라 텍스처를 볼 때 이방성 필터링을 사용 합니다." #: src/settings_translation_file.cpp @@ -6624,23 +6693,15 @@ msgstr "" "하지만 일부 이미지는 바로 하드웨어에 생성됩니다. \n" "(e.g. render-to-texture for nodes in inventory)." -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6661,10 +6722,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6687,8 +6744,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6854,6 +6910,9 @@ msgstr "" #~ "로컬 서버를 시작하려면 공백으로 두십시오.\n" #~ "주 메뉴의 주소 공간은 이 설정에 중복됩니다." +#~ msgid "Adds particles when digging a node." +#~ msgstr "node를 부술 때의 파티클 효과를 추가합니다." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6959,6 +7018,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "깨끗하고 투명한 텍스처" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "구름은 클라이언트에 측면 효과." + #~ msgid "Command key" #~ msgstr "명령 키" @@ -7040,9 +7103,15 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "데미지 활성화" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "디버그 정보 및 프로파일러 그래프 숨기기" + #~ msgid "Debug info toggle key" #~ msgstr "디버그 정보 토글 키" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "디버그 정보, 프로파일러 그래프 , 선 표현 숨김" + #~ msgid "Dec. volume key" #~ msgstr "볼륨 낮추기 키" @@ -7073,10 +7142,16 @@ msgstr "" #~ msgid "Del. Favorite" #~ msgstr "즐겨찾기 삭제" +#~ msgid "Desynchronize block animation" +#~ msgstr "블록 애니메이션 비동기화" + #, fuzzy #~ msgid "Dig key" #~ msgstr "오른쪽 키" +#~ msgid "Digging particles" +#~ msgstr "입자 효과" + #~ msgid "Disable anticheat" #~ msgstr "Anticheat를 사용 안함" @@ -7103,6 +7178,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "글꼴 그림자" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "활성화됨" + #~ msgid "Enable VBO" #~ msgstr "VBO 적용" @@ -7147,9 +7226,6 @@ msgstr "" #~ msgid "Enter " #~ msgstr "들어가기 " -#~ msgid "FPS in pause menu" -#~ msgstr "일시정지 메뉴에서 FPS" - #~ msgid "Fallback font shadow" #~ msgstr "대체 글꼴 그림자" @@ -7203,8 +7279,8 @@ msgstr "" #~ msgid "Full screen BPP" #~ msgstr "전체 화면 BPP" -#~ msgid "Game" -#~ msgstr "게임" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI 크기 조정 필터 txr2img" #~ msgid "Gamma" #~ msgstr "감마" @@ -7240,6 +7316,10 @@ msgstr "" #~ msgid "Install: file: \"$1\"" #~ msgstr "모드 설치: 파일: \"$1\"" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "도구 설명 표시 지연, 1000분의 1초." + #~ msgid "Invalid gamespec." #~ msgstr "인식할 수 없는 게임 사양입니다." @@ -7251,641 +7331,641 @@ msgstr "" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "보여지는 범위 감소에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "볼륨 감소 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "점프키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "현재 선택된 아이템 드롭에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "보여지는 범위 증가에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "보여지는 범위 증가에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "점프키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "고속 모드에서 빠르게 이동하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "플레이어가 \n" #~ "뒤쪽으로 움직이는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "플레이어가 앞으로 움직이는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "플레이어가 왼쪽으로 움직이는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "플레이어가 오른쪽으로 움직이는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "점프키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "명령어를 입력하기 위해 채팅창을 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "로컬 명령어를 입력하기 위해 채팅창을 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "채팅창을 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "인벤토리를 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "점프키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "인벤토리를 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "인벤토리를 여는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "13번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "14번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "15번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "16번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "17번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "18번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "19번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "20번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "21번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "22번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "23번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "24번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "25번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "26번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "27번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "28번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "29번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "30번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "31번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "32번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "8번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "5번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "1번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "4번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "다음 아이템 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "9번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "이전 아이템 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "2번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "7번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "6번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "10번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "3번째 hotbar 슬롯을 선택하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "살금살금걷기 키입니다.\n" #~ "만약 aux1_descends를 사용할 수 없는 경우에 물에서 내려가거나 올라올 수 있" #~ "습니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "1인칭에서 3인칭간 카메라 전환키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "스크린샷키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "자동전진 토글에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "시네마틱 모드 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "미니 맵 표시 설정/해제 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "고속 모드 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "비행 모드 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "자유시점 모드 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "피치 이동 모드 토글에 대한 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "카메라 업데이트 스위치 키입니다. 개발을 위해서만 사용됩니다. \n" -#~ "참조 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "참조 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "채팅 디스플레이 토글 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "디버그 정보 표시 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "안개 디스플레이 토글 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "HUD 표시 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "채팅 콘솔 디스플레이 토글 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "제한없이 보여지는 범위에 대한 스위치 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "가능한 경우 시야 확대를 사용하는 키입니다.\n" -#~ "Http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3 참조" +#~ "Http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3 참조" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -7922,6 +8002,9 @@ msgstr "" #~ msgid "Menus" #~ msgstr "메뉴" +#~ msgid "Mesh cache" +#~ msgstr "메쉬 캐시" + #~ msgid "Minimap" #~ msgstr "미니맵" @@ -8106,6 +8189,9 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "서버 / 싱글 플레이어" +#~ msgid "Shaders" +#~ msgstr "셰이더" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "평평한 땅 (실험용)" @@ -8121,6 +8207,10 @@ msgstr "" #~ "이것은 OpenGL video backend에서만 \n" #~ "작동합니다." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "카메라 업데이트 비활성화" + #~ msgid "Shadow limit" #~ msgstr "그림자 제한" @@ -8142,6 +8232,9 @@ msgstr "" #~ msgstr "" #~ "카메라의 회전을 매끄럽게 만듭니다. 사용 하지 않으려면 0을 입력하세요." +#~ msgid "Sound system is disabled" +#~ msgstr "사운드 시스템 비활성화" + #~ msgid "Special" #~ msgstr "특별함" @@ -8182,6 +8275,9 @@ msgstr "" #~ msgid "This font will be used for certain languages." #~ msgstr "이 글꼴은 특정 언어에 사용 됩니다." +#~ msgid "Time send interval" +#~ msgstr "시간 전송 간격" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "쉐이더를 사용하려면 OpenGL 드라이버를 사용할 필요가 있습니다." diff --git a/po/kv/luanti.po b/po/kv/luanti.po index 337abcb43..2ab1149ba 100644 --- a/po/kv/luanti.po +++ b/po/kv/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-08-06 19:09+0000\n" "Last-Translator: Mićadźoridź \n" "Language-Team: Komi » содтӧд юӧрла али «.help all» — msgid "[all | ] [-t]" msgstr "[all | <команда>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Вежны" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Куд бӧрйыны" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Файл бӧрйыны" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Индыны" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Лӧсьӧдӧм йывсьыс юӧр абу)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D шувгӧм" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Дугӧдны" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октавъяс" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Вештӧм" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Видзны" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Бердӧг" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Сид" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X кузя разалӧм" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y кузя разалӧм" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z паськалӧм" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "подув ногӧн" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Системалӧн кывйыс)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Восьсалун" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Чат" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Чышкыны" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Веськӧдлӧм" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Кусӧдӧма" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "ӧзтӧма" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Медшӧр" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Вуджӧм" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Нинӧм абу аддзӧма" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Корсьны" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Унджык лӧсьӧдӧм петкӧдлыны" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Техника нимъяс петкӧдлыны" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Клиентъяслӧн модъяс" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Содтӧдъяс: ворсӧмъяс" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Содтӧдъяс: модъяс" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Динамикаа вуджӧръяс" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "<сиптӧма>" @@ -166,7 +405,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -203,11 +441,6 @@ msgstr "Модъяс" msgid "No packages could be retrieved" msgstr "Содтӧдъяс босьтны эз артмы" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Нинӧм абу аддзӧма" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Выльмӧдӧмъяс абуӧсь" @@ -253,18 +486,6 @@ msgstr "Нин пуктӧма" msgid "Base Game:" msgstr "Медшӧр ворсӧм:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Дугӧдны" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -390,6 +611,12 @@ msgstr "$2 моз $1 пуктыны эз артмы" msgid "Unable to install a $1 as a texture pack" msgstr "Текстура чукӧр моз $1 пуктыны эз артмы" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Ӧзтӧма, торксьӧмъяс эмӧсь)" @@ -454,12 +681,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Видзны" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Енкӧла:" @@ -610,11 +831,6 @@ msgstr "Юяс" msgid "Sea level rivers" msgstr "Саридз веркӧс судта юяс" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Сид" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Биомъяс костын лайкыд вуджӧм" @@ -750,6 +966,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Ставсӧ ӧзтыны" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Выль $1 версия восьтӧма" @@ -778,7 +1011,7 @@ msgstr "Некор" msgid "Visit website" msgstr "Сайтӧ пырны" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Лӧсьӧданін" @@ -792,225 +1025,6 @@ msgstr "" "Видлӧй восьса серверъяслысь лыддьӧгнысӧ выльмӧдны да видлӧй ӧтуввезкӧд " "йитчӧмсӧ." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Вежны" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Куд бӧрйыны" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Файл бӧрйыны" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Индыны" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Лӧсьӧдӧм йывсьыс юӧр абу)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D шувгӧм" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октавъяс" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Вештӧм" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Бердӧг" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X кузя разалӧм" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y кузя разалӧм" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z паськалӧм" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "подув ногӧн" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Системалӧн кывйыс)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Восьсалун" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Чат" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Чышкыны" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Веськӧдлӧм" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Кусӧдӧма" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "ӧзтӧма" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Медшӧр" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Вуджӧм" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Корсьны" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Унджык лӧсьӧдӧм петкӧдлыны" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Техника нимъяс петкӧдлыны" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Клиентъяслӧн модъяс" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Содтӧдъяс: ворсӧмъяс" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Содтӧдъяс: модъяс" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "ӧзтӧма" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Динамикаа вуджӧръяс" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Унджык" @@ -1031,10 +1045,6 @@ msgstr "Медшӧр артмӧдысьяс" msgid "Core Team" msgstr "Медшӧр котыр" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Вӧдитчысьлысь мыччӧдсӧ видзан куд восьтыны" @@ -1181,10 +1191,22 @@ msgstr "Ворсны кутны" msgid "You need to install a game before you can create a world." msgstr "Енкӧла вӧчтӧдз тіянлы колӧ пуктыны ворсӧм." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Бӧрйӧмъяс" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Инпас" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Клиент" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1198,6 +1220,11 @@ msgstr "Доймӧм / PvP" msgid "Favorites" msgstr "Бӧрйӧмъяс" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Ворсӧмъяс" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Ӧта-мӧдкӧд лӧсявтӧм серверъясыс" @@ -1210,10 +1237,26 @@ msgstr "" msgid "Login" msgstr "Пырны" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Восьса серверъяс" @@ -1296,23 +1339,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Восьса: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- РvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Серверлӧн ним: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1322,6 +1348,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1342,6 +1372,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1354,10 +1388,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Гусякывсӧ вежны" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1386,26 +1416,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1419,31 +1429,15 @@ msgstr "Клиентӧс вӧчӧм..." msgid "Creating server..." msgstr "Сервер вӧчӧм..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Менюӧ петны" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Вӧрсӧмсьыс петны" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1480,18 +1474,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Ворсӧм йывсьыс юӧр:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1528,14 +1510,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Кусӧдӧма" - -#: src/client/game.cpp -msgid "On" -msgstr "Ӧзтӧма" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1548,38 +1522,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Ловзьыны" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Помасьӧм..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Шы горалун" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Шы система кусӧдӧма" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1651,18 +1609,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Кулінныд" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Восьса: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- РvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Серверлӧн ним: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Гусякывсӧ вежны" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Менюӧ петны" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Вӧрсӧмсьыс петны" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Ворсӧм йывсьыс юӧр:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Кусӧдӧма" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ӧзтӧма" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Ловзьыны" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Шы горалун" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Кулінныд" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1989,7 +2032,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2037,7 +2080,7 @@ msgstr "" msgid "Automatic jumping" msgstr "Автоматӧн чеччыштӧм" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2049,7 +2092,7 @@ msgstr "Бӧрӧ" msgid "Block bounds" msgstr "Мапблоклӧн доръяс" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2073,7 +2116,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Чӧвтны" @@ -2089,11 +2132,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Чеччыштны" @@ -2125,7 +2168,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Тыдалан диапазон" @@ -2137,7 +2180,7 @@ msgstr "" msgid "Screenshot" msgstr "Скриншот" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Кыйксьӧдны" @@ -2145,15 +2188,15 @@ msgstr "Кыйксьӧдны" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2161,11 +2204,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2173,7 +2216,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2209,7 +2252,7 @@ msgstr "Важ гусякыв" msgid "Passwords do not match!" msgstr "Гусякывъясыс эз ӧтлаасьны!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Пӧдлавны" @@ -2222,16 +2265,46 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "Шы горалун: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Шӧр личкантор" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Дась!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Контроллерлӧн ID-ыс" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2429,8 +2502,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2483,10 +2555,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2509,6 +2577,16 @@ msgstr "Веськӧдлысьлӧн ним" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2876,14 +2954,14 @@ msgstr "" msgid "Clouds" msgstr "Кымӧръяс" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Менюын кымӧръяс" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Рӧма руалӧм" @@ -2906,7 +2984,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3041,6 +3119,14 @@ msgstr "" msgid "Debugging" msgstr "Лӧсьӧдӧм" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3192,18 +3278,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Кушӧн гусякывсӧ кольны оз позь" @@ -3231,6 +3309,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3305,8 +3391,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3379,8 +3465,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3395,12 +3480,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3703,10 +3782,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Ворсан контроллеръяс" @@ -3930,12 +4005,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3954,6 +4023,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4048,10 +4124,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4666,10 +4738,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Мешлӧн кеш" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4702,6 +4770,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4791,7 +4863,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5231,17 +5303,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5434,16 +5508,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Шейдӧръяс" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5605,10 +5669,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5887,10 +5950,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5950,6 +6009,10 @@ msgstr "Сӧдзов кизьӧрторъяс" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Пулӧн шувгӧм" @@ -6000,7 +6063,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6023,16 +6089,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Менюын шуньгысь кымӧръяс." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6271,20 +6335,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6295,10 +6351,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6321,8 +6373,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6461,9 +6512,22 @@ msgstr "" #~ msgid "Disable anticheat" #~ msgstr "Анти-чит кусӧдны" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "ӧзтӧма" + #~ msgid "Invalid gamespec." #~ msgstr "Торксьӧм ворсан конфигурацияыс." +#~ msgid "Mesh cache" +#~ msgstr "Мешлӧн кеш" + +#~ msgid "Shaders" +#~ msgstr "Шейдӧръяс" + +#~ msgid "Sound system is disabled" +#~ msgstr "Шы система кусӧдӧма" + #~ msgid "View more information in a web browser" #~ msgstr "Видзӧдны ӧтуввезын содтӧм юӧр" diff --git a/po/ky/luanti.po b/po/ky/luanti.po index 3269922f0..f78014074 100644 --- a/po/ky/luanti.po +++ b/po/ky/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Kyrgyz (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2019-11-10 15:04+0000\n" "Last-Translator: Krock \n" "Language-Team: Kyrgyz ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select directory" +msgstr "Дүйнөнү тандаңыз:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select file" +msgstr "Дүйнөнү тандаңыз:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Тандоо" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Жокко чыгаруу" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Сактоо" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Маек" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Тазалоо" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +#, fuzzy +msgid "Controls" +msgstr "Ctrl" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Disabled" +msgstr "Баарын өчүрүү" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "күйгүзүлгөн" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Дүйнөнү тандаңыз:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Улантуу" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Улантуу" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -169,7 +416,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Артка" @@ -207,11 +453,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -258,18 +499,6 @@ msgstr "" msgid "Base Game:" msgstr "Оюн" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Жокко чыгаруу" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua #, fuzzy @@ -400,6 +629,12 @@ msgstr "Дүйнөнү инициалдаштыруу катасы" msgid "Unable to install a $1 as a texture pack" msgstr "Дүйнөнү инициалдаштыруу катасы" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -467,12 +702,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Сактоо" - #: builtin/mainmenu/dlg_config_world.lua #, fuzzy msgid "World:" @@ -625,11 +854,6 @@ msgstr "Оң Windows" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -768,6 +992,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Баарын күйгүзүү" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -792,7 +1033,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ырастоолор" @@ -804,234 +1045,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select directory" -msgstr "Дүйнөнү тандаңыз:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select file" -msgstr "Дүйнөнү тандаңыз:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Тандоо" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Маек" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Тазалоо" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Controls" -msgstr "Ctrl" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Disabled" -msgstr "Баарын өчүрүү" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "күйгүзүлгөн" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Дүйнөнү тандаңыз:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Улантуу" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Улантуу" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "күйгүзүлгөн" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Баарын өчүрүү" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1052,10 +1065,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1208,11 +1217,23 @@ msgstr "Оюн" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Тандалмалар:" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "Дареги/порту" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Дүйнөнү тандаңыз:" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Creative mode" @@ -1229,6 +1250,11 @@ msgstr "Убалды күйгүзүү" msgid "Favorites" msgstr "Тандалмалар:" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Оюн" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1242,10 +1268,26 @@ msgstr "Оюн" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1336,24 +1378,6 @@ msgstr "" "\n" "Толугураак маалымат үчүн, debug.txt'ти текшериңиз." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "- Public: " -msgstr "Жалпылык" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1363,6 +1387,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1385,6 +1413,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1398,10 +1430,6 @@ msgstr "күйгүзүлгөн" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Сырсөздү өзгөртүү" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1432,26 +1460,6 @@ msgstr "Туташтыруу катасы (убактыңыз өтүп кетт msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Улантуу" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1466,31 +1474,15 @@ msgstr "Клиент жаратылууда..." msgid "Creating server..." msgstr "Сервер жаратылууда...." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Клиент жаратылууда..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Менюга чыгуу" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Оюндан чыгуу" - #: src/client/game.cpp #, fuzzy msgid "Fast mode disabled" @@ -1533,20 +1525,6 @@ msgstr "күйгүзүлгөн" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "Game paused" -msgstr "Оюн" - -#: src/client/game.cpp -#, fuzzy -msgid "Hosting server" -msgstr "Сервер жаратылууда...." - #: src/client/game.cpp #, fuzzy msgid "Item definitions..." @@ -1586,14 +1564,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1606,40 +1576,24 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Дареги чечилүүдө..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Кайтадан жаралуу" - #: src/client/game.cpp #, fuzzy msgid "Shutting down..." msgstr "Оюн өчүрүлүүдө..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Бир кишилик" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Үн көлөмү" - #: src/client/game.cpp #, fuzzy msgid "Sound muted" msgstr "Үн көлөмү" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1712,19 +1666,107 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" #: src/client/game.cpp +msgid "Zoom currently disabled by game or mod" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Public: " +msgstr "Жалпылык" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Сырсөздү өзгөртүү" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Улантуу" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Менюга чыгуу" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Оюндан чыгуу" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Game paused" +msgstr "Оюн" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Hosting server" +msgstr "Сервер жаратылууда...." + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Кайтадан жаралуу" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Үн көлөмү" + +#: src/client/game_formspec.cpp #, fuzzy msgid "You died" msgstr "Сиз өлдүңүз." -#: src/client/game.cpp -msgid "Zoom currently disabled by game or mod" -msgstr "" - #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2068,7 +2110,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Дүйнөнү инициалдаштыруу катасы" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2119,7 +2161,7 @@ msgstr "Алга" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2131,7 +2173,7 @@ msgstr "Артка" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "Баскычтарды өзгөртүү" @@ -2156,7 +2198,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Ыргытуу" @@ -2173,11 +2215,11 @@ msgstr "" msgid "Inc. volume" msgstr "Үн көлөмү" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Мүлк-шайман" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Секирүү" @@ -2211,7 +2253,7 @@ msgstr "Кийинки" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2224,7 +2266,7 @@ msgstr "Оңго" msgid "Screenshot" msgstr "Тез сүрөт" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Уурданып басуу" @@ -2233,16 +2275,16 @@ msgstr "Уурданып басуу" msgid "Toggle HUD" msgstr "Учууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "Тез басууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Тез басууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Учууга которуу" @@ -2251,12 +2293,12 @@ msgstr "Учууга которуу" msgid "Toggle fog" msgstr "Учууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "Тез басууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2265,7 +2307,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "Тез басууга которуу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Масштаб" @@ -2302,7 +2344,7 @@ msgstr "Эски сырсөз" msgid "Passwords do not match!" msgstr "Сырсөздөр дал келген жок!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Чыгуу" @@ -2316,15 +2358,44 @@ msgstr "баскычты басыңыз" msgid "Sound Volume: %d%%" msgstr "Үн көлөмү: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Ортоңку баскыч" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Учууга которуу" @@ -2523,8 +2594,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2577,10 +2647,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2604,6 +2670,16 @@ msgstr "Дүйнө аты" msgid "Advanced" msgstr "Кошумча" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2978,15 +3054,15 @@ msgstr "" msgid "Clouds" msgstr "3D-булуттар" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Clouds in menu" msgstr "Башкы меню" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "" @@ -3009,7 +3085,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3150,6 +3226,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3302,19 +3386,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "Баарын күйгүзүү" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3342,6 +3417,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3417,8 +3500,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3491,8 +3574,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3507,12 +3589,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3814,10 +3890,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4043,12 +4115,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4067,6 +4133,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4161,10 +4234,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4782,10 +4851,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4818,6 +4883,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp #, fuzzy msgid "Mipmapping" @@ -4908,7 +4977,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5356,17 +5425,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5565,16 +5636,6 @@ msgstr "" msgid "Shader path" msgstr "Көлөкөлөгүчтөр" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Көлөкөлөгүчтөр" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -5741,10 +5802,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6023,10 +6083,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6087,6 +6143,10 @@ msgstr "Кооз бактар" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6138,7 +6198,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6161,16 +6224,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6414,20 +6475,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6438,10 +6491,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6464,8 +6513,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6727,10 +6775,18 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "Оң меню" +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "Баарын күйгүзүү" + #, fuzzy #~ msgid "Disable anticheat" #~ msgstr "Бөлүкчөлөрдү күйгүзүү" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "күйгүзүлгөн" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "Баарын күйгүзүү" @@ -6755,9 +6811,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Алга" -#~ msgid "Game" -#~ msgstr "Оюн" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Ырастоолор" @@ -6872,6 +6925,13 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Дүйнөнү тандаңыз:" +#~ msgid "Shaders" +#~ msgstr "Көлөкөлөгүчтөр" + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Баарын өчүрүү" + #, fuzzy #~ msgid "Simple Leaves" #~ msgstr "Күңүрт суу" diff --git a/po/lt/luanti.po b/po/lt/luanti.po index c7cbac5ff..25a9a0e16 100644 --- a/po/lt/luanti.po +++ b/po/lt/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Lithuanian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-05-01 12:07+0000\n" "Last-Translator: EditaNEmilis \n" "Language-Team: Lithuanian ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Naršyti" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Keisti" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Pasirinkite aplanką" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Pasirinkite failą" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Pasirinkti" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nėra nustatymo aprašymo)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Atšaukti" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Įrašyti" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Sėkla" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "defaults" +msgstr "keisti žaidimą" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Susirašinėti" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Išvalyti" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +#, fuzzy +msgid "Controls" +msgstr "Kairysis Control" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Disabled" +msgstr "Išjungti papildinį" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "įjungtas" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Ieškoti" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Pasirinkite pasaulį:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Tęsti" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Tęsti" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -168,7 +414,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Atgal" @@ -205,11 +450,6 @@ msgstr "Papildiniai" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -256,18 +496,6 @@ msgstr "Jau įdiegta" msgid "Base Game:" msgstr "Pagrindinis Žaidimas:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Atšaukti" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -406,6 +634,12 @@ msgstr "Nepavyko įdiegti $1 į $2" msgid "Unable to install a $1 as a texture pack" msgstr "Nepavyko įdiegti $1 į $2" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -470,12 +704,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Įrašyti" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Pasaulis:" @@ -631,11 +859,6 @@ msgstr "Upės" msgid "Sea level rivers" msgstr "Upės jūros lygyje" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Sėkla" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -776,6 +999,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Įjungti visus" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -801,7 +1041,7 @@ msgstr "Niekada" msgid "Visit website" msgstr "Svetainė" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Nustatymai" @@ -815,233 +1055,6 @@ msgstr "" "Pabandykite dar kart įjungti viešą serverių sąrašą ir patikrinkite savo " "interneto ryšį." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Naršyti" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Keisti" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Pasirinkite aplanką" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Pasirinkite failą" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Pasirinkti" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nėra nustatymo aprašymo)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "defaults" -msgstr "keisti žaidimą" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Susirašinėti" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Išvalyti" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Controls" -msgstr "Kairysis Control" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Disabled" -msgstr "Išjungti papildinį" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "įjungtas" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Ieškoti" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Pasirinkite pasaulį:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Tęsti" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Tęsti" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "įjungtas" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Išjungti papildinį" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1062,10 +1075,6 @@ msgstr "Pagrindiniai kūrėjai" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1222,11 +1231,23 @@ msgstr "Slėpti vidinius" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Pašalinti iš mėgiamų" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- Adresas: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Žaisti tinkle(klientas)" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kūrybinė veiksena" @@ -1242,6 +1263,11 @@ msgstr "Leisti sužeidimus" msgid "Favorites" msgstr "Mėgiami:" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Žaidimas" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1255,10 +1281,26 @@ msgstr "Slėpti vidinius" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1349,23 +1391,6 @@ msgstr "" "\n" "Patikrinkite debug.txt dėl papildomos informacijos." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Viešas: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Serverio pavadinimas: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1376,6 +1401,10 @@ msgstr "Įvyko klaida:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1398,6 +1427,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1411,10 +1444,6 @@ msgstr "Žalojimas įjungtas" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Keisti slaptažodį" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1446,39 +1475,6 @@ msgstr "Ryšio klaida (baigėsi prijungimo laikas?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Tęsti" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Numatytas valdymas:\n" -"Nematomi meniu:\n" -"- vienas palietimas: mygtukas aktyvuoti\n" -"- dvigubas palietimas: padėti/naudoti\n" -"- slinkti pirštu: žvalgytis aplink\n" -"Meniu/Inventorius matomi:\n" -"- dvigubas palietimas (išorėje):\n" -" -->uždaryti\n" -"- liesti rietuvę, liesti angą:\n" -" --> judinti rietuvę\n" -"- liesti&tempti, liesti antru pirštu\n" -" --> padėti vieną elementą į angą\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1492,31 +1488,15 @@ msgstr "Kuriamas klientas..." msgid "Creating server..." msgstr "Kuriamas serveris...." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Kuriamas klientas..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Grįžti į meniu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Išeiti iš žaidimo" - #: src/client/game.cpp #, fuzzy msgid "Fast mode disabled" @@ -1559,19 +1539,6 @@ msgstr "įjungtas" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "Game paused" -msgstr "Žaidimo pavadinimas" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Kuriamas serveris" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Elemento apibrėžimai..." @@ -1610,14 +1577,6 @@ msgstr "" msgid "Node definitions..." msgstr "Mazgo apibrėžimai..." -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1630,39 +1589,23 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Ieškoma adreso..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Prisikelti" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Išjungiama..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Žaisti vienam" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Garso lygis" - #: src/client/game.cpp #, fuzzy msgid "Sound muted" msgstr "Garso lygis" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1735,18 +1678,117 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Jūs numirėte" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Viešas: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Serverio pavadinimas: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Keisti slaptažodį" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Tęsti" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Numatytas valdymas:\n" +"Nematomi meniu:\n" +"- vienas palietimas: mygtukas aktyvuoti\n" +"- dvigubas palietimas: padėti/naudoti\n" +"- slinkti pirštu: žvalgytis aplink\n" +"Meniu/Inventorius matomi:\n" +"- dvigubas palietimas (išorėje):\n" +" -->uždaryti\n" +"- liesti rietuvę, liesti angą:\n" +" --> judinti rietuvę\n" +"- liesti&tempti, liesti antru pirštu\n" +" --> padėti vieną elementą į angą\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Grįžti į meniu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Išeiti iš žaidimo" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Game paused" +msgstr "Žaidimo pavadinimas" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Kuriamas serveris" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Prisikelti" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Garso lygis" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Jūs numirėte" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2093,7 +2135,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Nepavyko parsiųsti $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2145,7 +2187,7 @@ msgstr "Pirmyn" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2157,7 +2199,7 @@ msgstr "Atgal" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "Nustatyti klavišus" @@ -2182,7 +2224,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "Du kart paliesti „šokti“, kad įjungti skrydį" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Mesti" @@ -2199,11 +2241,11 @@ msgstr "" msgid "Inc. volume" msgstr "Garso lygis" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventorius" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Pašokti" @@ -2237,7 +2279,7 @@ msgstr "Kitas" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Intervalo pasirinkimas" @@ -2249,7 +2291,7 @@ msgstr "Dešinėn" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Sėlinti" @@ -2258,16 +2300,16 @@ msgstr "Sėlinti" msgid "Toggle HUD" msgstr "Įjungti skrydį" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "Įjungti greitą" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Įjungti greitą" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Įjungti skrydį" @@ -2276,12 +2318,12 @@ msgstr "Įjungti skrydį" msgid "Toggle fog" msgstr "Įjungti skrydį" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "Įjungti noclip" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Įjungti noclip" @@ -2290,7 +2332,7 @@ msgstr "Įjungti noclip" msgid "Toggle pitchmove" msgstr "Įjungti greitą" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Pritraukti" @@ -2327,7 +2369,7 @@ msgstr "Senas slaptažodis" msgid "Passwords do not match!" msgstr "Slaptažodžiai nesutampa!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Išeiti" @@ -2341,15 +2383,45 @@ msgstr "paspauskite klavišą" msgid "Sound Volume: %d%%" msgstr "Garso lygis: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Vidurinis mygtukas" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Atlikta!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Įjungti skrydį" @@ -2549,8 +2621,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2603,10 +2674,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2630,6 +2697,16 @@ msgstr "Pasaulio pavadinimas" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3007,15 +3084,15 @@ msgstr "" msgid "Clouds" msgstr "Trimačiai debesys" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Clouds in menu" msgstr "Pagrindinis meniu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "" @@ -3038,7 +3115,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3176,6 +3253,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3329,20 +3414,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekoracijos" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "Įjungti visus" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3370,6 +3446,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3445,8 +3529,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3520,8 +3604,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3536,12 +3619,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3844,10 +3921,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4074,12 +4147,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4098,6 +4165,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4192,10 +4266,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4822,10 +4892,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4858,6 +4924,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4948,7 +5018,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5391,17 +5461,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5608,16 +5680,6 @@ msgstr "" msgid "Shader path" msgstr "Šešėliavimai" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Šešėliavimai" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5783,10 +5845,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6065,10 +6126,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6129,6 +6186,10 @@ msgstr "Nepermatomi lapai" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6179,7 +6240,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6202,16 +6266,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6453,20 +6515,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6477,10 +6531,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6503,8 +6553,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6772,6 +6821,10 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "Dešinėn" +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "Įjungti visus" + #, fuzzy #~ msgid "Download a game, such as Minetest Game, from minetest.net" #~ msgstr "Atsisiųskite sub žaidimą, tokį kaip minetest_game, iš minetest.net" @@ -6783,6 +6836,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "Atsiunčiama $1, prašome palaukti..." +#, fuzzy +#~ msgid "Enable" +#~ msgstr "įjungtas" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "Įjungti papildinį" @@ -6805,9 +6862,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Pirmyn" -#~ msgid "Game" -#~ msgstr "Žaidimas" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Nustatymai" @@ -6940,6 +6994,13 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "Žaisti vienam" +#~ msgid "Shaders" +#~ msgstr "Šešėliavimai" + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Išjungti papildinį" + #, fuzzy #~ msgid "Simple Leaves" #~ msgstr "Nepermatomi lapai" diff --git a/po/luanti.pot b/po/luanti.pot index 2c752aa1c..d9ac753f1 100644 --- a/po/luanti.pot +++ b/po/luanti.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: luanti\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -78,6 +78,244 @@ msgstr "" msgid "Get help for commands (-t: output in chat)" msgstr "" +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + #: builtin/fstk/ui.lua msgid "OK" msgstr "" @@ -154,7 +392,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -204,11 +441,6 @@ msgstr "" msgid "Update All [$1]" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." msgstr "" @@ -270,18 +502,6 @@ msgstr "" msgid "Install" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua msgid "Error getting dependencies for package $1" msgstr "" @@ -378,6 +598,12 @@ msgstr "" msgid "$1 mods" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "" @@ -418,12 +644,6 @@ msgstr "" msgid "No optional dependencies" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "Find More Mods" msgstr "" @@ -618,11 +838,6 @@ msgstr "" msgid "World name" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Mapgen" msgstr "" @@ -736,6 +951,22 @@ msgstr "" msgid "Rename Modpack:" msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -760,7 +991,7 @@ msgstr "" msgid "Never" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -772,223 +1003,6 @@ msgstr "" msgid "Public server list is disabled" msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1017,10 +1031,6 @@ msgstr "" msgid "Active renderer:" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Share debug log" msgstr "" @@ -1157,6 +1167,14 @@ msgstr "" msgid "Start Game" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Refresh" msgstr "" @@ -1173,10 +1191,32 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Remove favorite" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" @@ -1287,7 +1327,7 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" @@ -1355,10 +1395,6 @@ msgstr "" msgid "Sound unmuted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Volume changed to %d%%" @@ -1468,16 +1504,20 @@ msgstr "" msgid "Profiler graph shown" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" #: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" +msgid "Bounding boxes shown" msgstr "" #: src/client/game.cpp -msgid "Debug info and profiler graph hidden" +msgid "All debug info hidden" msgstr "" #: src/client/game.cpp @@ -1535,91 +1575,6 @@ msgstr "" msgid "Zoom currently disabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "" - -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, c-format msgid "The server is probably running a different version of %s." @@ -1639,6 +1594,91 @@ msgstr "" msgid "Connection error (timed out?)" msgstr "" +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "" + #: src/client/gameui.cpp msgid "Chat shown" msgstr "" @@ -1960,7 +2000,7 @@ msgid "Minimap in texture mode" msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #: src/client/shader.cpp @@ -2041,23 +2081,23 @@ msgstr "" msgid "Right" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" @@ -2069,19 +2109,19 @@ msgstr "" msgid "Next item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2089,11 +2129,11 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2117,7 +2157,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2149,7 +2189,7 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" @@ -2190,7 +2230,7 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2198,15 +2238,43 @@ msgstr "" msgid "Muted" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" @@ -2632,7 +2700,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -2652,8 +2723,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2855,16 +2925,12 @@ msgstr "" msgid "Clouds" msgstr "" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "3D clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." +msgid "Allow clouds to look 3D instead of flat." msgstr "" #: src/settings_translation_file.cpp @@ -2914,7 +2980,9 @@ msgid "Anisotropic filtering" msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -2928,17 +2996,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -3033,14 +3103,6 @@ msgid "" "at the expense of minor visual glitches that do not impact game playability." msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Waving Nodes" msgstr "" @@ -3144,17 +3206,6 @@ msgid "" "This can cause much more artifacts in the shadow." msgstr "" -#: src/settings_translation_file.cpp -msgid "Poisson filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Poisson disk filtering.\n" -"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " -"filtering." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -3172,20 +3223,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map shadows update frames" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread a complete update of shadow map over given number of frames.\n" -"Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3346,8 +3385,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -3436,18 +3474,6 @@ msgid "" "to hardware (e.g. render-to-texture for nodes in inventory)." msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - #: src/settings_translation_file.cpp msgid "Tooltip delay" msgstr "" @@ -3616,7 +3642,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3660,8 +3686,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." msgstr "" #: src/settings_translation_file.cpp @@ -3686,7 +3713,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -3846,8 +3873,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -5423,13 +5449,11 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "Shaders" +msgid "OpenGL debug" msgstr "" #: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." +msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" #: src/settings_translation_file.cpp @@ -5464,6 +5488,18 @@ msgid "" "Set to 0 to disable it entirely." msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Cloud radius" msgstr "" @@ -5475,24 +5511,6 @@ msgid "" "corners." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Mapblock mesh generation delay" msgstr "" @@ -5514,6 +5532,16 @@ msgid "" "threads." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + #: src/settings_translation_file.cpp msgid "Minimap scan height" msgstr "" @@ -5559,12 +5587,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -5583,11 +5611,37 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -msgid "OpenGL debug" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp -msgid "Enables debug and error-checking in the OpenGL driver." +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Poisson filtering" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Enable Poisson disk filtering.\n" +"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " +"filtering." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Map shadows update frames" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "" +"Spread a complete update of the shadow map over a given number of frames.\n" +"Higher values might make shadows laggy, lower values\n" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6010,14 +6064,6 @@ msgid "" "Set this to -1 to disable the limit." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Map save interval" msgstr "" diff --git a/po/lv/luanti.po b/po/lv/luanti.po index 9a0f6267d..553e6f96f 100644 --- a/po/lv/luanti.po +++ b/po/lv/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-01-22 21:01+0000\n" "Last-Translator: Uko Koknevics \n" "Language-Team: Latvian ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Pārlūkot" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Izmainīt" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Izvēlēties mapi" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Izvēlēties failu" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nav iestatījuma apraksta)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Troksnis" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Atcelt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktāvas" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Nobīde" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Noturība" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Saglabāt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Mērogs" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Sēkla" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Izkaisījums pa X asi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Izkaisījums pa Y asi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Izkaisījums pa Z asi" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absolūtā vērtība" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "noklusējuma" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "atvieglots" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Čats" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Notīrīt" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Vadība" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Atspējots" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Iespējots" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Ātrā pārvietošanās" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Nav rezultātu" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Atiestatīt uz noklusējumu" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Meklēšana" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Rādīt tehniskos nosaukumus" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Izvēlieties pasauli:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Saturs" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Saturs" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -167,7 +412,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Atpakaļ" @@ -204,11 +448,6 @@ msgstr "Modi" msgid "No packages could be retrieved" msgstr "Nevarēja iegūt papildinājumus" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Nav rezultātu" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -257,18 +496,6 @@ msgstr "Šis taustiņš jau tiek izmantots" msgid "Base Game:" msgstr "Spēlēt (kā serveris)" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Atcelt" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -402,6 +629,12 @@ msgstr "Neizdevās instalēt modu kā $1" msgid "Unable to install a $1 as a texture pack" msgstr "Neizdevās ieinstalēt $1 kā tekstūru paku" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -466,12 +699,6 @@ msgstr "Nav neobligāto atkarību" msgid "Optional dependencies:" msgstr "Neobligātās atkarības:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Saglabāt" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Pasaule:" @@ -625,11 +852,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Sēkla" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -769,6 +991,23 @@ msgstr "" "Šim modu komplektam ir noteikts nosaukums, kas uzdots failā modpack.conf, un " "tas anulēs jebkādu pārsaukšanu šeit." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Iespējot visus" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -793,7 +1032,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Uzstādījumi" @@ -808,232 +1047,6 @@ msgstr "" "Pamēģiniet atkārtoti ieslēgt publisko serveru sarakstu un pārbaudiet " "interneta savienojumu." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Pārlūkot" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Izmainīt" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Izvēlēties mapi" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Izvēlēties failu" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nav iestatījuma apraksta)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Troksnis" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktāvas" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Nobīde" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Noturība" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Mērogs" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Izkaisījums pa X asi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Izkaisījums pa Y asi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Izkaisījums pa Z asi" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absolūtā vērtība" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "noklusējuma" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "atvieglots" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Čats" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Notīrīt" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Vadība" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Atspējots" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Iespējots" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Ātrā pārvietošanās" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Atiestatīt uz noklusējumu" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Meklēšana" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Rādīt tehniskos nosaukumus" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Izvēlieties pasauli:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Saturs" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Saturs" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Iespējots" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kameras atjaunošana atspējota" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1054,10 +1067,6 @@ msgstr "Pamata izstrādātāji" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1208,11 +1217,23 @@ msgstr "Sākt spēli" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Izdzēst no izlases" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- Adrese: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Izvēlieties pasauli:" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Radošais režīms" @@ -1228,6 +1249,11 @@ msgstr "- Bojājumi: " msgid "Favorites" msgstr "Pievienot izlasei" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spēle" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1240,10 +1266,26 @@ msgstr "Pievienoties spēlei" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Pings" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1333,23 +1375,6 @@ msgstr "" "\n" "Vairāk informācijas failā debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Režīms: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Publisks: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Severa nosaukums: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1360,6 +1385,11 @@ msgstr "Radās kļūme:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Atkļūdošanas informācija parādīta" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automātiskā pārvietošanās izslēgta" @@ -1380,6 +1410,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kameras atjaunošana atspējota" @@ -1393,10 +1427,6 @@ msgstr "Kameras atjaunošana iespējota" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Tuvināšana šobrīd atspējota vai nu spēlei, vai modam" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Nomainīt paroli" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Kino režīms izslēgts" @@ -1425,39 +1455,6 @@ msgstr "Savienojuma kļūme (noildze?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Turpināt" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Noklusējuma kontroles:\n" -"Ne izvēlnē:\n" -"- pieskāriens: aktivizē pogu\n" -"- dubultpieskāriens: nolikt/izmantot\n" -"- vilkt ar pirksto: skatīties apkārt\n" -"Izvēlnē/inventārā:\n" -"- dubultpieskāriens (ārpus izvēlnes)\n" -" --> aizvērt izvēlni\n" -"- pieskāriens priekšmetiem, pieskāriens kastītei:\n" -" --> pārvietot priekšmetus\n" -"- pieskāriens&vilkšana, ar otru pirkstu pieskāriens:\n" -" --> novietot vienu priekšmetu kastītē\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1471,32 +1468,15 @@ msgstr "Izveido klientu..." msgid "Creating server..." msgstr "Izveido serveri..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Atkļūdošanas informācija un profilēšanas grafiks paslēpti" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Atkļūdošanas informācija parādīta" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" -"Atkļūdošanas informācija, profilēšanas grafiks un karkasattēlojums atspējoti" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Izveido klientu..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Iziet uz izvēlni" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Iziet uz OS" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Ātrais režīms izslēgts" @@ -1534,18 +1514,6 @@ msgstr "Migla iespējota" msgid "Fog enabled by game or mod" msgstr "Tuvināšana šobrīd atspējota vai nu spēlei, vai modam" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spēles informācija:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spēle nopauzēta" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Lokāls serveris" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Priekšmetu apraksti..." @@ -1583,14 +1551,6 @@ msgstr "“Noclip” režīms ieslēgts (bet: nav “noclip” privilēģijas)" msgid "Node definitions..." msgstr "Bloku apraksti..." -#: src/client/game.cpp -msgid "Off" -msgstr "Izslēgts" - -#: src/client/game.cpp -msgid "On" -msgstr "Ieslēgts" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Kustība uz augšu/leju pēc skatīšanās virziena izslēgta" @@ -1603,38 +1563,22 @@ msgstr "Kustība uz augšu/leju pēc skatīšanās virziena ieslēgta" msgid "Profiler graph shown" msgstr "Profilēšanas grafiks parādīts" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Attālināts serveris" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Atrisina adresi..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Atdzīvoties" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Beidz darbu..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Viena spēlētāja režīms" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Skaņas skaļums" - #: src/client/game.cpp msgid "Sound muted" msgstr "Skaņa izslēgta" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1708,18 +1652,116 @@ msgstr "Redzamības diapazons nomainīts uz %d" msgid "Volume changed to %d%%" msgstr "Skaļums nomainīts uz %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Karkasattēlojums iespējots" -#: src/client/game.cpp -msgid "You died" -msgstr "Jūs nomirāt" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Tuvināšana šobrīd atspējota vai nu spēlei, vai modam" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Režīms: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Publisks: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Severa nosaukums: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Nomainīt paroli" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Turpināt" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Noklusējuma kontroles:\n" +"Ne izvēlnē:\n" +"- pieskāriens: aktivizē pogu\n" +"- dubultpieskāriens: nolikt/izmantot\n" +"- vilkt ar pirksto: skatīties apkārt\n" +"Izvēlnē/inventārā:\n" +"- dubultpieskāriens (ārpus izvēlnes)\n" +" --> aizvērt izvēlni\n" +"- pieskāriens priekšmetiem, pieskāriens kastītei:\n" +" --> pārvietot priekšmetus\n" +"- pieskāriens&vilkšana, ar otru pirkstu pieskāriens:\n" +" --> novietot vienu priekšmetu kastītē\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Iziet uz izvēlni" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Iziet uz OS" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spēles informācija:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spēle nopauzēta" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Lokāls serveris" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Izslēgts" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ieslēgts" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Attālināts serveris" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Atdzīvoties" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Skaņas skaļums" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Jūs nomirāt" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2060,7 +2102,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Neizdevās lejuplādēt $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2111,7 +2153,7 @@ msgstr "Auto-iešana" msgid "Automatic jumping" msgstr "Automātiskā lekšana" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2123,7 +2165,7 @@ msgstr "Atmuguriski" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Mainīt kameru" @@ -2147,7 +2189,7 @@ msgstr "Sam. skaļumu" msgid "Double tap \"jump\" to toggle fly" msgstr "Nospied “lekt” divreiz, lai lidotu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Mest" @@ -2163,11 +2205,11 @@ msgstr "Pal. diapazonu" msgid "Inc. volume" msgstr "Pal. skaļumu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventārs" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Lekt" @@ -2199,7 +2241,7 @@ msgstr "Nāk. priekšmets" msgid "Prev. item" msgstr "Iepr. priekšmets" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Redzamības diapazons" @@ -2211,7 +2253,7 @@ msgstr "Pa labi" msgid "Screenshot" msgstr "Ekrānšāviņš" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Lavīties" @@ -2219,15 +2261,15 @@ msgstr "Lavīties" msgid "Toggle HUD" msgstr "Spēles saskarne" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Čata logs" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Ātrā pārvietošanās" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Lidot" @@ -2235,11 +2277,11 @@ msgstr "Lidot" msgid "Toggle fog" msgstr "Migla" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Minikarte" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "“Noclip”" @@ -2247,7 +2289,7 @@ msgstr "“Noclip”" msgid "Toggle pitchmove" msgstr "Pārvietoties pēc skatīšanās leņķa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2284,7 +2326,7 @@ msgstr "Vecā parole" msgid "Passwords do not match!" msgstr "Paroles nesakrīt!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Iziet" @@ -2297,15 +2339,46 @@ msgstr "Apklusināts" msgid "Sound Volume: %d%%" msgstr "Skaņas skaļums: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Vidējā poga" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Gatavs!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Attālināts serveris" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Migla" @@ -2505,8 +2578,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2559,10 +2631,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2586,6 +2654,16 @@ msgstr "Pasaules nosaukums" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2959,11 +3037,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2988,7 +3066,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3123,6 +3201,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3274,19 +3360,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekorācijas" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3314,6 +3392,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3389,8 +3475,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3463,8 +3549,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3479,12 +3564,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3787,10 +3866,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4016,12 +4091,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4040,6 +4109,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4137,10 +4213,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4756,10 +4828,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4792,6 +4860,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4882,7 +4954,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5325,17 +5397,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5532,16 +5606,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Šeideri" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5705,10 +5769,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5987,10 +6050,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6049,6 +6108,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6099,7 +6162,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6122,16 +6188,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6369,20 +6433,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6393,10 +6449,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6419,8 +6471,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6642,6 +6693,14 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "Bojājumi iespējoti" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Atkļūdošanas informācija un profilēšanas grafiks paslēpti" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "" +#~ "Atkļūdošanas informācija, profilēšanas grafiks un karkasattēlojums " +#~ "atspējoti" + #~ msgid "Disabled unlimited viewing range" #~ msgstr "Atspējots neierobežots redzamības diapazons" @@ -6657,6 +6716,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "Lejuplādējas un instalējas $1, lūdzu uzgaidiet..." +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Iespējots" + #~ msgid "Enter " #~ msgstr "Ievadiet " @@ -6674,9 +6737,6 @@ msgstr "" #~ msgid "Flying" #~ msgstr "Lidošana" -#~ msgid "Game" -#~ msgstr "Spēle" - #~ msgid "Generate Normal Maps" #~ msgstr "Izveidot normāl-kartes" @@ -6788,10 +6848,17 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "Ekrāns:" +#~ msgid "Shaders" +#~ msgstr "Šeideri" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Šeideri (nepieejami)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kameras atjaunošana atspējota" + #~ msgid "Simple Leaves" #~ msgstr "Vienkāršas lapas" diff --git a/po/lzh/luanti.po b/po/lzh/luanti.po index 623feee94..725b23383 100644 --- a/po/lzh/luanti.po +++ b/po/lzh/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Chinese (Literary) ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -157,7 +395,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -193,11 +430,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -242,18 +474,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -375,6 +595,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -437,12 +663,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "" @@ -593,11 +813,6 @@ msgstr "川" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -733,6 +948,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -757,7 +988,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -769,223 +1000,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1006,10 +1020,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1154,10 +1164,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1171,6 +1191,10 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1183,10 +1207,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1269,23 +1309,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1295,6 +1318,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1315,6 +1342,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1327,10 +1358,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1359,26 +1386,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1392,31 +1399,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1453,18 +1444,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1501,14 +1480,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1521,38 +1492,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "复生" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "消音" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1624,18 +1579,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "尔死矣" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "复生" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "尔死矣" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1962,7 +2002,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2010,7 +2050,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2022,7 +2062,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2046,7 +2086,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2062,11 +2102,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2098,7 +2138,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2110,7 +2150,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2118,15 +2158,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2134,11 +2174,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2146,7 +2186,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2182,7 +2222,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2195,15 +2235,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2398,8 +2466,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2452,10 +2519,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2478,6 +2541,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2845,11 +2918,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2874,7 +2947,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3009,6 +3082,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3160,18 +3241,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3199,6 +3272,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3272,8 +3353,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3346,8 +3427,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3362,12 +3442,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3669,10 +3743,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3896,12 +3966,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3920,6 +3984,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4014,10 +4085,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4632,10 +4699,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4668,6 +4731,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4757,7 +4824,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5196,17 +5263,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5399,16 +5468,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5570,10 +5629,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5852,10 +5910,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5914,6 +5968,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5964,7 +6022,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -5987,16 +6048,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6233,20 +6292,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6257,10 +6308,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6283,8 +6330,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" diff --git a/po/mi/luanti.po b/po/mi/luanti.po index 8a4b42099..38d3a96ee 100644 --- a/po/mi/luanti.po +++ b/po/mi/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Maori ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "Taea te kino" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -162,7 +401,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -198,11 +436,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -247,18 +480,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -383,6 +604,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -445,12 +672,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "" @@ -601,11 +822,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -741,6 +957,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -765,7 +997,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Tautuhinga" @@ -777,225 +1009,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "Taea te kino" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Taea te kino" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Kaihunga" @@ -1016,10 +1029,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1165,10 +1174,20 @@ msgstr "Tīmata Kēmu" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Wāhi noho" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1182,6 +1201,10 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1194,10 +1217,26 @@ msgstr "Uru Kēmu" msgid "Login" msgstr "Takiuru" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1280,23 +1319,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1306,6 +1328,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1326,6 +1352,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1338,10 +1368,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Huri Kupuhuna" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1370,26 +1396,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Haere Tonu" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1403,31 +1409,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Puta ki te pae tahua" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Tata kēmu taki puta" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1464,18 +1454,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1512,14 +1490,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1532,38 +1502,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Rōrahi Oro" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1635,16 +1589,101 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" #: src/client/game.cpp -msgid "You died" +msgid "Zoom currently disabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Zoom currently disabled by game or mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Huri Kupuhuna" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Haere Tonu" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Puta ki te pae tahua" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Tata kēmu taki puta" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Rōrahi Oro" + +#: src/client/game_formspec.cpp +msgid "You died" msgstr "" #: src/client/gameui.cpp @@ -1976,7 +2015,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2024,7 +2063,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2036,7 +2075,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2060,7 +2099,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2076,11 +2115,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2112,7 +2151,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2124,7 +2163,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2132,15 +2171,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2148,11 +2187,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2160,7 +2199,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2196,7 +2235,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2209,15 +2248,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2413,8 +2480,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2467,10 +2533,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2493,6 +2555,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2860,11 +2932,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2889,7 +2961,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3024,6 +3096,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3175,18 +3255,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3214,6 +3286,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3288,8 +3368,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3362,8 +3442,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3378,12 +3457,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3685,10 +3758,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3912,12 +3981,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3936,6 +3999,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4030,10 +4100,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4648,10 +4714,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4684,6 +4746,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4773,7 +4839,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5212,17 +5278,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5415,16 +5483,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5585,10 +5643,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5867,10 +5924,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5929,6 +5982,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5979,7 +6036,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6002,16 +6062,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6248,20 +6306,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6272,10 +6322,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6298,8 +6344,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6452,3 +6497,7 @@ msgstr "" #~ "- Mouse: tirohanga\n" #~ "- Mouse wheel: ti pako\n" #~ "- %s: korero\n" + +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Taea te kino" diff --git a/po/mn/luanti.po b/po/mn/luanti.po index 2e8d9e549..91ddcb1af 100644 --- a/po/mn/luanti.po +++ b/po/mn/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Mongolian ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua #, fuzzy msgid "" @@ -162,7 +400,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -198,11 +435,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -247,18 +479,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -381,6 +601,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Идэвхжсэн, алдаатай)" @@ -443,12 +669,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Ертөнц:" @@ -599,11 +819,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -739,6 +954,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Шинэ $1 хувилбар ашиглах боломжтой байна." @@ -767,7 +998,7 @@ msgstr "Хэзээ ч үгүй" msgid "Visit website" msgstr "Вебсайтаар зочилох" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -779,223 +1010,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1016,10 +1030,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1165,10 +1175,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1182,6 +1202,10 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1194,10 +1218,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1280,23 +1320,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1306,6 +1329,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1326,6 +1353,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1338,10 +1369,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1370,26 +1397,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1403,31 +1410,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1464,18 +1455,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1512,14 +1491,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1532,38 +1503,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Дахин төрөх" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1635,18 +1590,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Та үхсэн" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Дахин төрөх" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Та үхсэн" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1973,7 +2013,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2021,7 +2061,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2033,7 +2073,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2057,7 +2097,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2073,11 +2113,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2109,7 +2149,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2121,7 +2161,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2129,15 +2169,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2145,11 +2185,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2157,7 +2197,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2193,7 +2233,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2206,15 +2246,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2410,8 +2478,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2464,10 +2531,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2490,6 +2553,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2857,11 +2930,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2886,7 +2959,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3021,6 +3094,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3172,18 +3253,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3211,6 +3284,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3284,8 +3365,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3358,8 +3439,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3374,12 +3454,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3681,10 +3755,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3908,12 +3978,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3932,6 +3996,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4026,10 +4097,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4645,10 +4712,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4681,6 +4744,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4770,7 +4837,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5210,17 +5277,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5413,16 +5482,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5583,10 +5642,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5865,10 +5923,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5927,6 +5981,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5977,7 +6035,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6000,16 +6061,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6246,20 +6305,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6270,10 +6321,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6296,8 +6343,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" diff --git a/po/mr/luanti.po b/po/mr/luanti.po index e41732192..20c03eaf2 100644 --- a/po/mr/luanti.po +++ b/po/mr/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Marathi ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "ब्राउझ करा" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "रद्द करा" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "ऑफसेट" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "बदल जतन करा" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "मोज" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "सीड" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "थंबवा" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "वापरा" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "कोणतीही गोष्ट नाहीत" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -159,7 +397,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -196,11 +433,6 @@ msgstr "मॉड" msgid "No packages could be retrieved" msgstr "काहीच सापडत नाही" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "कोणतीही गोष्ट नाहीत" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "अपडेट नाहीत" @@ -246,18 +478,6 @@ msgstr "आधीच स्थापित" msgid "Base Game:" msgstr "मुख्य खेळ:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "रद्द करा" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -382,6 +602,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -444,12 +670,6 @@ msgstr "कोणताही मॉड बदलणार नाही" msgid "Optional dependencies:" msgstr "बदलणारे मॉड:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "बदल जतन करा" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "जग:" @@ -601,11 +821,6 @@ msgstr "नद्या" msgid "Sea level rivers" msgstr "समुद्र पातळीवरील नद्या" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "सीड" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "भिन्न हवामान आणि आपत्ती यांच्यात सपाट संक्रमण" @@ -741,6 +956,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "सर्व वापरा" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -765,7 +997,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -777,224 +1009,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "ब्राउझ करा" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "ऑफसेट" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "मोज" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "थंबवा" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "वापरा" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "वापरा" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1015,10 +1029,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1164,10 +1174,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1181,6 +1201,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "खेळ" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1193,10 +1218,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1280,23 +1321,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1307,6 +1331,10 @@ msgstr "एक त्रुटी आली:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1327,6 +1355,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1339,10 +1371,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1371,26 +1399,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1404,31 +1412,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1465,18 +1457,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1513,14 +1493,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1533,38 +1505,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "पुनर्जन्म" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1636,18 +1592,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "तू मेलास" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "पुनर्जन्म" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "तू मेलास" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1975,7 +2016,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "$१ डाउनलोड करू नाही शकत" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2025,7 +2066,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2037,7 +2078,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2061,7 +2102,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2077,11 +2118,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2113,7 +2154,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2125,7 +2166,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2133,15 +2174,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2149,11 +2190,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2161,7 +2202,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2198,7 +2239,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2211,15 +2252,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2414,8 +2483,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2468,10 +2536,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2495,6 +2559,16 @@ msgstr "जगाचे नाव" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2863,11 +2937,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2892,7 +2966,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3027,6 +3101,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3178,19 +3260,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "सजावट" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3218,6 +3292,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3293,8 +3375,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3367,8 +3449,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3383,12 +3464,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3690,10 +3765,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3918,12 +3989,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3942,6 +4007,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4036,10 +4108,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4654,10 +4722,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4690,6 +4754,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4779,7 +4847,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5219,17 +5287,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5423,16 +5493,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5593,10 +5653,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5875,10 +5934,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5937,6 +5992,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5987,7 +6046,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6010,16 +6072,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6256,20 +6316,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6280,10 +6332,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6306,8 +6354,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6434,8 +6481,9 @@ msgstr "" #~ msgid "Download one from minetest.net" #~ msgstr "minetest.net वरुन डाउनलोड करा" -#~ msgid "Game" -#~ msgstr "खेळ" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "वापरा" #~ msgid "View more information in a web browser" #~ msgstr "अंतर्जाल शोधक वर माहिती काढा" diff --git a/po/ms/luanti.po b/po/ms/luanti.po index 06cfa5b03..e1aacf188 100644 --- a/po/ms/luanti.po +++ b/po/ms/luanti.po @@ -2,10 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Malay (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-17 02:15+0000\n" -"Last-Translator: \"Yaya - Nurul Azeera Hidayah @ Muhammad Nur Hidayat " -"Yasuyoshi\" \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-11-28 13:00+0000\n" +"Last-Translator: Muhammad Nuruddin \n" "Language-Team: Malay \n" "Language: ms\n" @@ -13,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.8-rc\n" +"X-Generator: Weblate 5.9-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -78,6 +77,249 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Layar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Sunting" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Pilih direktori" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Pilih fail" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Tetapkan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Tiada perihal untuk tetapan yang diberi)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Hingar 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Batal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakunariti" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaf" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Ofset" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Penerusan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Simpan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Benih" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Sebaran X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Sebaran Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Sebaran Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "nilai mutlak" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "lalai" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "tumpul" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Permainan akan perlu membolehkan bayang juga)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(Permainan akan perlu membolehkan bayang juga)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Permainan akan perlu membolehkan bayang juga)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Guna bahasa sistem)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Ketercapaian" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatik" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Sembang" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Padam" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Kawalan" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Dilumpuhkan" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Dibolehkan" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Umum" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Pergerakan" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Tiada hasil" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Tetap semula tetapan lalai" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Tetap semula tetapan lalai ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Cari" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Tunjuk tetapan lanjutan" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Tunjuk nama teknikal" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Skrin Sentuh" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS di menu jeda" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods Klien" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Kandungan: Permainan" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Kandungan: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Permainan akan perlu membolehkan bayang juga)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Tersuai" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Bayang dinamik" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Tinggi" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Rendah" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Sederhana" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Sangat Tinggi" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Sangat Rendah" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -160,11 +402,10 @@ msgstr "$1 dimuat turun..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Semua" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Kembali" @@ -179,7 +420,7 @@ msgstr "Memuat turun..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Diketengahkan" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +442,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Tiada pakej yang boleh diambil" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Tiada hasil" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Tiada kemas kini" @@ -251,18 +487,6 @@ msgstr "Sudah dipasang" msgid "Base Game:" msgstr "Permainan Asas:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Batal" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -317,11 +541,11 @@ msgstr "Keterangan Pelayan" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Derma" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Topik Forum" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -335,15 +559,15 @@ msgstr "Pasang $1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Penjejak Isu" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Sumber" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Terjemahkan" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -360,7 +584,7 @@ msgstr "Lawati laman sesawang" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "oleh $1 — $2 muat turun — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -390,6 +614,12 @@ msgstr "Tidak mampu memasang $1 sebagai $2" msgid "Unable to install a $1 as a texture pack" msgstr "Tidak mampu memasang $1 sebagai pek tekstur" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Dibolehkan, ada ralat)" @@ -454,12 +684,6 @@ msgstr "Tiada kebergantungan pilihan" msgid "Optional dependencies:" msgstr "Kebergantungan pilihan:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Simpan" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Dunia:" @@ -612,11 +836,6 @@ msgstr "Sungai" msgid "Sea level rivers" msgstr "Sungai aras laut" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Benih" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Peralihan lembut di antara biom" @@ -762,6 +981,23 @@ msgstr "" "Pek mods ini mempunyai nama khusus diberikan dalam fail modpack.conf " "miliknya yang akan mengatasi sebarang penamaan semula di sini." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Membolehkan semua" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Versi $1 baharu kini tersedia" @@ -790,7 +1026,7 @@ msgstr "Tidak Selamanya" msgid "Visit website" msgstr "Lawati laman sesawang" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Tetapan" @@ -804,228 +1040,6 @@ msgstr "" "Cuba aktifkan semula senarai pelayan awam dan periksa sambungan internet " "anda." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Layar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Sunting" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Pilih direktori" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Pilih fail" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Tetapkan" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Tiada perihal untuk tetapan yang diberi)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Hingar 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakunariti" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaf" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Ofset" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Penerusan" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Sebaran X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Sebaran Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Sebaran Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "nilai mutlak" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "lalai" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "tumpul" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Permainan akan perlu membolehkan bayang juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Permainan akan perlu membolehkan bayang juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Permainan akan perlu membolehkan bayang juga)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Guna bahasa sistem)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Ketercapaian" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Sembang" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Padam" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Kawalan" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Dilumpuhkan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Dibolehkan" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Umum" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Pergerakan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Tetap semula tetapan lalai" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Tetap semula tetapan lalai ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Cari" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Tunjuk tetapan lanjutan" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Tunjuk nama teknikal" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods Klien" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Kandungan: Permainan" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Kandungan: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Dibolehkan" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kemas kini kamera dilumpuhkan" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Permainan akan perlu membolehkan bayang juga)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Tersuai" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Bayang dinamik" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Tinggi" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Rendah" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Sederhana" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Sangat Tinggi" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Sangat Rendah" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Perihal" @@ -1046,10 +1060,6 @@ msgstr "Pembangun Teras" msgid "Core Team" msgstr "Pasukan Teras" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Peranti Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Buka Direktori Data Pengguna" @@ -1203,10 +1213,22 @@ msgstr "" "Anda perlu memasang sebuah permainan sebelum anda boleh mencipta sebuah " "dunia." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Buang kegemaran" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Alamat" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klien" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Mod Kreatif" @@ -1220,6 +1242,11 @@ msgstr "Boleh cedera / PvP" msgid "Favorites" msgstr "Kegemaran" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Permainan" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Pelayan Tidak Serasi" @@ -1232,10 +1259,28 @@ msgstr "Sertai Permainan" msgid "Login" msgstr "Log masuk" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Jumlah jalur timbul" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Langkah pelayan khusus" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Pelayan Awam" @@ -1321,23 +1366,6 @@ msgstr "" "\n" "Periksa fail debug.txt untuk maklumat lanjut." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mod: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Awam: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nama Pelayan: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Telah berlakunya ralat penyirian:" @@ -1347,6 +1375,11 @@ msgstr "Telah berlakunya ralat penyirian:" msgid "Access denied. Reason: %s" msgstr "Capaian dinafikan. Sebab: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Maklumat nyahpepijat ditunjukkan" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Pergerakan automatik dilumpuhkan" @@ -1367,6 +1400,10 @@ msgstr "Batas blok ditunjukkan untuk blok semasa" msgid "Block bounds shown for nearby blocks" msgstr "Batas blok ditunjukkan untuk blok berhampiran" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kemas kini kamera dilumpuhkan" @@ -1379,10 +1416,6 @@ msgstr "Kemas kini kamera dibolehkan" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Tidak boleh tunjuk batas blok (dilumpuhkan oleh permainan atau mods)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Tukar Kata Laluan" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Mod sinematik dilumpuhkan" @@ -1411,38 +1444,6 @@ msgstr "Ralat dalam penyambungan (tamat tempoh?)" msgid "Connection failed for unknown reason" msgstr "Sambungan gagal untuk sebab yang tidak diketahui" -#: src/client/game.cpp -msgid "Continue" -msgstr "Teruskan" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Kawalan:\n" -"Tiada menu dibuka:\n" -"- tarik dengan jari: lihat sekeliling\n" -"- ketik: letak/ketuk/guna (lalai)\n" -"- ketik dan tahan: gali/guna (lalai)\n" -"Menu/inventori dibuka:\n" -"- ketik berganda (di luar):\n" -" --> tutup\n" -"- sentuh tindanan, sentuh slot:\n" -" --> pindah tindanan\n" -"- sentuh&seret, ketik dengan jari ke2\n" -" --> letak satu item dalam slot\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1456,31 +1457,15 @@ msgstr "Sedang mencipta klien..." msgid "Creating server..." msgstr "Sedang mencipta pelayan..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Maklumat nyahpepijat dan graf pembukah disembunyikan" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Maklumat nyahpepijat ditunjukkan" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Maklumat nyahpepijat, graf pembukah, dan rangka dawai disembunyikan" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Ralat dalam mencipta klien: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Keluar ke Menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Keluar Terus Permainan" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Mod pergerakan pantas dilumpuhkan" @@ -1519,18 +1504,6 @@ msgstr "Kabut dibolehkan" msgid "Fog enabled by game or mod" msgstr "Kabut dibolehkan oleh permainan atau mods" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Maklumat permainan:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Permainan dijedakan" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Mengehos pelayan" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Sedang mentakrifkan item..." @@ -1567,14 +1540,6 @@ msgstr "Mod tembus blok dibolehkan (nota: tiada keistimewaan 'tembus blok')" msgid "Node definitions..." msgstr "Sedang mentakrifkan nod..." -#: src/client/game.cpp -msgid "Off" -msgstr "Tutup" - -#: src/client/game.cpp -msgid "On" -msgstr "Buka" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Mod pergerakan pic dilumpuhkan" @@ -1587,38 +1552,22 @@ msgstr "Mod pergerakan pic dibolehkan" msgid "Profiler graph shown" msgstr "Graf pembukah ditunjukkan" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Pelayan jarak jauh" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Sedang menyelesaikan alamat..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Jelma semula" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Sedang menutup..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Ekapemain" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Kekuatan Bunyi" - #: src/client/game.cpp msgid "Sound muted" msgstr "Bunyi dibisukan" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Sistem bunyi dilumpuhkan" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Sistem bunyi tidak disokong di binaan ini" @@ -1696,18 +1645,116 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Kekuatan bunyi ditukar ke %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Pembayang dibolehkan tetapi GLSL tidak disokong oleh pemacu." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Rangka dawai ditunjukkan" -#: src/client/game.cpp -msgid "You died" -msgstr "Anda telah meninggal" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zum dilumpuhkan oleh permainan atau mods ketika ini" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mod: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Awam: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nama Pelayan: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Tukar Kata Laluan" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Teruskan" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Kawalan:\n" +"Tiada menu dibuka:\n" +"- tarik dengan jari: lihat sekeliling\n" +"- ketik: letak/ketuk/guna (lalai)\n" +"- ketik dan tahan: gali/guna (lalai)\n" +"Menu/inventori dibuka:\n" +"- ketik berganda (di luar):\n" +" --> tutup\n" +"- sentuh tindanan, sentuh slot:\n" +" --> pindah tindanan\n" +"- sentuh&seret, ketik dengan jari ke2\n" +" --> letak satu item dalam slot\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Keluar ke Menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Keluar Terus Permainan" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Maklumat permainan:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Permainan dijedakan" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Mengehos pelayan" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Tutup" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Buka" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Pelayan jarak jauh" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Jelma semula" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Kekuatan Bunyi" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Anda telah meninggal" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Sembang dilumpuhkan oleh permainan atau mods ketika ini" @@ -2034,7 +2081,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Gagal untuk kompil pembayang \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "Pembayang dibolehkan tetapi GLSL tidak disokong oleh pemacu." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2086,7 +2134,7 @@ msgstr "Autopergerakan" msgid "Automatic jumping" msgstr "Lompat automatik" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2098,7 +2146,7 @@ msgstr "Ke Belakang" msgid "Block bounds" msgstr "Batas blok" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Tukar kamera" @@ -2122,7 +2170,7 @@ msgstr "Perlahankan bunyi" msgid "Double tap \"jump\" to toggle fly" msgstr "Ketik berganda \"lompat\" untuk menogol terbang" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Jatuhkan" @@ -2138,11 +2186,11 @@ msgstr "Naikkan jarak" msgid "Inc. volume" msgstr "Kuatkan bunyi" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventori" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Lompat" @@ -2174,7 +2222,7 @@ msgstr "Item seterusnya" msgid "Prev. item" msgstr "Item sebelumnya" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Jarak Pemilihan" @@ -2186,7 +2234,7 @@ msgstr "Ke Kanan" msgid "Screenshot" msgstr "Tangkap layar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Selinap" @@ -2194,15 +2242,15 @@ msgstr "Selinap" msgid "Toggle HUD" msgstr "Togol papar pandu (HUD)" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Togol log sembang" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Togol pergerakan pantas" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Togol Terbang" @@ -2210,11 +2258,11 @@ msgstr "Togol Terbang" msgid "Toggle fog" msgstr "Togol kabut" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Togol peta mini" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Togol tembus blok" @@ -2222,7 +2270,7 @@ msgstr "Togol tembus blok" msgid "Toggle pitchmove" msgstr "Togol pergerakan mencuram" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zum" @@ -2258,7 +2306,7 @@ msgstr "Kata Laluan Lama" msgid "Passwords do not match!" msgstr "Kata laluan tidak padan!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Keluar" @@ -2271,16 +2319,47 @@ msgstr "Dibisukan" msgid "Sound Volume: %d%%" msgstr "Kekuatan Bunyi: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Butang Tengah" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Selesai!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Pelayan jarak jauh" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID Kayu Bedik" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" -msgstr "" +msgstr "Menu tambahan" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Togol kabut" @@ -2290,14 +2369,18 @@ msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"Sebuah klien lain sedang bersambung dengan nama ini. Jika klien anda tutup " +"secara tiba-tiba, cuba lagi dalam beberapa minit." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." msgstr "" +"Kata laluan kosong adalah tidak dibenarkan. Tetapkan kata laluan dan cuba " +"lagi." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Ralat dalaman pelayan" #: src/network/clientpackethandler.cpp #, fuzzy @@ -2324,7 +2407,7 @@ msgstr "Nama sudah diambil. Sila pilih nama yang lain" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Nama pemain mempunyai aksara yang tidak dibenarkan" #: src/network/clientpackethandler.cpp #, fuzzy @@ -2340,30 +2423,36 @@ msgstr "Sedang menutup..." msgid "" "The server has experienced an internal error. You will now be disconnected." msgstr "" +"Pelayan telah mengalami ralat dalaman. Anda kini akan diputuskan sambungan." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." msgstr "" +"Pelayan sedang berjalan dalam mod ekapemain. Anda tidak boleh bersambung." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Terlalu banyak pengguna" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Sebab pemutusan sambungan tidak diketahui." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Klien anda telah menghantar sesuatu yang tidak dijangka oleh pelayan. Cuba " +"sambungkan semula atau kemas kini klien anda." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Versi klien anda tidak disokong.\n" +"Sila hubungi pentadbir pelayan." #: src/server.cpp #, c-format @@ -2494,6 +2583,7 @@ msgstr "" "Hingar 3D yang menentukan jumlah kurungan bawah tanah per ketulan peta." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2502,8 +2592,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Sokongan 3D.\n" "Mod yang disokong ketika ini:\n" @@ -2568,10 +2657,6 @@ msgstr "Jarak blok aktif" msgid "Active object send range" msgstr "Jarak penghantaran objek aktif" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Menambah partikel apabila menggali nod." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2603,6 +2688,17 @@ msgstr "Nama pentadbir" msgid "Advanced" msgstr "Lanjutan" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Guna paparan awan 3D menggantikan awan rata." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Membolehkan cecair untuk menjadi lut cahaya." @@ -2655,11 +2751,11 @@ msgstr "Kaedah antialias" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Pilihan antitipu" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Toleransi pergerakan antitipu" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2694,7 +2790,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Gunakan pembayangan spekular pada nod." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -3008,14 +3104,14 @@ msgstr "Jejari awan" msgid "Clouds" msgstr "Awan" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Awan itu kesan janaan pihak klien." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Awan dalam menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Kabut berwarna" @@ -3043,7 +3139,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Senarai bendera yang ingin disembunyikan dalam repositori kandungan " "dipisahkan dengan koma.\n" @@ -3214,6 +3310,14 @@ msgstr "Tahap log nyahpepijat" msgid "Debugging" msgstr "Nyahpepijat" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Langkah pelayan khusus" @@ -3394,18 +3498,10 @@ msgstr "" "Gurun akan dijana apabila np_biome melebihi nilai ini.\n" "Apabila bendera 'snowbiomes' dibolehkan, tetapan ini diabaikan." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Menyahsegerakkan animasi blok" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Pilihan Pembangun" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Partikel ketika menggali" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Menolak kata laluan kosong" @@ -3437,6 +3533,14 @@ msgstr "Ketik berganda \"lompat\" untuk terbang" msgid "Double-tapping the jump key toggles fly mode." msgstr "Ketik berganda kekunci lompat menogol mod terbang." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Longgokkan maklumat nyahpepijat janapeta." @@ -3521,9 +3625,10 @@ msgstr "" "pemandangan, menyelakukan perlakuan mata manusia." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Membolehkan bayang berwarna. \n" "Jika dibenarkan, nod lut cahaya mengeluarkan bayang berwarna. Fungsi ini " @@ -3590,7 +3695,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "Dayakan penunjuk tersedia kemas kini pada tab kandungan" #: src/settings_translation_file.cpp msgid "" @@ -3614,10 +3719,10 @@ msgstr "" "Contohnya: 0 untuk tiada apungan; 1.0 untuk biasa; 2.0 untuk dua kali ganda." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Membolehkan/melumpuhkan penjalanan pelayan IPv6.\n" "Diabaikan jika tetapan bind_address ditetapkan.\n" @@ -3639,13 +3744,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Membolehkan animasi item dalam inventori." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Membolehkan pengagregatan jejaring yang diputar di paksi Y (facedir)." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Membolehkan nyahpepijat dan pemeriksaan ralat dalam pemacu OpenGL." @@ -3666,6 +3764,11 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"Mendayakan kawalan skrin sentuh, membolehkan anda bermain permainan dengan " +"skrin sentuh.\n" +"\"auto\" bermaksud bahawa kawalan skrin sentuh akan didayakan dan " +"dinyahdayakan\n" +"secara automatik bergantung pada kaedah input terakhir yang digunakan." #: src/settings_translation_file.cpp msgid "" @@ -3993,10 +4096,6 @@ msgstr "Penyesuaian GUI" msgid "GUI scaling filter" msgstr "Penapis penyesuaian GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Penapis penyesuaian GUI txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Pad permainan" @@ -4249,6 +4348,9 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"Jika didayakan dan anda telah memasang pakej ContentDB, Luanti boleh " +"menghubungi ContentDB untuk\n" +"menyemak kemas kini pakej semasa membuka menu utama." #: src/settings_translation_file.cpp msgid "" @@ -4259,15 +4361,6 @@ msgstr "" "Jika dibolehkan, kekunci \"Aux1\" akan digunakan untuk panjat ke bawah dan\n" "turun dalam mod terbang, menggantikan kekunci \"Selinap\"." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Jika dibolehkan, pendaftaran akaun dipisahkan dari log masuk dalam UI.\n" -"Jika dilumpuhkan, akaun baharu akan didaftarkan secara automatik ketika log " -"masuk." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4293,6 +4386,17 @@ msgstr "" "Jika dibolehkan, pemain tidak boleh sertai tanpa kata laluan atau tukar " "kepada kata laluan yang kosong." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Jika dibolehkan, pendaftaran akaun dipisahkan dari log masuk dalam UI.\n" +"Jika dilumpuhkan, akaun baharu akan didaftarkan secara automatik ketika log " +"masuk." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4417,12 +4521,6 @@ msgstr "" "Selang masa di antara penyimpanan perubahan penting dalam dunia, dinyatakan " "dalam unit saat." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Selang di antara penghantaran maklumat waktu dalam hari kepada klien, " -"dinyatakan dalam saat." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animasi item inventori" @@ -5081,6 +5179,10 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"Bilangan maksimum paket yang dihantar setiap langkah penghantaran dalam kod " +"rangkaian peringkat rendah.\n" +"Anda biasanya tidak perlu menukar ini, walau bagaimanapun pelayan yang sibuk " +"mungkin mendapat manfaat daripada bilangan yang lebih tinggi." #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5144,10 +5246,6 @@ msgstr "" msgid "Maximum users" msgstr "Had jumlah pengguna" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Cache jejaring" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Mesej hari ini" @@ -5180,6 +5278,10 @@ msgstr "Had minimum jumlah rawak gua besar per ketulan peta." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Had minimum jumlah rawak gua kecil per ketulan peta." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Pemetaan Mip" @@ -5273,9 +5375,10 @@ msgstr "" "- Pilihan floatlands di v7 (dilumpuhkan secara lalainya)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nama pemain.\n" @@ -5317,7 +5420,7 @@ msgstr "Tonjolan nod" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "Spekular nod" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5577,6 +5680,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"Jejari untuk digunakan apabila ciri HUD sempadan blok ditetapkan kepada blok " +"berhampiran." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5803,23 +5908,26 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "Lihat http://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5903,6 +6011,8 @@ msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." msgstr "" +"Hantar nama pemain dalam talian ke senarai pelayan. Jika dinyahdayakan hanya " +"kiraan pemain didedahkan." #: src/settings_translation_file.cpp #, fuzzy @@ -5935,6 +6045,9 @@ msgid "" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"Konfigurasi antielat pelayan.\n" +"Bendera adalah positif. Nyahtanda bendera untuk menyahdayakan modul antielat " +"yang sepadan." #: src/settings_translation_file.cpp msgid "Server description" @@ -6083,16 +6196,6 @@ msgstr "" msgid "Shader path" msgstr "Laluan pembayang" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Pembayang" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Kualiti penapisan bayang" @@ -6164,6 +6267,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." msgstr "" +"Simulasikan lut sinar apabila melihat dedaunan di bawah cahaya matahari." #: src/settings_translation_file.cpp msgid "" @@ -6284,11 +6388,11 @@ msgstr "" "tindanan untuk sesetengah (atau semua) item." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Sebar kemas kini lengkap peta bayang merentasi jumlah bingkai yang diberi.\n" "Nilai lebih tinggi mungkin membuatkan bayang lembap bertindak balas,\n" @@ -6677,10 +6781,6 @@ msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" "Waktu dalam hari apabila dunia baru dimulakan, dalam milijam (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Selang penghantaran masa" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Kelajuan masa" @@ -6708,6 +6808,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"Toleransi pengesan elat pergerakan.\n" +"Tingkatkan nilai jika pemain mengalami pergerakan gagap." #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6747,6 +6849,11 @@ msgstr "Cecair berlut cahaya" msgid "Transparency Sorting Distance" msgstr "Jarak Pengisihan Lut Sinar" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Jarak Pengisihan Lut Sinar" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Hingar pokok" @@ -6807,12 +6914,16 @@ msgid "Undersampling" msgstr "Pensampelan pengurangan" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Pensampelan pengurangan serupa seperti menggunakan leraian skrin lebih " "rendah,\n" @@ -6842,16 +6953,15 @@ msgstr "Had Y atas kurungan bawah tanah." msgid "Upper Y limit of floatlands." msgstr "Had Y atas tanah terapung." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Guna paparan awan 3D menggantikan awan rata." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Gunakan animasi awan sebagai latar belakang menu utama." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Gunakan penapisan anisotropik apabila melihat tekstur dari suatu sudut." @@ -6895,7 +7005,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "Gunakan pembayangan awan yang licin." #: src/settings_translation_file.cpp msgid "" @@ -7104,13 +7214,17 @@ msgstr "Warna pautan sesawang" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "Apabila didayakan, pantulan cecair disimulasikan." #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"Apabila didayakan, GUI dioptimumkan agar lebih boleh digunakan pada skrin " +"sentuh.\n" +"Sama ada ini didayakan secara lalai bergantung pada faktor bentuk perkakasan " +"anda." #: src/settings_translation_file.cpp msgid "" @@ -7125,29 +7239,14 @@ msgstr "" "ke perkakasan (contohnya, kemas-gabung-ke-tekstur untuk nod dalam inventori)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Apabila penapis penyesuaian GUI gui_scaling_filter_txr2img ditetapkan kepada " -"\"true\", salin semula\n" -"kesemua imej tersebut dari perkakasan ke perisian untuk disesuaikan. " -"Sekiranya ditetapkan kepada\n" -"\"false\", berbalik kepada kaedah penyesuaian yang lama, untuk pemacu video " -"yang tidak mampu\n" -"menyokong dengan sempurna fungsi muat turun semula tekstur daripada " -"perkakasan." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7174,11 +7273,6 @@ msgstr "" "Sama ada latar belakang tanda nama patut ditunjukkan secara lalainya.\n" "Mods masih boleh menetapkan latar belakang." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Sama ada animasi tekstur nod patut dinyahsegerakkan pada setiap blok peta." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7206,9 +7300,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Sama ada ingin papar kabut di penghujung kawasan yang kelihatan." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7402,6 +7496,9 @@ msgstr "Had cURL selari" #~ "Ambil perhatian bahawa medan alamat dalam menu utama mengatasi tetapan " #~ "ini." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Menambah partikel apabila menggali nod." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7562,6 +7659,9 @@ msgstr "Had cURL selari" #~ msgid "Clean transparent textures" #~ msgstr "Bersihkan tekstur lut sinar" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Awan itu kesan janaan pihak klien." + #~ msgid "Command key" #~ msgstr "Kekunci perintah" @@ -7658,9 +7758,15 @@ msgstr "Had cURL selari" #~ msgid "Darkness sharpness" #~ msgstr "Ketajaman kegelapan" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Maklumat nyahpepijat dan graf pembukah disembunyikan" + #~ msgid "Debug info toggle key" #~ msgstr "Kekunci togol maklumat nyahpepijat" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Maklumat nyahpepijat, graf pembukah, dan rangka dawai disembunyikan" + #~ msgid "Dec. volume key" #~ msgstr "Kekunci perlahankan bunyi" @@ -7723,9 +7829,15 @@ msgstr "Had cURL selari" #~ "pentakrifan biom menggantikan cara asal.\n" #~ "Had Y atasan lava di gua-gua besar." +#~ msgid "Desynchronize block animation" +#~ msgstr "Menyahsegerakkan animasi blok" + #~ msgid "Dig key" #~ msgstr "Kekunci gali" +#~ msgid "Digging particles" +#~ msgstr "Partikel ketika menggali" + #~ msgid "Disable anticheat" #~ msgstr "Melumpuhkan antitipu" @@ -7753,6 +7865,10 @@ msgstr "Had cURL selari" #~ msgid "Dynamic shadows:" #~ msgstr "Bayang dinamik:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Dibolehkan" + #~ msgid "Enable VBO" #~ msgstr "Membolehkan VBO" @@ -7786,6 +7902,13 @@ msgstr "Had cURL selari" #~ "tekstur atau perlu dijana secara automatik.\n" #~ "Perlukan pembayang dibolehkan." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Membolehkan pengagregatan jejaring yang diputar di paksi Y (facedir)." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Membolehkan pemetaan tona sinematik" @@ -7835,9 +7958,6 @@ msgstr "Had cURL selari" #~ "Pilihan percubaan, mungkin menampakkan ruang yang nyata di\n" #~ "antara blok apabila ditetapkan dengan nombor lebih besar daripada 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS di menu jeda" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7924,8 +8044,8 @@ msgstr "Had cURL selari" #~ msgid "Full screen BPP" #~ msgstr "BPP skrin penuh" -#~ msgid "Game" -#~ msgstr "Permainan" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Penapis penyesuaian GUI txr2img" #~ msgid "Gamma" #~ msgstr "Gama" @@ -8096,660 +8216,668 @@ msgstr "Had cURL selari" #~ msgid "Instrumentation" #~ msgstr "Instrumentasi" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Selang di antara penghantaran maklumat waktu dalam hari kepada klien, " +#~ "dinyatakan dalam saat." + #~ msgid "Invalid gamespec." #~ msgstr "Spesifikasi permainan tidak sah." #~ msgid "Inventory key" #~ msgstr "Kekunci inventori" +#~ msgid "Irrlicht device:" +#~ msgstr "Peranti Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Kekunci lompat" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk mengurangkan jarak pandang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memperlahankan bunyi.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggali.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menjatuhkan item yang sedang dipilih.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menambah jarak pandang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menguatkan bunyi.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk melompat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk bergerak pantas dalam mod pergerakan pantas.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggerakkan pemain ke belakang.\n" #~ "Juga akan melumpuhkan autopergerakan, apabila aktif.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggerakkan pemain ke depan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggerakkan pemain ke kiri.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggerakkan pemain ke kanan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk membisukan permainan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk membuka tetingkap sembang untuk menaip perintah.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk membuka tetingkap sembang untuk menaip perintah tempatan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk membuka tetingkap sembang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk membuka inventori.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk meletak.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-11 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-12 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-13 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-14 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-15 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-16 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-17 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-18 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-19 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-20 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-21 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-22 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-23 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-24 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-25 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-26 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-27 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-28 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-29 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-30 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-31 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-32 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-8 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-5 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot pertama dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-4 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih item seterusnya di dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-9 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih item sebelumnya di dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-2 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-7 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-6 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-10 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk memilih slot ke-3 dalam hotbar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menyelinap.\n" #~ "Juga digunakan untuk turun bawah ketika memanjat dan dalam air jika " #~ "tetapan aux1_descends dilumpuhkan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk bertukar antara kamera orang pertama dan ketiga.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menangkap gambar layar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol autopergerakan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol mod sinematik.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan peta mini.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol mod pergerakan pantas.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol mod terbang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol mod tembus blok.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol mod pergerakan pic.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol pengemaskinian kamera. Hanya digunakan untuk " #~ "pembangunan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan sembang.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan maklumat nyahpepijat.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan kabut.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol papar pandu (HUD).\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan konsol sembang besar.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol paparan pembukah. Digunakan untuk pembangunan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menogol jarak pandangan tiada had.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kekunci untuk menggunakan pandangan zum apabila dibenarkan.\n" -#~ "Lihat http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Lihat http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8826,6 +8954,9 @@ msgstr "Had cURL selari" #~ msgid "Menus" #~ msgstr "Menu" +#~ msgid "Mesh cache" +#~ msgstr "Cache jejaring" + #~ msgid "Minimap" #~ msgstr "Peta mini" @@ -9042,6 +9173,9 @@ msgstr "Had cURL selari" #~ "menggunakan lebih banyak sumber.\n" #~ "Nilai minimum 0.001 saat dan nilai maksimum 0.2 saat" +#~ msgid "Shaders" +#~ msgstr "Pembayang" + #~ msgid "Shaders (experimental)" #~ msgstr "Pembayang (dalam uji kaji)" @@ -9057,6 +9191,17 @@ msgstr "Had cURL selari" #~ "prestasi\n" #~ "untuk sesetengah kad video." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Pembayang ialah bahagian asas pemaparan dan membolehkan kesan visual " +#~ "lanjutan." + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kemas kini kamera dilumpuhkan" + #~ msgid "Shadow limit" #~ msgstr "Had bayang" @@ -9088,6 +9233,9 @@ msgstr "Had cURL selari" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Melembutkan pemutaran kamera. Set sebagai 0 untuk melumpuhkannya." +#~ msgid "Sound system is disabled" +#~ msgstr "Sistem bunyi dilumpuhkan" + #~ msgid "Special" #~ msgstr "Istimewa" @@ -9136,6 +9284,12 @@ msgstr "Had cURL selari" #~ msgid "This font will be used for certain languages." #~ msgstr "Fon ini akan digunakan untuk sesetengah bahasa." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Ini bukan konfigurasi yang disarankan." + +#~ msgid "Time send interval" +#~ msgstr "Selang penghantaran masa" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Untuk membolehkan pembayang, pemacu OpenGL mesti digunakan." @@ -9260,6 +9414,21 @@ msgstr "Had cURL selari" #~ msgid "Waving water" #~ msgstr "Air bergelora" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Apabila penapis penyesuaian GUI gui_scaling_filter_txr2img ditetapkan " +#~ "kepada \"true\", salin semula\n" +#~ "kesemua imej tersebut dari perkakasan ke perisian untuk disesuaikan. " +#~ "Sekiranya ditetapkan kepada\n" +#~ "\"false\", berbalik kepada kaedah penyesuaian yang lama, untuk pemacu " +#~ "video yang tidak mampu\n" +#~ "menyokong dengan sempurna fungsi muat turun semula tekstur daripada " +#~ "perkakasan." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9273,6 +9442,11 @@ msgstr "Had cURL selari" #~ msgstr "" #~ "Sama ada kurungan bawah tanah kadang-kala terlunjur daripada rupa bumi." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Sama ada animasi tekstur nod patut dinyahsegerakkan pada setiap blok peta." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "" #~ "Menetapkan sama ada ingin membenarkan pemain untuk mencederakan dan " diff --git a/po/ms_Arab/luanti.po b/po/ms_Arab/luanti.po index b940461ec..b67a703d6 100644 --- a/po/ms_Arab/luanti.po +++ b/po/ms_Arab/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-08-15 19:09+0000\n" "Last-Translator: bgo-eiu \n" "Language-Team: Malay (Jawi) ] [-t]" msgstr "[all | <ڤرينته>]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "لاير" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "ايديت" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "ڤيليه ديريکتوري" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "ڤيليه فاٴيل" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(تياد ڤريحل اونتوق تتڤن يڠ دبري)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "هيڠر 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "بطل" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "لاکوناريتي" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "اوکتف" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "اوفسيت" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "ڤنروسن" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "سيمڤن" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "سکالا" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "بنيه" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "سيبرن X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "سيبرن Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "سيبرن Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "نيلاي مطلق" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "لالاي" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "تومڤول" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "سيمبڠ" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "ڤادم" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "کاولن" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "دلومڤوهکن" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "دبوليهکن" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "ڤرݢرقن ڤنتس" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "تياد حاصيل" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "ڤوليهکن تتڤن اصل" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "چاري" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "تونجوق نام تيکنيکل" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "نيلاي امبڠ سکرين سنتوه" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS دمينو جيدا" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "ڤيليه دنيا:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "کندوڠن" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "کندوڠن" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Dynamic shadows" +msgstr "بايڠ فون" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "<تياد يڠ ترسديا>" @@ -164,7 +412,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "کبلاکڠ" @@ -202,11 +449,6 @@ msgstr "مودس" msgid "No packages could be retrieved" msgstr "تياد ڤاکيج يڠ بوليه دأمبيل" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "تياد حاصيل" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "تياد کمس کيني" @@ -252,18 +494,6 @@ msgstr "سوده دڤاسڠ" msgid "Base Game:" msgstr "ڤرماٴينن اساس:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "بطل" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -389,6 +619,12 @@ msgstr "تيدق ممڤو مماسڠ $1 سباݢاي $2" msgid "Unable to install a $1 as a texture pack" msgstr "تيدق ممڤو مماسڠ $1 سباݢاي ڤيک تيکستور" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(دبوليهکن⹁ اد رالت)" @@ -453,12 +689,6 @@ msgstr "تياد کبرݢنتوڠن ڤيليهن" msgid "Optional dependencies:" msgstr "کبرݢنتوڠن ڤيليهن:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "سيمڤن" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "دنيا:" @@ -609,11 +839,6 @@ msgstr "سوڠاي" msgid "Sea level rivers" msgstr "سوڠاي اوس لاٴوت" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "بنيه" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "ڤراليهن دأنتارا بيوم" @@ -756,6 +981,23 @@ msgstr "" "ڤيک مودس اين ممڤوڽاٴي نام خصوص دبريکن دالم فاٴيل modpack.conf ميليقڽ يڠ اکن " "مڠاتسي سبارڠ ڤناماٴن سمولا دسيني." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "ممبوليهکن سموا" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -780,7 +1022,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "تتڤن" @@ -793,233 +1035,6 @@ msgstr "سکريڤ ڤيهق کليئن دلومڤوهکن" msgid "Try reenabling public serverlist and check your internet connection." msgstr "چوبا اکتيفکن سمولا سناراي ڤلاين عوام دان ڤريقسا سامبوڠن اينترنيت اندا." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "لاير" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "ايديت" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "ڤيليه ديريکتوري" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "ڤيليه فاٴيل" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(تياد ڤريحل اونتوق تتڤن يڠ دبري)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "هيڠر 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "لاکوناريتي" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "اوکتف" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "اوفسيت" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "ڤنروسن" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "سکالا" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "سيبرن X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "سيبرن Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "سيبرن Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "نيلاي مطلق" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "لالاي" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "تومڤول" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "سيمبڠ" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "ڤادم" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "کاولن" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "دلومڤوهکن" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "دبوليهکن" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "ڤرݢرقن ڤنتس" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "ڤوليهکن تتڤن اصل" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "چاري" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "تونجوق نام تيکنيکل" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "ڤيليه دنيا:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "کندوڠن" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "کندوڠن" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "دبوليهکن" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "کمس کيني کاميرا دلومڤوهکن" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Dynamic shadows" -msgstr "بايڠ فون" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "ڤريحال" @@ -1041,10 +1056,6 @@ msgstr "ڤمباڠون ترس" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1196,11 +1207,23 @@ msgstr "مولاکن ڤرماٴينن" msgid "You need to install a game before you can create a world." msgstr "اندا ڤرلو ڤاسڠ ڤرماٴينن سبلوم اندا بوليه ڤاسڠ مودس" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "ڤورت جارق جاٴوه" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- علامت: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "کليئن" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "مود کرياتيف" @@ -1216,6 +1239,11 @@ msgstr "بوليه چدرا" msgid "Favorites" msgstr "کݢمرن" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "ڤرماٴينن" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1228,10 +1256,26 @@ msgstr "سرتاٴي ڤرماٴينن" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "ڤيڠ" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1321,23 +1365,6 @@ msgstr "" "\n" "ڤريقسا فاٴيل debug.txt اونتوق معلومت لنجوت." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- مود: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- عوام: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- نام ڤلاين: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1348,6 +1375,11 @@ msgstr "تله برلاکوڽ رالت:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "معلومت ڽهڤڤيجت دتونجوقکن" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "ڤرݢرقن اٴوتوماتيک دلومڤوهکن" @@ -1368,6 +1400,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "کمس کيني کاميرا دلومڤوهکن" @@ -1381,10 +1417,6 @@ msgstr "کمس کيني کاميرا دبوليهکن" msgid "Can't show block bounds (disabled by game or mod)" msgstr "زوم سدڠ دلومڤوهکن اوليه ڤرماٴينن اتاو مودس" -#: src/client/game.cpp -msgid "Change Password" -msgstr "توکر کات لالوان" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "مود سينماتيک دلومڤوهکن" @@ -1414,39 +1446,6 @@ msgstr "رالت دالم ڤڽمبوڠن (تامت تيمڤوه؟)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "تروسکن" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"کاولن اصل:\n" -"تيادا مينو کليهتن:\n" -"- تکن سکالي: اکتيفکن بوتڠ\n" -"- تکن دوا کالي: لتق بارڠ\\ݢونا سسواتو\n" -"- تاريق دڠن جاري: ليهت سکليليڠ\n" -"مينو\\اينۏينتوري کليهتن:\n" -"- تکن برݢندا (لوار کاوسن اينۏينتوري):\n" -" -->توتوڤ\n" -"- تکن تيندنن⹁ تکن سلوت:\n" -" --> ڤينده تيندنن\n" -"- سنتوه دان تاريق⹁ تکن سکرين ڤاکاي جاري کدوا\n" -" --> لتق ساتو ايتم دري تيندنن کدالم سلوت\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1460,31 +1459,15 @@ msgstr "سدڠ منچيڤت کليئن..." msgid "Creating server..." msgstr "سدڠ منچيڤت ڤلاين..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "معلومت ڽهڤڤيجت دان ݢراف ڤمبوکه دسمبوڽيکن" - #: src/client/game.cpp msgid "Debug info shown" msgstr "معلومت ڽهڤڤيجت دتونجوقکن" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "معلومت ڽهڤڤيجت⹁ ݢراف ڤمبوکه⹁ دان رڠک داواي دسمبوڽيکن" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "سدڠ منچيڤت کليئن..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "کلوار کمينو" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "کلوار تروس ڤرماٴينن" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "مود ڤرݢرقن ڤنتس دلومڤوهکن" @@ -1522,18 +1505,6 @@ msgstr "کابوت دبوليهکن" msgid "Fog enabled by game or mod" msgstr "زوم سدڠ دلومڤوهکن اوليه ڤرماٴينن اتاو مودس" -#: src/client/game.cpp -msgid "Game info:" -msgstr "معلومت ڤرماٴينن:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "ڤرماٴينن دجيداکن" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "مڠهوس ڤلاين" - #: src/client/game.cpp msgid "Item definitions..." msgstr "سدڠ منتعريفکن ايتم..." @@ -1571,14 +1542,6 @@ msgstr "مود تمبوس بلوک دبوليهکن (نوت: تيادا کأيس msgid "Node definitions..." msgstr "سدڠ منتعريفکن نود..." -#: src/client/game.cpp -msgid "Off" -msgstr "توتوڤ" - -#: src/client/game.cpp -msgid "On" -msgstr "بوک" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "مود ڤرݢرقن ڤيچ دلومڤوهکن" @@ -1591,38 +1554,22 @@ msgstr "مود ڤرݢرقن ڤيچ دبوليهکن" msgid "Profiler graph shown" msgstr "ݢراف ڤمبوکه دتونجوقکن" -#: src/client/game.cpp -msgid "Remote server" -msgstr "ڤلاين جارق جاٴوه" - #: src/client/game.cpp msgid "Resolving address..." msgstr "سدڠ مڽلسايکن علامت..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "جلما سمولا" - #: src/client/game.cpp msgid "Shutting down..." msgstr "سدڠ منوتوڤ..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "ڤماٴين ڤرسأورڠن" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "ککواتن بوڽي" - #: src/client/game.cpp msgid "Sound muted" msgstr "بوڽي دبيسوکن" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "سيستم بوڽي دلومڤوهکن" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "سيستم بوڽي تيدق دسوکوڠ دبيناٴن اين" @@ -1696,18 +1643,116 @@ msgstr "جارق ڤندڠ دتوکر ک%d" msgid "Volume changed to %d%%" msgstr "ککواتن بوڽي داوبه کڤد %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "رڠک داواي دتونجوقکن" -#: src/client/game.cpp -msgid "You died" -msgstr "اندا تله منيڠݢل" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "زوم سدڠ دلومڤوهکن اوليه ڤرماٴينن اتاو مودس" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- مود: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- عوام: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- نام ڤلاين: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "توکر کات لالوان" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "تروسکن" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"کاولن اصل:\n" +"تيادا مينو کليهتن:\n" +"- تکن سکالي: اکتيفکن بوتڠ\n" +"- تکن دوا کالي: لتق بارڠ\\ݢونا سسواتو\n" +"- تاريق دڠن جاري: ليهت سکليليڠ\n" +"مينو\\اينۏينتوري کليهتن:\n" +"- تکن برݢندا (لوار کاوسن اينۏينتوري):\n" +" -->توتوڤ\n" +"- تکن تيندنن⹁ تکن سلوت:\n" +" --> ڤينده تيندنن\n" +"- سنتوه دان تاريق⹁ تکن سکرين ڤاکاي جاري کدوا\n" +" --> لتق ساتو ايتم دري تيندنن کدالم سلوت\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "کلوار کمينو" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "کلوار تروس ڤرماٴينن" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "معلومت ڤرماٴينن:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "ڤرماٴينن دجيداکن" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "مڠهوس ڤلاين" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "توتوڤ" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "بوک" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "ڤلاين جارق جاٴوه" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "جلما سمولا" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "ککواتن بوڽي" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "اندا تله منيڠݢل" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2048,8 +2093,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "ݢاݢل ممبوک لامن سساوڠ" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "سيستم بوڽي تيدق دسوکوڠ دبيناٴن اين" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2098,7 +2144,7 @@ msgstr "أوتوڤرݢرقن" msgid "Automatic jumping" msgstr "لومڤت أوتوماتيک" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2110,7 +2156,7 @@ msgstr "کبلاکڠ" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "توکر کاميرا" @@ -2134,7 +2180,7 @@ msgstr "ڤرلاهنکن بوڽي" msgid "Double tap \"jump\" to toggle fly" msgstr "تکن دوا کالي \"لومڤت\" اونتوق منوݢول تربڠ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "جاتوهکن" @@ -2150,11 +2196,11 @@ msgstr "ناٴيقکن جارق" msgid "Inc. volume" msgstr "کواتکن بوڽي" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "اينۏينتوري" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "لومڤت" @@ -2186,7 +2232,7 @@ msgstr "ايتم ستروسڽ" msgid "Prev. item" msgstr "ايتم سبلومڽ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "جارق ڤميليهن" @@ -2198,7 +2244,7 @@ msgstr "ککانن" msgid "Screenshot" msgstr "تڠکڤ لاير" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "سلينڤ" @@ -2206,15 +2252,15 @@ msgstr "سلينڤ" msgid "Toggle HUD" msgstr "توݢول ڤاڤر ڤندو (HUD)" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "توݢول لوݢ سيمبڠ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "توݢول ڤرݢرقن ڤنتس" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "توݢول تربڠ" @@ -2222,11 +2268,11 @@ msgstr "توݢول تربڠ" msgid "Toggle fog" msgstr "توݢول کابوت" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "توݢول ڤتا ميني" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "توݢول تمبوس بلوک" @@ -2234,7 +2280,7 @@ msgstr "توݢول تمبوس بلوک" msgid "Toggle pitchmove" msgstr "توݢول ڤرݢرقن منچورم" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "زوم" @@ -2271,7 +2317,7 @@ msgstr "کات لالوان لام" msgid "Passwords do not match!" msgstr "کات لالوان تيدق ڤادن!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "کلوار" @@ -2284,16 +2330,47 @@ msgstr "دبيسوکن" msgid "Sound Volume: %d%%" msgstr "ککواتن بوڽي: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "بوتڠ تڠه" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "سلساي!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "ڤلاين جارق جاٴوه" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID کايو بديق" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "توݢول کابوت" @@ -2502,8 +2579,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "سوکوڠن 3D.\n" "يڠ دسوکوڠ ڤد ماس اين:\n" @@ -2568,10 +2644,6 @@ msgstr "جارق بلوک اکتيف" msgid "Active object send range" msgstr "جارق ڤڠهنترن اوبجيک اکتيف" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "منمبه ڤرتيکل اڤابيلا مڠݢالي نود." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2595,6 +2667,17 @@ msgstr "تمبه نام ايتم" msgid "Advanced" msgstr "تتڤن مندالم" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "ݢونا ڤاڤرن اون 3D مڠݢنتيکن اون رات." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2982,15 +3065,14 @@ msgstr "ججاري اون" msgid "Clouds" msgstr "اون" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "اون ايت ايفيک ڤد ڤيهق کليئن." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "اون دالم مينو" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "کابوت برورنا" @@ -3014,7 +3096,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3154,6 +3236,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3318,19 +3408,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "مڽهسݢرقکن انيماسي بلوک" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "هياسن" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "ڤرتيکل کتيک مڠݢالي" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "منولق کات لالوان کوسوڠ" @@ -3358,6 +3440,14 @@ msgstr "تکن \"لومڤت\" دوا کالي اونتوق تربڠ" msgid "Double-tapping the jump key toggles fly mode." msgstr "تکن بوتڠ \"لومڤت\" سچارا چڤت دوا کالي اونتوق منوݢول مود تربڠ." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3437,8 +3527,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3523,10 +3613,10 @@ msgstr "" "چونتوهڽ: 0 اونتوق تيادا اڤوڠن⁏ 1.0 اونتوق بياسا⁏ 2.0 اونتوق دوا کالي ݢندا." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "ممبوليهکن\\ملومڤوهکن ڤنجالنن ڤلاين IPv6.\n" "دأبايکن جک تتڤن bind_address دتتڤکن.\n" @@ -3549,13 +3639,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "ممبوليهکن انيماسي ايتم دالم اينۏينتوري." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "ممبوليهکن ڤڠاݢريݢتن ججاريڠ يڠ دڤوتر دڤکسي Y ايايت (facedir)." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3878,10 +3961,6 @@ msgstr "سکال GUI" msgid "GUI scaling filter" msgstr "ڤناڤيس سکال GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "ڤناڤيس سکال GUI جنيس txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4129,15 +4208,6 @@ msgstr "" "جيک دبوليهکن⹁ ککونچي \"ايستيميوا\" اکن دݢوناکن اونتوق ڤنجت کباوه دان\n" "تورون دالم مود تربڠ⹁ مڠݢنتيکن ککونچي \"سلينڤ\"." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"ممبوليهکن ڤڠصحن ڤندفترن اڤابيلا مڽمبوڠ کڤد ڤلاين.\n" -"جک دلومڤوهکن⹁ اکاٴون بارو اکن ددفترکن سچارا اٴوتوماتيک." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4159,6 +4229,16 @@ msgid "" "empty password." msgstr "جک دبوليهکن⹁ ڤماٴين٢ بارو تيدق بوليه ماسوق دڠن کات لالوان يڠ کوسوڠ." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"ممبوليهکن ڤڠصحن ڤندفترن اڤابيلا مڽمبوڠ کڤد ڤلاين.\n" +"جک دلومڤوهکن⹁ اکاٴون بارو اکن ددفترکن سچارا اٴوتوماتيک." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4261,11 +4341,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "سلڠ ماس دأنتارا ڤڽيمڤنن ڤروبهن ڤنتيڠ دالم دنيا⹁ دڽاتاکن دالم اونيت ساٴت." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "سلڠ دأنتارا ڤڠهنترن معلومت ماس ڤلاين کڤد کليئن." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "انيماسي ايتم اينۏينتوري" @@ -4903,10 +4978,6 @@ msgstr "" msgid "Maximum users" msgstr "حد جومله ڤڠݢونا" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "کيش ججاريڠ" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "ميسيج هاري اين" @@ -4940,6 +5011,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "ڤمتاٴن ميڤ" @@ -5032,7 +5107,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5528,17 +5603,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5750,16 +5827,6 @@ msgstr "" msgid "Shader path" msgstr "لالوان ڤمبايڠ" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "ڤمبايڠ" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -5937,10 +6004,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6270,10 +6336,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "وقتو دالم هاري اڤابيلا دنيا بارو دمولاکن⹁ دالم ميليجم (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "سلڠ ڤڠهنترن ماس" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "کلاجوان ماس" @@ -6343,6 +6405,10 @@ msgstr "چچاٴير لݢڤ" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6391,12 +6457,16 @@ msgid "Undersampling" msgstr "ڤنسمڤلن ڤڠورڠن" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "ڤنسمڤلن ڤڠورڠن سروڤ سڤرتي مڠݢوناکن ريسولوسي سکرين رنده⹁\n" "تتاڤي اي هاڽ داڤليکاسيکن کڤد دنيا ڤرماٴينن سهاج⹁ تيدق مڠوبه GUI.\n" @@ -6423,17 +6493,15 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "ݢونا ڤاڤرن اون 3D مڠݢنتيکن اون رات." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "ݢوناکن انيماسي اون سباݢاي لاتر بلاکڠ مينو اوتام." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "ݢوناکن ڤناڤيسن انيسوتروڤيک اڤابيلا مليهت تيکستور دري سواتو سودوت." #: src/settings_translation_file.cpp @@ -6687,26 +6755,14 @@ msgstr "" "کڤرکاکسن (چونتوهڽ⹁ ڤنرجمهن-ک-تيکستور اونتوق نود دالم اينۏينتوري)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"اڤابيلا gui_scaling_filter_txr2img دتتڤکن کڤد \"true\"⹁ سالين سمولا کسموا\n" -"ايميج ترسبوت دري ڤرکاکسن کڤرايسين اونتوق دسسوايکن. سکيراڽ دتتڤکن کڤد\n" -"\"false\"⹁ برباليق کڤد قاعده ڤڽسواين يڠ لام⹁ اونتوق ڤماچو ۏيديو يڠ تيدق " -"ممڤو\n" -"مڽوکوڠ دڠن سمڤورنا فوڠسي موات تورون سمولا تيکستور درڤد ڤرکاکسن." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6725,10 +6781,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "سام اد انيماسي تيکستور نود ڤاتوت دڽهسݢرقکن ڤد ستياڤ بلوک ڤتا." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6754,9 +6806,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "سام اد اندا هندق مڠکابوتکن ڤڠهوجوڠ کاوسن يڠ کليهتن." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6934,6 +6986,9 @@ msgstr "" #~ "بيار کوسوڠ اونتوق ممولاکن ڤلاين ڤرماٴينن تمڤتن.\n" #~ "امبيل ڤرهاتيان بهاوا ميدن علامت دالم مينو اوتام مڠاتسي تتڤن اين." +#~ msgid "Adds particles when digging a node." +#~ msgstr "منمبه ڤرتيکل اڤابيلا مڠݢالي نود." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7024,6 +7079,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "برسيهکن تيکستور لوت سينر" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "اون ايت ايفيک ڤد ڤيهق کليئن." + #~ msgid "Command key" #~ msgstr "ککونچي ارهن" @@ -7099,9 +7158,15 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "بوليه چدرا" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "معلومت ڽهڤڤيجت دان ݢراف ڤمبوکه دسمبوڽيکن" + #~ msgid "Debug info toggle key" #~ msgstr "ککونچي توݢول معلومت ڽهڤڤيجت" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "معلومت ڽهڤڤيجت⹁ ݢراف ڤمبوکه⹁ دان رڠک داواي دسمبوڽيکن" + #~ msgid "Dec. volume key" #~ msgstr "ککونچي ڤرلاهنکن بوڽي" @@ -7125,10 +7190,16 @@ msgstr "" #~ msgid "Del. Favorite" #~ msgstr "ڤادم کݢمرن" +#~ msgid "Desynchronize block animation" +#~ msgstr "مڽهسݢرقکن انيماسي بلوک" + #, fuzzy #~ msgid "Dig key" #~ msgstr "ککومچي ککانن" +#~ msgid "Digging particles" +#~ msgstr "ڤرتيکل کتيک مڠݢالي" + #~ msgid "Disable anticheat" #~ msgstr "ملومڤوهکن انتيتيڤو" @@ -7151,6 +7222,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "بايڠ فون" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "دبوليهکن" + #, fuzzy #~ msgid "Enable creative mode for all players" #~ msgstr "ممبوليهکن مود کرياتيف اونتوق ڤتا بارو دچيڤتا." @@ -7182,6 +7257,12 @@ msgstr "" #~ "اوليه ڤيک تيکستور اتاو ڤرلو دجان سچارا أوتوماتيک.\n" #~ "ڤرلوکن ڤمبايڠ دبوليهکن." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "ممبوليهکن ڤڠاݢريݢتن ججاريڠ يڠ دڤوتر دڤکسي Y ايايت (facedir)." + #~ msgid "Enables minimap." #~ msgstr "ممبوليهکن ڤتا ميني." @@ -7221,9 +7302,6 @@ msgstr "" #~ "ڤيليهن ڤرچوباٴن⹁ موڠکين منمڤقکن رواڠ ڽات دانتارا\n" #~ "بلوک اڤابيلا دتتڤکن دڠن نومبور لبيه بسر درڤد 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS دمينو جيدا" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7299,8 +7377,8 @@ msgstr "" #~ msgid "Full screen BPP" #~ msgstr "BPP سکرين ڤنوه" -#~ msgid "Game" -#~ msgstr "ڤرماٴينن" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "ڤناڤيس سکال GUI جنيس txr2img" #~ msgid "Generate Normal Maps" #~ msgstr "جان ڤتا نورمل" @@ -7450,6 +7528,10 @@ msgstr "" #~ msgid "Install: file: \"$1\"" #~ msgstr "ڤاسڠ: فايل: \"$1\"" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "سلڠ دأنتارا ڤڠهنترن معلومت ماس ڤلاين کڤد کليئن." + #~ msgid "Invalid gamespec." #~ msgstr "سڤيسيفيکاسي ڤرماٴينن تيدق صح." @@ -7461,656 +7543,656 @@ msgstr "" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠورڠکن جارق ڤندڠ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممڤرلاهنکن بوڽي.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ملومڤت.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منجاتوهکن ايتم يڠ سدڠ دڤيليه.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منمبه جارق ڤندڠ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠواتکن بوڽي.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ملومڤت.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق برݢرق ڤنتس دالم مود ڤرݢرقن ڤنتس.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠݢرقکن ڤماٴين کبلاکڠ.\n" #~ "جوݢ اکن ملومڤوهکن أوتوڤرݢرقن⹁ اڤابيلا اکتيف.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠݢرقکن ڤماٴين کدڤن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠݢرقکن ڤماٴين ککيري.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠݢرقکن ڤماٴين ککانن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممبيسوکن ڤرماٴينن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممبوک تتيڠکڤ سيمبڠ اونتوق مناٴيڤ ارهن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممبوک تتيڠکڤ سيمبڠ اونتوق مناٴيڤ ارهن تمڤتن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممبوک تتيڠکڤ سيمبڠ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ممبوک اينۏينتوري.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق ملومڤت.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-11 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-12 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-13 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-14 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-15 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-16 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-17 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-18 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-19 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-20 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-21 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-22 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-23 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-24 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-25 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-26 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-27 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-28 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-29 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-30 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-31 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-32 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-8 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-5 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ڤرتام دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-4 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه ايتم ستروسڽ ددالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-9 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه بارڠ سبلومڽ دهوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-2 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-7 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-6 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-10 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مميليه سلوت ک-3 دالم هوتبر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڽلينڤ.\n" #~ "جوݢ دݢوناکن اونتوق تورون باواه کتيک ممنجت دان دالم اٴير جيک تتڤن " #~ "aux1_descends دلومڤوهکن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق برتوکر انتارا کاميرا اورڠ ڤرتام دان کتيݢ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منڠکڤ ݢمبر لاير.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول أوتوڤرݢرقن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول مود سينماتيک.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤرن ڤتا ميني.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول مود ڤرݢرقن ڤنتس.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول مود تربڠ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول مود تمبوس بلوک.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول مود ڤرݢرقن ڤيچ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤڠمسکينين کاميرا. هاڽ دݢوناکن اونتوق ڤمباڠونن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤرن سيمبڠ.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤرن معلومت ڽهڤڤيجت.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤرن کابوت.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤر ڤندو (HUD).\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤاڤرن کونسول سيمبڠ بسر.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول ڤمبوکه. دݢوناکن اونتوق ڤمباڠونن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق منوݢول جارق ڤندڠن تيادا حد.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ککونچي اونتوق مڠݢوناکن ڤندڠن زوم اڤابيلا دبنرکن.\n" -#~ "ليهت http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ليهت http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "ايکتن ککونچي. (جيک مينو اين برسليرق⹁ ڤادم سستڠه بندا دري فايل minetest." -#~ "conf)" +#~ "ايکتن ککونچي. (جيک مينو اين برسليرق⹁ ڤادم سستڠه بندا دري فايل " +#~ "minetest.conf)" #~ msgid "Large chat console key" #~ msgstr "ککونچي کونسول سيمبڠ بسر" @@ -8149,6 +8231,9 @@ msgstr "" #~ msgid "Menus" #~ msgstr "مينو" +#~ msgid "Mesh cache" +#~ msgstr "کيش ججاريڠ" + #~ msgid "Minimap" #~ msgstr "ڤتا ميني" @@ -8323,6 +8408,9 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "ڤلاين ڤرماٴينن \\ ڤماٴين ڤرسأورڠن" +#~ msgid "Shaders" +#~ msgstr "ڤمبايڠ" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "تانه تراڤوڠ (دالم اوجيکاجي)" @@ -8340,6 +8428,10 @@ msgstr "" #~ "ڤريستاسي اونتوق سستڠه کد ۏيديو.\n" #~ "نامون اي هاڽ برفوڠسي دڠن ڤمبهاݢين بلاکڠ ۏيديو OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "کمس کيني کاميرا دلومڤوهکن" + #~ msgid "" #~ "Shadow offset (in pixels) of the fallback font. If 0, then shadow will " #~ "not be drawn." @@ -8368,6 +8460,9 @@ msgstr "" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "ملمبوتکن ڤموترن کاميرا. سيت سباݢاي 0 اونتوق ملومڤوهکنڽ." +#~ msgid "Sound system is disabled" +#~ msgstr "سيستم بوڽي دلومڤوهکن" + #~ msgid "Special" #~ msgstr "ايستيميوا" @@ -8402,6 +8497,9 @@ msgstr "" #~ "اتاو ڤلمبوتن تتيکوس.\n" #~ "برݢونا اونتوق مراکم ۏيديو." +#~ msgid "Time send interval" +#~ msgstr "سلڠ ڤڠهنترن ماس" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "اونتوق ممبوليهکن ڤمبايڠ⹁ ڤماچو OpenGL مستي دݢوناکن." @@ -8468,6 +8566,19 @@ msgstr "" #~ msgid "Waving Plants" #~ msgstr "تومبوهن برݢويڠ" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "اڤابيلا gui_scaling_filter_txr2img دتتڤکن کڤد \"true\"⹁ سالين سمولا " +#~ "کسموا\n" +#~ "ايميج ترسبوت دري ڤرکاکسن کڤرايسين اونتوق دسسوايکن. سکيراڽ دتتڤکن کڤد\n" +#~ "\"false\"⹁ برباليق کڤد قاعده ڤڽسواين يڠ لام⹁ اونتوق ڤماچو ۏيديو يڠ تيدق " +#~ "ممڤو\n" +#~ "مڽوکوڠ دڠن سمڤورنا فوڠسي موات تورون سمولا تيکستور درڤد ڤرکاکسن." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -8476,6 +8587,10 @@ msgstr "" #~ "منتڤکن سام اد فون FreeType دݢوناکن⹁ ممرلوکن سوکوڠن Freetype\n" #~ "دکومڤيل برسام. جيک دلومڤوهکن⹁ فون ڤتا بيت دان ۏيکتور XML اکن دݢوناکن." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "سام اد انيماسي تيکستور نود ڤاتوت دڽهسݢرقکن ڤد ستياڤ بلوک ڤتا." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "" #~ "منتڤکن سام اد ايڠين ممبنرکن ڤماٴين اونتوق منچدراکن دان ممبونوه ساتو سام " diff --git a/po/nb/luanti.po b/po/nb/luanti.po index 92e009609..585820352 100644 --- a/po/nb/luanti.po +++ b/po/nb/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Norwegian Bokmål (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-10-22 11:01+0000\n" "Last-Translator: Allan Nordhøy \n" "Language-Team: Norwegian Bokmål ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Bla gjennom" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Endre" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Velg mappe" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Velg fil" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Velg" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ingen beskrivelse av innstillingen)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-støy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Avbryt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Fraktal tekstur" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaver" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Offset" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Standhaftighet" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Lagre" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Frø" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X-spredning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y-spredning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z-spredning" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absoluttverdi" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Forvalg" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "myknet" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Spillet må også aktivere skygger)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(Spillet må også aktivere skygger)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Spillet må også aktivere skygger)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Bruk systemspråk)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Tilgjengelighet" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chatte" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Tøm" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Kontroller" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Deaktivert" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Aktivert" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Generelt" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Bevegelse" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Ingen resultater" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Tilbakestill til standard" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Tilbakestill til standard ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Søk" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Vis avanserte innstillinger" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Vis tekniske navn" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Strandlydsterskel" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Velg endringer" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Innhold: Spill" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Innhold: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Spillet må også aktivere skygger)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Tilpasset" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamiske skygger" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Høy" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Lav" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medium" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Ultrahøy" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Veldig lav" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +409,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Tilbake" @@ -202,11 +445,6 @@ msgstr "Modder" msgid "No packages could be retrieved" msgstr "Kunne ikke hente pakker" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Ingen resultater" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Ingen oppdateringer" @@ -252,18 +490,6 @@ msgstr "Allerede installert" msgid "Base Game:" msgstr "Grunnspill:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Avbryt" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -392,6 +618,12 @@ msgstr "Kan ikke installere $1 som en $2" msgid "Unable to install a $1 as a texture pack" msgstr "Kan ikke installere en $1 som en teksturpakke" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Aktivert, har feil)" @@ -456,12 +688,6 @@ msgstr "Ingen valgfrie avhengigheter" msgid "Optional dependencies:" msgstr "Valgfrie avhengigheter:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Lagre" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Verden:" @@ -612,11 +838,6 @@ msgstr "Elver" msgid "Sea level rivers" msgstr "Havnivå Elver" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Frø" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Jevn overgang mellom biotoper" @@ -762,6 +983,23 @@ msgstr "" "Denne modpakken har et gitt navn i modpack.conf som vil overstyre enhver " "omdøping." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Aktiver alle" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "En ny $1 versjon er tilgjengelig" @@ -790,7 +1028,7 @@ msgstr "Aldri" msgid "Visit website" msgstr "Besøk nettsted" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Innstillinger" @@ -803,230 +1041,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Prøv å aktivere offentlig serverliste og sjekk Internett-tilkoblingen din." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Bla gjennom" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Endre" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Velg mappe" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Velg fil" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Velg" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ingen beskrivelse av innstillingen)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-støy" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Fraktal tekstur" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaver" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Offset" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Standhaftighet" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X-spredning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y-spredning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z-spredning" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absoluttverdi" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Forvalg" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "myknet" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Spillet må også aktivere skygger)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Spillet må også aktivere skygger)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Spillet må også aktivere skygger)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Bruk systemspråk)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Tilgjengelighet" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chatte" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Tøm" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Kontroller" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Deaktivert" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Aktivert" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Generelt" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Bevegelse" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Tilbakestill til standard" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Tilbakestill til standard ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Søk" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Vis avanserte innstillinger" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Vis tekniske navn" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Velg endringer" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Innhold: Spill" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Innhold: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Aktivert" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kameraoppdatering slått av" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Spillet må også aktivere skygger)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Tilpasset" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamiske skygger" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Høy" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Lav" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medium" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Ultrahøy" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Veldig lav" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Om" @@ -1047,10 +1061,6 @@ msgstr "Kjerneutviklere" msgid "Core Team" msgstr "Kjerneteam" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Åpen brukerdatamappe" @@ -1201,10 +1211,22 @@ msgstr "Start spill" msgid "You need to install a game before you can create a world." msgstr "Du må installere ett spill før du kan installere en modifikasjon" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Ta bort favoritt" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresse" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativ modus" @@ -1218,6 +1240,11 @@ msgstr "Skade / PvP" msgid "Favorites" msgstr "Favoritter" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spill" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Inkompatible servere" @@ -1230,10 +1257,27 @@ msgstr "Ta del i spill" msgid "Login" msgstr "Logg på" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Serverens oppdateringsintervall (servertikk)" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Forsinkelse" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Offentlige servere" @@ -1318,23 +1362,6 @@ msgstr "" "\n" "Sjekk debug.txt for detaljer." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modus: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Offentlig: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Alle mot alle (PvP): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Tjenernavn: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "En serialiseringsfeil oppstod:" @@ -1344,6 +1371,11 @@ msgstr "En serialiseringsfeil oppstod:" msgid "Access denied. Reason: %s" msgstr "Ingen tilgang. På grunn av: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Feilsøkingsinformasjon vises" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatisk forover slått av" @@ -1364,6 +1396,10 @@ msgstr "Block bounds vist for gjeldende blokk" msgid "Block bounds shown for nearby blocks" msgstr "Block bounds vist for nærliggende blokker" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kameraoppdatering slått av" @@ -1376,10 +1412,6 @@ msgstr "Kameraoppdatering slått på" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Kan ikke vise blockbounds (deaktivert av spill eller mod)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Endre passord" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmatisk modus avskrudd" @@ -1408,39 +1440,6 @@ msgstr "Tilkoblingsfeil (tidsavbrudd?)" msgid "Connection failed for unknown reason" msgstr "Tilkoblingen mislyktes av ukjent årsak" -#: src/client/game.cpp -msgid "Continue" -msgstr "Fortsett" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Standardstyring:\n" -"Ved ingen synlig meny:\n" -"- enkel berøring: knapp aktiveres\n" -"- dobbel berøring: legg på plass/bruke\n" -"- glidende berøring: se rundt deg\n" -"Meny/beholdning synlig:\n" -"- dobbel berøring (ute):\n" -" -->lukk\n" -"- berør stabel, berør spor:\n" -" --> flytt stabel\n" -"- berør&trekk, berør med den andre fingeren\n" -" --> legg én enkelt gjenstand i spor\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1454,31 +1453,15 @@ msgstr "Oppretter klient…" msgid "Creating server..." msgstr "Oppretter tjener…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Feilsøkingsinformasjon og profileringsgraf er skjult" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Feilsøkingsinformasjon vises" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Feilsøkingsinformasjon, profileringsgraf og wireframe skjult" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Feil ved oppretting av klient: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Avslutt til meny" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Avslutt til operativsystem" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Hurtigmodus slått av" @@ -1516,18 +1499,6 @@ msgstr "Tåke slått på" msgid "Fog enabled by game or mod" msgstr "Zoom er for øyeblikket deaktivert av spill eller mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spillinfo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spillet er satt på pause" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Vertstjener" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Gjenstandsdefinisjoner…" @@ -1564,14 +1535,6 @@ msgstr "Noclip-modus aktivert (merk: ingen \"noclip\"-rettigheter)" msgid "Node definitions..." msgstr "Blokkdefinisjoner..." -#: src/client/game.cpp -msgid "Off" -msgstr "Av" - -#: src/client/game.cpp -msgid "On" -msgstr "På" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Pitch flyttemodus deaktivert" @@ -1584,38 +1547,22 @@ msgstr "Pitch flyttemodus aktivert" msgid "Profiler graph shown" msgstr "Profil graf vises" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Ekstern server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Løser adresse ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Gjenoppstå" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Slår av..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Enkeltspiller" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Lydstyrke" - #: src/client/game.cpp msgid "Sound muted" msgstr "Lyd av" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Lydsystemet er deaktivert" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Lydsystem støttes ikke på denne versjonen" @@ -1687,18 +1634,116 @@ msgstr "Visningsområde endret til %d men begrenset til %d av spill eller mod" msgid "Volume changed to %d%%" msgstr "Volumet endret til %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Kantlinjer vises" -#: src/client/game.cpp -msgid "You died" -msgstr "Du døde" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom er for øyeblikket deaktivert av spill eller mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modus: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Offentlig: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Alle mot alle (PvP): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Tjenernavn: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Endre passord" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Fortsett" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Standardstyring:\n" +"Ved ingen synlig meny:\n" +"- enkel berøring: knapp aktiveres\n" +"- dobbel berøring: legg på plass/bruke\n" +"- glidende berøring: se rundt deg\n" +"Meny/beholdning synlig:\n" +"- dobbel berøring (ute):\n" +" -->lukk\n" +"- berør stabel, berør spor:\n" +" --> flytt stabel\n" +"- berør&trekk, berør med den andre fingeren\n" +" --> legg én enkelt gjenstand i spor\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Avslutt til meny" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Avslutt til operativsystem" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spillinfo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spillet er satt på pause" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Vertstjener" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Av" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "På" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Ekstern server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Gjenoppstå" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Lydstyrke" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Du døde" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2038,8 +2083,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Klarte ikke laste ned $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Lydsystem støttes ikke på denne versjonen" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2088,7 +2134,7 @@ msgstr "Automatisk fremover" msgid "Automatic jumping" msgstr "Automatisk hopping" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2100,7 +2146,7 @@ msgstr "Tilbake" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Endre visning" @@ -2124,7 +2170,7 @@ msgstr "Senk lydstyrke" msgid "Double tap \"jump\" to toggle fly" msgstr "Trykk raskt på «hopp» to ganger for å starte og slutte å fly" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Dropp" @@ -2140,11 +2186,11 @@ msgstr "Øk siktavstanden" msgid "Inc. volume" msgstr "Øk lydstyrken" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Beholdning" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hopp" @@ -2176,7 +2222,7 @@ msgstr "Neste gjenstand" msgid "Prev. item" msgstr "Forrige gjenstand" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Velg rekkevidde" @@ -2188,7 +2234,7 @@ msgstr "Høyre" msgid "Screenshot" msgstr "Skjermdump" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Snike" @@ -2196,15 +2242,15 @@ msgstr "Snike" msgid "Toggle HUD" msgstr "HUD (hurtigtilgang) av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Chattehistorikk av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Rask forflytning av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Flymodus av/på" @@ -2212,11 +2258,11 @@ msgstr "Flymodus av/på" msgid "Toggle fog" msgstr "Tåke av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Minikart av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Gjennomtrengelige blokker av/på" @@ -2224,7 +2270,7 @@ msgstr "Gjennomtrengelige blokker av/på" msgid "Toggle pitchmove" msgstr "Pitchbevegelse (lateralaksevinkel) av/på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Forstørrelse" @@ -2261,7 +2307,7 @@ msgstr "Gammelt passord" msgid "Passwords do not match!" msgstr "Passordene samsvarer ikke!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Avslutt" @@ -2274,16 +2320,47 @@ msgstr "Av" msgid "Sound Volume: %d%%" msgstr "Lydstyrke: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Midtknapp" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Ferdig!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Ekstern server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Spillstikke-ID" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Tåke av/på" @@ -2505,8 +2582,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D-støtte.\n" "For øyeblikket støttes følgende alternativer:\n" @@ -2572,10 +2648,6 @@ msgstr "Rekkevidde for aktive blokker" msgid "Active object send range" msgstr "Område for sending av aktive objekt" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Legger på partikler når man graver ut en blokk." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2598,6 +2670,17 @@ msgstr "Administratornavn" msgid "Advanced" msgstr "Avansert" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Bruk 3D-skyer i stedet for flate." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3006,15 +3089,14 @@ msgstr "Skyradius" msgid "Clouds" msgstr "Skyer" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Skyer er en effekt på klientsiden." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Skyer i meny" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Farget tåke" @@ -3039,7 +3121,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Komma-atskilt liste med of flags to hide in the content repository.\n" "\"nonfree\" kan brukes til å skjule pakker som ikke kvalifiserer som \"fri " @@ -3191,6 +3273,14 @@ msgstr "Loggingsnivå for feilsøking" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Serverens oppdateringsintervall (servertikk)" @@ -3344,19 +3434,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekorasjoner" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Gravepartikler" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Ikke tillatt tomme passord" @@ -3384,6 +3466,14 @@ msgstr "Dobbeltklikk hopp for å fly" msgid "Double-tapping the jump key toggles fly mode." msgstr "Dobbeltklikking av hoppetasten veksler flyvningsmodus." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3462,8 +3552,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3536,8 +3626,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3552,12 +3641,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3872,10 +3955,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4105,15 +4184,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Skru på registerbekreftelse ved tilkobling til tjener.\n" -"Hvis avskrudd, vil en ny konto registres automatisk." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4132,6 +4202,16 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Skru på registerbekreftelse ved tilkobling til tjener.\n" +"Hvis avskrudd, vil en ny konto registres automatisk." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4226,10 +4306,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4864,10 +4940,6 @@ msgstr "" msgid "Maximum users" msgstr "Maks antall brukere" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Dagens melding" @@ -4900,6 +4972,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4992,7 +5068,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5441,17 +5517,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5686,16 +5764,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5869,10 +5937,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6163,10 +6230,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6230,6 +6293,10 @@ msgstr "Bølgende blader" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6283,7 +6350,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6307,16 +6377,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Y-verdi for store grotters øvre grense." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Bruk 3D-skyer i stedet for flate." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Bruk animerte skyer som bakgrunn for hovedmenyen." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6566,20 +6634,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6590,10 +6650,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6616,8 +6672,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6779,6 +6834,9 @@ msgstr "Maksimal parallellisering i cURL" #~ "Vær klar over at adressen i feltet i hovedmenyen overkjører denne " #~ "innstillingen." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Legger på partikler når man graver ut en blokk." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6889,6 +6947,10 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "Clean transparent textures" #~ msgstr "Rene, gjennomsiktige teksturer" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Skyer er en effekt på klientsiden." + #~ msgid "Command key" #~ msgstr "Tast for chat og kommandoer" @@ -6968,9 +7030,15 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "Damage enabled" #~ msgstr "Skade aktivert" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Feilsøkingsinformasjon og profileringsgraf er skjult" + #~ msgid "Debug info toggle key" #~ msgstr "Tast for å vise/skjule feilsøkingsinfo" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Feilsøkingsinformasjon, profileringsgraf og wireframe skjult" + #~ msgid "Dec. volume key" #~ msgstr "Tast for senking av lydstyrke" @@ -6984,6 +7052,9 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "Dig key" #~ msgstr "Høyre tast" +#~ msgid "Digging particles" +#~ msgstr "Gravepartikler" + #~ msgid "Disable anticheat" #~ msgstr "Skru av antijuksing" @@ -7006,6 +7077,10 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamiske skygger: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Aktivert" + #~ msgid "Enable VBO" #~ msgstr "Aktiver VBO" @@ -7061,9 +7136,6 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "FreeType fonts" #~ msgstr "FreeType-skrifttyper" -#~ msgid "Game" -#~ msgstr "Spill" - #~ msgid "Generate Normal Maps" #~ msgstr "Generer normale kart" @@ -7202,483 +7274,483 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for å redusere synsrekkevidde.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for redusering av lydstyrken.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hopping.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for kasting av gjeldende valgt element.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for økning av synsrekkevidde.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for økning av lydstyrken.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hopping.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hurtig gange i raskt modus.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for å bevege spilleren bakover\n" #~ "Vil også koble ut automatisk foroverbevegelse, hvis aktiv.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for å bevege spilleren fremover.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for å bevege spilleren til venstre.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for å bevege spilleren til høyre.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hopping.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av ellevte hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tolvte hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av trettende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av fjortende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av femtende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging sekstende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av syttende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av attende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av nittende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjueførste hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjueandre hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuetredje hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuefjerde hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuefemte hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuesjette hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjuesyvende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjueåttende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tjueniende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av trettiende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av trettiførste hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av trettiandre hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av åttende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av femte hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av første hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av fjerde hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av neste element i hurtigfeltet.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av niende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av forrige element i hurtigfeltet.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av andre hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av syvende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av sjette hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tiende hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for utvelging av tredje hurtigplassfelt.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sniketast.\n" #~ "Brukes også for å gå ned på stiger og i vann dersom aux1_descends ikke " #~ "brukes.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hopping.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hurtig gange i raskt modus.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hurtig gange i raskt modus.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tast for hurtig gange i raskt modus.\n" -#~ "Se http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Se http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -7809,15 +7881,25 @@ msgstr "Maksimal parallellisering i cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Server/alene" +#~ msgid "Shaders" +#~ msgstr "Shaders" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (eksperimentelt)" #~ msgid "Shaders (unavailable)" #~ msgstr "Shaders (ikke tilgjengelig)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kameraoppdatering slått av" + #~ msgid "Simple Leaves" #~ msgstr "Enkle Blader" +#~ msgid "Sound system is disabled" +#~ msgstr "Lydsystemet er deaktivert" + #~ msgid "Special" #~ msgstr "Spesial" diff --git a/po/nl/luanti.po b/po/nl/luanti.po index 64cec187b..e335c98d3 100644 --- a/po/nl/luanti.po +++ b/po/nl/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Dutch (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-10-22 17:18+0000\n" "Last-Translator: Bas Huis \n" "Language-Team: Dutch ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Bladeren" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Aanpassen" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Selecteer map" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Selecteer bestand" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Selecteren" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Er is geen beschrijving van deze instelling beschikbaar)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Ruis" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Annuleren" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaritie" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octaven" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "afstand" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistentie" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Opslaan" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Schaal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Kiemgetal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X spreiding" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y spreiding" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z spreiding" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absolute waarde" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "standaard" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "makkelijker" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chatten" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Wissen" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Besturing" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Uitgeschakeld" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Ingeschakeld" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Snelle modus" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Geen resultaten" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Herstel de Standaardwaarde" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Zoeken" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Technische namen weergeven" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Gevoeligheid van het aanraakscherm" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS in het pauze-menu" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Selecteer Mods" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Inhoud" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Inhoud" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamische schaduwen" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Hoog" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Laag" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Gemiddeld" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "Zeer Hoog" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Zeer Laag" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +412,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Terug" @@ -203,11 +449,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Er konden geen pakketten geladen worden" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Geen resultaten" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Geen updates" @@ -254,18 +495,6 @@ msgstr "Reeds geïnstalleerd" msgid "Base Game:" msgstr "Basis Spel:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Annuleren" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -395,6 +624,12 @@ msgstr "Installeren van mod $1 in $2 is mislukt" msgid "Unable to install a $1 as a texture pack" msgstr "Kan $1 niet als textuurpakket installeren" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -459,12 +694,6 @@ msgstr "Geen optionele afhankelijkheden" msgid "Optional dependencies:" msgstr "Optionele afhankelijkheden:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Opslaan" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Wereld:" @@ -619,11 +848,6 @@ msgstr "Rivieren" msgid "Sea level rivers" msgstr "Rivieren op zeeniveau" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Kiemgetal" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Zachte overgang tussen vegetatiezones" @@ -765,6 +989,23 @@ msgstr "" "Deze modpack heeft een expliciete naam gegeven in zijn modpack.conf die elke " "hernoeming hier zal overschrijven." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Alles aanzetten" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -789,7 +1030,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Instellingen" @@ -803,232 +1044,6 @@ msgstr "" "Probeer de publieke serverlijst opnieuw in te schakelen en controleer de " "internet verbinding." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Bladeren" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Aanpassen" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Selecteer map" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Selecteer bestand" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Selecteren" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Er is geen beschrijving van deze instelling beschikbaar)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Ruis" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaritie" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octaven" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "afstand" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistentie" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Schaal" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X spreiding" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y spreiding" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z spreiding" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absolute waarde" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "standaard" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "makkelijker" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chatten" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Wissen" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Besturing" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Uitgeschakeld" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Ingeschakeld" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Snelle modus" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Herstel de Standaardwaarde" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Zoeken" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Technische namen weergeven" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Selecteer Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Inhoud" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Inhoud" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Ingeschakeld" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Camera-update uitgeschakeld" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamische schaduwen" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Hoog" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Laag" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Gemiddeld" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "Zeer Hoog" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Zeer Laag" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Over" @@ -1049,10 +1064,6 @@ msgstr "Hoofdontwikkelaars" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Open de gebruikersdatamap" @@ -1204,10 +1215,22 @@ msgstr "Start spel" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Poort van externe server" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adres" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Cliënt" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Creatieve modus" @@ -1221,6 +1244,11 @@ msgstr "Schade / PvP" msgid "Favorites" msgstr "Favorieten" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spel" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Incompatibele Servers" @@ -1233,10 +1261,28 @@ msgstr "Join spel" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Aantal 'emerge' threads" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Toegewijde serverstap" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Publieke Servers" @@ -1323,23 +1369,6 @@ msgstr "" "\n" "Kijk in debug.txt voor details." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mode(creatief/overleving): " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Openbaar: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Server Naam: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Er is een serialisatie-fout opgetreden:" @@ -1349,6 +1378,11 @@ msgstr "Er is een serialisatie-fout opgetreden:" msgid "Access denied. Reason: %s" msgstr "Toegang geweigerd. Reden: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Debug informatie weergegeven" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatisch vooruit uitgeschakeld" @@ -1369,6 +1403,10 @@ msgstr "Blokgrenzen getoond voor huidige blok" msgid "Block bounds shown for nearby blocks" msgstr "Blokgrenzen getoond voor nabije blokken" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Camera-update uitgeschakeld" @@ -1382,10 +1420,6 @@ msgstr "Camera-update ingeschakeld" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Kan blokgrenzen niet tonen (privilege 'basic_debug' is nodig)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Verander wachtwoord" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmische modus uitgeschakeld" @@ -1414,39 +1448,6 @@ msgstr "Fout bij verbinden (time out?)" msgid "Connection failed for unknown reason" msgstr "Verbinding mislukt om onbekende reden" -#: src/client/game.cpp -msgid "Continue" -msgstr "Verder spelen" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Standaardbesturing:\n" -"Geen menu getoond:\n" -"- enkele tik: activeren\n" -"- dubbele tik: plaats / gebruik\n" -"- vinger schuiven: rondkijken\n" -"Menu of inventaris getoond:\n" -"- dubbele tik buiten menu:\n" -" --> sluiten\n" -"- aanraken stapel of vak:\n" -" --> stapel verplaatsen\n" -"- aanraken & slepen, tik met tweede vinger\n" -" --> plaats enkel object in vak\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1460,31 +1461,15 @@ msgstr "Gebruiker aanmaken..." msgid "Creating server..." msgstr "Bezig server te maken..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Debug info en profiler grafiek verborgen" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Debug informatie weergegeven" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Debug info, profiler grafiek en wireframe verborgen" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Fout bij aanmaken van client: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Terug naar menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Afsluiten" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Snelle modus uitgeschakeld" @@ -1522,18 +1507,6 @@ msgstr "Mist ingeschakeld" msgid "Fog enabled by game or mod" msgstr "Zoom momenteel uitgeschakeld door game of mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spel info:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spel gepauzeerd" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Server maken" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Voorwerpdefinities..." @@ -1570,14 +1543,6 @@ msgstr "Noclip-modus ingeschakeld (opmerking: geen 'noclip' recht)" msgid "Node definitions..." msgstr "Node definities..." -#: src/client/game.cpp -msgid "Off" -msgstr "Uit" - -#: src/client/game.cpp -msgid "On" -msgstr "Aan" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Pitch move-modus uitgeschakeld" @@ -1590,38 +1555,22 @@ msgstr "Pitch move-modus ingeschakeld" msgid "Profiler graph shown" msgstr "Profiler-grafiek weergegeven" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Externe server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Server-adres opzoeken..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Herboren worden" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Uitschakelen..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Singleplayer" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Geluidsvolume" - #: src/client/game.cpp msgid "Sound muted" msgstr "Geluid gedempt" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Systeemgeluiden zijn uitgeschakeld" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Geluidssysteem is niet ondersteund in deze versie" @@ -1695,18 +1644,116 @@ msgstr "Kijkbereik gewijzigd naar %d" msgid "Volume changed to %d%%" msgstr "Volume gewijzigd naar %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Draadframe weergegeven" -#: src/client/game.cpp -msgid "You died" -msgstr "Je bent gestorven" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom momenteel uitgeschakeld door game of mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mode(creatief/overleving): " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Openbaar: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Server Naam: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Verander wachtwoord" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Verder spelen" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Standaardbesturing:\n" +"Geen menu getoond:\n" +"- enkele tik: activeren\n" +"- dubbele tik: plaats / gebruik\n" +"- vinger schuiven: rondkijken\n" +"Menu of inventaris getoond:\n" +"- dubbele tik buiten menu:\n" +" --> sluiten\n" +"- aanraken stapel of vak:\n" +" --> stapel verplaatsen\n" +"- aanraken & slepen, tik met tweede vinger\n" +" --> plaats enkel object in vak\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Terug naar menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Afsluiten" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spel info:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spel gepauzeerd" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Server maken" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Uit" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Aan" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Externe server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Herboren worden" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Geluidsvolume" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Je bent gestorven" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2047,8 +2094,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Openen van webpagina mislukt" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Geluidssysteem is niet ondersteund in deze versie" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2096,7 +2144,7 @@ msgstr "Automatisch Vooruit" msgid "Automatic jumping" msgstr "Automatisch springen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2108,7 +2156,7 @@ msgstr "Achteruit" msgid "Block bounds" msgstr "Blok grenzen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Camera veranderen" @@ -2132,7 +2180,7 @@ msgstr "Volume verminderen" msgid "Double tap \"jump\" to toggle fly" msgstr "2x \"springen\" schakelt vliegen aan/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Weggooien" @@ -2148,11 +2196,11 @@ msgstr "Afstand verhogen" msgid "Inc. volume" msgstr "Volume verhogen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "inventaris" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Springen" @@ -2184,7 +2232,7 @@ msgstr "Volgende item" msgid "Prev. item" msgstr "Vorig element" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Zichtbereik" @@ -2196,7 +2244,7 @@ msgstr "Rechts" msgid "Screenshot" msgstr "Screenshot" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Sluipen" @@ -2204,15 +2252,15 @@ msgstr "Sluipen" msgid "Toggle HUD" msgstr "Schakel HUD in/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Chatlogboek wisselen" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Snel bewegen aan/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Vliegen aan/uit" @@ -2220,11 +2268,11 @@ msgstr "Vliegen aan/uit" msgid "Toggle fog" msgstr "Schakel mist in/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Schakel mini-kaart in/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Noclip aan/uit" @@ -2232,7 +2280,7 @@ msgstr "Noclip aan/uit" msgid "Toggle pitchmove" msgstr "Schakel pitchmove aan/uit" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoomen" @@ -2269,7 +2317,7 @@ msgstr "Huidig wachtwoord" msgid "Passwords do not match!" msgstr "De wachtwoorden zijn niet gelijk!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Terug" @@ -2282,16 +2330,47 @@ msgstr "Gedempt" msgid "Sound Volume: %d%%" msgstr "Geluidsvolume: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Muiswielknop" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Klaar!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Externe server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Stuurknuppel ID" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Schakel mist in/uit" @@ -2518,8 +2597,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D ondersteuning.\n" "Op dit moment ondersteund:\n" @@ -2588,10 +2666,6 @@ msgstr "Bereik waarbinnen blokken actief zijn" msgid "Active object send range" msgstr "Bereik waarbinnen actieve objecten gestuurd worden" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Voeg opvliegende deeltjes toe bij het graven." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2624,6 +2698,17 @@ msgstr "Voeg itemnaam toe" msgid "Advanced" msgstr "Geavanceerd" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Toon 3D wolken in plaats van platte wolken." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3037,15 +3122,14 @@ msgstr "Diameter van de wolken" msgid "Clouds" msgstr "Wolken" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Wolken bestaan enkel op de cliënt." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Wolken in het menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Gekleurde mist" @@ -3069,7 +3153,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Door komma's gescheiden lijst met vlaggen om te verbergen in de " "inhoudsbibliotheek. \n" @@ -3242,6 +3326,14 @@ msgstr "Debug logniveau" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Toegewijde serverstap" @@ -3413,19 +3505,11 @@ msgstr "" "Woestijnen treden op wanneer np_biome deze waarde overschrijdt. \n" "Als de vlag 'snowbiomes' is ingeschakeld, wordt dit genegeerd." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Textuur-animaties niet synchroniseren" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Decoraties" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Graaf deeltjes" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Lege wachtwoorden niet toestaan" @@ -3453,6 +3537,14 @@ msgstr "2x \"springen\" om te vliegen" msgid "Double-tapping the jump key toggles fly mode." msgstr "2x \"springen\" schakelt vlieg-modus aan/uit." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Dump de mapgen-debug informatie." @@ -3536,9 +3628,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Gekleurde schaduwen inschakelen.\n" "Indien ingeschakeld werpen doorzichtige nodes gekleurde schaduwen af. Dit is " @@ -3630,10 +3723,10 @@ msgstr "" "2.0 voor twee keer grotere loopbeweging." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Schakel het uitvoeren van een IPv6-server in/uit. \n" "Wordt genegeerd als bind_address is ingesteld. \n" @@ -3656,13 +3749,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Schakelt animatie van inventaris items aan." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Schakelt caching van facedir geroteerde meshes." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -4005,10 +4091,6 @@ msgstr "GUI schaalfactor" msgid "GUI scaling filter" msgstr "GUI schalingsfilter" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI schalingsfilter: txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4280,15 +4362,6 @@ msgstr "" "toets om\n" "omlaag te klimmen en af te dalen." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Schakel registerbevestiging in wanneer u verbinding maakt met de server. \n" -"Indien uitgeschakeld, wordt een nieuw account automatisch geregistreerd." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4315,6 +4388,16 @@ msgid "" msgstr "" "Spelers kunnen zich niet aanmelden zonder wachtwoord indien aangeschakeld." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Schakel registerbevestiging in wanneer u verbinding maakt met de server. \n" +"Indien uitgeschakeld, wordt een nieuw account automatisch geregistreerd." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4442,11 +4525,6 @@ msgstr "" "Interval voor het opslaan van belangrijke veranderingen in de wereld. In " "seconden." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Interval voor het sturen van de kloktijd naar cliënten." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Inventaris items animaties" @@ -5179,10 +5257,6 @@ msgstr "" msgid "Maximum users" msgstr "Maximaal aantal gebruikers" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Cache voor meshes" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Bericht van de dag" @@ -5219,6 +5293,10 @@ msgstr "Minimumlimiet van willekeurig aantal grote grotten per mapchunk." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Minimale limiet van willekeurig aantal kleine grotten per mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-Mapping" @@ -5320,9 +5398,10 @@ msgstr "" "- De optionele zweeflanden van v7 (standaard uitgeschakeld)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Naam van de speler.\n" @@ -5870,17 +5949,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6130,16 +6211,6 @@ msgstr "" msgid "Shader path" msgstr "Shader pad" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Kwaliteit schaduwfilter" @@ -6330,10 +6401,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Verspeid een volledige update van de schaduwmap over het opgegeven aantal " "frames.\n" @@ -6723,10 +6793,6 @@ msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" "Tijdstip waarop een nieuwe wereld wordt gestart, in mili-uren (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Kloktijd verstuur-interval" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Tijdsnelheid" @@ -6798,6 +6864,10 @@ msgstr "Ondoorzichtige vloeistoffen" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Bomen ruis" @@ -6846,12 +6916,16 @@ msgid "Undersampling" msgstr "Rendering" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Onderbemonstering is gelijkaardig aan het gebruik van een lagere " "schermresolutie,\n" @@ -6880,17 +6954,15 @@ msgstr "Bovenste Y-limiet van kerkers." msgid "Upper Y limit of floatlands." msgstr "Bovenste Y-limiet van zwevende eilanden." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Toon 3D wolken in plaats van platte wolken." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Toon wolken in de achtergrond van het hoofdmenu." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Gebruik anisotropisch filteren voor texturen getoond onder een hoek." #: src/settings_translation_file.cpp @@ -7152,26 +7224,14 @@ msgstr "" "in de rugzak)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Als gui_scaling_filter_txr2img aan staat, worden plaatjes\n" -"van de GPU naar het werkgeheugen gekopiëerd voor schalen.\n" -"Anders wordt de oude methode gebruikt, voor video-kaarten\n" -"die geen ondersteuning hebben voor het kopiëren van texturen\n" -"terug naar het werkgeheugen." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7193,10 +7253,6 @@ msgstr "" "Of achtergronden van naam-tags standaard getoond moeten worden.\n" "Mods kunnen alsnog een achtergrond instellen." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Node-animaties in wereldblokken niet synchroniseren." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7223,9 +7279,9 @@ msgstr "" "Maak het einde van het zichtbereik mistig, zodat het einde niet opvalt." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7423,12 +7479,15 @@ msgstr "Maximaal parallellisme in cURL" #~ "Indien leeg, wordt een lokale server gestart.\n" #~ "In het hoofdmenu kan een ander adres opgegeven worden." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Voeg opvliegende deeltjes toe bij het graven." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." #~ msgstr "" -#~ "Pas de dpi-configuratie aan op uw scherm (alleen niet X11 / Android), b." -#~ "v. voor 4k-schermen." +#~ "Pas de dpi-configuratie aan op uw scherm (alleen niet X11 / Android), " +#~ "b.v. voor 4k-schermen." #, fuzzy #~ msgid "" @@ -7542,6 +7601,10 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Clean transparent textures" #~ msgstr "Schone transparante texturen" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Wolken bestaan enkel op de cliënt." + #~ msgid "Command key" #~ msgstr "Commando-toets" @@ -7637,9 +7700,15 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Darkness sharpness" #~ msgstr "Steilheid Van de meren" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Debug info en profiler grafiek verborgen" + #~ msgid "Debug info toggle key" #~ msgstr "Toets voor aan/uitzetten debug informatie" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Debug info, profiler grafiek en wireframe verborgen" + #~ msgid "Dec. volume key" #~ msgstr "Volume verlagen toets" @@ -7677,9 +7746,15 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Del. Favorite" #~ msgstr "Verwijder Favoriete" +#~ msgid "Desynchronize block animation" +#~ msgstr "Textuur-animaties niet synchroniseren" + #~ msgid "Dig key" #~ msgstr "Toets voor graven" +#~ msgid "Digging particles" +#~ msgstr "Graaf deeltjes" + #~ msgid "Disable anticheat" #~ msgstr "Valsspeelbescherming uitschakelen" @@ -7704,6 +7779,10 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamische schaduwen:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Ingeschakeld" + #~ msgid "Enable VBO" #~ msgstr "VBO aanzetten" @@ -7738,6 +7817,12 @@ msgstr "Maximaal parallellisme in cURL" #~ "of ze moeten automatisch gegenereerd worden.\n" #~ "Schaduwen moeten aanstaan." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Schakelt caching van facedir geroteerde meshes." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Schakelt filmisch tone-mapping in" @@ -7781,9 +7866,6 @@ msgstr "Maximaal parallellisme in cURL" #~ "Experimentele optie. Kan bij een waarde groter dan 0 zichtbare\n" #~ "ruimtes tussen blokken tot gevolg hebben." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS in het pauze-menu" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7870,8 +7952,8 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Full screen BPP" #~ msgstr "BPP bij volledig scherm" -#~ msgid "Game" -#~ msgstr "Spel" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI schalingsfilter: txr2img" #, fuzzy #~ msgid "Gamma" @@ -8036,6 +8118,10 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Instrumentation" #~ msgstr "Per soort" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Interval voor het sturen van de kloktijd naar cliënten." + #~ msgid "Invalid gamespec." #~ msgstr "Onjuiste spel-spec." @@ -8047,650 +8133,650 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de zichtastand te verminderen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het volume te verlagen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets voor graven.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets voor het weggooien van het geselecteerde object.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de zichtastand te vergroten.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het volume te verhogen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets voor springen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om snel te bewegen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de speler achteruit te bewegen.\n" #~ "Zal ook het automatisch voortbewegen deactiveren, indien actief.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de speler vooruit te bewegen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de speler naar links te bewegen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de speler naar rechts te bewegen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de game te dempen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het chat-window te openen om commando's te typen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het chat-window te openen om lokale commando's te typen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het chat-window te openen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het rugzak-window te openen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets voor plaatsen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 11de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 12de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 13de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 14de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 15de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 16de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 17de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 18de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 19de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 20ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 21ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 22ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 23ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 24ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 25ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 26ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 27ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 28ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 29ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 30ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 32ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 32ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 8ste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de vijfde positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de eerste positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de vierde positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het volgende item in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de negende positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het vorige item in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de tweede positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de zevende positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de zesde positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de 10de positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de derde positie in de hotbar te selecteren.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om te sluipen.\n" #~ "Wordt ook gebruikt om naar beneden te klimmen en te dalen indien " #~ "aux1_descends uitstaat.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om tussen 1e-persoon camera en 3e-persoon camera te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om screenshots te maken.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om automatisch lopen aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om cinematic modus aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de mini-kaart aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om snelle modus aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om vliegen aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om 'noclip' modus aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om 'pitch move' modus aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om camera-verversing aan/uit te schakelen. Enkel gebruikt voor " #~ "ontwikkeling.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het tonen van chatberichten aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om debug informatie aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om mist aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om de HUD aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het tonen van de grote chat weergave aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om het tonen van de code-profiler aan/uit te schakelen. Gebruikt " #~ "voor ontwikkeling.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om oneindige zichtastand aan/uit te schakelen.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Toets om in te zoemen wanneer mogelijk.\n" -#~ "Zie http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zie http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8755,6 +8841,9 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Menus" #~ msgstr "Menu's" +#~ msgid "Mesh cache" +#~ msgstr "Cache voor meshes" + #~ msgid "Minimap" #~ msgstr "Mini-kaart" @@ -8959,6 +9048,9 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Server / Singleplayer" +#~ msgid "Shaders" +#~ msgstr "Shaders" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (experimenteel)" @@ -8975,6 +9067,10 @@ msgstr "Maximaal parallellisme in cURL" #~ "videokaarten de prestaties verbeteren.\n" #~ "Alleen mogelijk met OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Camera-update uitgeschakeld" + #~ msgid "Shadow limit" #~ msgstr "Schaduw limiet" @@ -9007,6 +9103,9 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Maakt camera-rotatie vloeiender. O om uit te zetten." +#~ msgid "Sound system is disabled" +#~ msgstr "Systeemgeluiden zijn uitgeschakeld" + #~ msgid "Special" #~ msgstr "Speciaal" @@ -9047,6 +9146,9 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Dit font wordt gebruikt voor bepaalde talen." +#~ msgid "Time send interval" +#~ msgstr "Kloktijd verstuur-interval" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Om schaduwen mogelijk te maken moet OpenGL worden gebruikt." @@ -9152,6 +9254,18 @@ msgstr "Maximaal parallellisme in cURL" #~ msgid "Waving water" #~ msgstr "Golvend water" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Als gui_scaling_filter_txr2img aan staat, worden plaatjes\n" +#~ "van de GPU naar het werkgeheugen gekopiëerd voor schalen.\n" +#~ "Anders wordt de oude methode gebruikt, voor video-kaarten\n" +#~ "die geen ondersteuning hebben voor het kopiëren van texturen\n" +#~ "terug naar het werkgeheugen." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9162,6 +9276,10 @@ msgstr "Maximaal parallellisme in cURL" #~ "Indien uitgeschakeld, zullen bitmap en XML verctor lettertypes gebruikt " #~ "worden." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "Node-animaties in wereldblokken niet synchroniseren." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Maak het mogelijk dat spelers elkaar kunnen verwonden en doden." diff --git a/po/nn/luanti.po b/po/nn/luanti.po index aa6b3851a..eef5a7558 100644 --- a/po/nn/luanti.po +++ b/po/nn/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Norwegian Nynorsk (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-02-27 22:01+0000\n" "Last-Translator: jhh \n" "Language-Team: Norwegian Nynorsk ] [-t]" msgstr "[all [ ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Bla gjennom" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Rediger" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Vel mappe" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Vel fil" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Velj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ikkje nokon skildring gjeven)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-støy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Avbryt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaritet" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaver" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Forskyvning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Brigdingsmotstand" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Lagre" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Frø" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "x spreiing" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "y spreiing" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z spreiing" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absolutt verdi" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "standardar" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "letta" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Rydd til side" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Styring" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Deaktivert" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Aktivert" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Ingen resultat" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Sett opphavsverdien att" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Søk" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Vis tekniske namn" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Touchskjerm" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Klienttillegg" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Innhald: Spel" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Innhald: Speltillegg" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamiske skuggar" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Høg" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Låg" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medium" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Særs høg" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Svært låg" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +406,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Attende" @@ -203,11 +443,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Ingen pakkar kunne verte henta" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Ingen resultat" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Ingen oppdateringar" @@ -253,18 +488,6 @@ msgstr "Allereie installert" msgid "Base Game:" msgstr "Basisspel:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Avbryt" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -396,6 +619,12 @@ msgstr "Kan ikkje leggja til eit tillegg som $1" msgid "Unable to install a $1 as a texture pack" msgstr "Kan ikkje leggja til $1 som ein tekstursamling" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Slege på, har mistak)" @@ -460,12 +689,6 @@ msgstr "Ingen valfrie avhengigheiter" msgid "Optional dependencies:" msgstr "Valfrie avhengigheiter:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Lagre" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Verd:" @@ -616,11 +839,6 @@ msgstr "Elver" msgid "Sea level rivers" msgstr "Elver på havnivå" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Frø" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Jamn biotopskifting" @@ -761,6 +979,23 @@ msgstr "" "Denne modifikasjons-pakka har eit eksplisitt namn i sin modpakke.conf som " "vill overstyre all omdøping her." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Aktiver alt" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Ein ny $1 versjon er tilgjengeleg" @@ -789,7 +1024,7 @@ msgstr "Aldri" msgid "Visit website" msgstr "Vitja nettstad" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Innstillingar" @@ -803,227 +1038,6 @@ msgstr "" "Freist å slå på igjen den offentlege tenarlista, og sjekk Internett-" "tilkoplinga di." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Bla gjennom" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Rediger" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Vel mappe" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Vel fil" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Velj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ikkje nokon skildring gjeven)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-støy" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaritet" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaver" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Forskyvning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Brigdingsmotstand" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "x spreiing" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "y spreiing" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z spreiing" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absolutt verdi" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "standardar" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "letta" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Rydd til side" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Styring" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Deaktivert" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Aktivert" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Sett opphavsverdien att" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Søk" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Vis tekniske namn" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Klienttillegg" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Innhald: Spel" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Innhald: Speltillegg" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Aktivert" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kamera oppdatering er deaktivert" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamiske skuggar" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Høg" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Låg" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medium" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Særs høg" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Svært låg" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Om" @@ -1044,10 +1058,6 @@ msgstr "Kjerne-utviklarar" msgid "Core Team" msgstr "Kjerneteam" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Opna brukardatamappa" @@ -1195,10 +1205,22 @@ msgstr "Start spel" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Slett Favoritt" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresse" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativ stode" @@ -1212,6 +1234,11 @@ msgstr "Skade / PvP" msgid "Favorites" msgstr "Favorittar" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spel" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Inkompatible tenarar" @@ -1224,10 +1251,26 @@ msgstr "Bli med i spel" msgid "Login" msgstr "Innlogging" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Offentlege tenarar" @@ -1313,23 +1356,6 @@ msgstr "" "\n" "Sjekk problemsøkjar.txt for detaljar." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- modus: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Offentleg: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Spelar mot spelar (PvP): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Tenarnamn: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ein serialiseringsfeil har oppstått:" @@ -1339,6 +1365,11 @@ msgstr "Ein serialiseringsfeil har oppstått:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Problemsøkjaren visar sin informasjon" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatiske framsteg er avtatt" @@ -1359,6 +1390,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kamera oppdatering er deaktivert" @@ -1372,10 +1407,6 @@ msgstr "Kamera oppdatering er aktivert" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Zoom er for tiden deaktivert tå spelet eller ein modifikasjon" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Endre lykelord" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmatisk modus er avtatt" @@ -1404,39 +1435,6 @@ msgstr "Tilkoplingsfeil (Tidsavbrot?)" msgid "Connection failed for unknown reason" msgstr "Tilkoplinga feila av ein ukjent grunn" -#: src/client/game.cpp -msgid "Continue" -msgstr "Fortset" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Utgangspunkts Kontroller:\n" -"Ikkje nokon meny synleg:\n" -"- einskild berøring: knapp aktiveres\n" -"- dobbel berøring: plassér/bruk\n" -"- stryk finger: sjå rundt\n" -"Meny/Synleg innhald:\n" -"- dobbel berøring (ute):\n" -" -->lukk\n" -"- berør stokk, berør slott:\n" -" --> flytt stokk\n" -"- berør&dra, berør med den andre finger'n\n" -" --> plassér enkelt-gjenstand til slott\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1450,31 +1448,15 @@ msgstr "Skapar klient..." msgid "Creating server..." msgstr "Skapar tenarmaskin..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Problemsøkjar informasjon og profilerings graf er gøymt" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Problemsøkjaren visar sin informasjon" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Problemsøkjaren, profilerings grafen, og jern-tråd-rammen er gøymt" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Kunne ikkje skapa klient: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Gå ut til meny" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Gå ut til data'n" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Ekspressmodus er avtatt" @@ -1512,18 +1494,6 @@ msgstr "Tåke er aktivert" msgid "Fog enabled by game or mod" msgstr "Zoom er for tiden deaktivert tå spelet eller ein modifikasjon" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spel info:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spelet er i avbrot, og er ståande til du kjem tilbake" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Er i gang med vertskap tå tenarmaskin" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definerér gjennstander..." @@ -1561,14 +1531,6 @@ msgstr "" msgid "Node definitions..." msgstr "Definerér noder..." -#: src/client/game.cpp -msgid "Off" -msgstr "Av" - -#: src/client/game.cpp -msgid "On" -msgstr "På" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Tone bevegingsmodus e avtatt" @@ -1581,38 +1543,22 @@ msgstr "Tone bevegingsmodus er i gang" msgid "Profiler graph shown" msgstr "Profilerings graf er vist" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Fjern-tenarmaskin" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Slår opp addressa..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Kom opp att" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Slår av..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Enkeltspelar oppleving" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Lydvolum" - #: src/client/game.cpp msgid "Sound muted" msgstr "Lyd e dempa" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Lydsystemet er slått av" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Lydsystemet er ikkje støtta på denne builden" @@ -1686,18 +1632,116 @@ msgstr "Utsiktsrekkjevidd er forandra til %d" msgid "Volume changed to %d%%" msgstr "Volum e forandra til %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Jern-tråd-ramma er vist" -#: src/client/game.cpp -msgid "You died" -msgstr "Du døydde" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom er for tiden deaktivert tå spelet eller ein modifikasjon" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- modus: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Offentleg: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Spelar mot spelar (PvP): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Tenarnamn: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Endre lykelord" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Fortset" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Utgangspunkts Kontroller:\n" +"Ikkje nokon meny synleg:\n" +"- einskild berøring: knapp aktiveres\n" +"- dobbel berøring: plassér/bruk\n" +"- stryk finger: sjå rundt\n" +"Meny/Synleg innhald:\n" +"- dobbel berøring (ute):\n" +" -->lukk\n" +"- berør stokk, berør slott:\n" +" --> flytt stokk\n" +"- berør&dra, berør med den andre finger'n\n" +" --> plassér enkelt-gjenstand til slott\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Gå ut til meny" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Gå ut til data'n" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spel info:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spelet er i avbrot, og er ståande til du kjem tilbake" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Er i gang med vertskap tå tenarmaskin" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Av" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "På" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Fjern-tenarmaskin" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Kom opp att" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Lydvolum" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Du døydde" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2038,8 +2082,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Klarte ikkje å opne nettside" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Lydsystemet er ikkje støtta på denne builden" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2087,7 +2132,7 @@ msgstr "Automatiske framsteg" msgid "Automatic jumping" msgstr "Automatiske hopp" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2099,7 +2144,7 @@ msgstr "Bakover" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Byt kamera" @@ -2123,7 +2168,7 @@ msgstr "Senk volum" msgid "Double tap \"jump\" to toggle fly" msgstr "Dobbel berør \"hopp\" for å ha på flyve løyve" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Slipp" @@ -2139,11 +2184,11 @@ msgstr "Øk rekkevidde" msgid "Inc. volume" msgstr "Øk volum" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hopp" @@ -2175,7 +2220,7 @@ msgstr "Neste gjenstand" msgid "Prev. item" msgstr "Forrige gjenstand" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Velj rekkevidde" @@ -2187,7 +2232,7 @@ msgstr "Høgre" msgid "Screenshot" msgstr "Skjermbilde" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Sniking" @@ -2195,15 +2240,15 @@ msgstr "Sniking" msgid "Toggle HUD" msgstr "Slå av/på HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Slå chatloggen av eller på" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Slå på/av ekspress modus" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Slåpå/av flyve løyving" @@ -2211,11 +2256,11 @@ msgstr "Slåpå/av flyve løyving" msgid "Toggle fog" msgstr "Slå av/på tåke" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Slå på/av minikart" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Slå på/av ikkjeklipp" @@ -2223,7 +2268,7 @@ msgstr "Slå på/av ikkjeklipp" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2260,7 +2305,7 @@ msgstr "Gammalt passord" msgid "Passwords do not match!" msgstr "Passorda passar ikkje!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Avslutt" @@ -2273,15 +2318,46 @@ msgstr "Målbindt" msgid "Sound Volume: %d%%" msgstr "Lydstyrke: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Mellom knappen" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Ferdig!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Fjern-tenarmaskin" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Slå av/på tåke" @@ -2484,8 +2560,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2539,10 +2614,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2568,6 +2639,16 @@ msgstr "Verdsnamn" msgid "Advanced" msgstr "Avansert" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2941,15 +3022,14 @@ msgstr "Skyradius" msgid "Clouds" msgstr "Skyer" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Skyer er ei effekt på klientsida." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Skyer i meny" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Farga tåke" @@ -2972,7 +3052,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3110,6 +3190,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3262,19 +3350,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekorasjonar" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3302,6 +3382,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3380,8 +3468,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3454,8 +3542,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3470,12 +3557,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3780,10 +3861,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4009,12 +4086,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4033,6 +4104,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4127,10 +4205,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4750,10 +4824,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4786,6 +4856,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4876,7 +4950,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5323,17 +5397,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5534,16 +5610,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Skuggeleggjarar" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5708,10 +5774,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5991,10 +6056,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6057,6 +6118,10 @@ msgstr "Raslende lauv" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6107,7 +6172,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6130,16 +6198,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6383,20 +6449,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6407,10 +6465,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6433,8 +6487,7 @@ msgstr "Om ein skal tåkelegge enden av det synlege området." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6593,8 +6646,8 @@ msgstr "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." #~ msgstr "" -#~ "Juster dpi-konfigurasjonen for din skjem (kun system utan X11/Android), f." -#~ "eks. for 4K-skjermar." +#~ "Juster dpi-konfigurasjonen for din skjem (kun system utan X11/Android), " +#~ "f.eks. for 4K-skjermar." #~ msgid "All Settings" #~ msgstr "Alle innstillingar" @@ -6643,6 +6696,10 @@ msgstr "" #~ msgid "Chat toggle key" #~ msgstr "Knapp for å slå chatten av/på" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Skyer er ei effekt på klientsida." + #~ msgid "Command key" #~ msgstr "Kommandoknapp" @@ -6708,9 +6765,15 @@ msgstr "" #~ msgid "Damage enabled" #~ msgstr "Skade aktivert" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Problemsøkjar informasjon og profilerings graf er gøymt" + #~ msgid "Debug info toggle key" #~ msgstr "Knapp for å slå debuggingsinformasjon av/på" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Problemsøkjaren, profilerings grafen, og jern-tråd-rammen er gøymt" + #~ msgid "Default game" #~ msgstr "Standard spel" @@ -6739,15 +6802,16 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Sjølvrørande skuggar:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Aktivert" + #~ msgid "Enter " #~ msgstr "Gå " #~ msgid "Fancy Leaves" #~ msgstr "Fancy blader" -#~ msgid "Game" -#~ msgstr "Spel" - #~ msgid "Generate Normal Maps" #~ msgstr "Generér normale kart" @@ -6767,8 +6831,8 @@ msgstr "" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Knappebindinger. (Om denne menyen går galen, ta bort tinga fra \"minetest." -#~ "conf\")" +#~ "Knappebindinger. (Om denne menyen går galen, ta bort tinga fra " +#~ "\"minetest.conf\")" #~ msgid "Main" #~ msgstr "Hovud" @@ -6846,6 +6910,9 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Velje eit pakke dokument:" +#~ msgid "Shaders" +#~ msgstr "Skuggeleggjarar" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Skuggeleggjarar ()" @@ -6853,9 +6920,16 @@ msgstr "" #~ msgid "Shaders (unavailable)" #~ msgstr "Skuggeleggjarar (ikkje tilgjengelege)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kamera oppdatering er deaktivert" + #~ msgid "Simple Leaves" #~ msgstr "Enkle blader" +#~ msgid "Sound system is disabled" +#~ msgstr "Lydsystemet er slått av" + #~ msgid "Special" #~ msgstr "Spesial" diff --git a/po/oc/luanti.po b/po/oc/luanti.po index 5d77fda70..bd3868085 100644 --- a/po/oc/luanti.po +++ b/po/oc/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-12-03 17:17+0000\n" "Last-Translator: Krock \n" "Language-Team: Occitan ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Navegar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Modifiar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Seleccionar un repertòre" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Seleccionar un fichèir" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Pas de descripcion o de paramètre bailat)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Brut 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Annular" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaritada" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octavas" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Descalatge" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persisténcia" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Sauvar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Eschala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Grana" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Escart X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Escart Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Escart Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "valor absoluda" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "defaut" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "polit" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Espotir" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desactivat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activat" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Pas de resultats" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Tornar per defaut" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Charchar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar los noms tecnics" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mòds dau Client" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Contengut: Juòcs" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Contengut: Mòds" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Ombras dinamicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Nautas" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Bassas" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Meitantas" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Franc Nautas" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Franc Bassas" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +405,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -203,11 +441,6 @@ msgstr "Mòds" msgid "No packages could be retrieved" msgstr "Pas gis de paquets poguèron èsser quèrre" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Pas de resultats" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Pas de mesas a jorn" @@ -253,18 +486,6 @@ msgstr "Dejá installat" msgid "Base Game:" msgstr "Juòc de Basa:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Annular" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -393,6 +614,12 @@ msgstr "Se pòt pas installar un $1 coma un $2" msgid "Unable to install a $1 as a texture pack" msgstr "Se pòt pas installar $1 coma un pack de texturas" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Activat, a una error)" @@ -457,12 +684,6 @@ msgstr "Pas de dependéncias optionalas" msgid "Optional dependencies:" msgstr "Dependéncias optionalas:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Sauvar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Monde:" @@ -614,11 +835,6 @@ msgstr "Ribèiras" msgid "Sea level rivers" msgstr "Ribèiras au nivèl de la mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Grana" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transicion doça entre los biòms" @@ -759,6 +975,23 @@ msgstr "" "Aqueste mòdpack ten un nom explicita balhat dins son modpack.conf que vai " "remplaçar tota tornada de nom aquí." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Tot activar" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Una novèla version $1 es disponible" @@ -787,7 +1020,7 @@ msgstr "Pas Jamai" msgid "Visit website" msgstr "Visitar lo site" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Paramètres" @@ -801,226 +1034,6 @@ msgstr "" "Essatjatz de tornar activar la lista de servidors e verifiatz vòstra " "connexion d'internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Navegar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Modifiar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Seleccionar un repertòre" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Seleccionar un fichèir" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Pas de descripcion o de paramètre bailat)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Brut 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaritada" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octavas" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Descalatge" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persisténcia" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Eschala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Escart X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Escart Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Escart Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "valor absoluda" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "defaut" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "polit" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Espotir" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desactivat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activat" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Tornar per defaut" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Charchar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar los noms tecnics" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mòds dau Client" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Contengut: Juòcs" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Contengut: Mòds" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Activat" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Actualizacion de camèra desactivada" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Ombras dinamicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Nautas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Bassas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Meitantas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Franc Nautas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Franc Bassas" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "A prepaus" @@ -1041,10 +1054,6 @@ msgstr "Developaires Principaus" msgid "Core Team" msgstr "Còla Principala" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Dobrir lo Repertòre de Donadas d'Utilizaire" @@ -1194,10 +1203,22 @@ msgstr "Començar le Juòc" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Espotir lo Favorit" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adreça" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Mòds dau Client" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Mòde Creatiu" @@ -1211,6 +1232,11 @@ msgstr "Daumatge / JcJ" msgid "Favorites" msgstr "Favorits" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Juòcs" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servidors pas compatibles" @@ -1223,10 +1249,26 @@ msgstr "Jonhar lo Juòc" msgid "Login" msgstr "Coneccion" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Servidors Publics" @@ -1311,23 +1353,6 @@ msgstr "" "\n" "Espiar debug.txt per los detalhs." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mòda: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Public: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- JcJ: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nom dau Servidor: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Una error de serializacion aparessèt:" @@ -1337,6 +1362,11 @@ msgstr "Una error de serializacion aparessèt:" msgid "Access denied. Reason: %s" msgstr "Accès refusat. Rason: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Liams daus Blòcs escònduts" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Marcha automatica desactivada" @@ -1357,6 +1387,10 @@ msgstr "Liams daus blòcs mostrats per aqueste blòc" msgid "Block bounds shown for nearby blocks" msgstr "Liams daus blòcs mostrats per los blòcs vesins" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Actualizacion de camèra desactivada" @@ -1371,10 +1405,6 @@ msgid "Can't show block bounds (disabled by game or mod)" msgstr "" "Se pòt pas mostrar los liams de blòcs (desactivat per un mòd o un juòc)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Chanjar de Senhau" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Mòda cinematic desactivat" @@ -1403,26 +1433,6 @@ msgstr "Error de connecion (perduda?)" msgid "Connection failed for unknown reason" msgstr "Connexion pas capitada per una rason pas coneguda" -#: src/client/game.cpp -msgid "Continue" -msgstr "Contunhar" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1436,31 +1446,15 @@ msgstr "Creacion dau client..." msgid "Creating server..." msgstr "Creacion dau servidor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1499,18 +1493,6 @@ msgid "Fog enabled by game or mod" msgstr "" "Se pòt pas mostrar los liams de blòcs (desactivat per un mòd o un juòc)" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1547,14 +1529,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1567,38 +1541,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Tornar" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1670,18 +1628,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Setz mòrt·a" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mòda: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Public: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- JcJ: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nom dau Servidor: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Chanjar de Senhau" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Contunhar" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Tornar" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Setz mòrt·a" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2011,7 +2054,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2060,7 +2103,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2072,7 +2115,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2096,7 +2139,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2112,11 +2155,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2148,7 +2191,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2160,7 +2203,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2168,15 +2211,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2184,11 +2227,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2196,7 +2239,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2232,7 +2275,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2245,15 +2288,44 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Achabat!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2451,8 +2523,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2505,10 +2576,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2531,6 +2598,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2903,11 +2980,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2932,7 +3009,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3067,6 +3144,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3218,18 +3303,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3257,6 +3334,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3332,8 +3417,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3406,8 +3491,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3422,12 +3506,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3729,10 +3807,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3956,12 +4030,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3980,6 +4048,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4074,10 +4149,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4693,10 +4764,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4729,6 +4796,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4819,7 +4890,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5259,17 +5330,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5462,16 +5535,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5634,10 +5697,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5916,10 +5978,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5978,6 +6036,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6028,7 +6090,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6051,16 +6116,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6298,20 +6361,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6322,10 +6377,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6348,8 +6399,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6548,6 +6598,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Ombras dinamicas:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Activat" + #~ msgid "Fancy Leaves" #~ msgstr "Fuelhas Gentas" @@ -6594,12 +6648,19 @@ msgstr "" #~ msgid "Screen:" #~ msgstr "Ecran:" +#~ msgid "Shaders" +#~ msgstr "Shaders" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (experimentau)" #~ msgid "Shaders (unavailable)" #~ msgstr "Shaders (pas disponibles)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Actualizacion de camèra desactivada" + #~ msgid "Simple Leaves" #~ msgstr "Fuelhas Simplas" diff --git a/po/pl/luanti.po b/po/pl/luanti.po index 9d82392cf..a659c3e0c 100644 --- a/po/pl/luanti.po +++ b/po/pl/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Polish (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-09-05 22:09+0000\n" -"Last-Translator: nauta-turbidus \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-27 22:03+0000\n" +"Last-Translator: Mateusz Mendel \n" "Language-Team: Polish \n" "Language: pl\n" @@ -13,7 +13,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -78,6 +78,246 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[wszystko | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Przeglądaj" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Edytuj" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Wybierz katalog" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Wybierz plik" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Ustaw" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Brak opisu ustawienia)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Szum 2d" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Anuluj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakunarność" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktawy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Margines" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Trwałość" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Zapisz" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skaluj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Ziarno losowości" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Rozrzut X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Rozrzut Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Rozrzut Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "wartość bezwzględna" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "domyślne" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "wygładzony" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Gra również musi obsługiwać automatyczną regulację ekspozycji)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Gra również musi obsługiwać efekt bloom)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Gra również musi obsługiwać światło wolumetryczne)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Użyj języka systemowego)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Dostępność" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatyczny" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Czat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Delete" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Sterowanie" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Wyłączone" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Włączone" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Ogólne" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Poruszanie się" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Brak wyników" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Przywróć wartość domyślną" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Przywróć wartość domyślną ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Wyszukaj" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Pokaż ustawienia zaawansowane" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Pokaż nazwy techniczne" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Ekran dotykowy" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS podczas pauzy w menu" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mody klienta" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Zawartość: Gry" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Zawartość: Mody" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Gra również musi obsługiwać cienie)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Niestandardowe" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Cienie dynamiczne" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Wysokie" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Niskie" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Średnie" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Bardzo wysokie" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Bardzo niskie" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -159,27 +399,28 @@ msgid "$1 downloading..." msgstr "Pobieranie $1..." #: builtin/mainmenu/content/dlg_contentdb.lua +#, fuzzy msgid "All" -msgstr "" +msgstr "Wszystko" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Backspace" #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB nie jest dostępne gdy Minetest był zbudowany bez cURL" +msgstr "ContentDB nie jest dostępny gdy Luanti był skompilowany bez cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." msgstr "Pobieranie..." #: builtin/mainmenu/content/dlg_contentdb.lua +#, fuzzy msgid "Featured" -msgstr "" +msgstr "Wyróżnione" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +442,6 @@ msgstr "Modyfikacje" msgid "No packages could be retrieved" msgstr "Nie można pobrać pakietów" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Brak wyników" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Brak aktualizacji" @@ -215,9 +451,8 @@ msgid "Queued" msgstr "W kolejce" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" -msgstr "Paczki zasobów" +msgstr "Paczki tekstur" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "The package $1 was not found." @@ -251,18 +486,6 @@ msgstr "Już zainstalowany" msgid "Base Game:" msgstr "Gra podstawowa:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Anuluj" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -271,7 +494,7 @@ msgstr "Zależności:" #: builtin/mainmenu/content/dlg_install.lua #, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Błąd przy pobieraniu zależności dla pakietu" +msgstr "Błąd przy pobieraniu zależności dla pakietu $1" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -306,44 +529,40 @@ msgid "Overwrite" msgstr "Nadpisz" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" msgstr "Adres URL ContentDB" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" msgstr "Opis serwera" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Przekaż darowiznę" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Temat forum" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Informacja:" +msgstr "Informacja" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" msgstr "Zainstaluj $1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Lista błędów" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Kod źródłowy" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Przetłumacz" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -354,13 +573,13 @@ msgid "Update" msgstr "Aktualizuj" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Odwiedź stronę" +msgstr "Strona internetowa" #: builtin/mainmenu/content/dlg_package.lua +#, fuzzy msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "Przez $1 — $2 pobrań — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -390,6 +609,12 @@ msgstr "Nie można zainstalować $1 jako $2" msgid "Unable to install a $1 as a texture pack" msgstr "Nie można zainstalować $1 jako paczki tekstur" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Włączone, zawiera błąd)" @@ -454,12 +679,6 @@ msgstr "Brak dodatkowych zależności" msgid "Optional dependencies:" msgstr "Dodatkowe zależności:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Zapisz" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Świat:" @@ -614,11 +833,6 @@ msgstr "Rzeki" msgid "Sea level rivers" msgstr "Rzeki na poziomie morza" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Ziarno losowości" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Płynne przejście między biomami" @@ -723,14 +937,13 @@ msgid "Dismiss" msgstr "Odrzuć" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Przez dłuższy czas, razem z silnikiem Minetest dostarczana była domyślna gra " -"o nazwie \"Minetest Game\". Od wersji 5.8.0, Minetest jest rozpowszechniany " -"bez domyślnej gry." +"Przez dłuższy czas, razem z silnikiem Luanti dostarczana była domyślna gra o " +"nazwie \"Minetest Game\". Od wersji 5.8.0, Luanti jest rozpowszechniany bez " +"domyślnej gry." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -764,6 +977,23 @@ msgstr "" "Ten mod ma sprecyzowaną nazwę nadaną w pliku konfiguracyjnym modpack.conf, " "która nadpisze każdą zmienioną tutaj nazwę." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Włącz wszystkie" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Nowa wersja $1 jest dostępna" @@ -792,7 +1022,7 @@ msgstr "Nigdy" msgid "Visit website" msgstr "Odwiedź stronę" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ustawienia" @@ -806,228 +1036,6 @@ msgstr "" "Spróbuj ponownie włączyć publiczną listę serwerów i sprawdź swoje połączenie " "z siecią Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Przeglądaj" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Edytuj" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Wybierz katalog" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Wybierz plik" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Ustaw" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Brak opisu ustawienia)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Szum 2d" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakunarność" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktawy" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Margines" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Trwałość" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skaluj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Rozrzut X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Rozrzut Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Rozrzut Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "wartość bezwzględna" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "domyślne" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "wygładzony" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Gra również musi obsługiwać cienie)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Gra również musi obsługiwać cienie)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Gra również musi obsługiwać cienie)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Użyj języka systemowego)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Dostępność" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Czat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Delete" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Sterowanie" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Wyłączone" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Włączone" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Ogólne" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Poruszanie się" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Przywróć wartość domyślną" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Przywróć wartość domyślną ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Wyszukaj" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Pokaż ustawienia zaawansowane" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Pokaż nazwy techniczne" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mody klienta" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Zawartość: Gry" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Zawartość: Mody" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Włączone" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Aktualizowanie kamery wyłączone" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Gra również musi obsługiwać cienie)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Niestandardowe" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Cienie dynamiczne" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Wysokie" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Niskie" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Średnie" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Bardzo wysokie" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Bardzo niskie" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "O" @@ -1048,10 +1056,6 @@ msgstr "Główni twórcy" msgid "Core Team" msgstr "Główny zespół" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Urządzenie Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Otwórz katalog danych użytkownika" @@ -1154,17 +1158,15 @@ msgid "Install games from ContentDB" msgstr "Instaluj gry z ContentDB" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "Minetest nie ma domyślnie zainstalowanej gry." +msgstr "Luanti nie ma domyślnie zainstalowanej gry." #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" -"Minetest to platforma tworzenia gier, która pozwala Ci grać w wiele różnych " +"Luanti to platforma tworzenia gier, która pozwala Ci grać w wiele różnych " "gier." #: builtin/mainmenu/tab_local.lua @@ -1203,10 +1205,22 @@ msgstr "Rozpocznij grę" msgid "You need to install a game before you can create a world." msgstr "Musisz zainstalować grę, zanim będziesz mógł stworzyć świat." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Usuń z ulubionych" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adres" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Tryb kreatywny" @@ -1220,6 +1234,11 @@ msgstr "Obrażenia / PvP" msgid "Favorites" msgstr "Ulubione" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Gra" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Niekompatybilne serwery" @@ -1232,10 +1251,28 @@ msgstr "Dołącz do gry" msgid "Login" msgstr "Zaloguj się" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Liczba powstających wątków" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Krok serwera dedykowanego" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Publiczne serwery" @@ -1320,23 +1357,6 @@ msgstr "" "\n" "Sprawdź plik debug.txt by uzyskać więcej informacji." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Tryb: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Publiczne: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "Gracz przeciwko graczowi: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Nazwa serwera: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Wystąpił błąd serializacji:" @@ -1346,6 +1366,11 @@ msgstr "Wystąpił błąd serializacji:" msgid "Access denied. Reason: %s" msgstr "Odmowa dostępu. Powód: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Informacje debugu widoczne" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatyczne chodzenie do przodu wyłączone" @@ -1366,6 +1391,10 @@ msgstr "Granice bloku wyświetlane dla bieżącego bloku" msgid "Block bounds shown for nearby blocks" msgstr "Granice bloków pokazane dla pobliskich bloków" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Aktualizowanie kamery wyłączone" @@ -1378,10 +1407,6 @@ msgstr "Aktualizowanie kamery włączone" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Nie można wyświetlić granic bloków (wyłączone przez grę lub mod)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Zmień hasło" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Tryb kinowy wyłączony" @@ -1410,38 +1435,6 @@ msgstr "Błąd połączenia (brak odpowiedzi?)" msgid "Connection failed for unknown reason" msgstr "Połączenie nie powiodło się z nieznanego powodu" -#: src/client/game.cpp -msgid "Continue" -msgstr "Kontynuuj" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Domyślne sterowanie:\n" -"Brak widocznego menu:\n" -"- przejechanie palcem: rozglądanie się\n" -"- dotknięcie: postaw/uderz/użyj (domyślnie)\n" -"- długie dotknięcie: kop/użyj (domyślnie)\n" -"Menu/Ekwipunek widoczny:\n" -"- potwójne dotknięcie poza menu:\n" -" -->zamknij\n" -"- dotknięcie stosu, dotknięcie miejsca:\n" -" --> przenieś stos\n" -"- dotknięcie i przeciągnięcie, dotknięcie drugim palcem\n" -" --> umieść pojedynczy przedmiot w miejscu\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1455,31 +1448,15 @@ msgstr "Tworzenie klienta..." msgid "Creating server..." msgstr "Tworzenie serwera...." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Informacje debugu oraz wykresy są ukryte" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Informacje debugu widoczne" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Informacje debugu, wykresy oraz tryb siatki są ukryte" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Błąd tworzenia klienta: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Wyjście do menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Wyjście z gry" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Tryb szybki wyłączony" @@ -1516,18 +1493,6 @@ msgstr "Mgła włączona" msgid "Fog enabled by game or mod" msgstr "Mgła włączona przez grę lub mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informacje o grze:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Gra wstrzymana" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Tworzenie serwera" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definicje przedmiotów..." @@ -1564,14 +1529,6 @@ msgstr "Tryb noclip włączony (uwaga: nie masz uprawnień \"noclip\")" msgid "Node definitions..." msgstr "Definicje bloków..." -#: src/client/game.cpp -msgid "Off" -msgstr "Wyłącz" - -#: src/client/game.cpp -msgid "On" -msgstr "Włącz" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Tryb nachylenia ruchu wyłączony" @@ -1584,38 +1541,22 @@ msgstr "Tryb nachylenia ruchu włączony" msgid "Profiler graph shown" msgstr "Wykresy profilera widoczne" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Serwer zdalny" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Sprawdzanie adresu..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Wróć do gry" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Wyłączanie..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Pojedynczy gracz" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Głośność" - #: src/client/game.cpp msgid "Sound muted" msgstr "Głośność wyciszona" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "System dźwiękowy jest wyłączony" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "System dźwiękowy nie jest obsługiwany w tej kompilacji" @@ -1693,18 +1634,116 @@ msgstr "Zmieniono zasięg widoczności na %d, ale gra lub mod ogranicza go do %d msgid "Volume changed to %d%%" msgstr "Zmieniono poziom głośności na %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Shadery są włączone, ale GLSL nie jest wspierany przez sterownik." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Siatka widoczna" -#: src/client/game.cpp -msgid "You died" -msgstr "Nie żyjesz" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Powiększenie jest obecnie wyłączone przez grę lub mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Tryb: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Publiczne: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "Gracz przeciwko graczowi: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Nazwa serwera: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Zmień hasło" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Kontynuuj" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Domyślne sterowanie:\n" +"Brak widocznego menu:\n" +"- przejechanie palcem: rozglądanie się\n" +"- dotknięcie: postaw/uderz/użyj (domyślnie)\n" +"- długie dotknięcie: kop/użyj (domyślnie)\n" +"Menu/Ekwipunek widoczny:\n" +"- potwójne dotknięcie poza menu:\n" +" -->zamknij\n" +"- dotknięcie stosu, dotknięcie miejsca:\n" +" --> przenieś stos\n" +"- dotknięcie i przeciągnięcie, dotknięcie drugim palcem\n" +" --> umieść pojedynczy przedmiot w miejscu\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Wyjście do menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Wyjście z gry" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informacje o grze:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Gra wstrzymana" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Tworzenie serwera" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Wyłącz" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Włącz" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Serwer zdalny" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Wróć do gry" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Głośność" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Nie żyjesz" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Czat jest obecnie wyłączony przez grę lub mod" @@ -2028,10 +2067,11 @@ msgstr "Minimapa w trybie teksturowym" #: src/client/shader.cpp #, c-format msgid "Failed to compile the \"%s\" shader." -msgstr "Nie udało się skompilować shadera \"%s\"" +msgstr "Nie udało się skompilować shadera \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "Shadery są włączone, ale GLSL nie jest wspierany przez sterownik." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2083,7 +2123,7 @@ msgstr "Automatyczne chodzenie do przodu" msgid "Automatic jumping" msgstr "Automatyczne skoki" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2095,7 +2135,7 @@ msgstr "Tył" msgid "Block bounds" msgstr "Granice bloków" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Zmień kamerę" @@ -2119,7 +2159,7 @@ msgstr "Zmniejsz głośność" msgid "Double tap \"jump\" to toggle fly" msgstr "Wciśnij dwukrotnie \"Skok\" by włączyć tryb latania" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Upuść" @@ -2135,11 +2175,11 @@ msgstr "Zwiększ pole widzenia" msgid "Inc. volume" msgstr "Zwiększ głośność" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Ekwipunek" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Skok" @@ -2171,7 +2211,7 @@ msgstr "Następny przedmiot" msgid "Prev. item" msgstr "Poprzedni przedmiot" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Zasięg widzenia" @@ -2183,7 +2223,7 @@ msgstr "Prawo" msgid "Screenshot" msgstr "Zrzut ekranu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Skradanie" @@ -2191,15 +2231,15 @@ msgstr "Skradanie" msgid "Toggle HUD" msgstr "Przełącz HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Przełącz historię czatu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Przełącz tryb szybki" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Przełącz tryb latania" @@ -2207,11 +2247,11 @@ msgstr "Przełącz tryb latania" msgid "Toggle fog" msgstr "Przełącz mgłę" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Przełącz minimapę" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Przełącz tryb noclip" @@ -2219,7 +2259,7 @@ msgstr "Przełącz tryb noclip" msgid "Toggle pitchmove" msgstr "Przełączanie przemieszczania" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2255,7 +2295,7 @@ msgstr "Stare hasło" msgid "Passwords do not match!" msgstr "Hasła nie są jednakowe!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Wyjście" @@ -2268,38 +2308,73 @@ msgstr "Wyciszony" msgid "Sound Volume: %d%%" msgstr "Głośność: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Środkowy przycisk myszy" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Gotowe!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Serwer zdalny" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Identyfikator Joystick-a" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Przełącz mgłę" +msgstr "Przełącz debugowanie" #: src/network/clientpackethandler.cpp +#, fuzzy msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Internal server error" -msgstr "" +"Inny klient jest połączony z taką nazwą. Jeśli Twój klient zamknął się w " +"wyniku niespodziewanego błędu, spróbuj jeszcze raz za minutę." #: src/network/clientpackethandler.cpp #, fuzzy +msgid "Empty passwords are disallowed. Set a password and try again." +msgstr "" +"Puste pola z hasłami są niedozwolone. Ustaw hasło i spróbuj jeszcze raz." + +#: src/network/clientpackethandler.cpp +#, fuzzy +msgid "Internal server error" +msgstr "Błąd serwera wewnętrznego" + +#: src/network/clientpackethandler.cpp msgid "Invalid password" -msgstr "Stare hasło" +msgstr "Nieprawidłowe hasło" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2321,47 +2396,57 @@ msgid "Name is taken. Please choose another name" msgstr "Nazwa jest zajęta. Wybierz inną nazwę" #: src/network/clientpackethandler.cpp +#, fuzzy msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Nazwa gracza zawiera niedozwolone znaki" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Nazwa gracza jest za długa." +msgstr "Nazwa gracza niedozwolona" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" msgstr "Wyłączanie..." #: src/network/clientpackethandler.cpp +#, fuzzy msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "Serwer napotkał błąd wewnętrzny. Zostaniesz teraz rozłączony." #: src/network/clientpackethandler.cpp +#, fuzzy msgid "The server is running in singleplayer mode. You cannot connect." msgstr "" +"Serwer działa w trybie dla pojedynczego gracza. Nie możesz się połączyć." #: src/network/clientpackethandler.cpp +#, fuzzy msgid "Too many users" -msgstr "" +msgstr "Zbyt wielu użytkowników" #: src/network/clientpackethandler.cpp +#, fuzzy msgid "Unknown disconnect reason." -msgstr "" +msgstr "Nieznana przyczyna rozłączenia użytkownika." #: src/network/clientpackethandler.cpp +#, fuzzy msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Twój klient wysłał serwerowi coś, czego ten się nie spodziewał. Spróbuj " +"połączyć się ponownie lub zaktualizować klienta." #: src/network/clientpackethandler.cpp +#, fuzzy msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Wersja Twojego klienta nie jest wspierana.\n" +"Skontaktuj się z administratorem serwera." #: src/server.cpp #, c-format @@ -2494,6 +2579,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "Szum 3D, który wpływa na liczbę lochów na jeden mapchunk." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2502,8 +2588,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Wsparcie 3D\n" "Aktualnie wspierane:\n" @@ -2571,10 +2656,6 @@ msgstr "Zasięg aktywnego bloku" msgid "Active object send range" msgstr "Zasięg wysyłania aktywnego obiektu" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Dodaje efekty cząstkowe podczas wykopywania bloków." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2604,6 +2685,17 @@ msgstr "Nazwa administratora" msgid "Advanced" msgstr "Zaawansowane" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Włącz chmury 3D zamiast płaskich." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Pozwala na przejrzyste płyny." @@ -2655,12 +2747,14 @@ msgid "Antialiasing method" msgstr "Metoda antyaliasingu" #: src/settings_translation_file.cpp +#, fuzzy msgid "Anticheat flags" -msgstr "" +msgstr "Flagi anticheata" #: src/settings_translation_file.cpp +#, fuzzy msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Tolerancja ruchu anticheata" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2693,8 +2787,9 @@ msgstr "" "liczb zmiennoprzecinkowych i może mieć większy wpływ na wydajność." #: src/settings_translation_file.cpp +#, fuzzy msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Zastosuj cieniowanie lustrzane do bloków." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2815,7 +2910,7 @@ msgstr "Szum biomu" #: src/settings_translation_file.cpp #, fuzzy msgid "Block bounds HUD radius" -msgstr "Granice bloków" +msgstr "Zasięg granic bloków HUD" #: src/settings_translation_file.cpp msgid "Block cull optimize distance" @@ -3005,14 +3100,14 @@ msgstr "Zasięg chmur" msgid "Clouds" msgstr "Chmury 3D" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Chmury są efektem po stronie klienta." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Chmury w menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Kolorowa mgła" @@ -3039,15 +3134,15 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Lista oddzielonych przecinkami flag do ukrycia w repozytorium treści.\n" "„niewolne” może służyć do ukrywania pakietów, które nie kwalifikują się jako " "„wolne oprogramowanie”,\n" "zgodnie z definicją Free Software Foundation.\n" "Możesz także określić oceny treści.\n" -"Te flagi są niezależne od wersji Minetest,\n" -"więc zobacz pełną listę na https://content.minetest.net/help/content_flags/" +"Te flagi są niezależne od wersji Luanti,\n" +"zobacz więc pełną listę na https://content.minetest.net/help/content_flags/" #: src/settings_translation_file.cpp msgid "" @@ -3207,6 +3302,14 @@ msgstr "Poziom logowania debugowania" msgid "Debugging" msgstr "Debugowanie" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Krok serwera dedykowanego" @@ -3251,7 +3354,6 @@ msgstr "" "ale także zużywa więcej zasobów." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Define the oldest clients allowed to connect.\n" "Older clients are compatible in the sense that they will not crash when " @@ -3267,10 +3369,10 @@ msgstr "" "Starsze klienty mogą być kompatybilne w tym sensie, że nie będą się " "zawieszać,\n" "kiedy łączą się z nowym serwerem, ale mogą nie wspierać wszystkich nowych " -"funkcjonalności., których się spodziewasz.\n" +"funkcjonalności, których się spodziewasz.\n" "To pozwala na bardziej szczegółowe rozróżnianie niż " "strict_protocol_version_checking.\n" -"Minetest i tak wymusza swoje własne, wewnętrzne minimum, a włączenie\n" +"Luanti i tak wymusza swoje własne, wewnętrzne minimum, a włączenie\n" "strict_protocol_version_checking efektywnie nadpisze skutki tego ustawienia." #: src/settings_translation_file.cpp @@ -3385,18 +3487,10 @@ msgstr "" "Pustynie pojawią się gdy np_biome przekroczy tą wartość.\n" "Kiedy flaga 'snowbiomes' jest włączona, ta wartość jest ignorowana." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Odsynchronizuj animację bloków" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opcje deweloperskie" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Włącz efekty cząsteczkowe" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Nie zezwalaj na puste hasła" @@ -3412,9 +3506,10 @@ msgid "" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"Odległość w blokach, przy której sortowanie przezroczystości jest włączone\n" +"Odległość w blokach, przy której sortowanie przezroczystości jest włączone.\n" "Użyj tego ustawienia, aby zmniejszyć spadek wydajności związany z " -"sortowaniem przezroczystości" +"sortowaniem przezroczystości.\n" +"Ustaw wartość na 0, aby wyłączyć je całkowicie." #: src/settings_translation_file.cpp msgid "Domain name of server, to be displayed in the serverlist." @@ -3428,6 +3523,14 @@ msgstr "Wciśnij dwukrotnie \"Skok\" by włączyć tryb latania" msgid "Double-tapping the jump key toggles fly mode." msgstr "Wciśnij dwukrotnie \"Skok\" by włączyć tryb latania." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Zrzuć informacje debugowania generatora mapy." @@ -3445,7 +3548,6 @@ msgid "Dungeon noise" msgstr "Szum generowania lochów" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" msgstr "Efekty graficzne" @@ -3497,7 +3599,7 @@ msgstr "Włącz Post Processing" #: src/settings_translation_file.cpp msgid "Enable Raytraced Culling" -msgstr "Włącz culling oparty o śledzenie promieni" +msgstr "Włącz pomijanie przysłoniętych bloków oparte o śledzenie promieni" #: src/settings_translation_file.cpp msgid "" @@ -3512,9 +3614,10 @@ msgstr "" "oka ludzkiego." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Włącza kolorowe cienie. \n" "Jeśli aktywne, półprzezroczyste bloki rzucają kolorowe cienie. To zużywa " @@ -3553,11 +3656,8 @@ msgid "Enable random user input (only used for testing)." msgstr "Włącz losowe wejście użytkownika (tylko dla testowania)." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" -"Włącz gładkie oświetlenie z prostym efektem ambient occlusion.\n" -"Wyłącz dla szybkości lub wyglądu." +msgstr "Włącz gładkie oświetlenie z prostym efektem ambient occlusion." #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3578,8 +3678,9 @@ msgstr "" "spodziewanych funkcjonalności." #: src/settings_translation_file.cpp +#, fuzzy msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "Włącz wskaźnik dostępnych aktualizacji w oknie zawartości" #: src/settings_translation_file.cpp msgid "" @@ -3602,10 +3703,10 @@ msgstr "" "Dla przykładu: 0 dla braku drgań; 1.0 dla normalnych; 2.0 dla podwójnych." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Włącza/wyłącza uruchamianie serwera IPv6.\n" "Ignorowane jeśli ustawiony jest bind_address.\n" @@ -3628,13 +3729,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Włącz animację inwentarza przedmiotów." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Włącza cachowanie facedir obracanych meshów." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Włącza debug i sprawdzanie błędów w sterowniku OpenGL." @@ -3642,19 +3736,25 @@ msgstr "Włącza debug i sprawdzanie błędów w sterowniku OpenGL." #: src/settings_translation_file.cpp #, fuzzy msgid "Enables smooth scrolling." -msgstr "Włącz Post Processing" +msgstr "Włącza płynne przewijanie." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." msgstr "Włącza potok post-processimgu." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enables the touchscreen controls, allowing you to play the game with a " "touchscreen.\n" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"Włącza sterowanie ekranu dotykowego, co pozwala Ci na granie w grę na " +"ekranie dotykowym.\n" +"„auto” oznacza, że sterowanie ekranu dotykowego zostanie włączone lub " +"wyłączone\n" +"automatycznie w zależności od ostatnio użytych danych wejściowych." #: src/settings_translation_file.cpp msgid "" @@ -3983,10 +4083,6 @@ msgstr "Skalowanie GUI" msgid "GUI scaling filter" msgstr "Filtr skalowania GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtr skalowania GUI txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Kontrolery" @@ -4232,11 +4328,15 @@ msgstr "" "włączony." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "If enabled and you have ContentDB packages installed, Luanti may contact " "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"Jeśli jest włączone i posiadasz zainstalowane paczki ContentDB, to Luanti " +"skontaktuje się z ContentDB, aby\n" +"sprawdzić aktualizacje paczek podczas otwierania menu głównego." #: src/settings_translation_file.cpp msgid "" @@ -4248,14 +4348,6 @@ msgstr "" "opadania\n" "zamiast klawisza \"skradania\"." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Po włączeniu, rejestracja konta zostanie oddzielona od logowania w UI.\n" -"Po wyłączeniu, nowe konta będą rejestrowane automatycznie przy logowaniu." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4281,6 +4373,16 @@ msgstr "" "Po włączeniu, gracze nie mogą dołączyć do gry z pustym hasłem ani zmienić " "swojego hasła na puste." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Po włączeniu, rejestracja konta zostanie oddzielona od logowania w UI.\n" +"Po wyłączeniu, nowe konta będą rejestrowane automatycznie przy logowaniu." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4380,7 +4482,7 @@ msgid "" "(anything you pass to a core.register_*() function)" msgstr "" "Mierz globalne funkcje zwrotne przy rejestracji.\n" -"(wszystko co prześlesz do funkcji minetest.register_*() )" +"(wszystko, co prześlesz do funkcji core.register_*())" #: src/settings_translation_file.cpp msgid "" @@ -4404,10 +4506,6 @@ msgstr "Mierz metody bytów przy rejestracji." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Interwał zapisywania ważnych zmian w świecie, w sekundach." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Interwał wysyłania czasu gry do klientów, w sekundach." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animacje przedmiotów w ekwipunku" @@ -4501,13 +4599,15 @@ msgstr "" "Zakres to w przybliżeniu -2 do 2." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Julia set only.\n" "Y component of hypercomplex constant.\n" "Alters the shape of the fractal.\n" "Range roughly -2 to 2." msgstr "" -"Wyłącznie dla Zbioru Julii: komponent Y stałej hiperzespolonej, \n" +"Wyłącznie dla Zbioru Julii.\n" +"Komponent Y stałej hiperzespolonej, \n" "która determinuje kształt fraktali.\n" "Zakres to w przybliżeniu -2 do 2." @@ -4585,7 +4685,6 @@ msgid "Leaves style" msgstr "Styl liści" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Leaves style:\n" "- Fancy: all faces visible\n" @@ -4594,8 +4693,8 @@ msgid "" msgstr "" "Style liści:\n" "- Fancy: wszystkie ściany widoczne\n" -"- Simple: tylko zewnętrzene ściany, jeżeli special_tiles jest użyty\n" -"- Opaque: wyłącza przeźroczystość" +"- Simple: tylko zewnętrzne ściany\n" +"- Opaque: wyłącza przezroczystość" #: src/settings_translation_file.cpp #, fuzzy @@ -4607,10 +4706,13 @@ msgid "" "This is a lower bound, i.e. server steps may not be shorter than this, but\n" "they are often longer." msgstr "" -"Długość interwału czasowego serwera (w trakcie którego wszystko jest na " -"ogół\n" -"aktualizowane), wyrażony w sekundach.\n" -"Nie ma zastosowania w sesjach hostowanych z menu klienta." +"Długość interwału czasowego serwera (w trakcie którego wszystko jest na ogół " +"aktualizowane), \n" +"wyrażony w sekundach.\n" +"Nie ma zastosowania w sesjach hostowanych z menu klienta.\n" +"To dolna granica, kroki serwera nie mogą być na przykład krótsze niż ta " +"wartość, ale\n" +"zwykle są dłuższe." #: src/settings_translation_file.cpp msgid "Length of liquid waves." @@ -4727,9 +4829,8 @@ msgid "Liquid queue purge time" msgstr "Czas kolejki czyszczenia cieczy" #: src/settings_translation_file.cpp -#, fuzzy msgid "Liquid reflections" -msgstr "Płynność cieczy" +msgstr "Odbicia cieczy" #: src/settings_translation_file.cpp msgid "Liquid sinking" @@ -5062,12 +5163,17 @@ msgstr "" "Ustaw -1 dla nieskończonej liczby." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Maximum number of packets sent per send step in the low-level networking " "code.\n" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"Maksymalna liczba pakietów przesyłanych na jeden krok w sieciowym kodzie " +"niskopoziomowym.\n" +"Ogólnie nie musisz go zmieniać, jednakże obciążone serwery mogą działać " +"lepiej, gdy ta liczba będzie wyższa." #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5127,10 +5233,6 @@ msgstr "" msgid "Maximum users" msgstr "Maksymalna ilość użytkowników" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Pamięć podręczna siatki" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Wiadomość dnia" @@ -5163,6 +5265,10 @@ msgstr "Dolna granica losowej liczby dużych jaskiń na mapchunk." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Dolna granica losowej liczby małych jaskiń na mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-Mappowanie" @@ -5256,9 +5362,10 @@ msgstr "" "- Opcjonalne latające wyspy z v7 (domyślnie wyłączone)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nazwa gracza.\n" @@ -5296,8 +5403,9 @@ msgid "Node highlighting" msgstr "Podświetlanie bloków" #: src/settings_translation_file.cpp +#, fuzzy msgid "Node specular" -msgstr "" +msgstr "Odbicie bloku" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5359,8 +5467,8 @@ msgid "" "Value of 0 (default) will let Luanti autodetect the number of available " "threads." msgstr "" -"Liczba wątków do użycia do generacji modeli.\n" -"Wartość 0 (domyślna) sprawi, że Minetest automatycznie wykryje liczbę " +"Liczba wątków do użycia do generacji siatki.\n" +"Wartość 0 (domyślna) sprawi, że Luanti automatycznie wykryje liczbę " "dostępnych wątków." #: src/settings_translation_file.cpp @@ -5369,7 +5477,7 @@ msgstr "Occlusion Culler" #: src/settings_translation_file.cpp msgid "Occlusion Culling" -msgstr "Pomijanie przesłoniętych modeli po stronie serwera" +msgstr "Pomijanie przesłoniętych bloków" #: src/settings_translation_file.cpp msgid "" @@ -5395,16 +5503,15 @@ msgstr "Debug OpenGL" #: src/settings_translation_file.cpp #, fuzzy msgid "Optimize GUI for touchscreens" -msgstr "Użyj celownika do ekranu dotykowego" +msgstr "Optymalizuj GUI dla ekranów dotykowych" #: src/settings_translation_file.cpp msgid "Optional override for chat weblink color." msgstr "Opcjonalna zmiana koloru łącza internetowego na czacie." #: src/settings_translation_file.cpp -#, fuzzy msgid "Other Effects" -msgstr "Efekty graficzne" +msgstr "Inne efekty" #: src/settings_translation_file.cpp msgid "" @@ -5528,9 +5635,9 @@ msgid "" "Metrics can be fetched on http://127.0.0.1:30000/metrics" msgstr "" "Adres listenera Prometheusa.\n" -"Jeśli Minetest jest skompilowany z włączoną opcją ENABLE_PROMETHEUS,\n" +"Jeśli Luanti jest skompilowany z włączoną opcją ENABLE_PROMETHEUS, to\n" "włącz listener metryk dla Prometheusa na tym adresie.\n" -"Metryki mogą być ładowane na http://127.0.0.1:30000/metrics" +"Metryki mogą być pobrane na stronie http://127.0.0.1:30000/metrics" #: src/settings_translation_file.cpp msgid "Proportion of large caves that contain liquid." @@ -5554,8 +5661,11 @@ msgstr "" "Wartości większe niż 26 skutkują ostrym odcięciem w rogach chmur." #: src/settings_translation_file.cpp +#, fuzzy msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"Zasięg użycia, gdy funkcja granic bloków HUD jest ustawiona na najbliższe " +"bloki." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5782,23 +5892,26 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "Sprawdź http://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5834,7 +5947,6 @@ msgid "Selection box width" msgstr "Długość zaznaczenia" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Selects one of 18 fractal types.\n" "1 = 4D \"Roundy\" Mandelbrot set.\n" @@ -5856,7 +5968,7 @@ msgid "" "17 = 4D \"Mandelbulb\" Mandelbrot set.\n" "18 = 4D \"Mandelbulb\" Julia set." msgstr "" -"Wybór 18 fraktali z 9 formuł.\n" +"Wybiera jeden z 18 typów fraktali.\n" "1 = 4D \"Roundy\" zbiór Mandelbrota .\n" "2 = 4D \"Roundy\" zbiór Julii.\n" "3 = 4D \"Squarry\" zbiór Mandelbrota.\n" @@ -5877,15 +5989,18 @@ msgstr "" "18 = 4D \"Mandelbulb\" zbiór Julii." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." msgstr "" +"Przesyła nazwy użytkowników sieciowych liście serwera. Jeśli jest wyłączona, " +"to tylko liczba graczy zostanie ujawniona." #: src/settings_translation_file.cpp #, fuzzy msgid "Send player names to the server list" -msgstr "Rozgłoś listę serwerów." +msgstr "Prześlij nazwy graczy na listę serwerów" #: src/settings_translation_file.cpp msgid "Server" @@ -5908,11 +6023,15 @@ msgid "Server address" msgstr "Adres serwera" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Server anticheat configuration.\n" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"Konfiguracja anticheata na serwerze.\n" +"Flagi mają ustawioną wartość dodatnią. Odznacz flagę, by wyłączyć moduł " +"anticheata." #: src/settings_translation_file.cpp msgid "Server description" @@ -5929,7 +6048,7 @@ msgstr "Port Serwera" #: src/settings_translation_file.cpp #, fuzzy msgid "Server-side occlusion culling" -msgstr "Occulusion culling po stronie serwera" +msgstr "Pomijanie przesłoniętych bloków po stronie serwera" #: src/settings_translation_file.cpp msgid "Server/Env Performance" @@ -5955,24 +6074,20 @@ msgid "" "Value of 0 means no tilt / vertical orbit." msgstr "" "Ustaw nachylenie orbity Słońca/Księżyca w stopniach.\n" -"Wartość 0 oznacza brak nachylenia / orbitę pionową.\n" -"Wartość minimalna: 0.0; wartość maksymalna: 60.0" +"Gry mogą zmieniać nachylenie orbity poprzez API.\n" +"Wartość 0 oznacza brak nachylenia / orbitę pionową." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Set the exposure compensation in EV units.\n" "Value of 0.0 (default) means no exposure compensation.\n" "Range: from -1 to 1.0" msgstr "" -"Ustaw współczynnik kompensacji ekspozycji.\n" -"Ten współczynnik jest aplikowany na liniową wartość koloru\n" -"przed wszystkimi innymi efektami przetwarzania końcowego.\n" -"Wartość 1.0 (domyślna) oznacza brak kompensacji ekspozycji.\n" -"Zakres: od 0.1 do 10.0" +"Ustaw współczynnik kompensacji ekspozycji w jednostkach EV.\n" +"Wartość 0.0 (domyślna) oznacza brak kompensacji ekspozycji.\n" +"Zakres: od -1 do 1.0" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Set the language. By default, the system language is used.\n" "A restart is required after changing this." @@ -5988,13 +6103,13 @@ msgstr "" "klientów." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Set the shadow strength gamma.\n" "Adjusts the intensity of in-game dynamic shadows.\n" "Lower value means lighter shadows, higher value means darker shadows." msgstr "" "Ustaw siłę cienia.\n" +"Dostosowuje intensywność dynamicznych cieni w grze.\n" "Niższa wartość oznacza jaśniejsze cienie, wyższa wartość oznacza ciemniejsze " "cienie." @@ -6013,9 +6128,7 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "Set to true to enable Shadow Mapping." -msgstr "" -"Ustawienie wartości pozytywnej włącza drganie liści.\n" -"Do włączenia wymagane są shadery." +msgstr "Ustaw wartość pozytywną, by włączyć odwzorowanie cieni." #: src/settings_translation_file.cpp msgid "" @@ -6028,90 +6141,74 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." msgstr "" +"Ustaw wartość pozytywną by włączyć efekt światła wolumetrycznego (znanego " +"również jako \"Boskie promienie\")." #: src/settings_translation_file.cpp -#, fuzzy msgid "Set to true to enable waving leaves." -msgstr "" -"Ustawienie wartości pozytywnej włącza drganie liści.\n" -"Do włączenia wymagane są shadery." +msgstr "Ustawienie wartości pozytywnej włącza drganie liści." #: src/settings_translation_file.cpp -#, fuzzy msgid "Set to true to enable waving liquids (like water)." -msgstr "" -"Ustawienie wartości pozytywnej włącza falowanie wody.\n" -"Wymaga shaderów." +msgstr "Ustawienie wartości pozytywnej włącza falowanie cieczy (tak jak woda)." + +#: src/settings_translation_file.cpp +msgid "Set to true to enable waving plants." +msgstr "Ustawienie pozytywnej wartości włącza falowanie roślin." #: src/settings_translation_file.cpp #, fuzzy -msgid "Set to true to enable waving plants." -msgstr "" -"Ustawienie pozytywnej wartości włącza falowanie roślin.\n" -"Wymaga shaderów." - -#: src/settings_translation_file.cpp msgid "" "Set to true to render debugging breakdown of the bloom effect.\n" "In debug mode, the screen is split into 4 quadrants:\n" "top-left - processed base image, top-right - final image\n" "bottom-left - raw base image, bottom-right - bloom texture." msgstr "" +"Ustaw wartość pozytywną, by renderować analizę debugowania efektu bloom.\n" +"W trybie debugowania ekran jest podzielony na 4 ćwiartki:\n" +"Lewa górna- przetwarzany podstawowy obraz, prawa górna- ostateczny obraz\n" +"lewa dolna- surowy, podstawowy obraz, prawa dolna- tekstura z efektem bloom." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Sets shadow texture quality to 32 bits.\n" "On false, 16 bits texture will be used.\n" "This can cause much more artifacts in the shadow." msgstr "" "Ustawia jakość tekstury cienia na 32 bity.\n" -"Jeśli wartość jest fałszywa, używana będzie tekstura 16-bitowa.\n" +"Jeśli wartość jest negatywna, używana będzie tekstura 16-bitowa.\n" "Może to powodować znacznie więcej artefaktów w cieniu." #: src/settings_translation_file.cpp msgid "Shader path" msgstr "Shadery" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shadery" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" -msgstr "Jakość zrzutu ekranu" +msgstr "Jakość filtru cienia" #: src/settings_translation_file.cpp -#, fuzzy msgid "Shadow map max distance in nodes to render shadows" -msgstr "Maksymalna odległość mapy cieni w węzłach do renderowania cieni" +msgstr "Maksymalna odległość mapy cieni w blokach do renderowania cieni" #: src/settings_translation_file.cpp -#, fuzzy msgid "Shadow map texture in 32 bits" msgstr "Tekstura mapy cieni w 32 bitach" #: src/settings_translation_file.cpp -#, fuzzy msgid "Shadow map texture size" -msgstr "Minimalna wielkość tekstury dla filtrów" +msgstr "Minimalna wielkość tekstury mapy cieni" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Shadow offset (in pixels) of the default font. If 0, then shadow will not be " "drawn." -msgstr "Offset cienia czcionki, jeżeli 0 to cień nie będzie rysowany." +msgstr "" +"Offset cienia (w pikselach) domyślnej czcionki. Jeżeli 0, to cień nie będzie " +"rysowany." #: src/settings_translation_file.cpp -#, fuzzy msgid "Shadow strength gamma" msgstr "Siła cienia" @@ -6129,11 +6226,10 @@ msgid "" "Show entity selection boxes\n" "A restart is required after changing this." msgstr "" -"Ustaw język. Zostaw puste pole, aby użyć języka systemowego.\n" +"Pokaż pola wyboru jednostki.\n" "Wymagany restart po zmianie ustawienia." #: src/settings_translation_file.cpp -#, fuzzy msgid "Show name tag backgrounds by default" msgstr "Domyślnie wyświetlaj tła znaczników imiennych" @@ -6142,6 +6238,7 @@ msgid "Shutdown message" msgstr "Komunikat zamknięcia serwera" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Side length of a cube of map blocks that the client will consider together\n" "when generating meshes.\n" @@ -6149,13 +6246,23 @@ msgid "" "draw calls, benefiting especially high-end GPUs.\n" "Systems with a low-end GPU (or no GPU) would benefit from smaller values." msgstr "" - -#: src/settings_translation_file.cpp -msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +"Boczna długość sześcianu bloków mapy, które klient będzie łącznie brał pod " +"uwagę,\n" +"podczas generowania siatek.\n" +"Wyższe wartości zwiększają użycie procesora GPU poprzez zmniejszenie liczby\n" +"wywoływań rysowania, skorzystają na tym zwłaszcza procesory GPU wyższej " +"klasy,\n" +"Systemy z procesorami GPU niższej klasy (lub bez procesora GPU) " +"skorzystałyby z mniejszych wartości." #: src/settings_translation_file.cpp #, fuzzy +msgid "Simulate translucency when looking at foliage in the sunlight." +msgstr "" +"Symuluj półprzezroczystość podczas patrzenia na listowie w świetle " +"słonecznym." + +#: src/settings_translation_file.cpp msgid "" "Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" "WARNING: There is no benefit, and there are several dangers, in\n" @@ -6165,15 +6272,15 @@ msgid "" "recommended." msgstr "" "Rozmiar mapchunków generowanych przez mapgen, podany w mapblockach (16 " -"węzłów).\n" -"UWAGA!: Nie ma z tego żadnego pożytku, ale występuje kilka zagrożeń, przy\n" -"zwiększaniu tej wartości powyżej 5.\n" +"bloków).\n" +"UWAGA: Nie ma z tego żadnego pożytku, ale przy zwiększaniu tej wartości " +"powyżej 5\n" +"występuje kilka zagrożeń.\n" "Zmniejszenie tej wartości podnosi gęstość jaskiń i lochów.\n" "Zmiana tej wartości ma specjalne zastosowanie, zalecane jest pozostawienie\n" -"jej nietkniętą." +"jej nietkniętej." #: src/settings_translation_file.cpp -#, fuzzy msgid "Sky Body Orbit Tilt" msgstr "Pochylenie orbity ciała niebieskiego" @@ -6182,17 +6289,14 @@ msgid "Slice w" msgstr "Kawałek w" #: src/settings_translation_file.cpp -#, fuzzy msgid "Slope and fill work together to modify the heights." msgstr "Zbocze oraz wypełnienie działają razem, aby zmodyfikować wysokości." #: src/settings_translation_file.cpp -#, fuzzy msgid "Small cave maximum number" msgstr "Maksymalna ilość małych jaskiń" #: src/settings_translation_file.cpp -#, fuzzy msgid "Small cave minimum number" msgstr "Minimalna ilość małych jaskiń" @@ -6211,53 +6315,48 @@ msgstr "Płynne oświetlenie" #: src/settings_translation_file.cpp #, fuzzy msgid "Smooth scrolling" -msgstr "Płynne oświetlenie" +msgstr "Płynne przewijanie" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " "cinematic mode by using the key set in Controls." msgstr "" -"Wygładza obracanie widoku kamery w trybie kinowym. Wartość 0 wyłącza tą " -"funkcję." +"Wygładza obracanie widoku kamery w trybie kinowym. Wartość 0 wyłącza tę " +"funkcję. Wejdź w tryb kinowy, używając klawisza ustawionego w opcjach " +"Sterowania." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Smooths rotation of camera, also called look or mouse smoothing. 0 to " "disable." msgstr "" -"Wygładza obracanie widoku kamery w trybie kinowym. Wartość 0 wyłącza tą " -"funkcję." +"Wygładza obracanie widoku kamery, nazywa się to również patrzeniem lub " +"wygładzaniem myszki. Wartość 0 wyłącza tę funkcję." #: src/settings_translation_file.cpp msgid "Sneaking speed" msgstr "Szybkość skradania" #: src/settings_translation_file.cpp -#, fuzzy msgid "Sneaking speed, in nodes per second." msgstr "Prędkość skradania, w blokach na sekundę." #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "Chmury 3D" +msgstr "Łagodne chmury" #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft shadow radius" -msgstr "Przeźroczystość cienia czcionki" +msgstr "Obszar gładkiego cienia" #: src/settings_translation_file.cpp msgid "Sound" msgstr "Dźwięk" #: src/settings_translation_file.cpp -#, fuzzy msgid "Sound Extensions Blacklist" -msgstr "Flaga czarnej listy ContentDB" +msgstr "Flaga czarnej listy rozszerzeń głosowych" #: src/settings_translation_file.cpp msgid "" @@ -6284,12 +6383,11 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" -"Rozszerz pełną aktualizację mapy cieni na określoną ilość klatek.\n" +"Rozprowadź pełną aktualizację mapy cieni na określoną ilość klatek.\n" "Wyższe wartości mogą sprawić, że cienie będą lagować,\n" "niższe wartości powodują zużycie większej ilości zasobów.\n" "Minimalna wartość: 1; maksymalna wartość: 16" @@ -6305,7 +6403,6 @@ msgstr "" "Standardowe zniekształcenie gaussowego przyśpieszenia środkowego." #: src/settings_translation_file.cpp -#, fuzzy msgid "Static spawn point" msgstr "Statyczny punkt spawnu" @@ -6314,19 +6411,16 @@ msgid "Steepness noise" msgstr "Szum stromości" #: src/settings_translation_file.cpp -#, fuzzy msgid "Step mountain size noise" -msgstr "Szum góry" +msgstr "Rozmiar szumu góry" #: src/settings_translation_file.cpp -#, fuzzy msgid "Step mountain spread noise" -msgstr "Szum góry" +msgstr "Rozmiar rozrzutu szumu góry" #: src/settings_translation_file.cpp -#, fuzzy msgid "Strength of 3D mode parallax." -msgstr "Siła paralaksy." +msgstr "Siła paralaksy trybu 3D." #: src/settings_translation_file.cpp msgid "" @@ -6343,7 +6437,6 @@ msgid "Strict protocol checking" msgstr "Sztywne sprawdzanie protokołu" #: src/settings_translation_file.cpp -#, fuzzy msgid "Strip color codes" msgstr "Usuń kody kolorów" @@ -6385,9 +6478,8 @@ msgid "Temperature variation for biomes." msgstr "Zmienność temperatury biomów." #: src/settings_translation_file.cpp -#, fuzzy msgid "Terrain alternative noise" -msgstr "Szum wysokości terenu" +msgstr "Szum innego terenu" #: src/settings_translation_file.cpp msgid "Terrain base noise" @@ -6430,7 +6522,6 @@ msgid "Terrain persistence noise" msgstr "Stały szum terenu" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Texture size to render the shadow map on.\n" "This must be a power of two.\n" @@ -6441,7 +6532,6 @@ msgstr "" "Większe liczby tworzą lepsze cienie, ale jest to również kosztowniejsze." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Textures on a node may be aligned either to the node or to the world.\n" "The former mode suits better things like machines, furniture, etc., while\n" @@ -6450,25 +6540,23 @@ msgid "" "this option allows enforcing it for certain node types. Note though that\n" "that is considered EXPERIMENTAL and may not work properly." msgstr "" -"Tekstury na węźle mogą być dopasowane albo do niego albo do świata.\n" +"Tekstury na bloku mogą być dopasowane albo do niego, albo do świata.\n" "Ten pierwszy tryb bardziej pasuje do rzeczy takich jak maszyny, meble, itp.\n" "ten drugi sprawia, że schody i mikrobloki lepiej komponują się z " "otoczeniem.\n" "Z uwagi na to, że ta możliwość jest nowa, nie może być wykorzystywana przez " "starsze serwery,\n" -"opcja ta pozwala na wymuszenie jej dla określonych typów węzłów. Zwróć " +"opcja ta pozwala na wymuszenie jej dla określonych typów bloków. Zwróć " "uwagę, że\n" "to opcja EKSPERYMENTALNA i może nie działać zbyt poprawnie." #: src/settings_translation_file.cpp -#, fuzzy msgid "The URL for the content repository" msgstr "Adres URL repozytorium zawartości" #: src/settings_translation_file.cpp -#, fuzzy msgid "The dead zone of the joystick" -msgstr "Identyfikator użycia joysticka" +msgstr "Zakres nieczułości joysticka" #: src/settings_translation_file.cpp msgid "" @@ -6479,13 +6567,15 @@ msgstr "" "gdy wpisujemy `/ profiler save [format]` bez określonego formatu." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "The delay in milliseconds after which a touch interaction is considered a " "long tap." msgstr "" +"Opóźnienie w milisekundach, po którym dotknięcie jest uznawane za długie " +"stuknięcie." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The file path relative to your world path in which profiles will be saved to." msgstr "" @@ -6493,6 +6583,7 @@ msgstr "" "profile." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "The gesture for punching players/entities.\n" "This can be overridden by games and mods.\n" @@ -6504,6 +6595,16 @@ msgid "" "Known from the classic Luanti mobile controls.\n" "Combat is more or less impossible." msgstr "" +"Gest uderzania graczy/jednostek.\n" +"Można to nadpisać przez mody oraz gry.\n" +"\n" +"* short_tap\n" +"Łatwe w użyciu i dobrze znane z innych gier, które nie powinny być tu " +"wymieniane.\n" +"\n" +"*long_tap\n" +"Znany ze sterowania mobilnego w klasycznym Luanti.\n" +"Walka jest mniej lub bardziej niemożliwa." #: src/settings_translation_file.cpp msgid "The identifier of the joystick to use" @@ -6513,11 +6614,9 @@ msgstr "Identyfikator użycia joysticka" #, fuzzy msgid "" "The length in pixels after which a touch interaction is considered movement." -msgstr "" -"Długość w pikselach wymagana do wejścia w interakcję z ekranem dotykowym." +msgstr "Długość w pikselach, po której dotknięcie jest uznawane za ruch." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The maximum height of the surface of waving liquids.\n" "4.0 = Wave height is two nodes.\n" @@ -6525,10 +6624,9 @@ msgid "" "Default is 1.0 (1/2 node)." msgstr "" "Maksymalna wysokość powierzchni falujących cieczy.\n" -"4,0 = wysokość fali wynosi dwa węzły.\n" +"4,0 = wysokość fali wynosi dwa bloki.\n" "0.0 = Fala w ogóle się nie porusza.\n" -"Wartość domyślna to 1.0 (1/2 węzła).\n" -"Wymaga włączenia falujących cieczy." +"Wartość domyślna to 1.0 (1/2 bloku)." #: src/settings_translation_file.cpp #, fuzzy @@ -6536,8 +6634,9 @@ msgid "" "The minimum time in seconds it takes between digging nodes when holding\n" "the dig button." msgstr "" -"Czas w sekundach między kolejnymi położeniem węzłów po przytrzymaniu\n" -"przycisku umieszczania.." +"Minimalny czas w sekundach, który upływa między wykopywaniem bloków po " +"przytrzymaniu\n" +"przycisku wykopywania." #: src/settings_translation_file.cpp msgid "The network interface that the server listens on." @@ -6552,6 +6651,7 @@ msgstr "" "Sprawdź /privs w celu wyświetlenia ich listy oraz ustawień modów na serwerze." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "The radius of the volume of blocks around every player that is subject to " "the\n" @@ -6562,8 +6662,8 @@ msgid "" "This should be configured together with active_object_send_range_blocks." msgstr "" "Promień objętości bloków wokół każdego gracza, który podlega\n" -"aktywne bloki, określone w mapblocks (16 węzłów).\n" -"W aktywnych blokach ładowane są obiekty i uruchamiane ABM.\n" +"aktywnym blokom, określonym w mapblocks (16 bloków).\n" +"W aktywnych blokach ładowane są obiekty i uruchamiany jest ABM.\n" "Jest to również minimalny zakres, w którym utrzymywane są obiekty aktywne " "(moby).\n" "Należy to skonfigurować razem z active_object_send_range_blocks." @@ -6576,12 +6676,9 @@ msgid "" "OpenGL is the default for desktop, and OGLES2 for Android." msgstr "" "Zaplecze renderowania.\n" -"Po zmianie wymagane jest ponowne uruchomienie.\n" -"Uwaga: w Androidzie trzymaj się OGLES1, jeśli nie masz pewności! W " -"przeciwnym razie aplikacja może się nie uruchomić.\n" -"Na innych platformach zalecany jest OpenGL.\n" -"Shadery są obsługiwane przez OpenGL (tylko komputery stacjonarne) i OGLES2 " -"(eksperymentalne)" +"Uwaga: po zmianie wymagane jest ponowne uruchomienie!\n" +"OpenGL jest domyślnie dla komputerów stacjonarnych, a OGLES2 dla systemu " +"Android." #: src/settings_translation_file.cpp msgid "" @@ -6645,17 +6742,16 @@ msgid "The type of joystick" msgstr "Typ joysticka" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" "enabled. Also, the vertical distance over which humidity drops by 10 if\n" "'altitude_dry' is enabled." msgstr "" -"Odległość w pionie, powyżej której ciepło spada o 20, jeśli funkcja " +"Odległość w pionie, powyżej której ciepło spada o 20, jeśli opcja " "„altitude_chill” jest\n" -"włączona. Również odległość w pionie, na której wilgotność spada o 10, " +"włączona. Również odległość w pionie, powyżej której wilgotność spada o 10, " "jeśli\n" -"„altitude_dry” jest włączony." +"„altitude_dry” jest włączona." #: src/settings_translation_file.cpp msgid "Third of 4 2D noises that together define hill/mountain range height." @@ -6664,8 +6760,9 @@ msgstr "" "górskich." #: src/settings_translation_file.cpp +#, fuzzy msgid "Threshold for long taps" -msgstr "" +msgstr "Próg długich stuknięć" #: src/settings_translation_file.cpp msgid "" @@ -6679,10 +6776,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Pora dnia, gdy stworzono nowy świat, w mili-godzinach (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Interwał czasu wysyłania" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Szybkość upływu czasu" @@ -6705,10 +6798,13 @@ msgstr "" "Określa to jak długo są spowalniane po postawieniu lub usunięciu bloku." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"Tolerancja ruchu wykrywacza oszustw.\n" +"Zwiększ tę wartość, jeśli gracze doświadczają zacięć w poruszaniu." #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6719,38 +6815,38 @@ msgid "Touchscreen" msgstr "Ekran dotykowy" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "Próg ekranu dotykowego" +msgstr "Sterowanie ekranu dotykowego" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen sensitivity" -msgstr "Czułość myszy" +msgstr "Czułość ekranu dotykowego" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen sensitivity multiplier." -msgstr "Mnożnik czułości myszy." +msgstr "Mnożnik czułości ekranu dotykowego." #: src/settings_translation_file.cpp msgid "Tradeoffs for performance" msgstr "Kompromisy dla wydajności" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent foliage" -msgstr "Nieprzeźroczyste ciecze" +msgstr "Półprzezroczyste listowie" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent liquids" -msgstr "Nieprzeźroczyste ciecze" +msgstr "Półprzezroczyste ciecze" #: src/settings_translation_file.cpp msgid "Transparency Sorting Distance" msgstr "Odległość sortowania przezroczystości" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Odległość sortowania przezroczystości" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Szum drzew" @@ -6760,7 +6856,6 @@ msgid "Trilinear filtering" msgstr "Filtrowanie trójliniowe" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "True = 256\n" "False = 128\n" @@ -6775,6 +6870,7 @@ msgid "Trusted mods" msgstr "Zaufane mody" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Type of occlusion_culler\n" "\n" @@ -6783,6 +6879,15 @@ msgid "" "\n" "This setting should only be changed if you have performance problems." msgstr "" +"Rodzaj occlusion_culler\n" +"\n" +"„loops” to przestarzały algorytm z zagnieżdżonymi pętlami i złożonością O " +"(n³)\n" +"„bfs” to nowy algorytm na podstawie przeszukiwania wszerz oraz bocznego " +"usuwania przysłoniętych bloków\n" +"\n" +"To ustawienie powinno być zmieniane tylko wtedy, gdy masz problemy z " +"wydajnością." #: src/settings_translation_file.cpp #, fuzzy @@ -6791,7 +6896,9 @@ msgid "" "release.\n" "If this is empty the engine will never check for updates." msgstr "" -"Link do pliku JSON zawierającego informacje o najnowszym wydaniu Minetest" +"Link do pliku JSON zawierającego informacje o najnowszym wydaniu Luanti.\n" +"Jeśli to pole jest puste, to silnik nigdy nie będzie sprawdzał aktualizacji " +"do pobrania." #: src/settings_translation_file.cpp msgid "URL to the server list displayed in the Multiplayer Tab." @@ -6808,12 +6915,16 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" -"Niedopróbkowanie jest podobne do użycia niższej rozdzielczości ekranu, ale " -"stosuje się tylko do świata gry, zachowując nietknięty GUI.\n" +"Niedopróbkowanie jest podobne do użycia niższej rozdzielczości ekranu, ale \n" +"ma to zastosowanie tylko do świata gry, zachowując nietknięte GUI.\n" "Daje to znaczne przyśpieszenie wydajności kosztem mniej szczegółowych " -"obrazów." +"obrazów.\n" +"Wyższe wartości powodują mniej szczegółowe obrazy." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6835,33 +6946,34 @@ msgstr "Górna granica Y lochów." msgid "Upper Y limit of floatlands." msgstr "Górna granica Y latających wysp." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Włącz chmury 3D zamiast płaskich." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Włącz animację chmur w tle menu głównego." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." -msgstr "Włącz filtrowanie anizotropowe dla oglądania tekstur pod kątem." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." +msgstr "Użyj filtrowania anizotropowego dla oglądania tekstur pod kątem." #: src/settings_translation_file.cpp -#, fuzzy msgid "Use bilinear filtering when scaling textures." -msgstr "Użyj filtrowania tri-linearnego podczas skalowania tekstur." +msgstr "Użyj filtrowania bilinearnego podczas skalowania tekstur." #: src/settings_translation_file.cpp msgid "Use crosshair for touch screen" msgstr "Użyj celownika do ekranu dotykowego" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Use crosshair to select object instead of whole screen.\n" "If enabled, a crosshair will be shown and will be used for selecting object." msgstr "" +"Użyj celownika, by zaznaczyć obiekt zamiast całego ekranu.\n" +"Jeśli włączona, to celownik się pokaże i używany będzie do zaznaczania " +"obiektów." #: src/settings_translation_file.cpp #, fuzzy @@ -6872,19 +6984,26 @@ msgid "" msgstr "" "Użyj mip mappingu przy skalowaniu tekstur. Może nieznacznie zwiększyć " "wydajność,\n" -"zwłaszcza przy korzystaniu z tekstur wysokiej rozdzielczości.\n" -"Gamma correct dowscaling nie jest wspierany." +"zwłaszcza przy korzystaniu z paczek tekstur wysokiej rozdzielczości.\n" +"Zmniejszanie korekcji gamma nie jest wspierane." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Use raytraced occlusion culling in the new culler.\n" "This flag enables use of raytraced occlusion culling test for\n" "client mesh sizes smaller than 4x4x4 map blocks." msgstr "" +"Użyj pomijania przesłoniętych bloków opartego na śledzeniu promieni w nowym " +"pomijaniu.\n" +"Ta flaga włącza użycie opartego na śledzeniu promieni testu pomijania " +"przysłoniętych bloków \n" +"siatek klienta w rozmiarach mniejszych niż bloki mapy 4x4x4." #: src/settings_translation_file.cpp +#, fuzzy msgid "Use smooth cloud shading." -msgstr "" +msgstr "Użyj gładkiego cieniowania chmur." #: src/settings_translation_file.cpp msgid "" @@ -6892,16 +7011,19 @@ msgid "" "If both bilinear and trilinear filtering are enabled, trilinear filtering\n" "is applied." msgstr "" +"Użyj filtrowania trójliniowego podczas skalowania tekstur.\n" +"Jeśli zarówno filtrowanie trójliniowe jak i filtrowanie dwuliniowe są " +"włączone, to filtrowanie trójliniowe\n" +"ma zastosowanie." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Use virtual joystick to trigger \"Aux1\" button.\n" "If enabled, virtual joystick will also tap \"Aux1\" button when out of main " "circle." msgstr "" -"(Android) Użyj wirtualnego joysticka, aby aktywować przycisk \"Aux1\".\n" -"Gdy jest włączone to wirtualny joystick również naciśnie przycisk \"Aux1\", " +"(Android) Użyj wirtualnego joysticka, aby aktywować przycisk „Aux1”.\n" +"Gdy jest włączone, to wirtualny joystick również naciśnie przycisk „Aux1”, " "gdy znajduje się poza głównym okręgiem." #: src/settings_translation_file.cpp @@ -6965,15 +7087,17 @@ msgid "Varies steepness of cliffs." msgstr "Kontroluje stromość/wysokość gór." #: src/settings_translation_file.cpp -#, fuzzy msgid "Vertical climbing speed, in nodes per second." msgstr "Pionowa prędkość wchodzenia, w blokach na sekundę." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Vertical screen synchronization. Your system may still force VSync on even " "if this is disabled." msgstr "" +"Pionowa synchronizacja ekranu. Twój system może wciąż ją wymuszać, nawet gdy " +"ta opcja jest wyłączona." #: src/settings_translation_file.cpp msgid "Video driver" @@ -6992,36 +7116,33 @@ msgid "Viewing range" msgstr "Zasięg widoczności" #: src/settings_translation_file.cpp -#, fuzzy msgid "Virtual joystick triggers Aux1 button" -msgstr "Joystick wirtualny aktywuje przycisk aux" +msgstr "Joystick wirtualny aktywuje przycisk Aux1" #: src/settings_translation_file.cpp msgid "Volume" msgstr "Głośność" #: src/settings_translation_file.cpp +#, fuzzy msgid "Volume multiplier when the window is unfocused." -msgstr "" +msgstr "Mnożnik głośności, gdy okno jest nieaktywne." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Volume of all sounds.\n" "Requires the sound system to be enabled." msgstr "" -"Włącza mapowanie paralaksy.\n" -"Wymaga włączenia shaderów." +"Głośność wszystkich dźwięków.\n" +"Wymaga włączenia systemu dźwiękowego." #: src/settings_translation_file.cpp -#, fuzzy msgid "Volume when unfocused" -msgstr "Maksymalna ilość klatek na sekundę gdy gra zapauzowana bądź nieaktywna" +msgstr "Głośność, gdy okno jest nieaktywne" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volumetric lighting" -msgstr "Płynne oświetlenie" +msgstr "Światło wolumetryczne" #: src/settings_translation_file.cpp msgid "" @@ -7038,7 +7159,6 @@ msgstr "" "Zasięg około -2 do 2." #: src/settings_translation_file.cpp -#, fuzzy msgid "Walking and flying speed, in nodes per second." msgstr "Prędkość chodzenia i latania, w blokach na sekundę." @@ -7047,7 +7167,6 @@ msgid "Walking speed" msgstr "Szybkość chodzenia" #: src/settings_translation_file.cpp -#, fuzzy msgid "Walking, flying and climbing speed in fast mode, in nodes per second." msgstr "" "Prędkość chodzenia, latania i wchodzenia w trybie szybkiego chodzenia, w " @@ -7070,43 +7189,42 @@ msgid "Waving leaves" msgstr "Falujące liście" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids" -msgstr "Falujące bloki" +msgstr "Falujące ciecze" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids wave height" -msgstr "Wysokość fal wodnych" +msgstr "Wysokość falujących cieczy" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids wave speed" -msgstr "Szybkość fal wodnych" +msgstr "Szybkość falujących cieczy" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids wavelength" -msgstr "Długość fal wodnych" +msgstr "Długość falujących cieczy" #: src/settings_translation_file.cpp msgid "Waving plants" msgstr "Falujące rośliny" #: src/settings_translation_file.cpp -#, fuzzy msgid "Weblink color" -msgstr "Kolor zaznaczenia" +msgstr "Kolor zaznaczenia linku" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "Gdy jest włączona, to odbicia cieczy są symulowane." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"Gdy włączona, to GUI jest optymalizowany, by być bardziej przydatnym na " +"ekranach dotykowych.\n" +"To czy jest włączona domyślnie, zależy od współczynnika kształtu sprzętu." #: src/settings_translation_file.cpp msgid "" @@ -7118,43 +7236,30 @@ msgstr "" "filtrowane w oprogramowaniu, ale niektóre są generowane bezpośrednio na\n" "sprzęt ( np. renderuj tekstury do bloków ekwipunku)." -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Gdy gui_scaling_filter_txr2img jest aktywny, to kopiuj obrazy z komputera \n" -"do Minetesta, żeby je przeskalować. Kiedy jest nieaktywny, użyj starej " -"metody \n" -"skalowania sterowników graficznych, które nieprawidłowo \n" -"wspierają pobieranie tekstur z komputera." - #: src/settings_translation_file.cpp #, fuzzy msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"Podczas używania filtrów bilinearnych/ tri-linearnych/ anizotropowych, " +"Podczas używania filtrów dwuliniowych/ trójliniowych/ anizotropowych, " "tekstury niskiej rozdzielczości \n" "mogą zostać rozmazane, więc automatycznie przeskaluj je z najbliższą " "interpolacją, \n" "aby zapobiec poszarpanym pikselom. Określa to minimalny rozmiar tekstur\n" "do przeskalowania; wyższe wartości wyglądają lepiej, ale wymagają\n" -"więcej pamięci. Zalecane użycie potęg liczby 2. Ustawienie wartości wyższej " -"niż 1\n" -"może nie dawać widocznych rezultatów chyba, że filtrowanie bilinearne/ tri-" -"linearne/ anizotropowe jest włączone.\n" +"więcej pamięci. Zalecane użycie potęg liczby 2. Ta opcja ma zastosowanie " +"tylko wtedy \n" +"gdy filtrowanie dwuliniowe/ trójliniowe/ anizotropowe jest włączone.\n" "Używa się tego również jako rozmiaru tekstur podstawowych bloków " -"przypisanych dla świata przy autoskalowaniu tekstur." +"przypisanych dla świata \n" +"przy automatycznym skalowaniu tekstur." #: src/settings_translation_file.cpp msgid "" @@ -7164,10 +7269,6 @@ msgstr "" "Czy tła tagów nazw mają być domyślnie pokazywane.\n" "Mody mogą nadal tworzyć tło." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Określ kiedy animacje tekstur na blok powinny być niesynchronizowane." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7178,7 +7279,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Whether the window is maximized." -msgstr "Kiedy okno jest zmaksymalizowane" +msgstr "Kiedy okno jest zmaksymalizowane." #: src/settings_translation_file.cpp msgid "" @@ -7193,9 +7294,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Określ brak widoczności mgły." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7212,12 +7313,10 @@ msgstr "" "Wyświetlanie efektów debugowania klienta(klawisz F5 ma tą samą funkcję)." #: src/settings_translation_file.cpp -#, fuzzy msgid "Width component of the initial window size." -msgstr "Rozdzielczość pionowa rozmiaru okna gry." +msgstr "Składnik szerokości początkowego rozmiaru okna gry." #: src/settings_translation_file.cpp -#, fuzzy msgid "Width of the selection box lines around nodes." msgstr "Szerokość linii zaznaczenia bloków." @@ -7226,13 +7325,12 @@ msgid "Window maximized" msgstr "Okno zmaksymalizowane" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Windows systems only: Start Luanti with the command line window in the " "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"Tylko dla systemu Windows: uruchom Minetest z wierszem poleceń w tle.\n" +"Tylko dla systemu Windows: uruchom Luanti z wierszem poleceń w tle.\n" "Zawiera te same informacje co plik debug.txt (domyślna nazwa)." #: src/settings_translation_file.cpp @@ -7273,7 +7371,6 @@ msgid "Y of flat ground." msgstr "Y płaskiego podłoża." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Y of mountain density gradient zero level. Used to shift mountains " "vertically." @@ -7332,9 +7429,8 @@ msgid "cURL file download timeout" msgstr "Limit czasu pobierania pliku cURL" #: src/settings_translation_file.cpp -#, fuzzy msgid "cURL interactive timeout" -msgstr "Limit czasu cURL" +msgstr "Interaktywny limit czasu oczekiwania cURL" #: src/settings_translation_file.cpp msgid "cURL parallel limit" @@ -7392,6 +7488,9 @@ msgstr "Limit żądań równoległych cURL" #~ "Pozostaw pusty aby utworzyć lokalny serwer.\n" #~ "Zauważ że pole adresu w głównym menu nadpisuje te ustawienie." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Dodaje efekty cząstkowe podczas wykopywania bloków." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7556,6 +7655,9 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Clean transparent textures" #~ msgstr "Czyste przeźroczyste tekstury" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Chmury są efektem po stronie klienta." + #~ msgid "Command key" #~ msgstr "Klawisz komend" @@ -7649,9 +7751,15 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Darkness sharpness" #~ msgstr "Ostrość ciemności" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Informacje debugu oraz wykresy są ukryte" + #~ msgid "Debug info toggle key" #~ msgstr "Klawisz przełączania informacji debugowania" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Informacje debugu, wykresy oraz tryb siatki są ukryte" + #~ msgid "Dec. volume key" #~ msgstr "Klawisz zmniejszania głośności" @@ -7705,10 +7813,16 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Del. Favorite" #~ msgstr "Usuń ulubiony" +#~ msgid "Desynchronize block animation" +#~ msgstr "Odsynchronizuj animację bloków" + #, fuzzy #~ msgid "Dig key" #~ msgstr "Klawisz kopania" +#~ msgid "Digging particles" +#~ msgstr "Włącz efekty cząsteczkowe" + #~ msgid "Disable anticheat" #~ msgstr "Wyłącz anticheat" @@ -7733,6 +7847,9 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Cienie dynamiczne:" +#~ msgid "Enable" +#~ msgstr "Włącz" + #~ msgid "Enable VBO" #~ msgstr "Włącz VBO" @@ -7767,6 +7884,14 @@ msgstr "Limit żądań równoległych cURL" #~ "lub muszą być automatycznie wygenerowane.\n" #~ "Wymaga włączonych shaderów." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Włącza cachowanie facedir obracanych meshów.\n" +#~ "Działa tylko z wyłączonymi shaderami." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Włącz filmic tone mapping" @@ -7816,9 +7941,6 @@ msgstr "Limit żądań równoległych cURL" #~ "Eksperymentalna opcja, może powodować widoczne przestrzenie\n" #~ "pomiędzy blokami kiedy ustawiona powyżej 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS podczas pauzy w menu" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7902,8 +8024,8 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Full screen BPP" #~ msgstr "Głębia koloru w trybie pełnoekranowym" -#~ msgid "Game" -#~ msgstr "Gra" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtr skalowania GUI txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -8099,701 +8221,707 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Instrumentation" #~ msgstr "Instrukcja" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Interwał wysyłania czasu gry do klientów, w sekundach." + #~ msgid "Invalid gamespec." #~ msgstr "Nieprawidłowa specyfikacja trybu gry." #~ msgid "Inventory key" #~ msgstr "Ekwipunek" +#~ msgid "Irrlicht device:" +#~ msgstr "Urządzenie Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Skok" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz zmniejszania zasięgu widzenia.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz zmniejszania głośności.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz skakania.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyrzucenia aktualnie wybranego przedmiotu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz zwiększania zasięgu widzenia.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz zwiększania głośności.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz skakania.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz szybkiego poruszania się w trybie \"fast\"\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz poruszania się wstecz.\n" #~ "Gdy jest aktywny to wyłącza również automatyczne chodzenie do przodu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz poruszania się na przód,\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz poruszania się w lewo.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz poruszania się w prawo.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyciszania gry.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz otwierania okna czatu aby wpisać komendę.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz otwierania okna czatu aby wpisać komendę.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz otwierania okna czatu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz otwierania inwentarza.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz skakania.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru poprzedniej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru poprzedniej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyboru następnej pozycji na pasku akcji.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz skradania.\n" #~ "Także używany do schodzenia w dół i opadania w wodzie jeżeli " #~ "aux1_descends jest wyłączone.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania pomiedzy kamerą z pierwszej i trzeciej osoby.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz do zrobienia zrzutu ekranu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania trybu szybkiego.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania trybu cinematic.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania minimapy.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania trybu szybkiego.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania latania.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania trybu noclip.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania trybu noclip.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania aktualizacji kamery. Przydatne tylko dla " #~ "deweloperów.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania czatu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania informacji debugowania.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania mgły\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania HUD.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania czatu.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania wyświetlania profilera. Przydatne dla deweloperów.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz przełączania nieograniczonego pola widzenia.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Klawisz wyświetlania zoom kiedy to możliwe.\n" -#~ "Zobacz http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Zobacz http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8875,6 +9003,9 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Menus" #~ msgstr "Menu" +#~ msgid "Mesh cache" +#~ msgstr "Pamięć podręczna siatki" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -9084,6 +9215,9 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Pojedynczy gracz" +#~ msgid "Shaders" +#~ msgstr "Shadery" + #~ msgid "Shaders (experimental)" #~ msgstr "Shadery (eksperymentalne)" @@ -9101,6 +9235,17 @@ msgstr "Limit żądań równoległych cURL" #~ "graficznych.\n" #~ "Działa tylko z zapleczem wideo OpenGL ." +#, fuzzy +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Shadery są podstawową częścią renderowania i włączają zaawansowane efekty " +#~ "wizualne." + +#~ msgid "Shaders are disabled." +#~ msgstr "Shadery wyłączone." + #~ msgid "Shadow limit" #~ msgstr "Limit cieni" @@ -9131,6 +9276,9 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Wygładza obracanie widoku kamery. Wartość 0 wyłącza tą funkcję." +#~ msgid "Sound system is disabled" +#~ msgstr "System dźwiękowy jest wyłączony" + #~ msgid "Special" #~ msgstr "Specialne" @@ -9175,6 +9323,13 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Ta czcionka zostanie użyta w niektórych językach." +#, fuzzy +#~ msgid "This is not a recommended configuration." +#~ msgstr "To nie jest zalecana konfiguracja." + +#~ msgid "Time send interval" +#~ msgstr "Interwał czasu wysyłania" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Sterownik OpenGL jest wymagany aby włączyć shadery." @@ -9277,6 +9432,19 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Waving water" #~ msgstr "Falująca woda" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Gdy gui_scaling_filter_txr2img jest aktywny, to kopiuj obrazy z " +#~ "komputera \n" +#~ "do Minetesta, żeby je przeskalować. Kiedy jest nieaktywny, użyj starej " +#~ "metody \n" +#~ "skalowania sterowników graficznych, które nieprawidłowo \n" +#~ "wspierają pobieranie tekstur z komputera." + #, fuzzy #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " @@ -9289,6 +9457,11 @@ msgstr "Limit żądań równoległych cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Określa czy lochy mają być czasem przez generowane teren." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Określ kiedy animacje tekstur na blok powinny być niesynchronizowane." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Określ możliwość atakowania oraz zabijania innych graczy." diff --git a/po/pt/luanti.po b/po/pt/luanti.po index f811c3697..0f0da75fa 100644 --- a/po/pt/luanti.po +++ b/po/pt/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Portuguese (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-09-08 12:09+0000\n" "Last-Translator: Davi Lopes \n" "Language-Team: Portuguese ] [-t]" msgstr "[all| ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Navegar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Selecione o diretório" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Selecione o ficheiro" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Selecionar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Não há descrição para esta configuração)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Ruído 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancelar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaridade" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octavos" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Deslocamento" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistência" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Guardar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Escala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seed" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "amplitude X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "amplitude Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "amplitude Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "valor absoluto" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Padrões" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "amenizado" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(O jogo precisará habilitar sombras também)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(O jogo precisará habilitar sombras também)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(O jogo precisará habilitar sombras também)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Usar idioma do sistema)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Acessibilidade" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Limpar" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controles" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desativado" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Ativado" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Em geral" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Movimento" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Sem resultados" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Restaurar valores padrão" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Restaurar valores padrão ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Procurar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Exibir configurações avançadas" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar nomes técnicos" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Tela sensível ao toque" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS em menu de pausa" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods de cliente" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Conteúdo: Jogos" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Conteúdo: Mods" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "(The game will need to enable shadows as well)" +msgstr "(O jogo precisará habilitar sombras também)" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Custom" +msgstr "Personalizado" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Sombras dinâmicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Baixo" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Médio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Muito Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Muito Baixo" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -164,7 +409,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Voltar" @@ -201,11 +445,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Nenhum pacote pode ser recuperado" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Sem resultados" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Sem atualizações" @@ -251,18 +490,6 @@ msgstr "Já instalado" msgid "Base Game:" msgstr "Jogo base:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancelar" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -391,6 +618,12 @@ msgstr "Não foi possível instalar $ 1 como $ 2" msgid "Unable to install a $1 as a texture pack" msgstr "Não foi possível instalar $1 como pacote de texturas" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Ativado, tem erro)" @@ -456,12 +689,6 @@ msgstr "Sem dependências opcionais" msgid "Optional dependencies:" msgstr "Dependências opcionais:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Guardar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundo:" @@ -612,11 +839,6 @@ msgstr "Rios" msgid "Sea level rivers" msgstr "Rios ao nível do mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seed" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transição suave entre biomas" @@ -762,6 +984,23 @@ msgstr "" "Esse modpack possui um nome explícito em seu modpack.conf que vai " "sobrescrever qualquer renomeio aqui." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Ativar tudo" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Uma nova versão de $1 está disponível" @@ -790,7 +1029,7 @@ msgstr "Nunca" msgid "Visit website" msgstr "Visite o website" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Definições" @@ -804,230 +1043,6 @@ msgstr "" "Tente reativar a lista de servidores públicos e verifique sua conexão com a " "Internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Navegar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Selecione o diretório" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Selecione o ficheiro" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Selecionar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Não há descrição para esta configuração)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Ruído 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaridade" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octavos" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Deslocamento" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistência" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Escala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "amplitude X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "amplitude Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "amplitude Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "valor absoluto" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Padrões" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "amenizado" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(O jogo precisará habilitar sombras também)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(O jogo precisará habilitar sombras também)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(O jogo precisará habilitar sombras também)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Usar idioma do sistema)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Acessibilidade" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Limpar" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controles" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desativado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Ativado" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Em geral" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Movimento" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Restaurar valores padrão" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Restaurar valores padrão ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Procurar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Exibir configurações avançadas" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar nomes técnicos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods de cliente" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Conteúdo: Jogos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Conteúdo: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Ativado" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Atualização da camera desativada" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "(The game will need to enable shadows as well)" -msgstr "(O jogo precisará habilitar sombras também)" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Custom" -msgstr "Personalizado" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Sombras dinâmicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Baixo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Médio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Muito Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Muito Baixo" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Sobre" @@ -1048,10 +1063,6 @@ msgstr "Desenvolvedores Principais" msgid "Core Team" msgstr "Equipe principal" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Abrir o diretório de dados do utilizador" @@ -1203,10 +1214,22 @@ msgstr "Iniciar o jogo" msgid "You need to install a game before you can create a world." msgstr "Você precisa instalar um jogo antes de poder instalar um mod" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Remover favorito" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Endereço" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Cliente" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modo Criativo" @@ -1220,6 +1243,11 @@ msgstr "Dano / PvP" msgid "Favorites" msgstr "Favoritos" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Jogo" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servidores incompatíveis" @@ -1232,10 +1260,28 @@ msgstr "Juntar-se ao jogo" msgid "Login" msgstr "Login" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Número de seguimentos de emersão" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Intervalo de atualização do servidor" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Servidores Públicos" @@ -1320,23 +1366,6 @@ msgstr "" "\n" "Consulte debug.txt para mais detalhes." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modo: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Público: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "Nome do servidor: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ocorreu um erro:" @@ -1346,6 +1375,11 @@ msgstr "Ocorreu um erro:" msgid "Access denied. Reason: %s" msgstr "Acesso negado. Razão:%s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Informação de debug mostrada" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Avanço automático desativado" @@ -1366,6 +1400,10 @@ msgstr "Limites de bloco mostrados para o bloco atual" msgid "Block bounds shown for nearby blocks" msgstr "Limites de bloco mostrados para blocos próximos" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Atualização da camera desativada" @@ -1378,10 +1416,6 @@ msgstr "Atualização da camera habilitada" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Não é possível mostrar limites de bloco (desativado por mod ou jogo)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Mudar Senha" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modo cinemático desativado" @@ -1410,39 +1444,6 @@ msgstr "Erro de ligação (excedeu tempo?)" msgid "Connection failed for unknown reason" msgstr "A conexão falhou por motivo desconhecido" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuar" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controles por defeito:\n" -"Se não há nenhum menu visível:\n" -"- Um toque: ativa botão\n" -"- Duplo toque: colocar/usar\n" -"- Deslizar dedo: Olhar em redor\n" -"Se menu/inventário visível:\n" -"- Duplo toque: (fora do menu/inventário):\n" -" -->fechar\n" -"- Tocar Item e depois tocar num compartimento:\n" -" --> mover item\n" -"- Tocar e arrastar, e depois tocar com o 2º dedo\n" -" --> Coloca apenas um item no compartimento\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1456,31 +1457,15 @@ msgstr "A criar cliente..." msgid "Creating server..." msgstr "A criar servidor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Informação de debug e gráfico de perfil escondido" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Informação de debug mostrada" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Informação de debug, gráfico de perfil e wireframe escondidos" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "A criar cliente: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Sair para o Menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Sair para o S.O" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modo rápido desativado" @@ -1518,18 +1503,6 @@ msgstr "Névoa habilitada" msgid "Fog enabled by game or mod" msgstr "Zoom atualmente desativado por jogo ou mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Info do jogo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Jogo parado" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Criando o servidor" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definições dos Itens..." @@ -1566,14 +1539,6 @@ msgstr "Modo atravessar paredes ativado (note: sem privilégio 'noclip')" msgid "Node definitions..." msgstr "A definir cubos..." -#: src/client/game.cpp -msgid "Off" -msgstr "Desligado" - -#: src/client/game.cpp -msgid "On" -msgstr "Ligado" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Modo movimento pitch desativado" @@ -1586,38 +1551,22 @@ msgstr "Modo movimento pitch ativado" msgid "Profiler graph shown" msgstr "Gráfico de perfil mostrado" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Servidor remoto" - #: src/client/game.cpp msgid "Resolving address..." msgstr "A resolver endereço..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Renascer" - #: src/client/game.cpp msgid "Shutting down..." msgstr "A desligar..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Um Jogador" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume do som" - #: src/client/game.cpp msgid "Sound muted" msgstr "Som mutado" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Som do sistema está desativado" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Som do sistema não é suportado nesta versão" @@ -1691,18 +1640,116 @@ msgstr "Distância de visualização alterado para %d" msgid "Volume changed to %d%%" msgstr "Som alterado para %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Mostrar wireframe" -#: src/client/game.cpp -msgid "You died" -msgstr "Você morreu" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom atualmente desativado por jogo ou mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modo: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Público: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "Nome do servidor: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Mudar Senha" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controles por defeito:\n" +"Se não há nenhum menu visível:\n" +"- Um toque: ativa botão\n" +"- Duplo toque: colocar/usar\n" +"- Deslizar dedo: Olhar em redor\n" +"Se menu/inventário visível:\n" +"- Duplo toque: (fora do menu/inventário):\n" +" -->fechar\n" +"- Tocar Item e depois tocar num compartimento:\n" +" --> mover item\n" +"- Tocar e arrastar, e depois tocar com o 2º dedo\n" +" --> Coloca apenas um item no compartimento\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Sair para o Menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Sair para o S.O" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Info do jogo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Jogo parado" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Criando o servidor" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Desligado" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ligado" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Servidor remoto" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Renascer" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume do som" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Você morreu" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Conversa atualmente desativada por jogo ou mod" @@ -2042,8 +2089,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Falha ao abrir página da web" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Som do sistema não é suportado nesta versão" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2094,7 +2142,7 @@ msgstr "Avanço frontal automático" msgid "Automatic jumping" msgstr "Pulo automático" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Especial" @@ -2106,7 +2154,7 @@ msgstr "Recuar" msgid "Block bounds" msgstr "Limites de bloco" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Mudar camera" @@ -2130,7 +2178,7 @@ msgstr "Diminuir som" msgid "Double tap \"jump\" to toggle fly" msgstr "Carregue duas vezes em \"saltar\" para voar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Largar" @@ -2146,11 +2194,11 @@ msgstr "Alcance inc" msgid "Inc. volume" msgstr "Aumentar Volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventário" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Saltar" @@ -2182,7 +2230,7 @@ msgstr "Próximo item" msgid "Prev. item" msgstr "Item anterior" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Seleccionar Distância" @@ -2194,7 +2242,7 @@ msgstr "Direita" msgid "Screenshot" msgstr "Captura de ecrã" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Agachar" @@ -2202,15 +2250,15 @@ msgstr "Agachar" msgid "Toggle HUD" msgstr "Ativar interface" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Ativar histórico de conversa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Ativar/Desativar correr" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Ativar/Desativar vôo" @@ -2218,11 +2266,11 @@ msgstr "Ativar/Desativar vôo" msgid "Toggle fog" msgstr "Ativar névoa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Ativar minimapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Ativar/Desativar noclip" @@ -2230,7 +2278,7 @@ msgstr "Ativar/Desativar noclip" msgid "Toggle pitchmove" msgstr "Alternar pitchmove" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2267,7 +2315,7 @@ msgstr "Palavra-passe antiga" msgid "Passwords do not match!" msgstr "As palavra-passes não correspondem!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Sair" @@ -2280,16 +2328,47 @@ msgstr "Mutado" msgid "Sound Volume: %d%%" msgstr "Volume do som: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Roda do Rato" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Feito!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Servidor remoto" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID do Joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Ativar névoa" @@ -2516,8 +2595,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Suporte de 3D.\n" "Modos atualmente suportados:\n" @@ -2586,10 +2664,6 @@ msgstr "Alcance de blocos ativos" msgid "Active object send range" msgstr "Distância de envio de objetos ativos" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Adiciona partículas quando escava um node." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2619,6 +2693,17 @@ msgstr "Nome do administrador" msgid "Advanced" msgstr "Avançado" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Usar nuvens 3D em vez de planas." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3025,15 +3110,14 @@ msgstr "Raio das nuvens" msgid "Clouds" msgstr "Nuvens" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "As nuvens são um efeito do lado do cliente." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nuvens no menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Névoa colorida" @@ -3057,7 +3141,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Lista de flags separadas por vírgula para esconder no repositório de " "conteúdos.\n" @@ -3230,6 +3314,14 @@ msgstr "Nível de log de depuração" msgid "Debugging" msgstr "Debugging" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Intervalo de atualização do servidor" @@ -3405,18 +3497,10 @@ msgstr "" "Os desertos ocorrem quando np_biome excede este valor.\n" "Quando a marcação 'snowbiomes' está ativada, isto é ignorado." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Dessincroniza animação de blocos" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opções de desenvolvedor" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Ativar Particulas" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Não permitir palavra-passes vazias" @@ -3449,6 +3533,14 @@ msgstr "Carregue duas vezes em saltar para voar" msgid "Double-tapping the jump key toggles fly mode." msgstr "Carregar duas vezes em saltar ativa/desativa o vôo." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Mostrar informações de depuração do Gerador de mapa." @@ -3531,9 +3623,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Ativa sombras coloridas.\n" "Quando em true, nodes translúcidos podem projetar sombras coloridas. Requer " @@ -3622,10 +3715,10 @@ msgstr "" "Por exemplo: 0 para não ver balançando; 1.0 para normal; 2.0 para duplo." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Ativar/desativar a execução de um servidor IPv6.\n" "Ignorado se bind_address estiver definido.\n" @@ -3649,13 +3742,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Ativa animação de itens no inventário." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Ativar armazenamento em cache para os meshes das faces." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -4009,10 +4095,6 @@ msgstr "Escala do interface gráfico" msgid "GUI scaling filter" msgstr "Filtro de redimensionamento do interface gráfico" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtro txr2img de redimensionamento do interface gráfico" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepads" @@ -4278,16 +4360,6 @@ msgstr "" "Se ativado, a tecla \"especial\" em vez de \"esgueirar\" servirá para\n" "descer." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Se ativado, o registro da conta será separado do login na interface do " -"usuário.\n" -"Se desativadas, novas contas serão registradas automaticamente ao fazer " -"login." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4312,6 +4384,18 @@ msgstr "" "Se ativado, novos jogadores não podem entrar sem uma senha, ou uma senha " "vazia." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Se ativado, o registro da conta será separado do login na interface do " +"usuário.\n" +"Se desativadas, novas contas serão registradas automaticamente ao fazer " +"login." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4444,11 +4528,6 @@ msgstr "" "Intervalo para cada salvamento de alterações importantes no mundo, indicado " "em segundos." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Intervalo de envio de hora do dia para os clientes, indicados em segundos." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animações dos itens do inventário" @@ -5174,10 +5253,6 @@ msgstr "" msgid "Maximum users" msgstr "Limite de utilizadores" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Cache de malha" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Mensagem do dia" @@ -5213,6 +5288,10 @@ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" "Limite mínimo da quantidade aleatória de cavernas pequenas por mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mapeamento MIP" @@ -5307,9 +5386,10 @@ msgstr "" "- As floatlands opcionais da v7 (desativadas por padrão)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nome do jogador.\n" @@ -5833,17 +5913,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6102,16 +6184,6 @@ msgstr "" msgid "Shader path" msgstr "Sombras" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Sombras" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Qualidade do filtro de sombras" @@ -6299,10 +6371,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Espalhe uma atualização completa do mapa de sombras em uma determinada " "quantidade de quadros.\n" @@ -6679,10 +6750,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Hora do dia quando um novo mundo é iniciado, em milihoras (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalo de tempo de envio" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Velocidade de tempo" @@ -6751,6 +6818,11 @@ msgstr "Líquidos Opacos" msgid "Transparency Sorting Distance" msgstr "Distância de classificação de transparência" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Distância de classificação de transparência" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Ruido de árvores" @@ -6802,12 +6874,16 @@ msgid "Undersampling" msgstr "Subamostragem" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "A subamostragem é semelhante à utilização de uma resolução de ecrã mais " "baixa, mas aplica-se\n" @@ -6836,17 +6912,15 @@ msgstr "Limite topo Y de dungeons." msgid "Upper Y limit of floatlands." msgstr "Limite máximo Y para as ilhas flutuantes." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Usar nuvens 3D em vez de planas." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Usar uma animação de nuvem para o fundo do menu principal." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Usar filtragem anisotrópica quando visualizar texturas de um ângulo." #: src/settings_translation_file.cpp @@ -7112,25 +7186,14 @@ msgstr "" "directamente para o hardware (e.g. texturas de cubos no inventário)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Quando gui_scaling_filter_txr2img é true, copie essas imagens\n" -"de hardware para software para dimensionamento. Quando false,\n" -"voltará para o velho método de dimensionamento, para drivers de\n" -"vídeo que não suportem propriedades baixas de texturas voltam do hardware." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7155,12 +7218,6 @@ msgstr "" "Se os planos de fundo da marca de nome devem ser mostrados por padrão.\n" "Os mods ainda podem definir um plano de fundo." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Determina se animações das texturas dos cubos devem ser dessincronizadas " -"entre mapblocks." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7189,9 +7246,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Se for usar névoa no fim da área visível." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7389,6 +7446,9 @@ msgstr "limite paralelo de cURL" #~ "Note que o campo de endereço no menu principal sobrescreve esta " #~ "configuração." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Adiciona partículas quando escava um node." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7551,6 +7611,10 @@ msgstr "limite paralelo de cURL" #~ msgid "Clean transparent textures" #~ msgstr "Limpar texturas transparentes" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "As nuvens são um efeito do lado do cliente." + #~ msgid "Command key" #~ msgstr "Tecla de comando" @@ -7643,9 +7707,15 @@ msgstr "limite paralelo de cURL" #~ msgid "Darkness sharpness" #~ msgstr "Nitidez da escuridão" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Informação de debug e gráfico de perfil escondido" + #~ msgid "Debug info toggle key" #~ msgstr "Tecla para alternar modo de depuração" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Informação de debug, gráfico de perfil e wireframe escondidos" + #~ msgid "Dec. volume key" #~ msgstr "Tecla de dimin. de som" @@ -7708,9 +7778,15 @@ msgstr "limite paralelo de cURL" #~ "biomas.\n" #~ "Y do limite superior de lava em grandes cavernas." +#~ msgid "Desynchronize block animation" +#~ msgstr "Dessincroniza animação de blocos" + #~ msgid "Dig key" #~ msgstr "Tecla para escavar" +#~ msgid "Digging particles" +#~ msgstr "Ativar Particulas" + #~ msgid "Disable anticheat" #~ msgstr "Desativar anti-batota" @@ -7735,6 +7811,10 @@ msgstr "limite paralelo de cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Sombras dinâmicas:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Ativado" + #~ msgid "Enable VBO" #~ msgstr "Ativar VBO" @@ -7769,6 +7849,12 @@ msgstr "limite paralelo de cURL" #~ "texturas ou gerado automaticamente.\n" #~ "Requer que as sombras sejam ativadas." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Ativar armazenamento em cache para os meshes das faces." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Ativa mapeamento de tons fílmico" @@ -7811,9 +7897,6 @@ msgstr "limite paralelo de cURL" #~ "Opção experimental, pode causar espaços visíveis entre blocos\n" #~ "quando definido com num úmero superior a 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS em menu de pausa" - #~ msgid "FSAA" #~ msgstr "FSAA (Antialiasing de ecrã inteiro)" @@ -7900,8 +7983,8 @@ msgstr "limite paralelo de cURL" #~ msgid "Full screen BPP" #~ msgstr "BPP em ecrã inteiro" -#~ msgid "Game" -#~ msgstr "Jogo" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtro txr2img de redimensionamento do interface gráfico" #~ msgid "Gamma" #~ msgstr "Gama" @@ -8065,6 +8148,10 @@ msgstr "limite paralelo de cURL" #~ msgid "Instrumentation" #~ msgstr "Monitorização" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Intervalo de envio de hora do dia para os clientes, indicados em segundos." + #~ msgid "Invalid gamespec." #~ msgstr "Especificação de jogo inválida." @@ -8076,649 +8163,649 @@ msgstr "limite paralelo de cURL" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para diminuir o alcance de visão.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para escavar. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para deixar cair o item atualmente selecionado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar o alcance de visão.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para pular. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover-se rápido no modo rápido. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para trás.\n" #~ "Também ira desativar o andar para frente automático quando ativo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a frente.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a direita.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a janela de bate-papo para digitar comandos.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a frente.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a janela de bate-papo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir o inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para pôr objetos. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 11th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 12th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 13th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 14th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 15th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 16th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 17th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 18th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 19th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 20th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 21st slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 22nd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 23rd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 24th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 25th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 26th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 27th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 28th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 29th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 30th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 31st slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 32nd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o oitavo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o quinto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o primeiro slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o quarto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o nono slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o segundo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o sétimo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o sexto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o décimo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o terceiro slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla por esgueirar.\n" #~ "Também usado para descer e descendente na água se aux1_descends está " #~ "desativado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para comutação entre câmara de primeira e terceira pessoa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para tirar fotos do ecrã.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar o modo avanço automático.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar modo cinematográfico.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição do mini-mapa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar o modo rápido.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar a voar.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo noclip.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar o modo pitch.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar a atualização da câmara. Usado para desenvolvimento.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar a exibição do bate-papo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição de informações de depuração.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar a exibição da névoa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a a exibição do HUD.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar exibição do bate-papo.\n" -#~ "Ver http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ver http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição do profiler. Usado para o " #~ "desenvolvimento.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar o alcance de visão ilimitado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8794,6 +8881,9 @@ msgstr "limite paralelo de cURL" #~ msgid "Menus" #~ msgstr "Opções para menus" +#~ msgid "Mesh cache" +#~ msgstr "Cache de malha" + #~ msgid "Minimap" #~ msgstr "Mini-mapa" @@ -9001,6 +9091,9 @@ msgstr "limite paralelo de cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Servidor / Um jogador" +#~ msgid "Shaders" +#~ msgstr "Sombras" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (experimental)" @@ -9018,6 +9111,10 @@ msgstr "limite paralelo de cURL" #~ "vídeo.\n" #~ "Só funcionam com o modo de vídeo OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Atualização da camera desativada" + #~ msgid "Shadow limit" #~ msgstr "Limite de mapblock" @@ -9051,6 +9148,9 @@ msgstr "limite paralelo de cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Suaviza a rotação da câmara. 0 para desativar." +#~ msgid "Sound system is disabled" +#~ msgstr "Som do sistema está desativado" + #~ msgid "Special" #~ msgstr "Especial" @@ -9095,6 +9195,9 @@ msgstr "limite paralelo de cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Esta fonte será usada para determinados idiomas." +#~ msgid "Time send interval" +#~ msgstr "Intervalo de tempo de envio" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Para ativar as sombras é necessário usar o controlador OpenGL." @@ -9222,6 +9325,17 @@ msgstr "limite paralelo de cURL" #~ msgid "Waving water" #~ msgstr "Balançar das Ondas" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Quando gui_scaling_filter_txr2img é true, copie essas imagens\n" +#~ "de hardware para software para dimensionamento. Quando false,\n" +#~ "voltará para o velho método de dimensionamento, para drivers de\n" +#~ "vídeo que não suportem propriedades baixas de texturas voltam do hardware." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9234,6 +9348,12 @@ msgstr "limite paralelo de cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Se dungeons ocasionalmente se projetam do terreno." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Determina se animações das texturas dos cubos devem ser dessincronizadas " +#~ "entre mapblocks." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "" #~ "Se deseja permitir aos jogadores causar dano e matar uns aos outros." diff --git a/po/pt_BR/luanti.po b/po/pt_BR/luanti.po index 6d263c6e0..d973bb0ee 100644 --- a/po/pt_BR/luanti.po +++ b/po/pt_BR/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Portuguese (Brazil) (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-09-08 12:09+0000\n" "Last-Translator: Davi Lopes \n" "Language-Team: Portuguese (Brazil) ] [-t]" msgstr "[all| ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Procurar" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editar" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Selecione o diretório" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Selecione o arquivo" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Tecla Select" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Não há uma descrição para esta configuração)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Ruído 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Cancelar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaridade" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octavos" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Deslocamento" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistência" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Salvar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Escala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Semente (Seed)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "amplitude X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "amplitude Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "amplitude Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "valor absoluto" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "padrão" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "amenizado" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Bate-papo" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Limpar" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Controles" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Desabilitado" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Habilitado" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Geral" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Modo rápido" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Sem resultados" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Restaurar Padrão" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Pesquisar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Mostrar nomes técnicos" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Tela sensível ao toque" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS no menu de pausa" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Mods Locais" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Conteúdo: Jogos" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Conteúdo: Mods" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Sombras dinâmicas" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Baixo" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Médio" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Muito Alto" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Muito Baixo" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +409,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Backspace" @@ -203,11 +445,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "Nenhum pacote pôde ser recuperado" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Sem resultados" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Sem atualizações" @@ -253,18 +490,6 @@ msgstr "Já instalado" msgid "Base Game:" msgstr "Jogo Base:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Cancelar" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -393,6 +618,12 @@ msgstr "Não foi possível instalar um $1 como um $2" msgid "Unable to install a $1 as a texture pack" msgstr "Não foi possível instalar $1 como pacote de texturas" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Habilitado, com erros)" @@ -458,12 +689,6 @@ msgstr "Sem dependências opcionais" msgid "Optional dependencies:" msgstr "Dependências opcionais:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Salvar" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Mundo:" @@ -614,11 +839,6 @@ msgstr "Rios" msgid "Sea level rivers" msgstr "Rios ao nível do mar" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Semente (Seed)" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Transição suave entre biomas" @@ -759,6 +979,23 @@ msgstr "" "Esse modpack possui um nome explícito em seu modpack.conf que vai " "sobrescrever qualquer nome aqui." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Habilitar todos" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Uma nova versão de $1 está disponível" @@ -787,7 +1024,7 @@ msgstr "Nunca" msgid "Visit website" msgstr "Visitar site" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Configurações" @@ -801,228 +1038,6 @@ msgstr "" "Tente reativar a lista de servidores públicos e verifique sua conexão com a " "internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Procurar" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editar" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Selecione o diretório" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Selecione o arquivo" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Tecla Select" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Não há uma descrição para esta configuração)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Ruído 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaridade" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octavos" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Deslocamento" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistência" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Escala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "amplitude X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "amplitude Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "amplitude Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "valor absoluto" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "padrão" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "amenizado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Bate-papo" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Limpar" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Controles" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Desabilitado" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Habilitado" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Geral" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Modo rápido" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Restaurar Padrão" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Pesquisar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Mostrar nomes técnicos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Mods Locais" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Conteúdo: Jogos" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Conteúdo: Mods" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Habilitado" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Atualização da camera desabilitada" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Sombras dinâmicas" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Baixo" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Médio" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Muito Alto" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Muito Baixo" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Sobre" @@ -1043,10 +1058,6 @@ msgstr "Desenvolvedores Principais" msgid "Core Team" msgstr "Equipe Principal" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Abrir diretório de dados do usuário" @@ -1196,10 +1207,22 @@ msgstr "Iniciar Jogo" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Remover favorito" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Endereço" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Cliente" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modo criativo" @@ -1213,6 +1236,11 @@ msgstr "Dano / PvP" msgid "Favorites" msgstr "Favoritos" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Jogo" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servidores incompatíveis" @@ -1225,10 +1253,28 @@ msgstr "Entrar em um Jogo" msgid "Login" msgstr "Entrar" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Número de seguimentos de emersão" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Passo do servidor dedicado" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Servidores Públicos" @@ -1314,23 +1360,6 @@ msgstr "" "\n" "Verifique o debug.txt para mais detalhes." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modo: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Público: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "Nome do servidor: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ocorreu um erro:" @@ -1340,6 +1369,11 @@ msgstr "Ocorreu um erro:" msgid "Access denied. Reason: %s" msgstr "Acesso negado. Razão:%s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Informação de debug mostrada" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Avanço automático para frente desabilitado" @@ -1360,6 +1394,10 @@ msgstr "Limites de bloco mostrados para o bloco atual" msgid "Block bounds shown for nearby blocks" msgstr "Limites de bloco mostrados para blocos próximos" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Atualização da camera desabilitada" @@ -1375,10 +1413,6 @@ msgstr "" "Não é possível mostrar limites de bloco (está desabilitado por um mod ou " "jogo)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Alterar a senha" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modo cinemático desabilitado" @@ -1407,39 +1441,6 @@ msgstr "Erro de conexão (tempo excedido?)" msgid "Connection failed for unknown reason" msgstr "A conexão falhou por motivo desconhecido" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuar" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controles:\n" -"Se não há nenhum menu visível:\n" -"- Um toque: ativa botão\n" -"- Duplo toque: place/use\n" -"- Deslizar dedo: Olhar ao redor\n" -"Menu/Inventário visível:\n" -"- Duplo toque: (Fora do menu):\n" -" -->Fechar\n" -"- Tocar Item e depois tocar em um slot:\n" -" --> move item\n" -"- Tocar e arrastar, e depois tocar com o 2º dedo\n" -" --> Coloca apenas um item no slot\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1453,31 +1454,15 @@ msgstr "Criando o cliente..." msgid "Creating server..." msgstr "Criando o servidor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Informação de debug e gráfico de perfil escondido" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Informação de debug mostrada" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Informação de debug, gráfico de perfil e wireframe escondidos" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Erro ao iniciar cliente: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Sair para o menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Sair do Minetest" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modo rápido desabilitado" @@ -1515,18 +1500,6 @@ msgstr "Névoa habilitada" msgid "Fog enabled by game or mod" msgstr "Zoom atualmente desabilitado por jogo ou mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informação do jogo:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Jogo parado" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Criando o servidor" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Carregando itens..." @@ -1563,14 +1536,6 @@ msgstr "Modo atravessar paredes habilitado(note: sem privilégio 'noclip')" msgid "Node definitions..." msgstr "Carregando blocos..." -#: src/client/game.cpp -msgid "Off" -msgstr "Desligado" - -#: src/client/game.cpp -msgid "On" -msgstr "Ligado" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Modo movimento pitch desabilitado" @@ -1583,38 +1548,22 @@ msgstr "Modo movimento pitch habilitado" msgid "Profiler graph shown" msgstr "Gráfico de perfil mostrado" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Servidor remoto" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Resolvendo os endereços..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reviver" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Desligando tudo..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Um jogador" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volume do som" - #: src/client/game.cpp msgid "Sound muted" msgstr "Som mutado" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Sistema de som está desativado" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Sistema de som não é suportado nesta versão" @@ -1688,18 +1637,116 @@ msgstr "Distancia de visualização alterado pra %d" msgid "Volume changed to %d%%" msgstr "Volume mudado para %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Mostrar wireframe" -#: src/client/game.cpp -msgid "You died" -msgstr "Você morreu" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom atualmente desabilitado por jogo ou mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modo: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Público: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "Nome do servidor: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Alterar a senha" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuar" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controles:\n" +"Se não há nenhum menu visível:\n" +"- Um toque: ativa botão\n" +"- Duplo toque: place/use\n" +"- Deslizar dedo: Olhar ao redor\n" +"Menu/Inventário visível:\n" +"- Duplo toque: (Fora do menu):\n" +" -->Fechar\n" +"- Tocar Item e depois tocar em um slot:\n" +" --> move item\n" +"- Tocar e arrastar, e depois tocar com o 2º dedo\n" +" --> Coloca apenas um item no slot\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Sair para o menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Sair do Minetest" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informação do jogo:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Jogo parado" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Criando o servidor" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Desligado" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Ligado" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Servidor remoto" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reviver" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volume do som" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Você morreu" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Bate-papo atualmente desativado por jogo ou mod" @@ -2039,8 +2086,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Falha ao abrir página da web" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Sistema de som não é suportado nesta versão" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2090,7 +2138,7 @@ msgstr "Avanço frontal automático" msgid "Automatic jumping" msgstr "Pulo automático" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Especial" @@ -2102,7 +2150,7 @@ msgstr "Voltar" msgid "Block bounds" msgstr "Limites de bloco" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Mudar camera" @@ -2126,7 +2174,7 @@ msgstr "Abaixar volume" msgid "Double tap \"jump\" to toggle fly" msgstr "\"Pular\" duas vezes para ativar o voo" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Soltar" @@ -2142,11 +2190,11 @@ msgstr "Alcance inc" msgid "Inc. volume" msgstr "Aumentar Volume" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventário" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Pular" @@ -2178,7 +2226,7 @@ msgstr "Próximo item" msgid "Prev. item" msgstr "Item anterior" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Selecionar distância" @@ -2190,7 +2238,7 @@ msgstr "Direita" msgid "Screenshot" msgstr "Captura de tela" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Esgueirar" @@ -2198,15 +2246,15 @@ msgstr "Esgueirar" msgid "Toggle HUD" msgstr "Ativar interface" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Ativar histórico de conversa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Alternar corrida" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Alternar voo" @@ -2214,11 +2262,11 @@ msgstr "Alternar voo" msgid "Toggle fog" msgstr "Ativar névoa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Ativar minimapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Alternar noclip" @@ -2226,7 +2274,7 @@ msgstr "Alternar noclip" msgid "Toggle pitchmove" msgstr "Ativar Voar seguindo a câmera" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2263,7 +2311,7 @@ msgstr "Senha antiga" msgid "Passwords do not match!" msgstr "As senhas não correspondem!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Sair" @@ -2276,16 +2324,47 @@ msgstr "Mutado" msgid "Sound Volume: %d%%" msgstr "Volume do som: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Roda do mouse" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Pronto!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Servidor remoto" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID do Joystick" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Ativar névoa" @@ -2517,8 +2596,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Suporte 3D.\n" "Modos atualmente suportados:\n" @@ -2586,10 +2664,6 @@ msgstr "Limite para blocos ativos" msgid "Active object send range" msgstr "Alcance para envio de objetos ativos" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Adiciona partículas quando cavando um node." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2619,6 +2693,17 @@ msgstr "Nome do Admin" msgid "Advanced" msgstr "Avançado" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Usar nuvens 3D em vez de planas." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3030,15 +3115,14 @@ msgstr "Raio das nuvens" msgid "Clouds" msgstr "Nuvens" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Conf. das nuvens apenas afetam seu jogo local." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nuvens no menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Névoa colorida" @@ -3062,7 +3146,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Lista de flags separadas por vírgula para esconder no repositório de " "conteúdos.\n" @@ -3231,6 +3315,14 @@ msgstr "Nível de log do Debug" msgid "Debugging" msgstr "Depuração" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Passo do servidor dedicado" @@ -3406,18 +3498,10 @@ msgstr "" "Os desertos ocorrem quando np_biome excede este valor.\n" "Quando a marcação 'snowbiomes' está ativada, isto é ignorado." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Dessincronizar animação do bloco" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opções de Desenvolvedor" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Partículas de Escavação" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Não permitir logar sem senha" @@ -3449,6 +3533,14 @@ msgstr "\"Pular\" duas vezes ativa o vôo" msgid "Double-tapping the jump key toggles fly mode." msgstr "\"Pular\" duas vezes alterna o modo vôo." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Mostrar informações de depuração do Gerador de mapa." @@ -3535,9 +3627,10 @@ msgstr "" "simulando o comportamento do olho humano." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Ativa sombras coloridas.\n" "Quando em true, nodes translúcidos podem projetar sombras coloridas. Requer " @@ -3626,10 +3719,10 @@ msgstr "" "Por exemplo: 0 para não ver balançando; 1.0 para normal; 2.0 para duplo." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Habilitar/desabilitar a execução de um IPv6 do servidor. \n" "Ignorado se bind_address estiver definido.\n" @@ -3652,13 +3745,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Habilita itens animados no inventário." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Ativar armazenamento em cache de direção de face girada das malhas." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -4009,10 +4095,6 @@ msgstr "Escala da GUI" msgid "GUI scaling filter" msgstr "Filtro de escala da GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filtro txr2img de escala da GUI" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Controles de Videogame" @@ -4280,15 +4362,6 @@ msgstr "" "Se habilitado, a tecla \"especial\" em vez de \"esgueirar\" servirá para\n" "descer." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Se habilitado, o registro de contas fica separado do login na UI.\n" -"Caso desabilitado, novas contas serão registradas automaticamente ao entrar " -"em um servidor novo." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4313,6 +4386,17 @@ msgstr "" "Se habilitado, novos jogadores não podem entrar sem senha ou mudá-la para " "uma senha vazia." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Se habilitado, o registro de contas fica separado do login na UI.\n" +"Caso desabilitado, novas contas serão registradas automaticamente ao entrar " +"em um servidor novo." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4366,8 +4450,8 @@ msgid "" msgstr "" "Se o tamanho do arquivo debug.txt exceder o número de megabytes " "especificado\n" -"nesta configuração quando ele for aberto, o arquivo é movido para debug." -"txt.1,\n" +"nesta configuração quando ele for aberto, o arquivo é movido para " +"debug.txt.1,\n" "excluindo um debug.txt.1 mais antigo, se houver.\n" "debug.txt só é movido se esta configuração for positiva." @@ -4444,12 +4528,6 @@ msgstr "" "Intervalo para cada salvamento de alterações importantes no mundo, indicado " "em segundos." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" -"Intervalo de tempo para o envio das horas dentro do jogo aos clientes, em " -"segundos." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animações nos itens do inventário" @@ -5174,10 +5252,6 @@ msgstr "" msgid "Maximum users" msgstr "Limite de usuários" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Cache de malha" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Mensagem do dia" @@ -5211,6 +5285,10 @@ msgstr "Limite mínimo do número aleatório de grandes cavernas por mapchunk." msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Limite mínimo do número aleatório de cavernas pequenas por mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mipmapping (filtro)" @@ -5306,9 +5384,10 @@ msgstr "" "padrão)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Nome do jogador.\n" @@ -5837,17 +5916,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6095,16 +6176,6 @@ msgstr "" msgid "Shader path" msgstr "Sombreadores" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Sombreadores" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Qualidade do filtro de sombras" @@ -6292,10 +6363,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Espalha uma atualização completa do mapeamento de sombras sobre uma dada " "quantidade de quadros.\n" @@ -6673,10 +6743,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Hora do dia quando um novo mundo é iniciado, em milihoras (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Intervalo de tempo de envio" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Velocidade de tempo" @@ -6746,6 +6812,11 @@ msgstr "Líquidos Opacos" msgid "Transparency Sorting Distance" msgstr "Distância para o Ordenamento de Transparência" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Distância para o Ordenamento de Transparência" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Ruido de árvores" @@ -6797,12 +6868,16 @@ msgid "Undersampling" msgstr "Subamostragem" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "A subamostragem é semelhante a usar uma resolução de tela inferior, mas se " "aplica\n" @@ -6831,17 +6906,15 @@ msgstr "Limite topo Y de dungeons." msgid "Upper Y limit of floatlands." msgstr "Limite máximo Y para as ilhas flutuantes." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Usar nuvens 3D em vez de planas." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Usar uma animação de nuvem para o fundo do menu principal." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Usar filtragem anisotrópica quando visualizar texturas de um ângulo." #: src/settings_translation_file.cpp @@ -7105,25 +7178,14 @@ msgstr "" "hardware (por exemplo render-to-texture para nodes no inventário)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Quando gui_scaling_filter_txr2img for verdadeiro, copie essas imagens\n" -"do hardware ao software para dimensionamento. Quando falso, volte\n" -"ao antigo método de dimensionamento, para drivers de vídeo que não\n" -"suportam adequadamente o download de texturas do hardware." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7147,11 +7209,6 @@ msgstr "" "Se o fundo dos identificadores de nome devem ser mostradas por padrão.\n" "Mods ainda podem definir o fundo." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Se as animações de textura do nodes devem ser dessincronizadas por mapblock." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7180,9 +7237,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Se for usar névoa no fim da área visível." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7380,6 +7437,9 @@ msgstr "limite paralelo de cURL" #~ "Note que o campo de endereço no menu principal sobrescreve essa " #~ "configuração." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Adiciona partículas quando cavando um node." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7527,6 +7587,10 @@ msgstr "limite paralelo de cURL" #~ msgid "Clean transparent textures" #~ msgstr "Limpe as texturas transparentes" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Conf. das nuvens apenas afetam seu jogo local." + #~ msgid "Command key" #~ msgstr "Tecla de Comando" @@ -7620,9 +7684,15 @@ msgstr "limite paralelo de cURL" #~ msgid "Darkness sharpness" #~ msgstr "Nitidez da escuridão" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Informação de debug e gráfico de perfil escondido" + #~ msgid "Debug info toggle key" #~ msgstr "Tecla para alternar modo de Depuração" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Informação de debug, gráfico de perfil e wireframe escondidos" + #~ msgid "Dec. volume key" #~ msgstr "Tecla de abaixar volume" @@ -7676,9 +7746,15 @@ msgstr "limite paralelo de cURL" #~ msgid "Del. Favorite" #~ msgstr "Rem. Favorito" +#~ msgid "Desynchronize block animation" +#~ msgstr "Dessincronizar animação do bloco" + #~ msgid "Dig key" #~ msgstr "Tecla para escavar" +#~ msgid "Digging particles" +#~ msgstr "Partículas de Escavação" + #~ msgid "Disable anticheat" #~ msgstr "Habilitar Anti-Hack" @@ -7703,6 +7779,10 @@ msgstr "limite paralelo de cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Sombras dinâmicas:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Habilitado" + #~ msgid "Enable VBO" #~ msgstr "Habilitar VBO" @@ -7737,6 +7817,12 @@ msgstr "limite paralelo de cURL" #~ "pacote de textura ou a necessidade de ser auto-gerada.\n" #~ "Requer shaders a serem ativados." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Ativar armazenamento em cache de direção de face girada das malhas." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Habilitar efeito \"filmic tone mapping\"" @@ -7780,9 +7866,6 @@ msgstr "limite paralelo de cURL" #~ "Opção experimental, pode causar espaços visíveis entre blocos\n" #~ "quando definido como número maior do que 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS no menu de pausa" - #~ msgid "FSAA" #~ msgstr "Anti-Aliasing de Tela Cheia (FSAA)" @@ -7867,8 +7950,8 @@ msgstr "limite paralelo de cURL" #~ msgid "Full screen BPP" #~ msgstr "Tela cheia BPP" -#~ msgid "Game" -#~ msgstr "Jogo" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filtro txr2img de escala da GUI" #~ msgid "Gamma" #~ msgstr "Gama" @@ -8032,6 +8115,11 @@ msgstr "limite paralelo de cURL" #~ msgid "Instrumentation" #~ msgstr "Monitorização" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "Intervalo de tempo para o envio das horas dentro do jogo aos clientes, em " +#~ "segundos." + #~ msgid "Invalid gamespec." #~ msgstr "Especificação do jogo inválida." @@ -8043,650 +8131,650 @@ msgstr "limite paralelo de cURL" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para diminuir o alcance de visão.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para diminuir o volume.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para escavar. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para deixar cair o item atualmente selecionado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar o alcance de visão.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para aumentar o volume.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para pular. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover-se rápido no modo rápido. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para trás.\n" #~ "Também ira desabilitar o andar para frente automático quando ativo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a frente.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador à esquerda.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para mover o jogador para a direita.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para por o som em mudo. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a janela de bate-papo para digitar comandos.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a janela de bate-papo para digitar comandos.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir a janela de bate-papo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir o inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para colocar objetos. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 11th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 12th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 13th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 14th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 15th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 16th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 17th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 18th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 19th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 20th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 21st slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 22nd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 23rd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 24th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 25th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 26th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 27th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 28th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 29th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 30th slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 31st slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o 32nd slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o oitavo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o quinto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o primeiro slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o quarto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir o inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o nono slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para abrir o inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o segundo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o sétimo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o sexto slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o décimo slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para selecionar o terceiro slot do inventário.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla por esgueirar.\n" #~ "Também usado para descer e descendente na água se aux1_descends está " #~ "desativado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para comutação entre câmera de primeira e terceira pessoa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para tirar fotos da tela.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar o modo avanço automático.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar modo cinematográfico.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Chave para ativar/desativar a exibição do minimapa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar o modo rápido.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar a voar.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar modo noclip.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar o modo pitch.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a atualização da câmera. Usado somente para " #~ "desenvolvimento\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar a exibição do bate-papo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição de informações de depuração.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar a exibição da névoa.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição do HUD.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição do bate-papo.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para ativar/desativar a exibição do profiler. Usado para o " #~ "desenvolvimento.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para alternar o alcance de visão ilimitado.\n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tecla para pular. \n" -#~ "Consulte http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Consulte http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8766,6 +8854,9 @@ msgstr "limite paralelo de cURL" #~ msgid "Menus" #~ msgstr "Opções para menus" +#~ msgid "Mesh cache" +#~ msgstr "Cache de malha" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -8985,6 +9076,9 @@ msgstr "limite paralelo de cURL" #~ "mas consume mais recursos.\n" #~ "Valor mínimo 0.001 segundos e valor máximo 0.2 segundos" +#~ msgid "Shaders" +#~ msgstr "Sombreadores" + #~ msgid "Shaders (experimental)" #~ msgstr "Sombreadores (experimental)" @@ -9002,6 +9096,10 @@ msgstr "limite paralelo de cURL" #~ "placas de vídeo.\n" #~ "Só funcionam com o modo de vídeo OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Atualização da camera desabilitada" + #~ msgid "Shadow limit" #~ msgstr "Limite de mapblock" @@ -9035,6 +9133,9 @@ msgstr "limite paralelo de cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Suaviza a rotação da câmera. 0 para desativar." +#~ msgid "Sound system is disabled" +#~ msgstr "Sistema de som está desativado" + #~ msgid "Special" #~ msgstr "Especial" @@ -9079,6 +9180,9 @@ msgstr "limite paralelo de cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Esta fonte será usada para determinados idiomas." +#~ msgid "Time send interval" +#~ msgstr "Intervalo de tempo de envio" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Para habilitar os sombreadores é necessário usar o driver OpenGL." @@ -9205,6 +9309,17 @@ msgstr "limite paralelo de cURL" #~ msgid "Waving water" #~ msgstr "Balanço da água" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Quando gui_scaling_filter_txr2img for verdadeiro, copie essas imagens\n" +#~ "do hardware ao software para dimensionamento. Quando falso, volte\n" +#~ "ao antigo método de dimensionamento, para drivers de vídeo que não\n" +#~ "suportam adequadamente o download de texturas do hardware." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9217,6 +9332,12 @@ msgstr "limite paralelo de cURL" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Se dungeons ocasionalmente se projetam do terreno." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Se as animações de textura do nodes devem ser dessincronizadas por " +#~ "mapblock." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "" #~ "Se deseja permitir aos jogadores causar dano e matar uns aos outros." diff --git a/po/ro/luanti.po b/po/ro/luanti.po index 11cf7ddcb..8fa89018f 100644 --- a/po/ro/luanti.po +++ b/po/ro/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Romanian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-07-27 04:09+0000\n" -"Last-Translator: AlexTECPlayz \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-27 15:28+0000\n" +"Last-Translator: Negoitescu \n" "Language-Team: Romanian \n" "Language: ro\n" @@ -13,7 +13,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "20)) ? 1 : 2;\n" -"X-Generator: Weblate 5.7-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -78,6 +78,245 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Navighează" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Editează" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Selectează directorul" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Selectează fila" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Selectați" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nicio descriere a setării date)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Zgomot" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Anulare" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaritate" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Octava" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Decalaj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistență" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Salvează" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Scală" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seminţe" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "expansiunea X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y răspândit" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z răspândit" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "valoareabs" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "implicite" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "uşura" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Jocul va trebui să activeze și expunerea automată)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Jocul va trebui să activeze și bloom)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Jocul va trebui să activeze și lumina volumetrică)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Folosește limba sistemului)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Accesibilitate" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automat" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chat" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Șterge" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Comenzi" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Dezactivat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Activat" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "General" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Mișscare" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Fără rezultate" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Restabiliți la valorile implicite" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Resetează setarea la valoarea prestabilită ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Caută" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Afișează setări avansate" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Afișați numele tehnice" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Ecran tactil" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Modificări pentru client" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Conținut: Jocuri" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Conținut: Modificări" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Jocul va trebui să activeze și umbrele)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Personalizat" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Umbre dinamice" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Înalt" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Redus" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Mediu" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Foarte înalt" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Foarte redus" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -158,18 +397,16 @@ msgstr "$1 se descarcă..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Tot" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Înapoi" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB nu este disponibil când Minetest e compilat fără cURL" +msgstr "ContentDB nu este disponibil când Luanti este compilat fără cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -177,7 +414,7 @@ msgstr "Descărcare..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Recomandat" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -199,11 +436,6 @@ msgstr "Modificări" msgid "No packages could be retrieved" msgstr "Nu s-au putut prelua pachete" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Fără rezultate" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Nu există actualizări" @@ -249,27 +481,14 @@ msgstr "Deja instalată" msgid "Base Game:" msgstr "Jocul de bază:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Anulare" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "Dependențe:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "Eroare la obținerea dependențelor pentru pachet" +msgstr "Eroare la obținerea dependențelor pentru pachet „$1”" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -309,39 +528,37 @@ msgid "ContentDB page" msgstr "URL-ul ContentDB" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Descrierea serverului" +msgstr "Descriere" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Donează" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Subiect forum" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Informații:" +msgstr "Informații" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Install [$1]" +msgstr "Instalează [$1]" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy -msgid "Install [$1]" -msgstr "Instalează $1" - -#: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Tracker de probleme" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Sursă" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Traduce" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -357,8 +574,9 @@ msgid "Website" msgstr "Vizitează saitul" #: builtin/mainmenu/content/dlg_package.lua +#, fuzzy msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "de $1 — $2 descărcări — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -388,6 +606,12 @@ msgstr "$1 nu se poate instala ca $2" msgid "Unable to install a $1 as a texture pack" msgstr "Imposibil de instalat un $1 ca pachet de textură" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Activat, cu erori)" @@ -452,12 +676,6 @@ msgstr "Nu există dependențe opționale" msgid "Optional dependencies:" msgstr "Dependențe opționale:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Salvează" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Lume:" @@ -609,11 +827,6 @@ msgstr "Râuri" msgid "Sea level rivers" msgstr "Râuri la nivelul mării" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seminţe" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Tranziție lină între biomi" @@ -718,13 +931,12 @@ msgid "Dismiss" msgstr "Respinge" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Pentru mult timp, motorul Minetest a venit cu un joc implicit pe nume " -"„Minetest Game”. Din Minetest 5.8.0, Minetest nu mai vine cu un joc implicit." +"Pentru mult timp, Luanti a venit cu un joc implicit pe nume „Minetest Game”. " +"Din versiunea 5.8.0, Luanti nu mai vine cu un joc implicit." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -758,6 +970,23 @@ msgstr "" "Acest modpack are un nume explicit dat în modpack.conf, care va înlocui " "orice redenumire aici." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Activează tot" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "O nouă versiune $1 este disponibilă" @@ -786,7 +1015,7 @@ msgstr "Niciodată" msgid "Visit website" msgstr "Vizitează saitul" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Setări" @@ -800,228 +1029,6 @@ msgstr "" "Încercați să activați lista de servere publică și să vă verificați " "conexiunea la internet." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Navighează" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Editează" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Selectează directorul" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Selectează fila" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Selectați" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nicio descriere a setării date)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Zgomot" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaritate" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Octava" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Decalaj" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistență" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Scală" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "expansiunea X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y răspândit" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z răspândit" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "valoareabs" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "implicite" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "uşura" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Jocul va trebui să activeze și umbrele)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Jocul va trebui să activeze și umbrele)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Jocul va trebui să activeze și umbrele)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Folosește limba sistemului)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Accesibilitate" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chat" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Șterge" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Comenzi" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Dezactivat" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Activat" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "General" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Mișscare" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Restabiliți la valorile implicite" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Resetează setarea la valoarea prestabilită ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Caută" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Afișează setări avansate" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Afișați numele tehnice" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Modificări pentru client" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Conținut: Jocuri" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Conținut: Modificări" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Activat" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Actualizarea camerei este dezactivată" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Jocul va trebui să activeze și umbrele)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Personalizat" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Umbre dinamice" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Înalt" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Redus" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Mediu" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Foarte înalt" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Foarte redus" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Despre" @@ -1042,10 +1049,6 @@ msgstr "Dezvoltatori de bază" msgid "Core Team" msgstr "Echipa principală" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Dispozitiv Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Deschide directorul cu datele utilizatorului" @@ -1147,18 +1150,16 @@ msgid "Install games from ContentDB" msgstr "Instalarea jocurilor din ContentDB" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "Minetest nu vine cu un joc preinstalat." +msgstr "Luanti nu vine cu un joc preinstalat." #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" -"Minetest este o platformă de creare de jocuri care vă permite să jucați " -"multe jocuri diferite." +"Luanti este o platformă de creare de jocuri care vă permite să jucați multe " +"jocuri diferite." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1196,10 +1197,22 @@ msgstr "Începe Jocul" msgid "You need to install a game before you can create a world." msgstr "Trebuie să instalați un joc înainte să puteți crea o lume." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Șterge favorit" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresă" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Client" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Modul Creativ" @@ -1213,6 +1226,11 @@ msgstr "Daune / PvP" msgid "Favorites" msgstr "Favorite" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Joc" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Servere incompatibile" @@ -1225,10 +1243,27 @@ msgstr "Alatură-te jocului" msgid "Login" msgstr "Conectare" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Pasul serverului dedicat" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Servere publice" @@ -1313,23 +1348,6 @@ msgstr "" "\n" "Verifică deug.txt pentru detalii." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Modul: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Public: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Jucător vs jucător: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Numele serverului: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "A apărut o eroare de serializare:" @@ -1339,6 +1357,11 @@ msgstr "A apărut o eroare de serializare:" msgid "Access denied. Reason: %s" msgstr "Acces refuzat. Motiv: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Informații de depanare afișate" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Redirecționare automată dezactivată" @@ -1359,6 +1382,10 @@ msgstr "Limite blocuri afișate pentru blocul curent" msgid "Block bounds shown for nearby blocks" msgstr "Limit blocuri afișate pentru blocurile învecinate" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Actualizarea camerei este dezactivată" @@ -1371,10 +1398,6 @@ msgstr "Actualizarea camerei este activată" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Nu se pot afișa limitele blocurilor (dezactivate de mod sau joc)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Schimbă Parola" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Modul cinematografic este dezactivat" @@ -1403,38 +1426,6 @@ msgstr "Eroare de conexiune (timeout?)" msgid "Connection failed for unknown reason" msgstr "Conexiune eșuată din motiv necunoscut" -#: src/client/game.cpp -msgid "Continue" -msgstr "Continuă" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Controale:\n" -"Niciun meniu deschis:\n" -"- glisați degetul: priviți în jur\n" -"- apăsați: plasați/perforați/utilizați (implicit)\n" -"- apăsați lung: săpați/utilizați (implicit)\n" -"Meniu/inventar deschis:\n" -"- dublă apăsare (în exterior):\n" -" --> închideți\n" -"- atingeți grămada, atingeți slotul:\n" -" --> mutați grămada\n" -"- atingeți și trageți, apăsați cu un al doilea deget\n" -" --> plasați un singur articol în slot\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1448,31 +1439,15 @@ msgstr "Se creează clientul..." msgid "Creating server..." msgstr "Se crează serverul..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Informațiile de depanare și graficul profilului sunt ascunse" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Informații de depanare afișate" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Informații de depanare, grafic de profil și ascuns" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Eroare la crearea clientului: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Ieși în Meniu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Ieși din joc" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Modul rapid este dezactivat" @@ -1509,18 +1484,6 @@ msgstr "Ceață activată" msgid "Fog enabled by game or mod" msgstr "Ceață activată de joc sau mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informatii despre joc:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Joc întrerupt" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Găzduind un server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definițiile obiectelor..." @@ -1557,14 +1520,6 @@ msgstr "Modul Noclip activat (notă: nu este privilegiat „noclip”)" msgid "Node definitions..." msgstr "Definițiile Blocurilor..." -#: src/client/game.cpp -msgid "Off" -msgstr "Oprit" - -#: src/client/game.cpp -msgid "On" -msgstr "Pornit" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Mod mutare pitch dezactivat" @@ -1577,38 +1532,22 @@ msgstr "Mod de mutare pitch activat" msgid "Profiler graph shown" msgstr "Graficul profilului este afișat" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Server de la distanță" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Se rezolvă adresa..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Reînviere" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Se închide..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Jucător singur" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Volum Sunet" - #: src/client/game.cpp msgid "Sound muted" msgstr "Sunet dezactivat" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Sistem audio dezactivat" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Sistemul audio nu e suportat în această construcție" @@ -1683,18 +1622,116 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volum modificat la %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Shaderele sunt activate dar GLSL nu este suportat de driver." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Cadru de sârmă afișat" -#: src/client/game.cpp -msgid "You died" -msgstr "Ai murit" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom dezactivat în prezent de joc sau mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Modul: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Public: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Jucător vs jucător: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Numele serverului: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Schimbă Parola" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Continuă" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Controale:\n" +"Niciun meniu deschis:\n" +"- glisați degetul: priviți în jur\n" +"- apăsați: plasați/perforați/utilizați (implicit)\n" +"- apăsați lung: săpați/utilizați (implicit)\n" +"Meniu/inventar deschis:\n" +"- dublă apăsare (în exterior):\n" +" --> închideți\n" +"- atingeți grămada, atingeți slotul:\n" +" --> mutați grămada\n" +"- atingeți și trageți, apăsați cu un al doilea deget\n" +" --> plasați un singur articol în slot\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Ieși în Meniu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Ieși din joc" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informatii despre joc:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Joc întrerupt" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Găzduind un server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Oprit" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Pornit" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Server de la distanță" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Reînviere" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Volum Sunet" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Ai murit" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chatul este dezactivat de un joc sau o modificare" @@ -2021,7 +2058,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Eroare la compilarea shaderului \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "Shaderele sunt activate dar GLSL nu este suportat de driver." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2073,7 +2111,7 @@ msgstr "Redirecționare înainte" msgid "Automatic jumping" msgstr "Salt automat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2085,7 +2123,7 @@ msgstr "Înapoi" msgid "Block bounds" msgstr "Limite blocuri" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Schimba camera" @@ -2109,7 +2147,7 @@ msgstr "Dec. volum" msgid "Double tap \"jump\" to toggle fly" msgstr "Apasă de 2 ori \"sari\" pentru a zbura" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Aruncă" @@ -2125,11 +2163,11 @@ msgstr "Interval Inc" msgid "Inc. volume" msgstr "Volumul inc" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventar" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Sari" @@ -2161,7 +2199,7 @@ msgstr "Următorul element" msgid "Prev. item" msgstr "Elementul anterior" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Selectare distanță" @@ -2173,7 +2211,7 @@ msgstr "Dreapta" msgid "Screenshot" msgstr "Captură de ecran" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Furișează" @@ -2181,15 +2219,15 @@ msgstr "Furișează" msgid "Toggle HUD" msgstr "Comutați HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Comutați jurnalul de chat" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Intră pe rapid" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Intră pe zbor" @@ -2197,11 +2235,11 @@ msgstr "Intră pe zbor" msgid "Toggle fog" msgstr "Comutați ceața" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Comutați minimap" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Intră pe noclip" @@ -2209,7 +2247,7 @@ msgstr "Intră pe noclip" msgid "Toggle pitchmove" msgstr "Comutați pitchmove" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Mărire" @@ -2245,7 +2283,7 @@ msgstr "Vechea parolă" msgid "Passwords do not match!" msgstr "Parolele nu se potrivesc!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Ieșire" @@ -2258,37 +2296,69 @@ msgstr "Amuțit" msgid "Sound Volume: %d%%" msgstr "Volum sunet: %d%%" -#: src/gui/touchcontrols.cpp -msgid "Joystick" +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Rotiță" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Terminat!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Server de la distanță" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Manetă" + +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Comutați ceața" +msgstr "Informații debug" #: src/network/clientpackethandler.cpp +#, fuzzy msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"Un alt client este conectat sub acest nume. Dacă clientul dvs. s-a oprit " +"neașteptat, reîncercați într-un minut." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" +msgstr "Parolele goale nu sunt permise. Setați o parolă și reîncercați." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Eroare internă server" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Vechea parolă" +msgstr "Parolă invalidă" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2311,46 +2381,48 @@ msgstr "Numele este folosit. Vă rugăm să alegeți altul" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Numele jucătorului conține caractere neautorizate" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Numele jucătorului prea lung." +msgstr "Numele jucătorului prea lung" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Se închide..." +msgstr "Serverul se închide" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "Serverul a avut o eroare internă. Veți fi deconectat." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "Serverul funcționează în modul solo. Nu vă puteți conecta." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Prea mulți jucători" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Motiv de deconectare necunoscut." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Clientul dvs. a trimis ceva neașteptat serverului. Încercați să vă " +"reconectați sau să actualizați serverul." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Versiunea clientului dvs. nu este susținută.\n" +"Vă rugăm contactați administratorul serverului." #: src/server.cpp #, c-format @@ -2494,12 +2566,11 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Suport 3D.\n" "În prezent, suportate:\n" -"- Niciunul: nicio ieșire 3D.\n" +"- niciunul: nicio ieșire 3D.\n" "- anaglyph: culoare 3D turcoaz/magenta.\n" "- întrețesut: suport pentru polarizare pe linii impare/pare.\n" "- partea de sus: ecran împărțit sus/jos.\n" @@ -2563,10 +2634,6 @@ msgstr "Interval de bloc activ" msgid "Active object send range" msgstr "Interval de trimitere obiect e activ" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Adăuga particule atunci când săpați un nod." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2598,6 +2665,16 @@ msgstr "Nume administrator" msgid "Advanced" msgstr "Avansat" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Permiteți lichidelor să fie transparente." @@ -2643,22 +2720,20 @@ msgid "Announce to this serverlist." msgstr "Anunțați pe această listă de servere." #: src/settings_translation_file.cpp -#, fuzzy msgid "Anti-aliasing scale" -msgstr "Antialiasing:" +msgstr "Antialiasing" #: src/settings_translation_file.cpp -#, fuzzy msgid "Antialiasing method" -msgstr "Antialiasing:" +msgstr "Metodă de antialiasing" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Opțiuni anti-trișare" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Toleranță mișcare anti-trișare" #: src/settings_translation_file.cpp msgid "Append item name" @@ -3008,15 +3083,14 @@ msgstr "Rază nori" msgid "Clouds" msgstr "Nori" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Norii sunt un efect pe client." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Nori in meniu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Ceaţă colorată" @@ -3040,7 +3114,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Listă separată de virgule cu etichete de ascuns din depozitul de conținut.\n" "\"nonfree\" se poate folosi pentru ascunderea pachetelor care nu sunt " @@ -3210,6 +3284,14 @@ msgstr "Nivelul jurnalului de depanare" msgid "Debugging" msgstr "Depanare" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Pasul serverului dedicat" @@ -3369,18 +3451,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Opțiuni pentru dezvoltatori" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Particule pentru săpare" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3408,6 +3482,14 @@ msgstr "Apasă de 2 ori \"sari\" pentru a zbura" msgid "Double-tapping the jump key toggles fly mode." msgstr "Apăsând de 2 ori tasta Salt pentru a comuta modul de zburat." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3482,8 +3564,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3556,8 +3638,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3572,12 +3653,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3885,10 +3960,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepad-uri" @@ -4112,12 +4183,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4136,6 +4201,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4230,10 +4302,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4850,10 +4918,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4886,6 +4950,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Cartografierea mip" @@ -4976,7 +5044,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5419,17 +5487,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5623,16 +5693,6 @@ msgstr "" msgid "Shader path" msgstr "Calea shaderului" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shadere" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Calitatea filtrului de umbre" @@ -5797,10 +5857,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6079,10 +6138,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6145,6 +6200,10 @@ msgstr "Fluturarea lichidelor" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6195,7 +6254,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6218,16 +6280,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6469,20 +6529,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6493,10 +6545,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6519,8 +6567,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6685,6 +6732,9 @@ msgstr "" #~ "Rețineți că, câmpul de adresă din meniul principal suprascrie această " #~ "setare." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Adăuga particule atunci când săpați un nod." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6803,6 +6853,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "Texturi transparente curate" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Norii sunt un efect pe client." + #~ msgid "Command key" #~ msgstr "Tasta de comandă" @@ -6872,6 +6926,12 @@ msgstr "" #~ msgid "Darkness sharpness" #~ msgstr "Mapgen" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Informațiile de depanare și graficul profilului sunt ascunse" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Informații de depanare, grafic de profil și ascuns" + #~ msgid "Default game" #~ msgstr "Jocul implicit" @@ -6885,6 +6945,9 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "Tasta pentru săpat" +#~ msgid "Digging particles" +#~ msgstr "Particule pentru săpare" + #~ msgid "Disable anticheat" #~ msgstr "Dezactivează anticheatul" @@ -6906,6 +6969,9 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Umbre dinamice:" +#~ msgid "Enable" +#~ msgstr "Activează" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "Activează MP" @@ -6933,9 +6999,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Tasta înainte" -#~ msgid "Game" -#~ msgstr "Joc" - #~ msgid "Generate Normal Maps" #~ msgstr "Generați Hărți Normale" @@ -6961,6 +7024,9 @@ msgstr "" #~ msgid "Inventory key" #~ msgstr "Tasta pentru inventar" +#~ msgid "Irrlicht device:" +#~ msgstr "Dispozitiv Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tasta de salt" @@ -7078,18 +7144,27 @@ msgstr "" #~ msgid "Server / Singleplayer" #~ msgstr "Server / Jucător singur" +#~ msgid "Shaders" +#~ msgstr "Shadere" + #~ msgid "Shaders (experimental)" #~ msgstr "Shadere (experimental)" #~ msgid "Shaders (unavailable)" #~ msgstr "Shaders (indisponibil)" +#~ msgid "Shaders are disabled." +#~ msgstr "Shaderele sunt dezactivate." + #~ msgid "Simple Leaves" #~ msgstr "Frunze simple" #~ msgid "Smooth Lighting" #~ msgstr "Lumină fină" +#~ msgid "Sound system is disabled" +#~ msgstr "Sistem audio dezactivat" + #~ msgid "Special" #~ msgstr "Special" @@ -7111,6 +7186,9 @@ msgstr "" #~ msgid "The value must not be larger than $1." #~ msgstr "Valoarea nu trebuie să fie mai mare de $1." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Aceasta nu este o opțiune recomandată." + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Pentru a permite shadere OpenGL trebuie să fie folosite." diff --git a/po/ru/luanti.po b/po/ru/luanti.po index 4e55cc69b..9338ff11c 100644 --- a/po/ru/luanti.po +++ b/po/ru/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: Russian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-01 17:58+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-12 12:18+0000\n" "Last-Translator: BlackImpostor \n" "Language-Team: Russian \n" @@ -13,7 +13,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -71,13 +71,251 @@ msgstr "Получить справку по командам (-t: вывод в msgid "" "Use '.help ' to get more information, or '.help all' to list everything." msgstr "" -"Используйте «.help » для получения дополнительной информации, или «." -"help all» для вывода всего списка." +"Используйте «.help » для получения дополнительной информации, или " +"«.help all» для вывода всего списка." #: builtin/common/chatcommands.lua msgid "[all | ] [-t]" msgstr "[all | <команда>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Обзор" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Править" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Выбрать папку" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Выбрать файл" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Назначить" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Нет описания настройки)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-шум" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Отмена" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Лакунарность" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октавы" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Смещение" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Настойчивость" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Сохранить" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Масштаб" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Сид" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Разброс по X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Разброс по Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Разброс по Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "абсолютная величина" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "базовый" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "cглаженный" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(В игре также необходимо будет включить автоматическую экспозицию)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(В игре также нужно будет включить функцию размытия)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(В игре также необходимо будет включить объемное освещение)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Системный язык)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Доступность" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Авто" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Чат" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Очистить" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Управление" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Отключено" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Включено" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Основной" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Перемещение" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Нет результатов" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Вернуть значение по умолчанию" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Вернуть значение по умолчанию ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Найти" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Показать продвинутые настройки" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Показывать технические названия" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "Pазложение сенсорного экрана" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "меню_паузы" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Клиентские моды" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Контент: Игры" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Контент: Дополнения" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(В игре также необходимо будет включить тени)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Пользовательские" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Динамические тени" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Высокие" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Низкие" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Средние" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Очень высокие" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Очень низкие" + #: builtin/fstk/ui.lua msgid "" msgstr "<недоступно>" @@ -164,7 +402,6 @@ msgstr "Всё" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Назад" @@ -200,11 +437,6 @@ msgstr "Дополнения" msgid "No packages could be retrieved" msgstr "Дополнения не могут быть получены" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Нет результатов" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Нет обновлений" @@ -249,18 +481,6 @@ msgstr "Уже установленно" msgid "Base Game:" msgstr "Основная игра:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Отмена" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -382,6 +602,14 @@ msgstr "Не удаётся установить $1 как $2" msgid "Unable to install a $1 as a texture pack" msgstr "Не удаётся установить $1 как набор текстур" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" +"Это список подключённых клиентов к\n" +"$1" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Включено, есть ошибки)" @@ -446,12 +674,6 @@ msgstr "Нет необязательных зависимостей" msgid "Optional dependencies:" msgstr "Необязательные зависимости:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Сохранить" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Мир:" @@ -605,11 +827,6 @@ msgstr "Реки" msgid "Sea level rivers" msgstr "Реки на уровне моря" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Сид" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Плавный переход между биомами" @@ -754,6 +971,23 @@ msgstr "" "Этот набор модов имеет явно указанное имя в modpack.conf, которое " "перезапишет указанное здесь значение." +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "Расширить всё" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "Сгруппировать по префиксу" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" +"На сервере $1 используется игра под названием $2 со следующими дополнениями:" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "Сервер $1 использует следующие дополнения:" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Доступна новая версия $1" @@ -782,7 +1016,7 @@ msgstr "Никогда" msgid "Visit website" msgstr "Посетить вебсайт" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Настройки" @@ -795,226 +1029,9 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Попробуйте обновить список публичных серверов и проверьте связь с Интернетом." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Обзор" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Править" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Выбрать папку" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Выбрать файл" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Назначить" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Нет описания настройки)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-шум" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Лакунарность" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октавы" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Смещение" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Настойчивость" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Масштаб" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Разброс по X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Разброс по Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Разброс по Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "абсолютная величина" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "базовый" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "cглаженный" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(В игре также необходимо будет включить автоматическую экспозицию)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "(В игре также нужно будет включить функцию размытия)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(В игре также необходимо будет включить объемное освещение)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Системный язык)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Доступность" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "Авто" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Чат" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Очистить" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Управление" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Отключено" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Включено" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Основной" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Перемещение" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Вернуть значение по умолчанию" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Вернуть значение по умолчанию ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Найти" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Показать продвинутые настройки" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Показывать технические названия" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Клиентские моды" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Контент: Игры" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Контент: Дополнения" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "Включить" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "Шейдеры выключены." - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "Это конфигурация не рекомендуется." - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(В игре также необходимо будет включить тени)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Пользовательские" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Динамические тени" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Высокие" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Низкие" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Средние" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Очень высокие" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Очень низкие" - #: builtin/mainmenu/tab_about.lua msgid "About" -msgstr "Подробней" +msgstr "Подробнее" #: builtin/mainmenu/tab_about.lua msgid "Active Contributors" @@ -1032,10 +1049,6 @@ msgstr "Основные разработчики" msgid "Core Team" msgstr "Основная команда" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Устройство Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Папка данных пользователя" @@ -1184,10 +1197,22 @@ msgstr "Начать игру" msgid "You need to install a game before you can create a world." msgstr "Вам требуется установить игру, прежде чем вы сможете создать мир." +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "Добавить избранное" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Адрес" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" +"Клиенты:\n" +"$1" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Творческий режим" @@ -1201,6 +1226,10 @@ msgstr "Урон / PvP" msgid "Favorites" msgstr "Избранное" +#: builtin/mainmenu/tab_online.lua +msgid "Game: $1" +msgstr "Игра: $1" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Несовместимые Сервера" @@ -1213,10 +1242,30 @@ msgstr "Подключиться к игре" msgid "Login" msgstr "Войти" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "Количество модов: $1" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "Открыть веб-сайт сервера" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Задержка" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" +"Возможные фильтры\n" +"игра:<имя>\n" +"дополнение:<имя>\n" +"игрок:<имя>" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Публичные серверы" @@ -1301,23 +1350,6 @@ msgstr "" "\n" "Подробности в debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Режим: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Публичность: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- РvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Имя сервера: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Произошла ошибка сериализации:" @@ -1327,6 +1359,10 @@ msgstr "Произошла ошибка сериализации:" msgid "Access denied. Reason: %s" msgstr "Доступ запрещён. Причина: %s" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "Все отладочные сведения скрыты" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Автобег отключён" @@ -1347,6 +1383,10 @@ msgstr "Границы показаны для текущего мапблока msgid "Block bounds shown for nearby blocks" msgstr "Границы показаны для ближайших мапблоков" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "Показаны ограничивающие рамки" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Обновление камеры выключено" @@ -1359,10 +1399,6 @@ msgstr "Обновление камеры включено" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Нельзя показать границы мапблоков (отключено модом или игрой)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Изменить пароль" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Кинематографичный режим отключён" @@ -1391,38 +1427,6 @@ msgstr "Ошибка соединения (время вышло?)" msgid "Connection failed for unknown reason" msgstr "Сбой соединения по неизвестной причине" -#: src/client/game.cpp -msgid "Continue" -msgstr "Продолжить" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Управление:\n" -"Нет открытых меню:\n" -"- провести пальцем: осмотреться\n" -"- нажатие: разместить/применить\n" -"- долгое нажатие: копать/удар/применить\n" -"В открытом меню:\n" -"- двойное нажатие (вне меню)\n" -" --> закрыть меню\n" -"- нажать на стак, затем на слот:\n" -" --> передвинуть стак\n" -"- нажать и потащить стак, нажать вторым пальцем:\n" -" --> положить один предмет в слот\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1436,31 +1440,15 @@ msgstr "Создание клиента…" msgid "Creating server..." msgstr "Создание сервера…" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Отладочные сведения и график профилировщика скрыты" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Отладочные сведения отображены" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Отладочные сведения, график профилировщика и каркас скрыты" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Создание клиента: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Выйти в меню" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Выйти из игры" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Режим быстрого перемещения отключён" @@ -1497,18 +1485,6 @@ msgstr "Туман включён" msgid "Fog enabled by game or mod" msgstr "Туман включён игрой или модом" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Сведения об игре:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Игра приостановлена" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Локальный сервер" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Описания предметов…" @@ -1545,14 +1521,6 @@ msgstr "Режим прохождения сквозь стены включён msgid "Node definitions..." msgstr "Описания нод…" -#: src/client/game.cpp -msgid "Off" -msgstr "отключено" - -#: src/client/game.cpp -msgid "On" -msgstr "включено" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Режим движения по направлению взгляда отключён" @@ -1565,38 +1533,22 @@ msgstr "Режим движения по направлению взгляда msgid "Profiler graph shown" msgstr "График профилировщика отображён" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Удалённый сервер" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Получение адреса…" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Возродиться" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Завершение…" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Одиночная игра" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Громкость звука" - #: src/client/game.cpp msgid "Sound muted" msgstr "Звук заглушен" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Звуковая система отключена" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Звуковая система не поддерживается в этой сборке" @@ -1670,18 +1622,115 @@ msgstr "Видимость установлена на %d, но ограниче msgid "Volume changed to %d%%" msgstr "Громкость установлена на %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "Полигоны не доступны этим видео драйвером" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Отображение каркаса включено" -#: src/client/game.cpp -msgid "You died" -msgstr "Вы умерли" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Приближение на данный момент отключено игрой или модом" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Режим: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Публичность: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- РvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Имя сервера: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Изменить пароль" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Продолжить" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Управление:\n" +"Нет открытых меню:\n" +"- провести пальцем: осмотреться\n" +"- нажатие: разместить/применить\n" +"- долгое нажатие: копать/удар/применить\n" +"В открытом меню:\n" +"- двойное нажатие (вне меню)\n" +" --> закрыть меню\n" +"- нажать на стак, затем на слот:\n" +" --> передвинуть стак\n" +"- нажать и потащить стак, нажать вторым пальцем:\n" +" --> положить один предмет в слот\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Выйти в меню" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Выйти из игры" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Сведения об игре:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Игра приостановлена" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Локальный сервер" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "отключено" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "включено" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Удалённый сервер" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Возродиться" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Громкость звука" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Вы умерли" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Чат на данный момент отключён игрой или модом" @@ -2008,8 +2057,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Не удалось скомпилировать шейдер «%s»." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "Шейдеры включены, но GLSL не поддерживается драйвером." +msgid "GLSL is not supported by the driver" +msgstr "GLSL не поддерживается драйвером" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2059,7 +2108,7 @@ msgstr "Автобег" msgid "Automatic jumping" msgstr "Автопрыжок" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2071,7 +2120,7 @@ msgstr "Назад" msgid "Block bounds" msgstr "Границы мапблока" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Сменить камеру" @@ -2095,7 +2144,7 @@ msgstr "Уменьшить громкость" msgid "Double tap \"jump\" to toggle fly" msgstr "Двойной прыжок = полёт" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Бросить" @@ -2111,11 +2160,11 @@ msgstr "Увеличить дальность" msgid "Inc. volume" msgstr "Увеличить громкость" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Инвентарь" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Прыжок" @@ -2147,7 +2196,7 @@ msgstr "След. предмет" msgid "Prev. item" msgstr "Пред. предмет" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Лимит видимости" @@ -2159,7 +2208,7 @@ msgstr "Вправо" msgid "Screenshot" msgstr "Снимок экрана" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Красться" @@ -2167,15 +2216,15 @@ msgstr "Красться" msgid "Toggle HUD" msgstr "Вкл/откл интерфейс" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Вкл/откл журнал чата" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Быстрый режим" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Режим полёта" @@ -2183,11 +2232,11 @@ msgstr "Режим полёта" msgid "Toggle fog" msgstr "Вкл/откл туман" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Вкл/откл миникарту" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Режим сквозь стены" @@ -2195,7 +2244,7 @@ msgstr "Режим сквозь стены" msgid "Toggle pitchmove" msgstr "По наклону взгляда" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Приближение" @@ -2231,7 +2280,7 @@ msgstr "Старый пароль" msgid "Passwords do not match!" msgstr "Пароли не совпадают!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Закрыть" @@ -2244,15 +2293,46 @@ msgstr "Заглушено" msgid "Sound Volume: %d%%" msgstr "Громкость звука: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "Добавить кнопку" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "Готово" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "Убрать" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "Сбросить" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" +"Начните перетаскивать кнопку, чтобы добавить. Нажмите \"За пределами\", " +"чтобы отменить." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" +"Нажмите на кнопку, чтобы выбрать её. Перетащите кнопку, чтобы перемещать её." + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "Нажмите \"Снаружи\", чтобы отменить выбор." + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "Джойстик" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "Переполненное меню" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "Переключать отладку" @@ -2481,18 +2561,16 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" -"3D-анаглиф.\n" +"Поддержка 3D.\n" "Сейчас поддерживаются:\n" -"- none: без 3D.\n" +"- none: без 3d выхода.\n" "- anaglyph: для красно/синих очков.\n" "- interlaced: поляризация с чётными/нечётными линиями.\n" "- topbottom: горизонтальное разделение экрана.\n" "- sidebyside: вертикальное разделение экрана.\n" -"- crossview: перекрёстная стереопара.\n" -"Примечание: для режима «interlaced» должны быть включены шейдеры." +"- crossview: перекрёстная стереопара 3d" #: src/settings_translation_file.cpp msgid "" @@ -2546,10 +2624,6 @@ msgstr "Дальность активных блоков" msgid "Active object send range" msgstr "Дальность отправляемого активного объекта" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Добавляет частицы при копании ноды." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2580,6 +2654,18 @@ msgstr "Имя админа" msgid "Advanced" msgstr "Дополнительно" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" +"Все буферы мешей с меньшим количеством вершин будут объединены\n" +"во время рендера карты. Это повышает производительность рендеринга." + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "Позволяет облакам выглядеть больше 3D, чем плоскими." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Позволяет жидкостям быть прозрачными." @@ -2985,14 +3071,14 @@ msgstr "Радиус облаков" msgid "Clouds" msgstr "Облака" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Облака это эффекты со стороны клиента." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Облака в меню" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "Глубина цвета для постобработки текстуры" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Цветной туман" @@ -3008,8 +3094,8 @@ msgid "" msgstr "" "Список разделенных запятыми расширений AL и ALC, которые не следует " "использовать.\n" -"Полезно для тестирования. Подробности смотрите в разделе al_extensions.[h," -"cpp]." +"Полезно для тестирования. Подробности смотрите в разделе al_extensions." +"[h,cpp]." #: src/settings_translation_file.cpp msgid "" @@ -3019,15 +3105,15 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Список разделенных запятыми флажков для скрытия в хранилище контента.\n" -"\"nonfree\" может использоваться для скрытия пакетов,\n" -"которые не подпадают под категорию Free Software Foundation,\n" -"как это определено Фондом свободного программного обеспечения.\n" -"Вы также можете указать рейтинг контента. Эти флаги не зависят от версий " -"Luanti,\n" -"поэтому смотрите полный список по адресу https://content.minetest.net/help/" +"«несвободный» может использоваться для скрытия пакетов, которые не подпадают " +"под категорию «свободного программного обеспечения»,\n" +"как это определено Фондом Свободного Программного Обеспечения.\n" +"Вы также можете указать рейтинг контента.\n" +"Эти флаги не зависят от версий Luanti,\n" +"поэтому смотрите полный список по адресу https://content.luanti.org/help/" "content_flags/" #: src/settings_translation_file.cpp @@ -3190,6 +3276,19 @@ msgstr "Отладочный уровень" msgid "Debugging" msgstr "Отладка" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" +"Определить глубину цвета текстуры, используемой для конвейера постобработки." +"\n" +"Уменьшение этого параметра может повысить производительность, но для работы " +"некоторых эффектов (например, для удаления пятен)\n" +"требуется более 8 бит." + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Шаг выделенного сервера" @@ -3366,18 +3465,10 @@ msgstr "" "Пустыни появляются, когда np_biome превышает это значение.\n" "Не учитывается, когда включён флаг «snowbiomes»." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Рассинхронизация анимации нод" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Для разработчиков" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Частицы при копании" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Запретить пустой пароль" @@ -3392,8 +3483,8 @@ msgid "" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"Расстояние в блоках, на котором включена сортировка по глубине прозрачности." -"\n" +"Расстояние в блоках, на котором включена сортировка по глубине " +"прозрачности.\n" "Используйте это значение, чтобы ограничить влияние сортировки по глубине " "прозрачности на производительность.\n" "Задайте значение 0, чтобы полностью отключить ее." @@ -3410,6 +3501,19 @@ msgstr "Двойной прыжок для полёта" msgid "Double-tapping the jump key toggles fly mode." msgstr "Двойное нажатие на прыжок включает режим полёта." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" +"Рисовать треугольники, отсортированные по прозрачности, сгруппированные по " +"их меш буферам.\n" +"Это нарушает сортировку по прозрачности между меш буферами, но позволяет " +"избежать ситуаций,\n" +"когда в противном случае сортировка по прозрачности была бы очень медленной." + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Записывать отладочные данные мапгена." @@ -3494,12 +3598,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" -"Включить цветные тени.\n" -"Когда включено, прозрачные ноды отбрасывают цветные тени. Это " -"ресурсозатратно." +"Включите цветные тени для трансгенных блоков.\n" +"Это дорого." #: src/settings_translation_file.cpp msgid "Enable console window" @@ -3584,12 +3687,10 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" -"Включить/отключить запуск IPv6-сервера.\n" -"Игнорируется, если задан «bind_address».\n" -"Для включения необходим «enable_ipv6»." +"Включить/отключить запуск сервера IPv6.\n" +"Игнорируется, если задан параметр bind_address." #: src/settings_translation_file.cpp msgid "" @@ -3607,14 +3708,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Включить анимацию предметов в инвентаре." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" -"Включает кэширование повернутых сеток facedir.\n" -"Это работает только при отключенных шейдерах." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Включает отладку и проверку ошибок в драйвере OpenGL." @@ -3958,10 +4051,6 @@ msgstr "Масштабирование интерфейса" msgid "GUI scaling filter" msgstr "Фильтр масштабирования интерфейса" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Фильтр txr2img для масштабирования интерфейса" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Контроллеры" @@ -4222,16 +4311,6 @@ msgstr "" "Если включено, для подъёма и спуска будет использоваться\n" "клавиша «Aux1» вместо клавиши «Красться»." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Если включено, регистрация аккаунта выполняется в интерфейсе отдельно от " -"входа.\n" -"Если отключено, новые учётные записи будут регистрироваться автоматически " -"при входе." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4255,6 +4334,17 @@ msgid "" msgstr "" "Если включено, то новые игроки не смогут подключаться с пустым паролем." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Если этот параметр включен, регистрация учетной записи сервера выполняется " +"отдельно от входа в пользовательский интерфейс.\n" +"Если он отключен, при подключении к серверу автоматически регистрируется " +"новая учетная запись." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4370,10 +4460,6 @@ msgstr "Замерять методы сущностей при регистра msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Интервал сохранения важных изменений в мире, в секундах." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Интервал отправки клиентам сведений о времени дня, в секундах." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Анимация предметов в инвентаре" @@ -5093,10 +5179,6 @@ msgstr "" msgid "Maximum users" msgstr "Максимум пользователей" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Кэш мешей" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Сообщение дня" @@ -5129,6 +5211,10 @@ msgstr "Минимум случайных больших пещер на мап msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Минимум малых пещер на мапчанк." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "Минимальное количество вершин для меш буферов" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "MIP-текстурирование" @@ -5224,12 +5310,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Имя игрока.\n" -"При запуске сервера клиенты с этим именем будут администраторами.\n" -"Будет переопределено при запуске из главного меню." +"При запуске сервера клиент, подключающийся под этим именем, является " +"администратором.\n" +"При запуске из главного меню это значение переопределяется." #: src/settings_translation_file.cpp msgid "" @@ -5744,41 +5831,45 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" "Выберите метод сглаживания, который необходимо применить.\n" "\n" -"* * Нет - сглаживание отсутствует (по умолчанию).\n" +"* None - Нет сглаживания (по умолчанию)\n" "\n" -"* FSAA - Аппаратное полноэкранное сглаживание\n" -"(несовместимое с постобработкой и недостаточной дискретизацией)\n" -", аналогичное сглаживанию с несколькими выборками (MSAA)\n" +"* FSAA - Аппаратное полноэкранное сглаживание,\n" +"аналогичное сглаживанию с несколькими выборками (MSAA).\n" "Сглаживает края блоков, но не влияет на внутреннюю часть текстур.\n" -"Для изменения этого параметра требуется перезагрузка.\n" "\n" -"* FXAA - Быстрое приблизительное сглаживание (требуется использование " -"шейдеров)\n" -"Применяется фильтр последующей обработки для обнаружения и сглаживания " +"Если постобработка отключена, для изменения FSAA требуется перезапуск.\n" +"Кроме того, если постобработка отключена, FSAA не будет работать в сочетании " +"с\n" +"недостаточной дискретизацией или настройкой \"3d_mode\", не используемой по " +"умолчанию.\n" +"\n" +"* FXAA - Быстрое приблизительное сглаживание\n" +"Применяет фильтр последующей обработки для обнаружения и сглаживания " "высококонтрастных краев.\n" "Обеспечивает баланс между скоростью и качеством изображения.\n" "\n" -"* SSAA - сглаживание с использованием суперсэмплирования (требуются " -"шейдеры)\n" -"Визуализирует изображение сцены с более высоким разрешением, затем уменьшает " -"масштаб, чтобы уменьшить\n" -"эффекты наложения. Это самый медленный и точный метод." +"* SSAA - Сглаживание с использованием суперсэмплирования\n" +"Позволяет получить изображение сцены с более высоким разрешением, а затем " +"уменьшить масштаб, чтобы уменьшить\n" +"эффекты сглаживания. Это самый медленный и точный метод." #: src/settings_translation_file.cpp msgid "Selection box border color (R,G,B)." @@ -6020,18 +6111,6 @@ msgstr "" msgid "Shader path" msgstr "Путь к шейдерам" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Шейдеры" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" -"Шейдеры являются фундаментальной частью рендеринга и обеспечивают " -"расширенные визуальные эффекты." - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Качество фильтрации теней" @@ -6224,16 +6303,13 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" -"Распространяет полное обновление карты теней на заданное количество кадров.\n" -"Более высокие значения могут сделать тени нестабильными, более низкие " -"значения\n" -"будут потреблять больше ресурсов.\n" -"Минимум: 1; максимум: 16" +"Распространить полное обновление карты теней на заданное количество кадров.\n" +"Более высокие значения могут привести к запаздыванию теней,\n" +"более низкие значения потребляют больше ресурсов." #: src/settings_translation_file.cpp msgid "" @@ -6610,10 +6686,6 @@ msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" "Время суток во вновь созданном мире, в милличасах (значение от 0 до 23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Промежуток отправки времени" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Скорость хода времени" @@ -6679,6 +6751,10 @@ msgstr "Полупрозрачные жидкости" msgid "Transparency Sorting Distance" msgstr "Дальность сортировки по прозрачности" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "Прозрачность Сортировки Групп по Буферам" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Шум деревьев" @@ -6743,14 +6819,20 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" -"Субдискретизация аналогична использованию низкого разрешения экрана,\n" -"но она применяется только к игровому миру, графический интерфейс не " -"затрагивается.\n" -"Значительно увеличивает производительность за счёт вывода менее подробного " -"изображения.\n" -"Высокие значения приводят к менее проработанному изображению." +"Недостаточная дискретизация аналогична использованию более низкого " +"разрешения экрана, но применяется\n" +"только к игровому миру, сохраняя графический интерфейс без изменений.\n" +"Это должно значительно повысить производительность за счет снижения " +"детализации изображения.\n" +"Более высокие значения приводят к снижению детализации изображения.\n" +"Примечание: В настоящее время недостаточная дискретизация не поддерживается, " +"если для параметра \"3d_mode\" установлено\n" +"значение, отличное от значения по умолчанию." #: src/settings_translation_file.cpp msgid "Unlimited player transfer distance" @@ -6772,18 +6854,18 @@ msgstr "Верхний предел Y для подземелий." msgid "Upper Y limit of floatlands." msgstr "Верхний предел Y для парящих островов." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Объёмные облака вместо плоских." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Анимированные облака в главном меню." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" -"Использовать анизотропную фильтрацию при взгляде на текстуры под углом." +"Использовать анизотропную фильтрацию при просмотре текстур под углом.\n" +"Это обеспечивает значительное улучшение при использовании в сочетании с " +"мип-картированием." #: src/settings_translation_file.cpp msgid "Use bilinear filtering when scaling textures." @@ -7058,38 +7140,26 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Когда gui_scaling_filter_txr2img включён, изображения копируются\n" -"от аппаратного обеспечения до программного для масштабирования.\n" -"Когда выключен, возвращается к старому масштабированию для видеодрайверов,\n" -"которые неправильно поддерживают загрузку текстур с аппаратного обеспечения." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" -"Когда используются билинейный/трилинейный/анизотропный фильтры, то текстуры " -"низкого разрешения\n" -"могут быть размытыми, поэтому они автоматически увеличиваются ближайшей\n" -"интерполяцией для сохранения четкости пикселей. Это устанавливает " -"минимальный размер текстуры\n" -"для увеличенных текстур; большие значения выглядят чётче, но требуют больше\n" -"памяти. Рекомендуются степени числа 2. Эта настройки применяется ТОЛЬКО " -"если\n" -"билинейный/трилинейный/анизотропный фильтр включен.\n" -"Это также используется для автомасштабирования как основной размер для\n" -"повёрнутых по сторонам света текстур блока." +"При использовании билинейной/трилинейной фильтрации текстуры с низким " +"разрешением\n" +"могут быть размыты, поэтому этот параметр автоматически увеличивает их " +"масштаб, чтобы сохранить\n" +"четкие пиксели. Это определяет минимальный размер текстуры для текстур в " +"увеличенном масштабе;\n" +"более высокие значения выглядят четче, но требуют больше памяти.\n" +"Этот параметр применяется ТОЛЬКО в том случае, если включен любой из " +"упомянутых фильтров.\n" +"Он также используется в качестве базового размера текстуры узла для\n" +"автоматического масштабирования текстуры, выровненной по окружности." #: src/settings_translation_file.cpp msgid "" @@ -7099,12 +7169,6 @@ msgstr "" "Отображает фон для плашки с именем по умолчанию.\n" "Моды в любом случае могут задать задний фон." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Определяет необходимость рассинхронизации анимации текстур нод между " -"мапблоками." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7131,15 +7195,14 @@ msgstr "Затуманивает конец видимой области." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" -"Заглушает звуки. Вы можете включить звуки в любое время, если\n" -"звуковая система не отключена (enable_sound=false).\n" -"Внутри игры, вы можете включить переключать звуки, нажав на клавишу\n" -"заглушения звука или используя меню паузы." +"Следует ли отключать звук. Вы можете включить звук в любое время.\n" +"В игре вы можете переключать режим отключения звука с помощью клавиши " +"отключения звука\n" +"или с помощью меню паузы." #: src/settings_translation_file.cpp msgid "" @@ -7323,6 +7386,9 @@ msgstr "Лимит одновременных соединений cURL" #~ "Оставьте это поле пустым, чтобы запустить локальный сервер.\n" #~ "Заметьте, что поле адреса в главном меню перезапишет эту настройку." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Добавляет частицы при копании ноды." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7481,6 +7547,9 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Clean transparent textures" #~ msgstr "Очистить прозрачные текстуры" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Облака это эффекты со стороны клиента." + #~ msgid "Command key" #~ msgstr "Команда" @@ -7577,9 +7646,15 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Darkness sharpness" #~ msgstr "Резкость темноты" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Отладочные сведения и график профилировщика скрыты" + #~ msgid "Debug info toggle key" #~ msgstr "Клавиша переключения показа отладочной информации" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Отладочные сведения, график профилировщика и каркас скрыты" + #~ msgid "Dec. volume key" #~ msgstr "Клавиша уменьшения громкости" @@ -7642,9 +7717,15 @@ msgstr "Лимит одновременных соединений cURL" #~ "определений биома.\n" #~ "Y верхней границы лавы в больших пещерах." +#~ msgid "Desynchronize block animation" +#~ msgstr "Рассинхронизация анимации нод" + #~ msgid "Dig key" #~ msgstr "Кнопка копать" +#~ msgid "Digging particles" +#~ msgstr "Частицы при копании" + #~ msgid "Disable anticheat" #~ msgstr "Отключить анти-чит" @@ -7674,6 +7755,9 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Динамические тени:" +#~ msgid "Enable" +#~ msgstr "Включить" + #~ msgid "Enable VBO" #~ msgstr "Включить объекты буфера вершин (VBO)" @@ -7707,6 +7791,13 @@ msgstr "Лимит одновременных соединений cURL" #~ "пакетом текстур или сгенерированы автоматически.\n" #~ "Требует, чтобы шейдеры были включены." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Включает кэширование повернутых сеток facedir.\n" +#~ "Это работает только при отключенных шейдерах." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Включить кинематографическое тональное отображение" @@ -7756,9 +7847,6 @@ msgstr "Лимит одновременных соединений cURL" #~ "Экспериментальная опция, может привести к видимым зазорам\n" #~ "между блоками, когда значение больше, чем 0." -#~ msgid "FPS in pause menu" -#~ msgstr "Кадровая частота во время паузы" - #~ msgid "FSAA" #~ msgstr "Полноэкранное сглаживание (FSAA)" @@ -7844,8 +7932,8 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Full screen BPP" #~ msgstr "Глубина цвета в полноэкранном режиме" -#~ msgid "Game" -#~ msgstr "Игра" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Фильтр txr2img для масштабирования интерфейса" #~ msgid "Gamma" #~ msgstr "Гамма" @@ -8014,666 +8102,672 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Instrumentation" #~ msgstr "Замеры" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Интервал отправки клиентам сведений о времени дня, в секундах." + #~ msgid "Invalid gamespec." #~ msgstr "Неправильная конфигурация игры." #~ msgid "Inventory key" #~ msgstr "Кнопка открытия инвентаря" +#~ msgid "Irrlicht device:" +#~ msgstr "Устройство Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Кнопка прыжка" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша уменьшения зоны видимости.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша уменьшения громкости.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша копания.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша, чтобы выбросить выбранный предмет.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша увеличения зоны видимости.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша увеличения громкости.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша прыжка.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша, включающая режим быстрого перемещения.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша движения назад.\n" #~ "При активации также отключает автобег.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша движения вперёд.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша движения влево.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша движения вправо.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша отключения звука в игре.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша открытия окна чата для ввода команды.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша открытия окна чата для ввода локальных команд.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша открытия окна чата.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша открытия инвентаря.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша размещения.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 11 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 12 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 13 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 14 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 15 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 16 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 17 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 18 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 19 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 20 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 21 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 22 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 23 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 24 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 25 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 26 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 27 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 28 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 29 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 30 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 31 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 32 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 8 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 5 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 1 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 4 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора следующего предмета на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 9 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предыдущего предмета на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 2 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 7 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 6 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 10 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выбора предмета 3 на горячей панели.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша, чтобы красться.\n" #~ "Также используется для спуска и погружения под воду, если параметр " #~ "aux1_descends отключён.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения вида от первого или от третьего лица.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша для создания снимка экрана .\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения автобега.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения кинематографического режима.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения миникарты.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения режима быстрого перемещения.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения режима полёта.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения режима прохождения сквозь стены.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения режима движение вниз/вверх по направлению взгляда.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша выключения обновлений камеры. Используется только для разработки\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения чата.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения отладочной информации.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения тумана.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения игрового интерфейса.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша переключения отображения большого чата.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша для переключения отображения профилировщика. Используется для " #~ "разработки.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша отключения ограничения зоны видимости.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавиша режима увеличения.\n" -#~ "См. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "См. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Привязки клавиш. (Если это меню сломается, удалите настройки из minetest." -#~ "conf)" +#~ "Привязки клавиш. (Если это меню сломается, удалите настройки из " +#~ "minetest.conf)" #~ msgid "Large chat console key" #~ msgstr "Кнопка вызова консоли" @@ -8744,6 +8838,9 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Menus" #~ msgstr "Меню" +#~ msgid "Mesh cache" +#~ msgstr "Кэш мешей" + #~ msgid "Minimap" #~ msgstr "Миникарта" @@ -8959,6 +9056,9 @@ msgstr "Лимит одновременных соединений cURL" #~ "потребляет больше ресурсов.\n" #~ "Минимальное значение 0,001 секунды, максимальное 0,2 секунды" +#~ msgid "Shaders" +#~ msgstr "Шейдеры" + #~ msgid "Shaders (experimental)" #~ msgstr "Шейдеры (экспериментально)" @@ -8974,6 +9074,16 @@ msgstr "Лимит одновременных соединений cURL" #~ "повысить производительность некоторых\n" #~ "видеокарт." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Шейдеры являются фундаментальной частью рендеринга и обеспечивают " +#~ "расширенные визуальные эффекты." + +#~ msgid "Shaders are disabled." +#~ msgstr "Шейдеры выключены." + #~ msgid "Shadow limit" #~ msgstr "Лимит теней" @@ -9006,6 +9116,9 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Плавное вращение камеры. 0 для отключения." +#~ msgid "Sound system is disabled" +#~ msgstr "Звуковая система отключена" + #~ msgid "Special" #~ msgstr "Особенный" @@ -9054,6 +9167,12 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "This font will be used for certain languages." #~ msgstr "Этот шрифт будет использован для некоторых языков." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Это конфигурация не рекомендуется." + +#~ msgid "Time send interval" +#~ msgstr "Промежуток отправки времени" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Для включения шейдеров необходим драйвер OpenGL." @@ -9180,6 +9299,19 @@ msgstr "Лимит одновременных соединений cURL" #~ msgid "Waving water" #~ msgstr "Волны на воде" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Когда gui_scaling_filter_txr2img включён, изображения копируются\n" +#~ "от аппаратного обеспечения до программного для масштабирования.\n" +#~ "Когда выключен, возвращается к старому масштабированию для " +#~ "видеодрайверов,\n" +#~ "которые неправильно поддерживают загрузку текстур с аппаратного " +#~ "обеспечения." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9189,6 +9321,12 @@ msgstr "Лимит одновременных соединений cURL" #~ "при сборке.\n" #~ "Если отключено, используются растровые и XML-векторные изображения." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Определяет необходимость рассинхронизации анимации текстур нод между " +#~ "мапблоками." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Разрешает игрокам наносить урон и убивать друг друга." diff --git a/po/sk/luanti.po b/po/sk/luanti.po index 58837ce4f..5c4c19601 100644 --- a/po/sk/luanti.po +++ b/po/sk/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-10-06 05:16+0000\n" -"Last-Translator: Pexauteau Santander \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-03 17:19+0000\n" +"Last-Translator: Lukáš Lizák \n" "Language-Team: Slovak \n" "Language: sk\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n" -"X-Generator: Weblate 5.8-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +77,249 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | ] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Prehliadaj" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Upraviť" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Zvoľ adresár" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Zvoľ súbor" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Nastav" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Nie je zadaný popis nastavenia)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D šum" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Zrušiť" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lakunarita" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktávy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Ofset" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Vytrvalosť" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Uložiť" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Mierka" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Semienko" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Rozptyl X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Rozptyl Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Rozptyl Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absolútna hodnota (absvalue)" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "štandardné hodnoty (defaults)" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "zjemnené (eased)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(V hre bude potrebné povoliť aj tiene)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(V hre bude potrebné povoliť aj tiene)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(V hre bude potrebné povoliť aj tiene)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Použiť systémový jazyk)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Dostupnosť" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Auto" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Komunikácia" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Zmaž" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Ovládanie" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Vypnuté" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Aktivované" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Všeobecné" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Pohyb" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Bez výsledkov" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Obnov štand. nastavenia" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Obnoviť predvolené nastavenie ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Hľadaj" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Zobraziť rozšírené nastavenia" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Zobraz technické názvy" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Dotyková obrazovka" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS v menu pozastavenia hry" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Užívateľské módy" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Doplnky: Hry" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Doplnky: Rozšírenia (módy)" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(V hre bude potrebné povoliť aj tiene)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Vlastné" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamické tiene" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Vysoké" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Nízke" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Stredné" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Veľmi vysoké" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Veľmi nízke" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -159,11 +402,10 @@ msgstr "$1 sťahujem..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Všetky" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Späť" @@ -178,7 +420,7 @@ msgstr "Sťahujem..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Odporúčané" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -200,11 +442,6 @@ msgstr "Rozšírenia" msgid "No packages could be retrieved" msgstr "Nepodarilo sa stiahnuť žiadne balíčky" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Bez výsledkov" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Bez aktualizácií" @@ -250,18 +487,6 @@ msgstr "Už nainštalované" msgid "Base Game:" msgstr "Základná hra:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Zrušiť" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -316,11 +541,11 @@ msgstr "Popis servera" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Prispieť" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Téma Fóra" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -334,15 +559,15 @@ msgstr "Nainštalovať $1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Sledovač Problémov" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Zdroj" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Preložiť" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -389,6 +614,12 @@ msgstr "Nie je možné nainštalovať $1 ako aj $2" msgid "Unable to install a $1 as a texture pack" msgstr "Nie je možné nainštalovať $1 ako balíček textúr" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Povolené, s chybou)" @@ -453,12 +684,6 @@ msgstr "Bez voliteľných nevuhnutných doplnkov" msgid "Optional dependencies:" msgstr "Voliteľné nevyhnutné doplnky:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Uložiť" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Svet:" @@ -520,6 +745,8 @@ msgid "" "Different dungeon variant generated in desert biomes (only if dungeons " "enabled)" msgstr "" +"Odlišné varianty kobiek vygenerované v púštnych biómoch (len ak sú kobky " +"zapnuté)" #: builtin/mainmenu/dlg_create_world.lua msgid "Dungeons" @@ -611,11 +838,6 @@ msgstr "Rieky" msgid "Sea level rivers" msgstr "Rieky na úrovni hladiny mora" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Semienko" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Plynulý prechod medzi ekosystémami" @@ -761,6 +983,23 @@ msgstr "" "Tento balíček rozšírení má vo svojom modpack.conf explicitne zadané meno, " "ktoré prepíše akékoľvek tunajšie premenovanie." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Povoliť všetko" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "K dispozícií je nová verzia $1" @@ -789,7 +1028,7 @@ msgstr "Nikdy" msgid "Visit website" msgstr "Navštív webovú stránku" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Nastavenia" @@ -803,228 +1042,6 @@ msgstr "" "Skús znova povoliť verejný zoznam serverov a skontroluj internetové " "pripojenie." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Prehliadaj" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Upraviť" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Zvoľ adresár" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Zvoľ súbor" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Nastav" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Nie je zadaný popis nastavenia)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D šum" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lakunarita" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktávy" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Ofset" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Vytrvalosť" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Mierka" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Rozptyl X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Rozptyl Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Rozptyl Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absolútna hodnota (absvalue)" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "štandardné hodnoty (defaults)" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "zjemnené (eased)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(V hre bude potrebné povoliť aj tiene)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(V hre bude potrebné povoliť aj tiene)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(V hre bude potrebné povoliť aj tiene)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Použiť systémový jazyk)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Dostupnosť" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Komunikácia" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Zmaž" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Ovládanie" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Vypnuté" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Aktivované" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Všeobecné" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Pohyb" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Obnov štand. nastavenia" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Obnoviť predvolené nastavenie ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Hľadaj" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Zobraziť rozšírené nastavenia" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Zobraz technické názvy" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Užívateľské módy" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Doplnky: Hry" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Doplnky: Rozšírenia (módy)" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Aktivované" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Aktualizácia kamery je zakázaná" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(V hre bude potrebné povoliť aj tiene)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Vlastné" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamické tiene" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Vysoké" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Nízke" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Stredné" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Veľmi vysoké" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Veľmi nízke" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "O hre" @@ -1045,10 +1062,6 @@ msgstr "Hlavný vývojari" msgid "Core Team" msgstr "Jadro tímu" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Zariadenie Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Otvor adresár užívateľa" @@ -1199,10 +1212,22 @@ msgstr "Spusti hru" msgid "You need to install a game before you can create a world." msgstr "Pred vytvorením sveta musíš nainštalovať hru." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Odstráň z obľúbených" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adresa" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreatívny mód" @@ -1216,6 +1241,11 @@ msgstr "Zranenie / PvP" msgid "Favorites" msgstr "Obľúbené" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Hra" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Nekompatibilné servery" @@ -1228,10 +1258,28 @@ msgstr "Pripoj sa do hry" msgid "Login" msgstr "Prihlásenie" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Počet použitých vlákien" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Určený krok servera" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Verejné servery" @@ -1316,23 +1364,6 @@ msgstr "" "\n" "Pozri detaily v debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Mode: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Verejný: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Meno servera: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Chyba pri serializácií:" @@ -1342,6 +1373,11 @@ msgstr "Chyba pri serializácií:" msgid "Access denied. Reason: %s" msgstr "Prístup zamietnutý. Dôvod: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Ladiace informácie zobrazené" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatický pohyb vpred je zakázaný" @@ -1362,6 +1398,10 @@ msgstr "Hranice bloku sú zobrazené pre aktuálny blok" msgid "Block bounds shown for nearby blocks" msgstr "Hranice bloku sú zobrazené pre blízke bloky" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Aktualizácia kamery je zakázaná" @@ -1374,10 +1414,6 @@ msgstr "Aktualizácia kamery je aktivovaná" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Hranice bloku nie je možné zobraziť (zakázané hrou, alebo rozšírením)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Zmeniť heslo" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmový režim je zakázaný" @@ -1406,39 +1442,6 @@ msgstr "Chyba spojenia (časový limit?)" msgid "Connection failed for unknown reason" msgstr "Spojenie sa z neznámeho dôvodu nepodarilo" -#: src/client/game.cpp -msgid "Continue" -msgstr "Pokračuj" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Štandardné ovládanie:\n" -"Menu nie je zobrazené:\n" -"- jeden klik: tlačidlo aktivuj\n" -"- dvojklik: polož/použi\n" -"- posun prstom: pozeraj sa dookola\n" -"Menu/Inventár je zobrazené/ý:\n" -"- dvojklik (mimo):\n" -" -->zatvor\n" -"- klik na kôpku, klik na miesto:\n" -" --> presuň kôpku \n" -"- chyť a prenes, klik druhým prstom\n" -" --> polož jednu vec na miesto\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1452,31 +1455,15 @@ msgstr "Vytváram klienta..." msgid "Creating server..." msgstr "Vytváram server..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Ladiace informácie a Profilový graf sú skryté" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Ladiace informácie zobrazené" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Ladiace informácie, Profilový graf a Obrysy sú skryté" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Chyba pri vytváraní klienta: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Návrat do menu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Ukončiť hru" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Rýchly režim je zakázaný" @@ -1514,18 +1501,6 @@ msgstr "Hmla je aktivovaná" msgid "Fog enabled by game or mod" msgstr "Zväčšenie je zakázané hrou, alebo rozšírením" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Informácie o hre:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Hra je pozastavená" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Beží server" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Definície vecí..." @@ -1563,14 +1538,6 @@ msgstr "" msgid "Node definitions..." msgstr "Definície kocky..." -#: src/client/game.cpp -msgid "Off" -msgstr "Vypnutý" - -#: src/client/game.cpp -msgid "On" -msgstr "Aktívny" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Režim pohybu podľa sklonu je zakázaný" @@ -1583,38 +1550,22 @@ msgstr "Režim pohybu podľa sklonu je aktívny" msgid "Profiler graph shown" msgstr "Profilový graf je zobrazený" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Vzdialený server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Prekladám adresu..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Oživiť" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Vypínam..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Hra pre jedného hráča" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Hlasitosť" - #: src/client/game.cpp msgid "Sound muted" msgstr "Zvuk je stlmený" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Zvukový systém je zakázaný" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Zvukový systém nie je podporovaný v tomto zostavení" @@ -1691,18 +1642,117 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Hlasitosť zmenená na %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Tieňovanie (Shaders) je zapnuté ale GLSL nie je podporené drajverom." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Obrysy zobrazené" -#: src/client/game.cpp -msgid "You died" -msgstr "Zomrel si" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zväčšenie je zakázané hrou, alebo rozšírením" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Mode: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Verejný: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Meno servera: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Zmeniť heslo" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Pokračuj" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Štandardné ovládanie:\n" +"Menu nie je zobrazené:\n" +"- jeden klik: tlačidlo aktivuj\n" +"- dvojklik: polož/použi\n" +"- posun prstom: pozeraj sa dookola\n" +"Menu/Inventár je zobrazené/ý:\n" +"- dvojklik (mimo):\n" +" -->zatvor\n" +"- klik na kôpku, klik na miesto:\n" +" --> presuň kôpku \n" +"- chyť a prenes, klik druhým prstom\n" +" --> polož jednu vec na miesto\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Návrat do menu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Ukončiť hru" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Informácie o hre:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Hra je pozastavená" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Beží server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Vypnutý" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Aktívny" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Vzdialený server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Oživiť" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Hlasitosť" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Zomrel si" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chat je zakázaný hrou, alebo rozšírením" @@ -2029,8 +2079,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Nepodarilo sa vytvoriť \"%s\" tieňovač." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Tieňovanie (Shaders) je zapnuté ale GLSL nie je podporené drajverom." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2081,7 +2132,7 @@ msgstr "Automaticky pohyb vpred" msgid "Automatic jumping" msgstr "Automatické skákanie" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2093,7 +2144,7 @@ msgstr "Vzad" msgid "Block bounds" msgstr "Hranice bloku" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Zmeň pohľad" @@ -2117,7 +2168,7 @@ msgstr "Zníž hlasitosť" msgid "Double tap \"jump\" to toggle fly" msgstr "2x stlač \"skok\" pre prepnutie lietania" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Zahodiť" @@ -2133,11 +2184,11 @@ msgstr "Zvýš dohľad" msgid "Inc. volume" msgstr "Zvýš hlasitosť" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Inventár" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Skok" @@ -2169,7 +2220,7 @@ msgstr "Ďalšia vec" msgid "Prev. item" msgstr "Pred. vec" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Zmena dohľadu" @@ -2181,7 +2232,7 @@ msgstr "Vpravo" msgid "Screenshot" msgstr "Fotka obrazovky" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Zakrádať sa" @@ -2189,15 +2240,15 @@ msgstr "Zakrádať sa" msgid "Toggle HUD" msgstr "Prepni HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Prepni logovanie komunikácie" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Prepni rýchly režim" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Prepni lietanie" @@ -2205,11 +2256,11 @@ msgstr "Prepni lietanie" msgid "Toggle fog" msgstr "Prepni hmlu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Prepni minimapu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Prepni režim prechádzania stenami" @@ -2217,7 +2268,7 @@ msgstr "Prepni režim prechádzania stenami" msgid "Toggle pitchmove" msgstr "Prepni režim pohybu podľa sklonu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Priblíž" @@ -2227,11 +2278,11 @@ msgstr "stlač klávesu" #: src/gui/guiOpenURL.cpp msgid "Open" -msgstr "" +msgstr "Otvorené" #: src/gui/guiOpenURL.cpp msgid "Open URL?" -msgstr "" +msgstr "Otvorené URL?" #: src/gui/guiOpenURL.cpp #, fuzzy @@ -2254,7 +2305,7 @@ msgstr "Staré heslo" msgid "Passwords do not match!" msgstr "Hesla sa nezhodujú!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Odísť" @@ -2267,16 +2318,47 @@ msgstr "Zvuk stlmený" msgid "Sound Volume: %d%%" msgstr "Hlasitosť: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Stredné tlačítko" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Hotovo!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Vzdialený server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "ID joysticku" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Prepni hmlu" @@ -2491,6 +2573,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "3D šum definujúci počet kobiek na časť mapy (mapchunk)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2499,8 +2582,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Podpora 3D.\n" "Aktuálne sú podporované:\n" @@ -2565,10 +2647,6 @@ msgstr "Rozsah aktívnych blokov" msgid "Active object send range" msgstr "Zasielaný rozsah aktívnych objektov" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Pridá časticové efekty pri vykopávaní kocky." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2599,6 +2677,17 @@ msgstr "Meno správcu" msgid "Advanced" msgstr "Pokročilé" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Použi 3D mraky namiesto plochých." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2992,14 +3081,14 @@ msgstr "Polomer mrakov" msgid "Clouds" msgstr "Mraky" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Mraky sú efektom na strane klienta." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Mraky v menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Farebná hmla" @@ -3023,7 +3112,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Čiarkou oddelený zoznam príznakov, ktoré sa skryjú v zozname doplnkov.\n" "\"nonfree\" môže byť využité na skrytie doplnkov, ktoré nie je možné " @@ -3190,6 +3279,14 @@ msgstr "Úroveň ladiacich info" msgid "Debugging" msgstr "Ladenie" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Určený krok servera" @@ -3360,18 +3457,10 @@ msgstr "" "Púšte sa objavia keď np_biome presiahne túto hodnotu.\n" "Ak je aktívny príznak 'snowbiomes', tak toto je ignorované." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Nesynchronizuj animáciu blokov" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Nastavenia pre vývojárov" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Časticové efekty pri kopaní" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Zakáž prázdne heslá" @@ -3402,6 +3491,14 @@ msgstr "Dvakrát skok pre lietanie" msgid "Double-tapping the jump key toggles fly mode." msgstr "Dvojnásobné stlačenie klávesy pre skok prepne režim lietania." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Získaj ladiace informácie generátora máp." @@ -3488,9 +3585,10 @@ msgstr "" "simulujúc správanie sa ľudského oka." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Aktivuje farebné tiene.\n" "Ak je aktivovaný, tak priesvitné kocky dávajú farebné tiene. Toto je náročné." @@ -3576,10 +3674,10 @@ msgstr "" "Napr.: 0 pre žiadne pohupovanie; 1.0 pre normálne; 2.0 pre dvojnásobné." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Aktivuj/vypni IPv6 server.\n" "Ignorované, ak je nastavená bind_address .\n" @@ -3601,13 +3699,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Aktivuje animáciu vecí v inventári." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Aktivuje ukladanie tvárou rotovaných Mesh objektov do medzipamäti." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3950,10 +4041,6 @@ msgstr "Mierka GUI" msgid "GUI scaling filter" msgstr "Filter mierky GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filter mierky GUI txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepady" @@ -4215,14 +4302,6 @@ msgstr "" "klávesu\n" "pre klesanie a šplhanie dole." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Ak je aktivované, tak registrácia účtu je oddelená od prihlásenia v UI.\n" -"Ak je zakázané, nové konto sa zaregistruje automaticky pri prihlásení." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4247,6 +4326,16 @@ msgstr "" "Ak je aktivované, nový hráči sa nemôžu prihlásiť bez zadaného hesla, ani si " "nemôžu heslo vymazať." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Ak je aktivované, tak registrácia účtu je oddelená od prihlásenia v UI.\n" +"Ak je zakázané, nové konto sa zaregistruje automaticky pri prihlásení." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4362,10 +4451,6 @@ msgstr "Inštrumentuj metódy bytostí pri registrácií." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Interval ukladania dôležitých zmien vo svete, uvádzaný v sekundách." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Interval v akom sa posiela denný čas klientom, v sekundách." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Animácia vecí v inventári" @@ -5085,10 +5170,6 @@ msgstr "" msgid "Maximum users" msgstr "Maximálny počet hráčov" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Medzipamäť Mesh" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Správa dňa" @@ -5124,6 +5205,10 @@ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" "Minimálny limit náhodného počtu malých jaskýň v danej časti mapy (mapchunk)." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip-mapovanie" @@ -5218,9 +5303,10 @@ msgstr "" "- Voliteľné lietajúce pevniny (floatlands) vo v7 (štandardne vypnuté)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Meno hráča.\n" @@ -5742,17 +5828,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6008,16 +6096,6 @@ msgstr "" msgid "Shader path" msgstr "Cesta k shaderom" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Tieňovanie" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Kvalita filtra pre tiene" @@ -6210,11 +6288,11 @@ msgstr "" "určité (alebo všetky) typy." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Rozptýľ celkovú aktualizáciu mapy tieňov cez zadané množstvo snímok.\n" "Vyššie hodnoty môžu spôsobiť trhanie tieňov, nižšie hodnoty\n" @@ -6578,10 +6656,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "Čas pri spustení nového sveta, v milihodinách (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Interval posielania času" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Rýchlosť času" @@ -6647,6 +6721,11 @@ msgstr "Nepriehľadné tekutiny" msgid "Transparency Sorting Distance" msgstr "Vzdialenosť spracovania priehľadnosti" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Vzdialenosť spracovania priehľadnosti" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Šum stromov" @@ -6706,12 +6785,16 @@ msgid "Undersampling" msgstr "Podvzorkovanie" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Podvzorkovanie je podobné ako použiť obrazovku s nižším rozlíšením, ale\n" "aplikuje sa len na samotný svet, pričom GUI ostáva nezmenené.\n" @@ -6738,16 +6821,15 @@ msgstr "Horný Y limit kobiek." msgid "Upper Y limit of floatlands." msgstr "Horný Y limit lietajúcich pevnín." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Použi 3D mraky namiesto plochých." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Použi animáciu mrakov pre pozadie hlavného menu." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Použi anisotropné filtrovanie pri pohľade na textúry zo strany." #: src/settings_translation_file.cpp @@ -7017,25 +7099,14 @@ msgstr "" "pre hardvér (napr. render-to-texture pre kocky v inventári)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Ake je gui_scaling_filter_txr2img povolený, nakopíruj tieto obrázky\n" -"z hardvéru do softvéru pre zmenu mierky. Ak za vypnutý, vráť sa\n" -"k starej metóde zmeny mierky, pre grafické ovládače, ktoré dostatočne\n" -"nepodporujú sťahovanie textúr z hardvéru." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7058,10 +7129,6 @@ msgstr "" "Či sa má štandardne zobraziť menovka pozadia.\n" "Rozšírenia stále môžu pozadie nastaviť." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Či sa nemá animácia textúry kocky synchronizovať." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7087,9 +7154,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Či zamlžiť okraj viditeľnej oblasti." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7279,6 +7346,9 @@ msgstr "Paralelný limit cURL" #~ "Ponechaj prázdne pre spustenie lokálneho servera.\n" #~ "Adresné políčko v hlavnom menu prepíše toto nastavenie." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Pridá časticové efekty pri vykopávaní kocky." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7423,6 +7493,9 @@ msgstr "Paralelný limit cURL" #~ msgid "Clean transparent textures" #~ msgstr "Vyčisti priehľadné textúry" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Mraky sú efektom na strane klienta." + #~ msgid "Command key" #~ msgstr "Tlačidlo Príkaz" @@ -7503,9 +7576,15 @@ msgstr "Paralelný limit cURL" #~ msgid "Damage enabled" #~ msgstr "Poškodenie je aktivované" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Ladiace informácie a Profilový graf sú skryté" + #~ msgid "Debug info toggle key" #~ msgstr "Tlačidlo Ladiace informácie" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Ladiace informácie, Profilový graf a Obrysy sú skryté" + #~ msgid "Dec. volume key" #~ msgstr "Tlačidlo Zníž hlasitosť" @@ -7552,9 +7631,15 @@ msgstr "Paralelný limit cURL" #~ msgid "Del. Favorite" #~ msgstr "Zmaž obľúbené" +#~ msgid "Desynchronize block animation" +#~ msgstr "Nesynchronizuj animáciu blokov" + #~ msgid "Dig key" #~ msgstr "Tlačidlo Kopanie" +#~ msgid "Digging particles" +#~ msgstr "Časticové efekty pri kopaní" + #~ msgid "Disable anticheat" #~ msgstr "Zakáž anticheat" @@ -7576,6 +7661,10 @@ msgstr "Paralelný limit cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamické tiene:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Aktivované" + #~ msgid "Enable creative mode for all players" #~ msgstr "Aktivuj kreatívny režim pre všetkých hráčov" @@ -7607,6 +7696,12 @@ msgstr "Paralelný limit cURL" #~ "alebo musia byť automaticky generované.\n" #~ "Vyžaduje aby boli shadery aktivované." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Aktivuje ukladanie tvárou rotovaných Mesh objektov do medzipamäti." + #~ msgid "Enables minimap." #~ msgstr "Aktivuje minimapu." @@ -7646,9 +7741,6 @@ msgstr "Paralelný limit cURL" #~ "Experimentálne nastavenie, môže spôsobiť viditeľné medzery\n" #~ "medzi blokmi, ak je nastavené väčšie než 0." -#~ msgid "FPS in pause menu" -#~ msgstr "FPS v menu pozastavenia hry" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7728,8 +7820,8 @@ msgstr "Paralelný limit cURL" #~ msgid "Full screen BPP" #~ msgstr "BPP v režime celej obrazovky" -#~ msgid "Game" -#~ msgstr "Hra" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filter mierky GUI txr2img" #~ msgid "Generate Normal Maps" #~ msgstr "Normal Maps (nerovnosti)" @@ -7888,667 +7980,673 @@ msgstr "Paralelný limit cURL" #~ msgid "Instrumentation" #~ msgstr "Výstroj" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Interval v akom sa posiela denný čas klientom, v sekundách." + #~ msgid "Invalid gamespec." #~ msgstr "Chybná špec. hry." #~ msgid "Inventory key" #~ msgstr "Tlačidlo Inventár" +#~ msgid "Irrlicht device:" +#~ msgstr "Zariadenie Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Tlačidlo Skok" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre zníženie dohľadu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre zníženie hlasitosti.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre kopanie.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre zahodenie aktuálne vybranej veci.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre zvýšenie dohľadu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre zvýšenie hlasitosti.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre skákanie.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre rýchly pohyb hráča v rýchlom móde.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre pohyb hráča vzad.\n" #~ "Zároveň vypne automatický pohyb hráča dopredu, ak je aktívny.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre pohyb hráča vpred.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre pohyb hráča vľavo.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre pohyb hráča vpravo.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre vypnutie hlasitosti v hre.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre otvorenie komunikačného okna pre zadávanie príkazov.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre otvorenie komunikačného okna pre zadávanie lokálnych " #~ "príkazov.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre otvorenie komunikačného okna.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre otvorenie inventára.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre pokladanie.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber jedenástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber dvanástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber trinástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber štrnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber pätnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber šestnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber sedemnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber osemnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber devätnástej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 20. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 21. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 22. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 23. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 24. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 25. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 26. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 27. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 28. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 29. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 30. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 31. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber 32. pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber ôsmej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber piatej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber prvej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber štvrtej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber ďalšej veci na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber deviatej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber predchádzajúcej veci na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber druhej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber siedmej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber šiestej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber desiatej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre výber tretej pozície na opasku.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre utajený pohyb (zakrádanie) hráča.\n" #~ "Tiež sa používa pre zliezanie a ponáranie vo vode ak aux1_descends je " #~ "vypnutý.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepínanie medzi pohľadom z prvej a tretej osoby.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre snímanie obrazovky.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie režimu automatického pohybu vpred.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie filmového režimu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia minimapy.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie režimu rýchlosť.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie lietania.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie režimu prechádzania stenami.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie režimu pohyb podľa sklonu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie aktualizácie pohľadu. Používa sa len pre vývoj.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia komunikácie.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia ladiacich informácií.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia hmly.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia HUD (Head-Up Display - výhľadový " #~ "displej).\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia veľkej konzoly na komunikáciu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie zobrazenia profileru. Používa sa pri vývoji.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre prepnutie neobmedzeného dohľadu.\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Tlačidlo pre použitie priblíženia pokiaľ je to možné .\n" -#~ "Viď. http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Viď. http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Priradenie kláves. (ak je toto menu rozbité, zmaž zbytočnosti z minetest." -#~ "conf)" +#~ "Priradenie kláves. (ak je toto menu rozbité, zmaž zbytočnosti z " +#~ "minetest.conf)" #~ msgid "Large chat console key" #~ msgstr "Tlačidlo Veľká komunikačná konzola" @@ -8607,6 +8705,9 @@ msgstr "Paralelný limit cURL" #~ msgid "Menus" #~ msgstr "Menu" +#~ msgid "Mesh cache" +#~ msgstr "Medzipamäť Mesh" + #~ msgid "Minimap" #~ msgstr "Minimapa" @@ -8803,6 +8904,9 @@ msgstr "Paralelný limit cURL" #~ "spotrebuje sa viac zdrojov.\n" #~ "Minimálna hodnota je 0.001 sekúnd max. hodnota je 0.2 sekundy" +#~ msgid "Shaders" +#~ msgstr "Tieňovanie" + #~ msgid "Shaders (experimental)" #~ msgstr "Shadery (experimentálne)" @@ -8820,6 +8924,10 @@ msgstr "Paralelný limit cURL" #~ "môžu zvýšiť výkon.\n" #~ "Toto funguje len s OpenGL." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Aktualizácia kamery je zakázaná" + #~ msgid "" #~ "Shadow offset (in pixels) of the fallback font. If 0, then shadow will " #~ "not be drawn." @@ -8849,6 +8957,9 @@ msgstr "Paralelný limit cURL" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Zjemní rotáciu kamery. 0 je pre vypnuté." +#~ msgid "Sound system is disabled" +#~ msgstr "Zvukový systém je zakázaný" + #~ msgid "Special" #~ msgstr "Špeciál" @@ -8886,6 +8997,12 @@ msgstr "Paralelný limit cURL" #~ "pohľady, alebo pohybu myši.\n" #~ "Užitočné pri nahrávaní videí." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Toto nie je odporúčaná konfigurácia." + +#~ msgid "Time send interval" +#~ msgstr "Interval posielania času" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Aby mohli byť aktivované shadery, musí sa použiť OpenGL." @@ -8989,6 +9106,17 @@ msgstr "Paralelný limit cURL" #~ msgid "Waving Plants" #~ msgstr "Vlniace sa rastliny" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Ake je gui_scaling_filter_txr2img povolený, nakopíruj tieto obrázky\n" +#~ "z hardvéru do softvéru pre zmenu mierky. Ak za vypnutý, vráť sa\n" +#~ "k starej metóde zmeny mierky, pre grafické ovládače, ktoré dostatočne\n" +#~ "nepodporujú sťahovanie textúr z hardvéru." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -8998,6 +9126,10 @@ msgstr "Paralelný limit cURL" #~ "zakompilovaná.\n" #~ "Ak je zakázané, budú použité bitmapové a XML vektorové písma." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "Či sa nemá animácia textúry kocky synchronizovať." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Či sa môžu hráči navzájom poškodzovať a zabiť." diff --git a/po/sl/luanti.po b/po/sl/luanti.po index 6422bb2af..73c49afbf 100644 --- a/po/sl/luanti.po +++ b/po/sl/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Slovenian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2020-09-30 19:41+0000\n" "Last-Translator: Iztok Bajcar \n" "Language-Team: Slovenian ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Prebrskaj" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Uredi" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Izberi mapo" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Izberi datoteko" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Izberi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(ni podanega opisa nastavitve)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D šum" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Prekliči" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Lacunarity" +msgstr "lacunarnost" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktave" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Odmik" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Trajanje" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Shrani" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Seme" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X širjenje" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y širjenje" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z širjenje" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Absolutna vrednost" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Privzeta/standardna vrednost (defaults)" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "eased" +msgstr "sproščeno" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Klepet" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Počisti" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +#, fuzzy +msgid "Controls" +msgstr "Kontrole" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Onemogočeno" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Omogočeno" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Hitro premikanje" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Ni rezultatov" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Obnovi privzeto" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Poišči" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Prikaži tehnična imena" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Celozaslonski način" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Izbor sveta:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Vsebina" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Vsebina" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Dynamic shadows" +msgstr "Senca pisave" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -167,7 +417,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Nazaj" @@ -205,11 +454,6 @@ msgstr "Prilagoditve (mods)" msgid "No packages could be retrieved" msgstr "Ni mogoče pridobiti nobenega paketa" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Ni rezultatov" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -258,18 +502,6 @@ msgstr "Tipka je že v uporabi" msgid "Base Game:" msgstr "Gosti igro" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Prekliči" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -402,6 +634,12 @@ msgstr "Ni mogoče namestiti prilagoditve kot $1" msgid "Unable to install a $1 as a texture pack" msgstr "Ni mogoče namestiti $1 kot paket tekstur" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -469,12 +707,6 @@ msgstr "Ni izbirnih odvisnosti" msgid "Optional dependencies:" msgstr "Izbirne možnosti:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Shrani" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Svet:" @@ -636,11 +868,6 @@ msgstr "Reke" msgid "Sea level rivers" msgstr "Reke na višini morja" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Seme" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Gladek prehod med biomi" @@ -785,6 +1012,23 @@ msgstr "" "Ta paket prilagoditev ima jasno ime, določeno v svojem modpack.conf, ki bo " "preprečilo kakršnakoli preimenovanja tukaj." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Omogoči vse" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -809,7 +1053,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Nastavitve" @@ -824,236 +1068,6 @@ msgstr "" "Morda je treba ponovno omogočiti javni seznam strežnikov oziroma preveriti " "internetno povezavo." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Prebrskaj" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Uredi" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Izberi mapo" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Izberi datoteko" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Izberi" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(ni podanega opisa nastavitve)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D šum" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Lacunarity" -msgstr "lacunarnost" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktave" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Odmik" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Trajanje" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X širjenje" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y širjenje" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z širjenje" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Absolutna vrednost" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Privzeta/standardna vrednost (defaults)" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "eased" -msgstr "sproščeno" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Klepet" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Počisti" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Controls" -msgstr "Kontrole" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Onemogočeno" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Omogočeno" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Hitro premikanje" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Obnovi privzeto" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Poišči" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Prikaži tehnična imena" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Izbor sveta:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Vsebina" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Vsebina" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Omogočeno" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Posodabljanje kamere je onemogočeno" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Dynamic shadows" -msgstr "Senca pisave" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1074,10 +1088,6 @@ msgstr "Glavni razvijalci" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1228,11 +1238,23 @@ msgstr "Začni igro" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Izbriši priljubljeno" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "– Naslov: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Odjemalec" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Ustvarjalni način" @@ -1248,6 +1270,11 @@ msgstr "Poškodbe" msgid "Favorites" msgstr "Priljubljeno" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Igra" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1260,10 +1287,26 @@ msgstr "Prijavi se v igro" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1355,23 +1398,6 @@ msgstr "" "\n" "Več podrobnosti je zapisanih v datoteki debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "– Način: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "– Javno: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "– Igra PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "– Ime strežnika: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1382,6 +1408,11 @@ msgstr "Prišlo je do napake:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Prikazani so podatki o odpravljanju napak" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Samodejno premikanje naprej je onemogočeno" @@ -1402,6 +1433,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Posodabljanje kamere je onemogočeno" @@ -1415,10 +1450,6 @@ msgstr "Posodabljanje kamere je omogočeno" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Približanje (zoom) je trenutno onemogočen zaradi igre ali prilagoditve" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Spremeni geslo" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmski način(Cinematic mode) je onemogočen" @@ -1447,39 +1478,6 @@ msgstr "Napaka povezave (ali je dejanje časovno preteklo?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Nadaljuj" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Privzete tipkovne bližnjice:\n" -"S skritim menijem:\n" -"- enojni klik: postavi gumb v žarišče\n" -"- dvojni klik: postavi / uporabi\n" -"- drsanje: pogled naokoli\n" -"S prikazanim menijem / zalogo:\n" -"- dvojni klik (izven polja):\n" -" -->Zapre\n" -"- izbira polja:\n" -" --> premakne zalogo\n" -"- klik in poteg, tap z dvema prstoma\n" -" --> postavi predmet v polje\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1493,33 +1491,15 @@ msgstr "Ustvarjanje odjemalca ..." msgid "Creating server..." msgstr "Poteka zagon strežnika ..." -#: src/client/game.cpp -#, fuzzy -msgid "Debug info and profiler graph hidden" -msgstr "Podatki za razhroščevanje in graf skriti" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Prikazani so podatki o odpravljanju napak" -#: src/client/game.cpp -#, fuzzy -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Podatki za razhroščevanje, graf, in žičnati prikaz skriti" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Ustvarjanje odjemalca ..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Izhod na meni" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Zapri minetest" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Hitri način je onemogočen" @@ -1557,18 +1537,6 @@ msgstr "Megla omogočena" msgid "Fog enabled by game or mod" msgstr "Približanje (zoom) je trenutno onemogočen zaradi igre ali prilagoditve" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Podrobnosti o igri:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Igra je začasno ustavljena" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Gostiteljski strežnik" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Določila predmetov ..." @@ -1609,14 +1577,6 @@ msgstr "" msgid "Node definitions..." msgstr "Določila vozlišč ..." -#: src/client/game.cpp -msgid "Off" -msgstr "Izklopljeno" - -#: src/client/game.cpp -msgid "On" -msgstr "Vklopljeno" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Prostorsko premikanje (pitch mode) je onemogočeno" @@ -1630,38 +1590,22 @@ msgstr "Prostorsko premikanje (pitch mode) je omogočeno" msgid "Profiler graph shown" msgstr "Profiler prikazan" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Oddaljeni strežnik" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Poteka razreševanje naslova ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Ponovno oživi" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Poteka zaustavljanje ..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "samostojna igra" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Glasnost zvoka" - #: src/client/game.cpp msgid "Sound muted" msgstr "Zvok je utišan" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Zvočni sistem je onemogočen" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Zvočni sistem v tej izdaji Minetesta ni podprt" @@ -1735,19 +1679,117 @@ msgstr "Doseg pogleda je nastavljena na %d %%" msgid "Volume changed to %d%%" msgstr "Glasnost zvoka je nastavljena na %d %%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Wireframe shown" msgstr "Žičnati prikaz omogočen" -#: src/client/game.cpp -msgid "You died" -msgstr "Umrl si" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Približanje (zoom) je trenutno onemogočen zaradi igre ali prilagoditve" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "– Način: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "– Javno: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "– Igra PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "– Ime strežnika: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Spremeni geslo" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Nadaljuj" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Privzete tipkovne bližnjice:\n" +"S skritim menijem:\n" +"- enojni klik: postavi gumb v žarišče\n" +"- dvojni klik: postavi / uporabi\n" +"- drsanje: pogled naokoli\n" +"S prikazanim menijem / zalogo:\n" +"- dvojni klik (izven polja):\n" +" -->Zapre\n" +"- izbira polja:\n" +" --> premakne zalogo\n" +"- klik in poteg, tap z dvema prstoma\n" +" --> postavi predmet v polje\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Izhod na meni" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Zapri minetest" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Podrobnosti o igri:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Igra je začasno ustavljena" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Gostiteljski strežnik" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Izklopljeno" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Vklopljeno" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Oddaljeni strežnik" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Ponovno oživi" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Glasnost zvoka" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Umrl si" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2095,8 +2137,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Prenos $1 je spodletel" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Zvočni sistem v tej izdaji Minetesta ni podprt" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2146,7 +2189,7 @@ msgstr "Samodejno premikanje naprej" msgid "Automatic jumping" msgstr "Samodejno skakanje" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2158,7 +2201,7 @@ msgstr "Nazaj" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Sprememba kamere" @@ -2182,7 +2225,7 @@ msgstr "Zmanjšaj glasnost" msgid "Double tap \"jump\" to toggle fly" msgstr "Dvojni klik »skoka« omogoči letenje" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Izvrzi" @@ -2198,11 +2241,11 @@ msgstr "Povečaj doseg pogleda" msgid "Inc. volume" msgstr "Povečaj glasnonst" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Zaloga" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Skoči" @@ -2234,7 +2277,7 @@ msgstr "Naslednji predmet" msgid "Prev. item" msgstr "Predhodni predmet" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Izberi obseg" @@ -2246,7 +2289,7 @@ msgstr "Desno" msgid "Screenshot" msgstr "Posnetek zaslona" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Plaziti se" @@ -2254,15 +2297,15 @@ msgstr "Plaziti se" msgid "Toggle HUD" msgstr "Preklopi HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Preklopi beleženje pogovora" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Preklopi hitro premikanje" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Preklopi letenje" @@ -2270,11 +2313,11 @@ msgstr "Preklopi letenje" msgid "Toggle fog" msgstr "Preklopi meglo" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Preklopi zemljevid (minimap)" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Preklopi premikanje skozi kocke" @@ -2283,7 +2326,7 @@ msgstr "Preklopi premikanje skozi kocke" msgid "Toggle pitchmove" msgstr "Preklopi beleženje pogovora" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Približanje" @@ -2320,7 +2363,7 @@ msgstr "Staro geslo" msgid "Passwords do not match!" msgstr "Gesli se ne ujemata!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Izhod" @@ -2333,15 +2376,46 @@ msgstr "Utišano" msgid "Sound Volume: %d%%" msgstr "Glasnost zvoka: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Srednji gumb" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Končano!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Oddaljeni strežnik" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Preklopi meglo" @@ -2566,8 +2640,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2626,11 +2699,6 @@ msgstr "Doseg aktivnih blokov" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Adds particles when digging a node." -msgstr "Doda partikle pri kopanju kocke." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2654,6 +2722,16 @@ msgstr "Dodaj ime elementa" msgid "Advanced" msgstr "Naprednejše" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3067,14 +3145,14 @@ msgstr "Polmer oblaka" msgid "Clouds" msgstr "Oblaki" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Oblaki v meniju" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Barvna megla" @@ -3098,7 +3176,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3235,6 +3313,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3390,19 +3476,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekoracije" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Kopanje delcev" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Ne dovoli praznih gesel" @@ -3430,6 +3508,14 @@ msgstr "Dvojni klik tipke »skoči« za letenje" msgid "Double-tapping the jump key toggles fly mode." msgstr "Dvoklik tipke za skok preklopi način letenja." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3507,8 +3593,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3581,8 +3667,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3597,12 +3682,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3917,10 +3996,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4152,12 +4227,6 @@ msgstr "" "Izbrana možnost omogoči delovanje \"posebne\" tipke namesto tipke \"plaziti " "se\" za spuščanja in plezanje navzdol." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4180,6 +4249,13 @@ msgid "" "empty password." msgstr "Če je omogočeno, se novi igralci ne morejo prijaviti s praznim geslom." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4280,10 +4356,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4902,10 +4974,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4938,6 +5006,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -5028,7 +5100,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5476,17 +5548,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5684,16 +5758,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Senčenje" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5864,10 +5928,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6146,10 +6209,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6214,6 +6273,10 @@ msgstr "Valovanje tekočin" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6264,7 +6327,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6287,16 +6353,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6542,20 +6606,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6566,10 +6622,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6592,8 +6644,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6755,6 +6806,10 @@ msgstr "" #~ "Pustite prazno za zagon lokalnega strežnika.\n" #~ "Polje za vpis naslova v glavnem meniju povozi to nastavitev." +#, fuzzy +#~ msgid "Adds particles when digging a node." +#~ msgstr "Doda partikle pri kopanju kocke." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6920,6 +6975,14 @@ msgstr "" #~ msgid "Darkness sharpness" #~ msgstr "Ostrina teme" +#, fuzzy +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Podatki za razhroščevanje in graf skriti" + +#, fuzzy +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Podatki za razhroščevanje, graf, in žičnati prikaz skriti" + #~ msgid "Dec. volume key" #~ msgstr "Tipka za zmanjševanje glasnosti" @@ -6944,6 +7007,9 @@ msgstr "" #~ msgid "Dig key" #~ msgstr "Tipka za met predmeta" +#~ msgid "Digging particles" +#~ msgstr "Kopanje delcev" + #~ msgid "Disable anticheat" #~ msgstr "Onemogoči preprečevanje goljufanja" @@ -6969,6 +7035,10 @@ msgstr "" #~ msgid "Dynamic shadows:" #~ msgstr "Senca pisave" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Omogočeno" + #, fuzzy #~ msgid "Enable VBO" #~ msgstr "Omogoči VBO" @@ -7036,9 +7106,6 @@ msgstr "" #~ msgid "Forward key" #~ msgstr "Tipka naprej" -#~ msgid "Game" -#~ msgstr "Igra" - #~ msgid "Generate Normal Maps" #~ msgstr "Generiranje normalnih svetov" @@ -7284,10 +7351,17 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Izberi datoteko paketa:" +#~ msgid "Shaders" +#~ msgstr "Senčenje" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Senčenje (ni na voljo)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Posodabljanje kamere je onemogočeno" + #~ msgid "Simple Leaves" #~ msgstr "Preprosti listi" @@ -7296,6 +7370,9 @@ msgstr "" #~ "Možnost omogoča glajenje pogleda kamere med obračanjem. Vrednost 0 " #~ "možnost onemogoči." +#~ msgid "Sound system is disabled" +#~ msgstr "Zvočni sistem je onemogočen" + #~ msgid "Special" #~ msgstr "Specialen" diff --git a/po/sr_Cyrl/luanti.po b/po/sr_Cyrl/luanti.po index 624427c3a..77c82f23e 100644 --- a/po/sr_Cyrl/luanti.po +++ b/po/sr_Cyrl/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Serbian (cyrillic) (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2022-07-12 16:18+0000\n" "Last-Translator: OrbitalPetrol \n" "Language-Team: Serbian (cyrillic) ] [-t]" msgstr "[all | <команда>]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Прегледај" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Промени" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select directory" +msgstr "Изаберите фајл мода:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select file" +msgstr "Изаберите фајл мода:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Одабери" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Није дат опис поставке)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "2D Noise" +msgstr "2D бука" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Прекини" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Лакунарност" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октаве" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Помак" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Упорност" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Сачувај" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Скала" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Семе" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "defaults" +msgstr "Уобичајена игра" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Чет" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Очисти" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Контроле" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Онемогућено" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Омогућено" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Брзо кретање" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Нема резултата" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Поврати подразумевано" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Тражи" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Прикажи техничка имена" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Граница семена за плаже" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Одабери свет:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Настави" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Настави" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "<ни једна није доступна>" @@ -166,7 +416,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Назад" @@ -204,11 +453,6 @@ msgstr "Модови" msgid "No packages could be retrieved" msgstr "Ниједан пакет није било могуће преузети" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Нема резултата" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Нема ажурирања" @@ -254,18 +498,6 @@ msgstr "Већ инсталирано" msgid "Base Game:" msgstr "Основна игра:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Прекини" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -401,6 +633,12 @@ msgstr "Неуспела инсталација $1 у $2" msgid "Unable to install a $1 as a texture pack" msgstr "Неуспела инсталација $1 у $2" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -465,12 +703,6 @@ msgstr "Нема необавезних зависности" msgid "Optional dependencies:" msgstr "Необавезне зависности:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Сачувај" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Свет:" @@ -622,11 +854,6 @@ msgstr "Реке" msgid "Sea level rivers" msgstr "Реке на нивоу мора" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Семе" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Глатка транзиција између биома" @@ -768,6 +995,23 @@ msgstr "" "Ова група модова има специфично име дато у свом modpack.conf које ће " "преписати било које име дато овде." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Укључи све" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -792,7 +1036,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Поставке" @@ -806,236 +1050,6 @@ msgstr "" "Покушајте да поновно укључите листу сервера и проверите вашу интернет " "конекцију." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Прегледај" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Промени" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select directory" -msgstr "Изаберите фајл мода:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select file" -msgstr "Изаберите фајл мода:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Одабери" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Није дат опис поставке)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "2D Noise" -msgstr "2D бука" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Лакунарност" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октаве" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Помак" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Упорност" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Скала" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "defaults" -msgstr "Уобичајена игра" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Чет" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Очисти" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Контроле" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Онемогућено" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Омогућено" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Брзо кретање" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Поврати подразумевано" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Тражи" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Прикажи техничка имена" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Одабери свет:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Настави" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Настави" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Омогућено" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Кључ за укључивање/искључивање освежавања камере" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1057,10 +1071,6 @@ msgstr "Главни развијачи" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1217,11 +1227,23 @@ msgstr "Направи игру" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Обриши Омиљени" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "- Адреса: " +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Клијент" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Слободни мод" @@ -1237,6 +1259,11 @@ msgstr "Штета" msgid "Favorites" msgstr "Омиљени" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Игра" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1250,10 +1277,27 @@ msgstr "Направи игру" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Корак на посвећеном серверу" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Одзив" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1344,23 +1388,6 @@ msgstr "" "\n" "Проверите debug.txt за више детаља." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Мод: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Јавни: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Играч против играча: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Име сервера: " - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1371,6 +1398,11 @@ msgstr "Догодила се грешка:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Кључ за укључивање debug информација" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1393,6 +1425,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Camera update disabled" @@ -1407,10 +1443,6 @@ msgstr "Кључ за укључивање/искључивање освежав msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Промени шифру" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1442,39 +1474,6 @@ msgstr "Грешка у конекцији (истекло време?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Настави" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Подразумеване контроле:\n" -"Ни један приказан мени:\n" -"- један тап: копај\n" -"- дупли тап: постави блок/користи\n" -"- превуци прстом: гледај около\n" -"Мени/Инвертар приказан:\n" -"- дупли тап (изван):\n" -" -->Искључи\n" -"- додирни ствари, додирни празно место:\n" -" --> помери ствари\n" -"- држи и превлачи, тапни другим прстом:\n" -" --> пребаци само једну ствар из групе\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1488,32 +1487,16 @@ msgstr "Правим клијента..." msgid "Creating server..." msgstr "Правим сервер..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "Debug info shown" msgstr "Кључ за укључивање debug информација" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Правим клијента..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Изађи у мени" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Изађи из програма" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1554,18 +1537,6 @@ msgstr "укључено" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Информације о игри:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Игра паузирана" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Локални сервер" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Дефиниције предмета..." @@ -1604,14 +1575,6 @@ msgstr "" msgid "Node definitions..." msgstr "Дефиниције блокова..." -#: src/client/game.cpp -msgid "Off" -msgstr "Искључено" - -#: src/client/game.cpp -msgid "On" -msgstr "Укључено" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1624,39 +1587,23 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Удаљен сервер" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Разлучујем адресу..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Врати се у живот" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Искључивање..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Један играч" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Јачина звука" - #: src/client/game.cpp #, fuzzy msgid "Sound muted" msgstr "Јачина звука" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1729,18 +1676,116 @@ msgstr "Јачина звука промењена на %d%%" msgid "Volume changed to %d%%" msgstr "Јачина звука промењена на %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Умро си" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Мод: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Јавни: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Играч против играча: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Име сервера: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Промени шифру" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Настави" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Подразумеване контроле:\n" +"Ни један приказан мени:\n" +"- један тап: копај\n" +"- дупли тап: постави блок/користи\n" +"- превуци прстом: гледај около\n" +"Мени/Инвертар приказан:\n" +"- дупли тап (изван):\n" +" -->Искључи\n" +"- додирни ствари, додирни празно место:\n" +" --> помери ствари\n" +"- држи и превлачи, тапни другим прстом:\n" +" --> пребаци само једну ствар из групе\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Изађи у мени" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Изађи из програма" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Информације о игри:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Игра паузирана" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Локални сервер" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Искључено" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Укључено" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Удаљен сервер" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Врати се у живот" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Јачина звука" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Умро си" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2081,7 +2126,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Неуспело преузимање $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2133,7 +2178,7 @@ msgstr "Напред" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2145,7 +2190,7 @@ msgstr "Назад" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "Промени дугмад" @@ -2170,7 +2215,7 @@ msgstr "Смањи звук" msgid "Double tap \"jump\" to toggle fly" msgstr "Дупли скок за летење" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Бацање" @@ -2186,11 +2231,11 @@ msgstr "" msgid "Inc. volume" msgstr "Појачај звук" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Инвентар" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Скакање" @@ -2223,7 +2268,7 @@ msgstr "Следеће" msgid "Prev. item" msgstr "Претходно" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Одабир домета" @@ -2235,7 +2280,7 @@ msgstr "Десно" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Шуњање" @@ -2244,16 +2289,16 @@ msgstr "Шуњање" msgid "Toggle HUD" msgstr "Укључи/Искључи летење" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "Укључи/Искључи трчање" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Укључи/Искључи трчање" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Укључи/Искључи летење" @@ -2262,12 +2307,12 @@ msgstr "Укључи/Искључи летење" msgid "Toggle fog" msgstr "Укључи/Искључи летење" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "Укључи/искључи пролажење кроз препреке" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Укључи/искључи пролажење кроз препреке" @@ -2276,7 +2321,7 @@ msgstr "Укључи/искључи пролажење кроз препреке msgid "Toggle pitchmove" msgstr "Укључи/Искључи трчање" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Зумирај" @@ -2313,7 +2358,7 @@ msgstr "Стара шифра" msgid "Passwords do not match!" msgstr "Шифре се не поклапају!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Изађи" @@ -2327,15 +2372,46 @@ msgstr "Изкључи звук" msgid "Sound Volume: %d%%" msgstr "Јачина звука: " -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Средње дугме" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Готово!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Удаљен сервер" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Укључи/Искључи летење" @@ -2543,8 +2619,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D подршка.\n" "Тренутно подржано:\n" @@ -2609,10 +2684,6 @@ msgstr "Даљина активног блока" msgid "Active object send range" msgstr "Даљина слања активног блока" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Додаје честице када се блок ископа." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2636,6 +2707,16 @@ msgstr "Име света" msgid "Advanced" msgstr "Напредно" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3042,15 +3123,14 @@ msgstr "Величина облака" msgid "Clouds" msgstr "Облаци" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Облаци су ефекат од стране клијента." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Облаци у менију" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Обојена магла" @@ -3074,7 +3154,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3223,6 +3303,14 @@ msgstr "Ниво записивања у debug" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Корак на посвећеном серверу" @@ -3375,20 +3463,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Украси" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "Честице" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3416,6 +3495,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3492,8 +3579,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3566,8 +3653,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3582,12 +3668,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3892,10 +3972,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4122,12 +4198,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4146,6 +4216,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4243,10 +4320,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4870,10 +4943,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4906,6 +4975,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4996,7 +5069,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5443,17 +5516,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5672,16 +5747,6 @@ msgstr "" msgid "Shader path" msgstr "Шејдери" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Шејдери" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5847,10 +5912,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6129,10 +6193,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6196,6 +6256,10 @@ msgstr "Лепршајуће лишће" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6246,7 +6310,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6270,16 +6337,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Абсолутни лимит emerge токова." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6521,20 +6586,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6545,10 +6602,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6571,8 +6624,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6735,6 +6787,9 @@ msgstr "" #~ "Оставите ово празно за локални сервер.\n" #~ "Пазите да поље за адресу у менију преписује ово подешавање." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Додаје честице када се блок ископа." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6822,6 +6877,10 @@ msgstr "" #~ msgid "Clean transparent textures" #~ msgstr "Очисти провидне трекстуре" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Облаци су ефекат од стране клијента." + #~ msgid "Command key" #~ msgstr "Кључ за команду" @@ -6914,6 +6973,10 @@ msgstr "" #~ "Уобичајена игра при стварању новог света.\n" #~ "Ово се може премостити при стварању новог света из главног менија." +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "Честице" + #~ msgid "Download a game, such as Minetest Game, from minetest.net" #~ msgstr "Преузми подигру, као што је minetest_game, са minetest.net" @@ -6924,6 +6987,10 @@ msgstr "" #~ msgid "Downloading and installing $1, please wait..." #~ msgstr "Преузима се $1, молим вас сачекајте..." +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Омогућено" + #~ msgid "Enter " #~ msgstr "Уреду " @@ -6941,9 +7008,6 @@ msgstr "" #~ msgid "Flying" #~ msgstr "Летење" -#~ msgid "Game" -#~ msgstr "Игра" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Поставке" @@ -7052,6 +7116,13 @@ msgstr "" #~ msgid "Select Package File:" #~ msgstr "Изаберите фајл мода:" +#~ msgid "Shaders" +#~ msgstr "Шејдери" + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Кључ за укључивање/искључивање освежавања камере" + #~ msgid "Simple Leaves" #~ msgstr "Једноставно лишће" diff --git a/po/sr_Latn/luanti.po b/po/sr_Latn/luanti.po index 0764450b9..6a68a201a 100644 --- a/po/sr_Latn/luanti.po +++ b/po/sr_Latn/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-05-06 20:50+0000\n" "Last-Translator: Sava Kujundžić \n" "Language-Team: Serbian (latin) ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Ponisti" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Sacuvaj" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "Omoguceno" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Bez rezultata" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Trazi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +404,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -202,11 +440,6 @@ msgstr "Modovi" msgid "No packages could be retrieved" msgstr "Nema paketa za preuzeti" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Bez rezultata" - #: builtin/mainmenu/content/dlg_contentdb.lua #, fuzzy msgid "No updates" @@ -253,18 +486,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Ponisti" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -391,6 +612,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Uključeno,ima grešaka)" @@ -455,12 +682,6 @@ msgstr "Bez neobaveznih zavisnosti" msgid "Optional dependencies:" msgstr "Neobavezne zavisnosti:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Sacuvaj" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Svet:" @@ -611,11 +832,6 @@ msgstr "Reke" msgid "Sea level rivers" msgstr "Reke na nivou mora" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Glatki prelaz izmedju bioma" @@ -753,6 +969,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Omoguci sve" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -777,7 +1010,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -791,225 +1024,6 @@ msgstr "" "Pokusajte ponovo omoguciti javnu listu servera i proverite vasu internet " "vezu." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "Omoguceno" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Trazi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Omoguceno" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1030,10 +1044,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1180,10 +1190,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1197,6 +1217,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Igre" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1209,10 +1234,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1296,23 +1337,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1323,6 +1347,10 @@ msgstr "Doslo je do greske:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1343,6 +1371,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1355,10 +1387,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1387,26 +1415,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1420,31 +1428,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1481,18 +1473,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1529,14 +1509,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1549,38 +1521,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Vrati se u zivot" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1652,18 +1608,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Umro/la si." - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Vrati se u zivot" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Umro/la si." + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1990,7 +2031,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Neuspelo preuzimanje $1" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2040,7 +2081,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2052,7 +2093,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2076,7 +2117,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2092,11 +2133,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2128,7 +2169,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2140,7 +2181,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2148,15 +2189,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2164,11 +2205,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2176,7 +2217,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2213,7 +2254,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2226,15 +2267,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2430,8 +2499,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2484,10 +2552,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2510,6 +2574,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2878,11 +2952,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2907,7 +2981,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3042,6 +3116,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3193,19 +3275,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Dekoracije" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3233,6 +3307,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3308,8 +3390,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3382,8 +3464,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3398,12 +3479,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3705,10 +3780,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -3933,12 +4004,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3957,6 +4022,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4051,10 +4123,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4670,10 +4738,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4706,6 +4770,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4795,7 +4863,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5235,17 +5303,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5439,16 +5509,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5609,10 +5669,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5891,10 +5950,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5953,6 +6008,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6003,7 +6062,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6026,16 +6088,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6272,20 +6332,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6296,10 +6348,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6322,8 +6370,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6447,6 +6494,10 @@ msgstr "" #~ msgid "Download one from minetest.net" #~ msgstr "Preuzmi jednu sa minetest.net" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Omoguceno" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Lebdece zemlje (eksperimentalno)" diff --git a/po/sv/luanti.po b/po/sv/luanti.po index ed90c814d..46dda07ad 100644 --- a/po/sv/luanti.po +++ b/po/sv/luanti.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: Swedish (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-06-08 08:09+0000\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2024-11-20 03:05+0000\n" "Last-Translator: ROllerozxa \n" "Language-Team: Swedish \n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.6-dev\n" +"X-Generator: Weblate 5.9-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -63,9 +63,8 @@ msgid "Command not available: " msgstr "Kommando inte tillgängligt: " #: builtin/common/chatcommands.lua -#, fuzzy msgid "Get help for commands (-t: output in chat)" -msgstr "Få hjälp med kommandon" +msgstr "Få hjälp med kommandon (-t: Skriv ut till chatten)" #: builtin/common/chatcommands.lua msgid "" @@ -75,9 +74,247 @@ msgstr "" "visa allt." #: builtin/common/chatcommands.lua -#, fuzzy msgid "[all | ] [-t]" -msgstr "[all | ]" +msgstr "[all | ] [-t]" + +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Bläddra" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Redigera" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Välj katalog" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Välj fil" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Sätt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ingen beskrivning av inställning angiven)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-Brus" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Avbryt" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Lacunaritet" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktaver" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Förskjutning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Persistens" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Spara" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Skala" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Frö" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X-spridning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y-spridning" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z-spridning" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "absolutvärde" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "standarder" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "lättad" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Spelet behöver även aktivera automatisk exponering för att visas)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(Spelet behöver även aktivera bloom för att visas)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Spelet behöver även aktivera volumetriskt ljus för att visas)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Använd systemspråk)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Tillgänglighet" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Automatisk" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Chatta" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Rensa" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Kontrollerar" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Inaktiverad" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Aktiverad" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Generellt" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Rörelse" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Inga resultat" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Återställ inställning till ursprungsvärden" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Återställ inställning till standardvärde ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Sök" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Visa avancerade inställningar" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Visa tekniska namn" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Pekskärm" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Klientmoddar" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Innehåll: Spel" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Innehåll: Moddar" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Spelet behöver även aktivera skuggor för att visas)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Anpassad" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dynamiska skuggor" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Hög" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Låg" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Medium" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Extremt hög" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Väldigt Låg" #: builtin/fstk/ui.lua msgid "" @@ -140,13 +377,12 @@ msgid "Failed to download $1" msgstr "Misslyckades ladda ner $1" #: builtin/mainmenu/content/contentdb.lua -#, fuzzy msgid "" "Failed to extract \"$1\" (insufficient disk space, unsupported file type or " "broken archive)" msgstr "" -"Misslyckades med att extrahera \"$1\" (filtyp som inte stöds eller trasigt " -"arkiv)" +"Misslyckades med att extrahera \"$1\" (inte tillräckligt med diskutrymme, " +"filtyp som inte stöds eller trasigt arkiv)" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "" @@ -162,18 +398,16 @@ msgstr "$1 laddas ner..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Alla" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Tillbaka" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "ContentDB är inte tillgänglig när Minetest är kompilerad utan cURL" +msgstr "ContentDB är inte tillgänglig när Luanti är kompilerad utan cURL" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Downloading..." @@ -181,7 +415,7 @@ msgstr "Laddar ner..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Presenterad" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -203,11 +437,6 @@ msgstr "Moddar" msgid "No packages could be retrieved" msgstr "Inga paket kunde hämtas" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Inga resultat" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Inga uppdateringar" @@ -217,14 +446,12 @@ msgid "Queued" msgstr "Köad" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" msgstr "Texturpaket" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "The package $1 was not found." -msgstr "Paketet $1/$2 kunde inte hittas." +msgstr "Paketet $1 kunde inte hittas." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Update All [$1]" @@ -254,18 +481,6 @@ msgstr "Redan installerad" msgid "Base Game:" msgstr "Basspel:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Avbryt" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -273,7 +488,7 @@ msgstr "Beroenden:" #: builtin/mainmenu/content/dlg_install.lua msgid "Error getting dependencies for package $1" -msgstr "" +msgstr "Fel inträffade när beroenden för paketet $1 skulle hittas" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -308,44 +523,40 @@ msgid "Overwrite" msgstr "Skriv över" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" -msgstr "ContentDB URL" +msgstr "ContentDB-sida" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" -msgstr "Serverbeskrivning" +msgstr "Beskrivning" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Donera" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Forumtråd" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Information:" +msgstr "Information" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" -msgstr "Installera $1" +msgstr "Installera [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Feltracker" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Källkod" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Översätt" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -356,13 +567,12 @@ msgid "Update" msgstr "Uppdatera" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "Besök hemsida" +msgstr "Hemsida" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "av $1 — $2 nerladdningar — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -392,6 +602,12 @@ msgstr "Kunde inte installera en $1 som en $2" msgid "Unable to install a $1 as a texture pack" msgstr "Misslyckades att installera $1 som ett texturpaket" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Aktiverad, har fel)" @@ -456,12 +672,6 @@ msgstr "Inga valfria beroenden" msgid "Optional dependencies:" msgstr "Valfria beroenden:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Spara" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Värld:" @@ -512,7 +722,7 @@ msgstr "Dekorationer" #: builtin/mainmenu/dlg_create_world.lua msgid "Desert temples" -msgstr "" +msgstr "Ökentempel" #: builtin/mainmenu/dlg_create_world.lua msgid "Development Test is meant for developers." @@ -523,6 +733,8 @@ msgid "" "Different dungeon variant generated in desert biomes (only if dungeons " "enabled)" msgstr "" +"Olika fängelsehålevarianter som genereras i ökenbiomer (endast om " +"fängelsehålor aktiveras)" #: builtin/mainmenu/dlg_create_world.lua msgid "Dungeons" @@ -612,11 +824,6 @@ msgstr "Floder" msgid "Sea level rivers" msgstr "Havsnivåfloder" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Frö" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Smidig övergång mellan biotoper" @@ -721,14 +928,12 @@ msgid "Dismiss" msgstr "Nej tack" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Under en lång period kom Minetest med det förinstallerat spelet \"Minetest " -"Game\". Sedan Minetest 5.8.0 kommer Minetest utan ett standardspel " -"inkluderat." +"Under en lång period kom Luanti med det förinstallerat spelet \"Minetest " +"Game\". Sedan 5.8.0 kommer Luanti utan ett standardspel inkluderat." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -762,6 +967,23 @@ msgstr "" "Detta moddpaket har ett uttryckligt namn angett i modpack.conf vilket går " "före namnändring här." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Aktivera allt" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "En ny $1version är tillgänglig" @@ -790,7 +1012,7 @@ msgstr "Aldrig" msgid "Visit website" msgstr "Besök hemsida" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Inställningar" @@ -803,229 +1025,6 @@ msgid "Try reenabling public serverlist and check your internet connection." msgstr "" "Försök återaktivera allmän serverlista och kolla din internetanslutning." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Bläddra" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Redigera" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Välj katalog" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Välj fil" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Sätt" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ingen beskrivning av inställning angiven)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-Brus" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Lacunaritet" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktaver" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Förskjutning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Persistens" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Skala" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X-spridning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y-spridning" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z-spridning" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "absolutvärde" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "standarder" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "lättad" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Spelet behöver även aktivera skuggor för att visas)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Spelet behöver även aktivera skuggor för att visas)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Spelet behöver även aktivera skuggor för att visas)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Använd systemspråk)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Chatta" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Rensa" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Kontrollerar" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Inaktiverad" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Aktiverad" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Generellt" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Snabb rörelse" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Återställ inställning till ursprungsvärden" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Återställ inställning till standardvärde ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Sök" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Visa avancerade inställningar" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Visa tekniska namn" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Klientmoddar" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Innehåll: Spel" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Innehåll: Moddar" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Aktiverad" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kamerauppdatering inaktiverad" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Spelet behöver även aktivera skuggor för att visas)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Anpassad" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dynamiska skuggor" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Hög" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Låg" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Medium" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Extremt hög" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Väldigt Låg" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Om" @@ -1046,10 +1045,6 @@ msgstr "Huvudutvecklare" msgid "Core Team" msgstr "Huvudlaget" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht-device:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Öppna Användardatamappen" @@ -1079,18 +1074,16 @@ msgid "Browse online content" msgstr "Bläddra bland onlineinnehåll" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Browse online content [$1]" -msgstr "Bläddra bland onlineinnehåll" +msgstr "Bläddra bland onlineinnehåll [$1]" #: builtin/mainmenu/tab_content.lua msgid "Content" msgstr "Innehåll" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Content [$1]" -msgstr "Innehåll" +msgstr "Innehåll [$1]" #: builtin/mainmenu/tab_content.lua msgid "Disable Texture Pack" @@ -1113,9 +1106,8 @@ msgid "Rename" msgstr "Byt namn" #: builtin/mainmenu/tab_content.lua -#, fuzzy msgid "Update available?" -msgstr "" +msgstr "Uppdatering tillgänglig?" #: builtin/mainmenu/tab_content.lua msgid "Use Texture Pack" @@ -1154,15 +1146,14 @@ msgid "Install games from ContentDB" msgstr "Installera spel från ContentDB" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "Minetest Game är inte längre installerat som standard" +msgstr "Luanti kommer inte med ett spel längre." #: builtin/mainmenu/tab_local.lua msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." -msgstr "" +msgstr "Luanti är en spelplatform som låter dig spela många olika spel." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1197,14 +1188,25 @@ msgid "Start Game" msgstr "Starta spel" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "You need to install a game before you can create a world." -msgstr "Du behöver installera ett spel innan du kan installera en modd" +msgstr "Du behöver installera ett spel innan du kan skapa en värld." + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Radera favorit" #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adress" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Klient" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Kreativt läge" @@ -1218,6 +1220,11 @@ msgstr "Skada / PvP" msgid "Favorites" msgstr "Favoriter" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Spel" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Inkompatibla servrar" @@ -1230,10 +1237,27 @@ msgstr "Anslut till spel" msgid "Login" msgstr "Logga in" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Steg för dedikerad server" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Offentliga servrar" @@ -1318,23 +1342,6 @@ msgstr "" "\n" "Se debug.txt för detaljer." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Läge: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "Offentlig " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Servernamn: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Ett serialiseringsfel uppstod:" @@ -1344,6 +1351,11 @@ msgstr "Ett serialiseringsfel uppstod:" msgid "Access denied. Reason: %s" msgstr "Åtkomst nekad. Anledning: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Felsökningsinfo visas" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Automatiskt framåt inaktiverad" @@ -1364,6 +1376,10 @@ msgstr "Blockgränser visas för det aktuella blocket" msgid "Block bounds shown for nearby blocks" msgstr "Blockgränser visas för närliggande block" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kamerauppdatering inaktiverad" @@ -1376,10 +1392,6 @@ msgstr "Kamerauppdatering aktiverat" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Kan inte visa blockgränser (avaktiverad av spel eller modd)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Ändra lösenord" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Filmiskt länge inaktiverad" @@ -1408,39 +1420,6 @@ msgstr "Anslutningsfel (tidsgräns nådd?)" msgid "Connection failed for unknown reason" msgstr "Anslutningen misslyckades av okänd anledning" -#: src/client/game.cpp -msgid "Continue" -msgstr "Fortsätt" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Standardkontroller:\n" -"Ingen meny syns:\n" -"- dra finger: titta omkring\n" -"- tryck en gång: placera/använd\n" -"- tryck två gånger: gräv/slå/använd\n" -"Meny/Förråd syns:\n" -"- tryck två gånger (utanför):\n" -" -->stäng\n" -"- rör stapel, rör låda:\n" -" --> flytta stapel\n" -"- tryck&dra, tryck med andra fingret\n" -" --> placera ett föremål i låda\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1454,31 +1433,15 @@ msgstr "Skapar klient..." msgid "Creating server..." msgstr "Skapar server..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Felsökningsinfo och profileringsgraf gömd" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Felsökningsinfo visas" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Felsökningsinfo, profileringsgraf och wireframe gömd" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Fel vid skapande av klient: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Avsluta till Meny" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Avsluta till OS" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Snabbt läge inaktiverat" @@ -1512,21 +1475,8 @@ msgid "Fog enabled" msgstr "Dimma aktiverat" #: src/client/game.cpp -#, fuzzy msgid "Fog enabled by game or mod" -msgstr "Zoom är för närvarande inaktiverad av spel eller modd" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "Spelinformation:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Spel pausat" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Arrangerar server" +msgstr "Dimma aktiverat av spel eller modd" #: src/client/game.cpp msgid "Item definitions..." @@ -1564,14 +1514,6 @@ msgstr "Noclipläge aktiverat (notera: inget 'noclip'-tillstånd)" msgid "Node definitions..." msgstr "Noddefinitioner..." -#: src/client/game.cpp -msgid "Off" -msgstr "Av" - -#: src/client/game.cpp -msgid "On" -msgstr "På" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Höjdförändringsläge avaktiverad" @@ -1584,38 +1526,22 @@ msgstr "Höjdförändringsläge aktiverad" msgid "Profiler graph shown" msgstr "Profileringsgraf visas" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Avlägsen server" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Kollar upp address...." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Återuppstå" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Stänger av..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Enspelarläge" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Ljudvolym" - #: src/client/game.cpp msgid "Sound muted" msgstr "Ljudvolym avstängd" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Ljudsystem är inaktiverad" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Ljudsystem stöds inte i detta bygge" @@ -1693,18 +1619,116 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "Volym ändrad till to %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Shaders är aktiverat men GLSL stöds inte av drivrutinen." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Wireframe visas" -#: src/client/game.cpp -msgid "You died" -msgstr "Du dog" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Zoom är för närvarande inaktiverad av spel eller modd" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Läge: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "Offentlig " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Servernamn: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Ändra lösenord" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Fortsätt" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Kontroller:\n" +"Ingen meny öppen:\n" +"- dra finger: Titta runt\n" +"- tryck en gång: placera/slå/använd (standard)\n" +"- håll inne: gräv/använd (standard)\n" +"Meny/förråd öppen:\n" +"- Dubbelknapp (utanför):\n" +" --> stäng\n" +"- rör stapel, rör låda:\n" +" --> flytta stapel\n" +"- tryck&dra, tryck med andra fingret\n" +" --> placera ett föremål i låda\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Avsluta till Meny" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Avsluta till OS" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Spelinformation:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Spel pausat" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Arrangerar server" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Av" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "På" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Avlägsen server" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Återuppstå" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Ljudvolym" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Du dog" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Chatt är för närvarande inaktiverad av spel eller modd" @@ -1752,23 +1776,20 @@ msgid "Caps Lock" msgstr "Caps Lock" #: src/client/keycode.cpp -#, fuzzy msgid "Clear Key" -msgstr "Rensa" +msgstr "Rensa tagent" #: src/client/keycode.cpp -#, fuzzy msgid "Control Key" -msgstr "Kontroll" +msgstr "Kontrollknapp" #: src/client/keycode.cpp -#, fuzzy msgid "Delete Key" -msgstr "Ta bort" +msgstr "Ta bort knapp" #: src/client/keycode.cpp msgid "Down Arrow" -msgstr "" +msgstr "Nedåt pil" #: src/client/keycode.cpp msgid "End" @@ -1815,9 +1836,8 @@ msgid "Insert" msgstr "Insert" #: src/client/keycode.cpp -#, fuzzy msgid "Left Arrow" -msgstr "Vänster Control" +msgstr "Vänster pil" #: src/client/keycode.cpp msgid "Left Button" @@ -1841,9 +1861,8 @@ msgstr "Vänster Windowstangent" #. ~ Key name, common on Windows keyboards #: src/client/keycode.cpp -#, fuzzy msgid "Menu Key" -msgstr "Meny" +msgstr "Menyknapp" #: src/client/keycode.cpp msgid "Middle Button" @@ -1918,20 +1937,17 @@ msgid "OEM Clear" msgstr "Rensa OEM" #: src/client/keycode.cpp -#, fuzzy msgid "Page Down" -msgstr "Sida ner" +msgstr "Page Down" #: src/client/keycode.cpp -#, fuzzy msgid "Page Up" -msgstr "Sida upp" +msgstr "Page Up" #. ~ Usually paired with the Break key #: src/client/keycode.cpp -#, fuzzy msgid "Pause Key" -msgstr "Paus" +msgstr "Paustagent" #: src/client/keycode.cpp msgid "Play" @@ -1943,14 +1959,12 @@ msgid "Print" msgstr "Skriv ut" #: src/client/keycode.cpp -#, fuzzy msgid "Return Key" -msgstr "Retur" +msgstr "Returtagent" #: src/client/keycode.cpp -#, fuzzy msgid "Right Arrow" -msgstr "Höger Control" +msgstr "Höger pil" #: src/client/keycode.cpp msgid "Right Button" @@ -1982,9 +1996,8 @@ msgid "Select" msgstr "Välj" #: src/client/keycode.cpp -#, fuzzy msgid "Shift Key" -msgstr "Shift" +msgstr "Skifttagent" #: src/client/keycode.cpp msgid "Sleep" @@ -2004,7 +2017,7 @@ msgstr "Tab" #: src/client/keycode.cpp msgid "Up Arrow" -msgstr "" +msgstr "Uppåt pil" #: src/client/keycode.cpp msgid "X Button 1" @@ -2015,9 +2028,8 @@ msgid "X Button 2" msgstr "X Knapp 2" #: src/client/keycode.cpp -#, fuzzy msgid "Zoom Key" -msgstr "Zoom" +msgstr "Zoomknapp" #: src/client/minimap.cpp msgid "Minimap hidden" @@ -2038,13 +2050,14 @@ msgid "Minimap in texture mode" msgstr "Minimapp i texturläge" #: src/client/shader.cpp -#, fuzzy, c-format +#, c-format msgid "Failed to compile the \"%s\" shader." -msgstr "Misslyckades att öppna hemsida" +msgstr "Misslyckades att kompilera \"%s\"-shadern." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Shaders är aktiverat men GLSL stöds inte av drivrutinen." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2095,7 +2108,7 @@ msgstr "Autoframåt" msgid "Automatic jumping" msgstr "Automatiskt hopp" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2107,7 +2120,7 @@ msgstr "Bakåt" msgid "Block bounds" msgstr "Blockgränser" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Ändra kamera" @@ -2131,7 +2144,7 @@ msgstr "Sänk volym" msgid "Double tap \"jump\" to toggle fly" msgstr "Dubbeltr. \"hoppa\" för att växla flygläge" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Släpp" @@ -2147,11 +2160,11 @@ msgstr "Höj räckvidd" msgid "Inc. volume" msgstr "Öka volym" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Lagring" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Hoppa" @@ -2183,7 +2196,7 @@ msgstr "Nästa föremål" msgid "Prev. item" msgstr "Tidigare föremål" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Välj räckvidd" @@ -2195,7 +2208,7 @@ msgstr "Höger" msgid "Screenshot" msgstr "Skärmdump" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Smyg" @@ -2203,15 +2216,15 @@ msgstr "Smyg" msgid "Toggle HUD" msgstr "Växla HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Växla chattlog" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Växla snabbläge" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Växla flygläge" @@ -2219,11 +2232,11 @@ msgstr "Växla flygläge" msgid "Toggle fog" msgstr "Växla dimma" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Växla minimapp" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Växla noclip" @@ -2231,7 +2244,7 @@ msgstr "Växla noclip" msgid "Toggle pitchmove" msgstr "Växla höjdförändr." -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Zoom" @@ -2241,16 +2254,15 @@ msgstr "tryck på knapp" #: src/gui/guiOpenURL.cpp msgid "Open" -msgstr "" +msgstr "Öppna" #: src/gui/guiOpenURL.cpp msgid "Open URL?" -msgstr "" +msgstr "Öppna URL?" #: src/gui/guiOpenURL.cpp -#, fuzzy msgid "Unable to open URL" -msgstr "Misslyckades att öppna hemsida" +msgstr "Misslyckades att öppna URL:en" #: src/gui/guiPasswordChange.cpp msgid "Change" @@ -2268,7 +2280,7 @@ msgstr "Gammalt Lösenord" msgid "Passwords do not match!" msgstr "Lösenorden matchar inte!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Avsluta" @@ -2281,24 +2293,56 @@ msgstr "Tyst" msgid "Sound Volume: %d%%" msgstr "Ljudvolym: %d%%" -#: src/gui/touchcontrols.cpp -msgid "Joystick" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" -msgstr "" - -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp #, fuzzy +msgid "Add button" +msgstr "Mittknappen" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Klart!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Avlägsen server" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Joystick" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "Överflödsmeny" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Växla dimma" +msgstr "Växla avlusning" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"En annan användare är ansluten med detta namn. Om din klient stängdes " +"oväntat, försök igen om en minut." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." @@ -2306,12 +2350,11 @@ msgstr "" #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Internt serverfel" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Gammalt Lösenord" +msgstr "Ogiltigt lösenord" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2334,46 +2377,48 @@ msgstr "Namnet är redan taget. Var snäll välj ett annat namn" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Spelarnamn innehåller otillåtna tecken" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Spelarnamn för långt." +msgstr "Spelarnamn är inte tillåtet" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Stänger av..." +msgstr "Server stängs av" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "Servern har upplevt ett internt fel. Du kommer nu att kopplas bort." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "Servern körs i singleplayerläge. Du kan inte ansluta." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "För många spelare" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Okänd bortkopplingsorsak." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Din klient skickade något som servern inte förväntade. Försök att " +"återansluta eller uppdatera din klient." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Din klientversion stöds inte.\n" +"Vänligen kontakta serveradministratören." #: src/server.cpp #, c-format @@ -2448,7 +2493,7 @@ msgstr "2D-brus som lokaliserar floddalar och kanaler." #: src/settings_translation_file.cpp msgid "3D" -msgstr "" +msgstr "3D" #: src/settings_translation_file.cpp msgid "3D clouds" @@ -2514,8 +2559,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D stöd.\n" "Stöds för tillfället:\n" @@ -2579,10 +2623,6 @@ msgstr "Aktiv blockräckvidd" msgid "Active object send range" msgstr "Aktivt avstånd för objektsändning" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Lägger till partiklar när en nod grävs." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2613,9 +2653,19 @@ msgid "Advanced" msgstr "Avancerat" #: src/settings_translation_file.cpp -msgid "Allows liquids to be translucent." +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." msgstr "" +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allows liquids to be translucent." +msgstr "Tillåter vätskor att vara genomskinliga." + #: src/settings_translation_file.cpp msgid "" "Alters the light curve by applying 'gamma correction' to it.\n" @@ -2665,11 +2715,11 @@ msgstr "Kantutjämningsmetod" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Anticheat-flaggor" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Anticheat-rörelsetolerans" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2696,7 +2746,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Applicera spekulär skuggning till noder." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -3020,15 +3070,14 @@ msgstr "Molnradie" msgid "Clouds" msgstr "Moln" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Moln är en effekt på klientsidan." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Moln i meny" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Färgad dimma" @@ -3052,7 +3101,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Kommaseparerad lista av flaggar som ska döljas i innehållsdatabasen.\n" "\"nonfree\" kan användas för att gömma paket som inte kvalifieras som 'fri " @@ -3222,6 +3271,14 @@ msgstr "Nivå av debuglogg" msgid "Debugging" msgstr "Felsökning" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Steg för dedikerad server" @@ -3393,18 +3450,10 @@ msgstr "" "Öknar förekommer när np_biome överskrider detta värde.\n" "Detta ignoreras när 'snowbiomes' flaggen är aktiverad." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Desynkronisera blockanimation" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Utvecklarinställningar" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Grävpartiklar" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Tillåt inte tomma lösenord" @@ -3436,6 +3485,14 @@ msgstr "Dubbeltryck på hoppknapp för att flyga" msgid "Double-tapping the jump key toggles fly mode." msgstr "Om du trycker på hoppknappen aktiveras flygläge." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Dumpa felsökningsinformation för kartgeneratorn." @@ -3518,9 +3575,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Aktivera färgade skuggor.\n" "När aktiverad kastar genomskinliga noder färgade skuggor. Detta är intensivt." @@ -3550,9 +3608,9 @@ msgid "Enable mouse wheel (scroll) for item selection in hotbar." msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable random mod loading (mainly used for testing)." -msgstr "Aktivera slumpmässig användarinmatning (används endast för testning)." +msgstr "" +"Aktivera slumpmässig moddladdningsordning (används främst för testning)." #: src/settings_translation_file.cpp msgid "Enable random user input (only used for testing)." @@ -3607,10 +3665,10 @@ msgstr "" "Till exempel: 0 för inget guppande, 1.0 för normalt, 2.0 för dubbla." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Aktivera/avaktivera en IPv6-server.\n" "Ignoreras om bind_address är angedd.\n" @@ -3632,13 +3690,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Aktiverar animering av lagerföremål." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Aktiverar cachning av facedirroterade mesher." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3967,10 +4018,6 @@ msgstr "Gränssnittsskalning" msgid "GUI scaling filter" msgstr "Filter för Gränssnittsskalning" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Filter för Gränssnittsskalning txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Gamepads" @@ -4220,14 +4267,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"När aktiverad är kontoregistrering separat från login i gränsnittet.\n" -"När inaktiverad registreras ett nytt konto automatiskt." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4246,6 +4285,16 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"När aktiverad är kontoregistrering separat från login i gränsnittet.\n" +"När inaktiverad registreras ett nytt konto automatiskt." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4340,17 +4389,13 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Intervall för att skicka tiden på dagen för klienter, i sekunder." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" #: src/settings_translation_file.cpp msgid "Invert mouse" -msgstr "" +msgstr "Invertera mus" #: src/settings_translation_file.cpp msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." @@ -4358,15 +4403,15 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Invert vertical mouse movement." -msgstr "" +msgstr "Invertera vertikal musrörelse." #: src/settings_translation_file.cpp msgid "Italic font path" -msgstr "" +msgstr "Kursiv typsnittssökväg" #: src/settings_translation_file.cpp msgid "Italic monospace font path" -msgstr "" +msgstr "Kursiv typsnittssökväg (monospace)" #: src/settings_translation_file.cpp msgid "Item entity TTL" @@ -4374,7 +4419,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Iterations" -msgstr "" +msgstr "Iterationer" #: src/settings_translation_file.cpp msgid "" @@ -4386,15 +4431,15 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Joystick ID" -msgstr "" +msgstr "Joystick-ID" #: src/settings_translation_file.cpp msgid "Joystick button repetition interval" -msgstr "" +msgstr "Repeteringsintervall för joystick" #: src/settings_translation_file.cpp msgid "Joystick dead zone" -msgstr "" +msgstr "Deadzone för joystick" #: src/settings_translation_file.cpp msgid "Joystick frustum sensitivity" @@ -4402,7 +4447,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Joystick type" -msgstr "" +msgstr "Joysticktyp" #: src/settings_translation_file.cpp msgid "" @@ -4959,10 +5004,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4995,6 +5036,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -5085,7 +5130,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5187,11 +5232,11 @@ msgstr "" #: src/settings_translation_file.cpp msgid "OpenGL debug" -msgstr "" +msgstr "OpenGL-felsökning" #: src/settings_translation_file.cpp msgid "Optimize GUI for touchscreens" -msgstr "" +msgstr "Optimera GUI för pekskärmar" #: src/settings_translation_file.cpp msgid "Optional override for chat weblink color." @@ -5308,9 +5353,8 @@ msgid "Proportion of large caves that contain liquid." msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Protocol version minimum" -msgstr "Protokollversionen matchar inte. " +msgstr "Minsta protokollversion" #: src/settings_translation_file.cpp msgid "Punch gesture" @@ -5527,17 +5571,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5750,16 +5796,6 @@ msgstr "" msgid "Shader path" msgstr "Shader-sökväg" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5924,10 +5960,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6206,10 +6241,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6271,6 +6302,10 @@ msgstr "Vajande vätskor" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6321,7 +6356,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6344,16 +6382,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Övre Y-gräns för floatlands." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6506,14 +6542,12 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volume when unfocused" -msgstr "FPS när ofokuserad eller pausad" +msgstr "Volym när ofokuserad" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volumetric lighting" -msgstr "Nodmarkering" +msgstr "Volumetriskt ljus" #: src/settings_translation_file.cpp msgid "" @@ -6595,20 +6629,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6619,10 +6645,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6645,8 +6667,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6814,6 +6835,9 @@ msgstr "cURL parallellgräns" #~ "Notera att adressen i fältet på huvudmenyn gör att denna inställning " #~ "ignoreras." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Lägger till partiklar när en nod grävs." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -6933,6 +6957,10 @@ msgstr "cURL parallellgräns" #~ msgid "Clean transparent textures" #~ msgstr "Rena transparenta texturer" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Moln är en effekt på klientsidan." + #~ msgid "Command key" #~ msgstr "Kommandotangent" @@ -7028,9 +7056,15 @@ msgstr "cURL parallellgräns" #~ msgid "Damage enabled" #~ msgstr "Skada aktiverat" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Felsökningsinfo och profileringsgraf gömd" + #~ msgid "Debug info toggle key" #~ msgstr "Av/På tangent för debuginformation" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Felsökningsinfo, profileringsgraf och wireframe gömd" + #~ msgid "Dec. volume key" #~ msgstr "Tangent för volymsänkning" @@ -7081,9 +7115,15 @@ msgstr "cURL parallellgräns" #~ "Definierar storleken på överexponeringen av bloomningen.\n" #~ "Intervall: från 0,1 till 10,0, standard: 1,0" +#~ msgid "Desynchronize block animation" +#~ msgstr "Desynkronisera blockanimation" + #~ msgid "Dig key" #~ msgstr "Gräv-knapp" +#~ msgid "Digging particles" +#~ msgstr "Grävpartiklar" + #~ msgid "Disable anticheat" #~ msgstr "Inaktivera antifusk" @@ -7108,6 +7148,9 @@ msgstr "cURL parallellgräns" #~ msgid "Dynamic shadows:" #~ msgstr "Dynamiska skuggor:" +#~ msgid "Enable" +#~ msgstr "Aktivera" + #~ msgid "Enable creative mode for all players" #~ msgstr "Aktivera kreativt läge för alla spelare" @@ -7128,6 +7171,12 @@ msgstr "cURL parallellgräns" #~ "Aktivera vertexbuffertobjekt.\n" #~ "Detta bör avsevärt förbättra grafikprestandan." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Aktiverar cachning av facedirroterade mesher." + #~ msgid "Enables minimap." #~ msgstr "Aktiverar minimap." @@ -7208,8 +7257,8 @@ msgstr "cURL parallellgräns" #~ msgid "FreeType fonts" #~ msgstr "FreeType-typsnitt" -#~ msgid "Game" -#~ msgstr "Spel" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Filter för Gränssnittsskalning txr2img" #~ msgid "HUD scale factor" #~ msgstr "HUD-skalningsfaktor" @@ -7238,14 +7287,20 @@ msgstr "cURL parallellgräns" #~ msgid "Install: file: \"$1\"" #~ msgstr "Installera: fil: \"$1\"" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Intervall för att skicka tiden på dagen för klienter, i sekunder." + #~ msgid "Invalid gamespec." #~ msgstr "Ogiltig spelspecifikation." +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht-device:" + #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" #~ msgstr "" -#~ "Tangentbindningar. (Om den här menyn strular, radera saker från minetest." -#~ "conf)" +#~ "Tangentbindningar. (Om den här menyn strular, radera saker från " +#~ "minetest.conf)" #~ msgid "Main" #~ msgstr "Huvudsaklig" @@ -7322,15 +7377,24 @@ msgstr "cURL parallellgräns" #~ msgid "Select Package File:" #~ msgstr "Välj modfil:" +#~ msgid "Shaders" +#~ msgstr "Shaders" + #~ msgid "Shaders (experimental)" #~ msgstr "Shaders (experimentella)" #~ msgid "Shaders (unavailable)" #~ msgstr "Shaders (otillgängliga)" +#~ msgid "Shaders are disabled." +#~ msgstr "Shaders är inaktiverat." + #~ msgid "Simple Leaves" #~ msgstr "Enkla löv" +#~ msgid "Sound system is disabled" +#~ msgstr "Ljudsystem är inaktiverad" + #, fuzzy #~ msgid "Special key" #~ msgstr "tryck på tangent" @@ -7347,6 +7411,9 @@ msgstr "cURL parallellgräns" #~ msgid "The value must not be larger than $1." #~ msgstr "Värdet får vara högst $1." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Detta är inte en rekommenderad konfiguration." + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "För att aktivera shaders behöver OpenGL-drivern användas." diff --git a/po/sw/luanti.po b/po/sw/luanti.po index 0fca34f94..f38ae2249 100644 --- a/po/sw/luanti.po +++ b/po/sw/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Swahili (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: Swahili ] [-t]" msgstr "" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Vinjari" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Hariri" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select directory" +msgstr "Orodha ya ramani" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Select file" +msgstr "Teua faili ya Moduli:" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Teua" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Hakuna maelezo ya kuweka kupewa)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "2D Noise" +msgstr "Kila" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Katisha" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Lacunarity" +msgstr "Usalama" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Persistence" +msgstr "Umbali wa uhamisho wa mchezaji" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Hifadhi" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Mbegu" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "defaults" +msgstr "Chaguo-msingi mchezo" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Kuzungumza" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Wazi" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Vidhibiti" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Walemavu" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Kuwezeshwa" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Kutembea haraka" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Rejesha chaguo-msingi" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Utafutaji" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Onyesha majina ya kiufundi" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Touchthreshold (px)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "Ramprogrammen katika Menyu ya mapumziko" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Teua ulimwengu:" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "Kuendelea" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "Kuendelea" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Dynamic shadows" +msgstr "Kivuli cha fonti" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -172,7 +425,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Nyuma" @@ -209,11 +461,6 @@ msgstr "Mods" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -261,18 +508,6 @@ msgstr "Muhimu tayari katika matumizi" msgid "Base Game:" msgstr "Ficha mchezo" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Katisha" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -409,6 +644,12 @@ msgstr "Imeshindwa kusakinisha $1 hadi $2" msgid "Unable to install a $1 as a texture pack" msgstr "Imeshindwa kusakinisha $1 hadi $2" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -478,12 +719,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Hifadhi" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Ulimwengu:" @@ -649,11 +884,6 @@ msgstr "Ukubwa wa mto" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Mbegu" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -796,6 +1026,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Wezesha yote" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -820,7 +1067,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Vipimo vya" @@ -832,238 +1079,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "Jaribu reenabling serverlist umma na Kagua muunganisho wako wa tovuti." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Vinjari" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Hariri" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select directory" -msgstr "Orodha ya ramani" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Select file" -msgstr "Teua faili ya Moduli:" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Teua" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Hakuna maelezo ya kuweka kupewa)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "2D Noise" -msgstr "Kila" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Lacunarity" -msgstr "Usalama" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Persistence" -msgstr "Umbali wa uhamisho wa mchezaji" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "defaults" -msgstr "Chaguo-msingi mchezo" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Kuzungumza" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Wazi" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Vidhibiti" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Walemavu" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Kuwezeshwa" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Kutembea haraka" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Rejesha chaguo-msingi" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Utafutaji" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Onyesha majina ya kiufundi" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Teua ulimwengu:" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "Kuendelea" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "Kuendelea" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Kuwezeshwa" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kibonye guro Usasishaji wa kamera" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Dynamic shadows" -msgstr "Kivuli cha fonti" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1085,10 +1100,6 @@ msgstr "Watengenezaji wa msingi" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua #, fuzzy msgid "Open User Data Directory" @@ -1248,11 +1259,23 @@ msgstr "Ficha mchezo" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Bandari ya mbali" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "Kumfunga anwani" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Mteja" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Hali ya ubunifu" @@ -1268,6 +1291,11 @@ msgstr "Uharibifu" msgid "Favorites" msgstr "Kipendwa" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Mchezo" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1281,10 +1309,28 @@ msgstr "Ficha mchezo" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Idadi ya nyuzi emerge" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Hatua ya seva ya kujitolea" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Public Servers" @@ -1375,25 +1421,6 @@ msgstr "" "\n" "Angalia debug.txt kwa maelezo." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "- Public: " -msgstr "Umma" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "- Server Name: " -msgstr "Jina la seva" - #: src/client/game.cpp #, fuzzy msgid "A serialization error occurred:" @@ -1404,6 +1431,11 @@ msgstr "Kosa limetokea:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Rekebisha taarifa kibonye" + #: src/client/game.cpp #, fuzzy msgid "Automatic forward disabled" @@ -1426,6 +1458,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp #, fuzzy msgid "Camera update disabled" @@ -1440,10 +1476,6 @@ msgstr "Kibonye guro Usasishaji wa kamera" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Badilisha nywila" - #: src/client/game.cpp #, fuzzy msgid "Cinematic mode disabled" @@ -1475,37 +1507,6 @@ msgstr "Kosa la muunganisho (wakati muafaka?)" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Kuendelea" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Vidhibiti vya chaguo-msingi:\n" -"Hakuna Menyu kuonekana:\n" -"- bomba moja: kitufe kuamilisha\n" -"- mara mbili bomba: mahali/matumizi\n" -"- slaidi kidole: kuangalia kote\n" -"Menyu/hesabu dhahiri:\n" -"- mara mbili bomba (nje):--> Funga - kugusa \n" -"mpororo, kugusa mpenyo:--> hoja mpororo\n" -"- kugusa & buruta, bomba kidole 2--> \n" -"kipengee kimoja mahali kwa yanayopangwa\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1519,32 +1520,16 @@ msgstr "Inaunda mteja..." msgid "Creating server..." msgstr "Inaunda seva..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy msgid "Debug info shown" msgstr "Rekebisha taarifa kibonye" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "Inaunda mteja..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Toka kwenye menyu" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Toka kwa OS" - #: src/client/game.cpp #, fuzzy msgid "Fast mode disabled" @@ -1587,20 +1572,6 @@ msgstr "kuwezeshwa" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -#, fuzzy -msgid "Game paused" -msgstr "Michezo" - -#: src/client/game.cpp -#, fuzzy -msgid "Hosting server" -msgstr "Inaunda seva..." - #: src/client/game.cpp msgid "Item definitions..." msgstr "Fasili ya kipengele..." @@ -1639,14 +1610,6 @@ msgstr "" msgid "Node definitions..." msgstr "Fundo Fasili..." -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1659,40 +1622,23 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -#, fuzzy -msgid "Remote server" -msgstr "Bandari ya mbali" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Kusuluhisha anwani..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Respawn" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Inazima..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Singleplayer" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Kiwango cha sauti" - #: src/client/game.cpp #, fuzzy msgid "Sound muted" msgstr "Kiwango cha sauti" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1766,18 +1712,119 @@ msgstr "Kuonyesha masafa" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Umekufa." - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Public: " +msgstr "Umma" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Server Name: " +msgstr "Jina la seva" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Badilisha nywila" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Kuendelea" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Vidhibiti vya chaguo-msingi:\n" +"Hakuna Menyu kuonekana:\n" +"- bomba moja: kitufe kuamilisha\n" +"- mara mbili bomba: mahali/matumizi\n" +"- slaidi kidole: kuangalia kote\n" +"Menyu/hesabu dhahiri:\n" +"- mara mbili bomba (nje):--> Funga - kugusa \n" +"mpororo, kugusa mpenyo:--> hoja mpororo\n" +"- kugusa & buruta, bomba kidole 2--> \n" +"kipengee kimoja mahali kwa yanayopangwa\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Toka kwenye menyu" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Toka kwa OS" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Game paused" +msgstr "Michezo" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Hosting server" +msgstr "Inaunda seva..." + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "Remote server" +msgstr "Bandari ya mbali" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Respawn" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Kiwango cha sauti" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Umekufa." + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -2128,7 +2175,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Imeshindwa kusakinisha $1 hadi $2" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2180,7 +2227,7 @@ msgstr "Mbele" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2192,7 +2239,7 @@ msgstr "Nyuma" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Change camera" msgstr "Badilisha funguo" @@ -2218,7 +2265,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "Mara mbili bomba \"Ruka\" hadi Togo kuruka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Achia" @@ -2236,11 +2283,11 @@ msgstr "Kuonyesha masafa" msgid "Inc. volume" msgstr "Kiwango cha sauti" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Hesabu" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Kuruka" @@ -2274,7 +2321,7 @@ msgstr "Ijayo" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Teua masafa" @@ -2286,7 +2333,7 @@ msgstr "Kulia" msgid "Screenshot" msgstr "Screenshot" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Taarifa" @@ -2295,16 +2342,16 @@ msgstr "Taarifa" msgid "Toggle HUD" msgstr "Togoa kuruka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle chat log" msgstr "Togoa haraka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Togoa haraka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Togoa kuruka" @@ -2313,12 +2360,12 @@ msgstr "Togoa kuruka" msgid "Toggle fog" msgstr "Togoa kuruka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle minimap" msgstr "Togoa noclip" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Togoa noclip" @@ -2327,7 +2374,7 @@ msgstr "Togoa noclip" msgid "Toggle pitchmove" msgstr "Togoa haraka" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Kuza" @@ -2364,7 +2411,7 @@ msgstr "Nywila ya zamani" msgid "Passwords do not match!" msgstr "MaNenotambulishi hayaoani!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Toka" @@ -2378,15 +2425,46 @@ msgstr "Ufunguo wa matumizi" msgid "Sound Volume: %d%%" msgstr "Kiwango sauti:" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Kitufe kati" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Kufanyika!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Bandari ya mbali" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Togoa kuruka" @@ -2595,8 +2673,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Msaada ya 3D.\n" "Tegemeza kwa sasa:-Hakuna: Hakuna towe 3d.\n" @@ -2662,10 +2739,6 @@ msgstr "Masafa ya fungu amilifu" msgid "Active object send range" msgstr "Kiolwa amilifu Tuma masafa" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2689,6 +2762,17 @@ msgstr "Jina la ulimwengu" msgid "Advanced" msgstr "Pevu" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Matumizi wingu 3D kuangalia badala ya gorofa." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3093,15 +3177,14 @@ msgstr "Wingu eneo" msgid "Clouds" msgstr "Mawingu" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Mawingu ni mteja upande athari." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Mawingu katika Menyu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Ukungu wa rangi" @@ -3125,7 +3208,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3273,6 +3356,14 @@ msgstr "Rekebisha kiwango cha logi" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Hatua ya seva ya kujitolea" @@ -3435,20 +3526,11 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Desynchronize umbo la uhuishaji" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "Instrumentation" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Digging particles" -msgstr "Chembe" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Usiruhusu nywila tupu" @@ -3476,6 +3558,14 @@ msgstr "Mara mbili ya bomba kuruka kwa kuruka" msgid "Double-tapping the jump key toggles fly mode." msgstr "Mbili-tapping ufunguo wa kuruka Inatogoa hali ya kuruka." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp #, fuzzy msgid "Dump the mapgen debug information." @@ -3555,8 +3645,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3646,8 +3736,7 @@ msgstr "" #, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Wezesha/Lemaza kuendesha seva ya IPv6. Seva ya IPv6 unaweza kuzuiliwa kwa " "wateja IPv6, kutegemea usanidi mfumo.\n" @@ -3665,13 +3754,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Huwezesha uhuishaji wa vitu inventering." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Huwezesha uwekaji kache kwa facedir Iliyozungushwa meshes." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3998,10 +4080,6 @@ msgstr "GUI kurekebisha" msgid "GUI scaling filter" msgstr "GUI kipimo Kichujio" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI kipimo Kichujio txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4274,12 +4352,6 @@ msgstr "" "Ikiwa imewezeshwa, ufunguo wa \"kutumia\" badala ya \"sneak\" ufunguo ni " "kutumika kwa ajili ya kupanda na kushuka." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4303,6 +4375,13 @@ msgid "" "empty password." msgstr "Ikiwa imewezeshwa, wachezaji wapya haiwezi kujiunga na nywila wazi." +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4413,11 +4492,6 @@ msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" "Muda wa kuhifadhi mabadiliko muhimu katika ulimwengu, alisema katika sekunde." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Muda wa kutuma wakati wa siku kwa wateja." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Hesabu vitu uhuishaji" @@ -5137,10 +5211,6 @@ msgstr "" msgid "Maximum users" msgstr "Watumiaji wa kiwango cha juu" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Kirudufu cha matundu" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Ujumbe wa siku ya" @@ -5174,6 +5244,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mipmapping" @@ -5271,9 +5345,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Jina la mchezaji.\n" @@ -5760,17 +5835,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6005,16 +6082,6 @@ msgstr "" msgid "Shader path" msgstr "Shaders" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Shaders" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Shadow filter quality" @@ -6193,10 +6260,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6515,10 +6581,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Wakati kutuma nafasi" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Kasi ya muda" @@ -6589,6 +6651,10 @@ msgstr "Waving fundo" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6643,7 +6709,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6667,17 +6736,15 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "Y ya upper kikomo ya kubwa pseudorandom cellars." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Matumizi wingu 3D kuangalia badala ya gorofa." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Tumia uhuishaji wa wingu ya mandharinyuma ya Menyu kuu." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Tumia uchujaji anisotropic wakati unatazama katika unamu kutoka pembe." #: src/settings_translation_file.cpp @@ -6941,27 +7008,15 @@ msgstr "" "programu, lakini taswira zingine hutolewa moja kwa moja kwa maunzi (k.m " "kutoa-kwa-unamu kwa fundo katika hesabu)." -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Wakati gui_scaling_filter_txr2img ni kweli, kunakili picha hizo kutoka " -"maunzi na programu kwa ajili ya kurekebisha. Wakati uongo, kuanguka nyuma " -"kwa mbinu ya zamani ya kipimo, kwa madereva video vizuri siungi mkono unamu " -"Inapakua nyuma kutoka maunzi." - #: src/settings_translation_file.cpp #, fuzzy msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6979,10 +7034,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "Kama fundo unamu uhuishaji lazima desynchronized kwa mapblock." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7009,8 +7060,7 @@ msgstr "Kama ukungu nje mwisho wa eneo hili dhahiri." #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7267,6 +7317,10 @@ msgstr "cURL kikomo sambamba" #~ msgid "Clean transparent textures" #~ msgstr "Unamu angavu safi" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Mawingu ni mteja upande athari." + #~ msgid "Command key" #~ msgstr "Ufunguo wa amri" @@ -7376,10 +7430,17 @@ msgstr "cURL kikomo sambamba" #~ msgid "Del. Favorite" #~ msgstr "Del. kipendwa" +#~ msgid "Desynchronize block animation" +#~ msgstr "Desynchronize umbo la uhuishaji" + #, fuzzy #~ msgid "Dig key" #~ msgstr "Ufunguo sahihi" +#, fuzzy +#~ msgid "Digging particles" +#~ msgstr "Chembe" + #~ msgid "Disable anticheat" #~ msgstr "Lemaza anticheat" @@ -7401,6 +7462,10 @@ msgstr "cURL kikomo sambamba" #~ msgid "Dynamic shadows:" #~ msgstr "Kivuli cha fonti" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Kuwezeshwa" + #~ msgid "Enable VBO" #~ msgstr "Wezesha VBO" @@ -7421,6 +7486,12 @@ msgstr "cURL kikomo sambamba" #~ "pakiti ya unamu au haja ya kuwa yaliyozalishwa na otomatiki.\n" #~ "Inahitaji shaders kwa kuwezeshwa." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Huwezesha uwekaji kache kwa facedir Iliyozungushwa meshes." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Huwezesha toni filmic ramani" @@ -7451,9 +7522,6 @@ msgstr "cURL kikomo sambamba" #~ "Chaguo majaribio, inaweza kusababisha nafasi inayoonekana kati ya vitalu " #~ "wakati kuweka namba ya juu zaidi kuliko 0." -#~ msgid "FPS in pause menu" -#~ msgstr "Ramprogrammen katika Menyu ya mapumziko" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7528,8 +7596,8 @@ msgstr "cURL kikomo sambamba" #~ msgid "Full screen BPP" #~ msgstr "Skrini BPP" -#~ msgid "Game" -#~ msgstr "Mchezo" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI kipimo Kichujio txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -7584,6 +7652,10 @@ msgstr "cURL kikomo sambamba" #~ msgid "Instrumentation" #~ msgstr "Instrumentation" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Muda wa kutuma wakati wa siku kwa wateja." + #~ msgid "Invalid gamespec." #~ msgstr "Gamespec batili." @@ -7595,695 +7667,695 @@ msgstr "cURL kikomo sambamba" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kupunguza kiwango cha kuonyesha.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kupunguza kiwango cha kuonyesha.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuacha kipengee kilichoteuliwa kwa sasa.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuongeza kiwango cha kuonyesha.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuongeza kiwango cha kuonyesha.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kusonga haraka katika hali ya haraka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuhamia mchezaji nyuma.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuhamia mchezaji mbele.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuhamia mchezaji kushoto.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kusonga mchezaji haki.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua dirisha la soga kuchapa amri.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua dirisha la soga kuchapa amri.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua dirisha la soga.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kufungua hesabu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya sneaking.\n" #~ "Pia kutumika kwa ajili ya kupanda na kushuka katika maji kama " #~ "aux1_descends imelemazwa.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kubadili kati ya kamera ya kwanza - na -mtu wa tatu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuchukua viwambo.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling autorun.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling hali ya cinematic.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la minimap.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling hali ya haraka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling hali ya noclip.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling hali ya noclip.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling sasaishi ya kamera. Tu kutumika kwa ajili ya " -#~ "maendeleo ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "maendeleo ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la kuzungumza.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la maelezo kuhusu marekebisho.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la ukungu.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la ya HUD.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la kuzungumza.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling onyesho la profiler ya. Kutumika kwa ajili " #~ "ya maendeleo.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya toggling masafa ya Mwoneko ukomo.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Muhimu kwa ajili ya kuruka.\n" -#~ "Ona http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Ona http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8344,6 +8416,9 @@ msgstr "cURL kikomo sambamba" #~ msgid "Menus" #~ msgstr "Menyu" +#~ msgid "Mesh cache" +#~ msgstr "Kirudufu cha matundu" + #~ msgid "Minimap" #~ msgstr "Ramani" @@ -8524,6 +8599,9 @@ msgstr "cURL kikomo sambamba" #~ msgid "Server / Singleplayer" #~ msgstr "Seva / Singleplayer" +#~ msgid "Shaders" +#~ msgstr "Shaders" + #, fuzzy #~ msgid "Shaders (experimental)" #~ msgstr "Kiwango cha maji" @@ -8538,6 +8616,10 @@ msgstr "cURL kikomo sambamba" #~ "baadhi ya kadi ya video.\n" #~ "Kazi yako tu na OpenGL video backend." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kibonye guro Usasishaji wa kamera" + #, fuzzy #~ msgid "Shadow limit" #~ msgstr "Kikomo cha Mapblock" @@ -8601,6 +8683,9 @@ msgstr "cURL kikomo sambamba" #~ msgid "This font will be used for certain languages." #~ msgstr "Fonti hii itatumika kwa lugha fulani." +#~ msgid "Time send interval" +#~ msgstr "Wakati kutuma nafasi" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Ili kuwezesha shaders OpenGL ya kiendeshaji inahitaji kutumiwa." @@ -8667,6 +8752,17 @@ msgstr "cURL kikomo sambamba" #~ msgid "Waving water" #~ msgstr "Waving maji" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Wakati gui_scaling_filter_txr2img ni kweli, kunakili picha hizo kutoka " +#~ "maunzi na programu kwa ajili ya kurekebisha. Wakati uongo, kuanguka " +#~ "nyuma kwa mbinu ya zamani ya kipimo, kwa madereva video vizuri siungi " +#~ "mkono unamu Inapakua nyuma kutoka maunzi." + #, fuzzy #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " @@ -8676,6 +8772,10 @@ msgstr "cURL kikomo sambamba" #~ "Kama freetype fonti hutumiwa, inahitaji msaada wa freetype kuwa " #~ "alikusanya katika." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "Kama fundo unamu uhuishaji lazima desynchronized kwa mapblock." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "Kama kuruhusu wachezaji kuharibu na kuua kila mmoja." diff --git a/po/ta/luanti.po b/po/ta/luanti.po new file mode 100644 index 000000000..869440ad2 --- /dev/null +++ b/po/ta/luanti.po @@ -0,0 +1,7384 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the luanti package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: luanti\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-19 19:01+0000\n" +"Last-Translator: தமிழ்நேரம் \n" +"Language-Team: Tamil \n" +"Language: ta\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 5.10-dev\n" + +#: builtin/client/chatcommands.lua +msgid "Clear the out chat queue" +msgstr "அவுட் அரட்டை வரிசையை அழிக்கவும்" + +#: builtin/client/chatcommands.lua +msgid "Empty command." +msgstr "வெற்று கட்டளை." + +#: builtin/client/chatcommands.lua +msgid "Exit to main menu" +msgstr "முதன்மையான மெனுவுக்கு வெளியேறவும்" + +#: builtin/client/chatcommands.lua +msgid "Invalid command: " +msgstr "தவறான கட்டளை: " + +#: builtin/client/chatcommands.lua +msgid "Issued command: " +msgstr "வழங்கப்பட்ட கட்டளை: " + +#: builtin/client/chatcommands.lua +msgid "List online players" +msgstr "நிகழ்நிலை பிளேயர்களை பட்டியலிடுங்கள்" + +#: builtin/client/chatcommands.lua +msgid "Online players: " +msgstr "நிகழ்நிலை வீரர்கள்: " + +#: builtin/client/chatcommands.lua +msgid "The out chat queue is now empty." +msgstr "அவுட் அரட்டை வரிசை இப்போது காலியாக உள்ளது." + +#: builtin/client/chatcommands.lua +msgid "This command is disabled by server." +msgstr "இந்த கட்டளை சேவையகத்தால் முடக்கப்பட்டுள்ளது." + +#: builtin/common/chatcommands.lua +msgid "Available commands:" +msgstr "கிடைக்கும் கட்டளைகள்:" + +#: builtin/common/chatcommands.lua +msgid "Available commands: " +msgstr "கிடைக்கும் கட்டளைகள்: " + +#: builtin/common/chatcommands.lua +msgid "Command not available: " +msgstr "கட்டளை கிடைக்கவில்லை: " + +#: builtin/common/chatcommands.lua +msgid "Get help for commands (-t: output in chat)" +msgstr "கட்டளைகளுக்கான உதவியைப் பெறுங்கள் (-t: அரட்டையில் வெளியீடு)" + +#: builtin/common/chatcommands.lua +msgid "" +"Use '.help ' to get more information, or '.help all' to list everything." +msgstr "" +"மேலும் தகவல்களைப் பெற '. எல்ப் ' ஐப் பயன்படுத்தவும், அல்லது எல்லாவற்றையும் பட்டியலிட " +"'." + +#: builtin/common/chatcommands.lua +msgid "[all | ] [-t]" +msgstr "[அனைத்தும் | ] [-t]" + +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "உலாவு" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "தொகு" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "கோப்பகத்தைத் தேர்ந்தெடு" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "கோப்பைத் தேர்ந்தெடு" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "கணம்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(கொடுக்கப்பட்ட அமைப்பின் விளக்கம் இல்லை)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2 டி ஒலி" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ரத்துசெய்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "லாகுனாரிட்டி" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "ஆக்டேவ்ச்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "ஈடுசெய்யும்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "விடாமுயற்சி" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "சேமி" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "அளவு" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "விதை" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "ஃச் பரவல்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "ஒய் பரவல்" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "சட் பரவல்" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "புறக்கணிப்பு" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "இயல்புநிலை" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "தளர்த்தப்பட்டது" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(விளையாட்டு தானியங்கி வெளிப்பாட்டையும் செயல்படுத்த வேண்டும்)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(விளையாட்டு பூக்கத்தையும் செயல்படுத்த வேண்டும்)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(விளையாட்டு அளவீட்டு விளக்குகளையும் இயக்க வேண்டும்)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(கணினி மொழியைப் பயன்படுத்துங்கள்)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "அணுகல்" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "தானி" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "அரட்டை" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "தெளிவான" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "கட்டுப்பாடுகள்" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "முடக்கப்பட்டது" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "இயக்கப்பட்டது" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "பொது" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "இயக்கம்" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "முடிவுகள் இல்லை" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "அமைப்பை இயல்புநிலைக்கு மீட்டமைக்கவும்" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "அமைப்பை இயல்புநிலைக்கு மீட்டமை ($ 1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "தேடல்" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "மேம்பட்ட அமைப்புகளைக் காட்டு" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "தொழில்நுட்ப பெயர்களைக் காட்டு" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "தொடுதிரை" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "வாங்கி மோட்ச்" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "உள்ளடக்கம்: விளையாட்டுகள்" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "உள்ளடக்கம்: மோட்ச்" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(விளையாட்டு நிழல்களையும் இயக்க வேண்டும்)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "தனிப்பயன்" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "மாறும் நிழல்கள்" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "உயர்ந்த" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "குறைந்த" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "சராசரி" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "மிக உயர்ந்த" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "மிகக் குறைவு" + +#: builtin/fstk/ui.lua +msgid "" +msgstr "<எதுவும் கிடைக்கவில்லை>" + +#: builtin/fstk/ui.lua +msgid "An error occurred in a Lua script:" +msgstr "லுவா ச்கிரிப்டில் பிழை ஏற்பட்டது:" + +#: builtin/fstk/ui.lua +msgid "An error occurred:" +msgstr "பிழை ஏற்பட்டது:" + +#: builtin/fstk/ui.lua +msgid "Main menu" +msgstr "பட்டியல் விளையாடுங்கள்" + +#: builtin/fstk/ui.lua +msgid "OK" +msgstr "சரி" + +#: builtin/fstk/ui.lua +msgid "Reconnect" +msgstr "மீண்டும் இணைக்கவும்" + +#: builtin/fstk/ui.lua +msgid "The server has requested a reconnect:" +msgstr "சேவையகம் மீண்டும் இணைக்கக் கோரியுள்ளது:" + +#: builtin/mainmenu/common.lua +msgid "Protocol version mismatch. " +msgstr "நெறிமுறை பதிப்பு பொருந்தாதது. " + +#: builtin/mainmenu/common.lua +msgid "Server enforces protocol version $1. " +msgstr "சேவையகம் நெறிமுறை பதிப்பு $ 1 ஐ செயல்படுத்துகிறது. " + +#: builtin/mainmenu/common.lua +msgid "Server supports protocol versions between $1 and $2. " +msgstr "சேவையகம் $ 1 முதல் $ 2 வரை நெறிமுறை பதிப்புகளை ஆதரிக்கிறது. " + +#: builtin/mainmenu/common.lua +msgid "We only support protocol version $1." +msgstr "நெறிமுறை பதிப்பு $ 1 ஐ மட்டுமே நாங்கள் ஆதரிக்கிறோம்." + +#: builtin/mainmenu/common.lua +msgid "We support protocol versions between version $1 and $2." +msgstr "பதிப்பு $ 1 மற்றும் $ 2 க்கு இடையிலான நெறிமுறை பதிப்புகளை நாங்கள் ஆதரிக்கிறோம்." + +#: builtin/mainmenu/content/contentdb.lua +msgid "Error installing \"$1\": $2" +msgstr "\"$ 1\" ஐ நிறுவுவதில் பிழை: $ 2" + +#: builtin/mainmenu/content/contentdb.lua +msgid "Failed to download \"$1\"" +msgstr "\"$ 1\" ஐ பதிவிறக்கம் செய்யத் தவறிவிட்டது" + +#: builtin/mainmenu/content/contentdb.lua +msgid "Failed to download $1" +msgstr "$ 1 பதிவிறக்கத் தவறிவிட்டது" + +#: builtin/mainmenu/content/contentdb.lua +msgid "" +"Failed to extract \"$1\" (insufficient disk space, unsupported file type or " +"broken archive)" +msgstr "" +"\"$ 1\" (போதிய வட்டு இடம், ஆதரிக்கப்படாத கோப்பு வகை அல்லது உடைந்த காப்பகம்) " +"பிரித்தெடுப்பதில் தோல்வி)" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "" +"$1 downloading,\n" +"$2 queued" +msgstr "" +"$ 1 பதிவிறக்கம்,\n" +" $ 2 வரிசையில்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "$1 downloading..." +msgstr "$ 1 பதிவிறக்கம் ..." + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "All" +msgstr "அனைத்தும்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +#: builtin/mainmenu/content/dlg_package.lua +msgid "Back" +msgstr "பின்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "ContentDB is not available when Luanti was compiled without cURL" +msgstr "லுவாண்டி சுருட்டை இல்லாமல் தொகுக்கப்பட்டபோது ContentDB கிடைக்காது" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Downloading..." +msgstr "பதிவிறக்கம் ..." + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Featured" +msgstr "இடம்பெற்றது" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Games" +msgstr "விளையாட்டுகள்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/serverlistmgr.lua +#: src/client/game.cpp +msgid "Loading..." +msgstr "ஏற்றுகிறது ..." + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Mods" +msgstr "மோட்ச்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +#: builtin/mainmenu/content/dlg_package.lua +msgid "No packages could be retrieved" +msgstr "எந்த தொகுப்புகளையும் மீட்டெடுக்க முடியவில்லை" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No updates" +msgstr "புதுப்பிப்புகள் இல்லை" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Queued" +msgstr "வரிசையில்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Texture Packs" +msgstr "அமைப்பு பொதிகள்" + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "The package $1 was not found." +msgstr "தொகுப்பு $ 1 காணப்படவில்லை." + +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "Update All [$1]" +msgstr "அனைத்தையும் புதுப்பிக்கவும் [$ 1]" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "$1 and $2 dependencies will be installed." +msgstr "$ 1 மற்றும் $ 2 சார்புநிலைகள் நிறுவப்படும்." + +#: builtin/mainmenu/content/dlg_install.lua +msgid "$1 by $2" +msgstr "$ 1 ஆல் $ 2" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "$1 required dependencies could not be found." +msgstr "$ 1 தேவையான சார்புகளை கண்டுபிடிக்க முடியவில்லை." + +#: builtin/mainmenu/content/dlg_install.lua +msgid "$1 will be installed, and $2 dependencies will be skipped." +msgstr "$ 1 நிறுவப்படும், மேலும் $ 2 சார்புநிலைகள் தவிர்க்கப்படும்." + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Already installed" +msgstr "ஏற்கனவே நிறுவப்பட்டுள்ளது" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Base Game:" +msgstr "தள விளையாட்டு:" + +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua +msgid "Dependencies:" +msgstr "சார்புநிலைகள்:" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Error getting dependencies for package $1" +msgstr "தொகுப்பு $ 1 க்கான சார்புகளைப் பெறுவது பிழை" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Install" +msgstr "நிறுவவும்" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Install $1" +msgstr "நிறுவவும் $ 1" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Install missing dependencies" +msgstr "காணாமல் போன சார்புகளை நிறுவவும்" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Not found" +msgstr "கண்டுபிடிக்கப்படவில்லை" + +#: builtin/mainmenu/content/dlg_install.lua +msgid "Please check that the base game is correct." +msgstr "அடிப்படை விளையாட்டு சரியானதா என்பதை சரிபார்க்கவும்." + +#: builtin/mainmenu/content/dlg_install.lua +msgid "You need to install a game before you can install a mod" +msgstr "நீங்கள் ஒரு மோட் நிறுவுவதற்கு முன் ஒரு விளையாட்டை நிறுவ வேண்டும்" + +#: builtin/mainmenu/content/dlg_overwrite.lua +msgid "\"$1\" already exists. Would you like to overwrite it?" +msgstr "\"$ 1\" ஏற்கனவே உள்ளது. அதை மேலெழுத விரும்புகிறீர்களா?" + +#: builtin/mainmenu/content/dlg_overwrite.lua +msgid "Overwrite" +msgstr "மேலெழுதும்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "ContentDB page" +msgstr "ContentDB பக்கம்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Description" +msgstr "விவரம்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Donate" +msgstr "நன்கொடை" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Forum Topic" +msgstr "மன்ற தலைப்பு" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Information" +msgstr "தகவல்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Install [$1]" +msgstr "நிறுவவும் [$ 1]" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Issue Tracker" +msgstr "வெளியீடு டிராக்கர்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Source" +msgstr "மூலம்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Translate" +msgstr "மொழிபெயர்த்திடு" + +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua +msgid "Uninstall" +msgstr "நிறுவல் நீக்க" + +#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua +msgid "Update" +msgstr "புதுப்பிப்பு" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "Website" +msgstr "வலைத்தளம்" + +#: builtin/mainmenu/content/dlg_package.lua +msgid "by $1 — $2 downloads — +$3 / $4 / -$5" +msgstr "$ 1 -$ 2 பதிவிறக்கங்கள் - +$ 3 / $ 4 / -$ 5" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "$1 (Enabled)" +msgstr "$ 1 (இயக்கப்பட்டது)" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "$1 mods" +msgstr "$ 1 மோட்ச்" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Failed to install $1 to $2" +msgstr "$ 1 முதல் $ 2 வரை நிறுவத் தவறிவிட்டது" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Install: Unable to find suitable folder name for $1" +msgstr "நிறுவு: $ 1 க்கு பொருத்தமான கோப்புறை பெயரைக் கண்டுபிடிக்க முடியவில்லை" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Unable to find a valid mod, modpack, or game" +msgstr "செல்லுபடியாகும் மோட், மோட்பேக் அல்லது விளையாட்டைக் கண்டுபிடிக்க முடியவில்லை" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Unable to install a $1 as a $2" +msgstr "$ 1 ஐ $ 2 ஆக நிறுவ முடியவில்லை" + +#: builtin/mainmenu/content/pkgmgr.lua +msgid "Unable to install a $1 as a texture pack" +msgstr "ஒரு அமைப்பு பொதியாக $ 1 ஐ நிறுவ முடியவில்லை" + +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "(Enabled, has error)" +msgstr "(இயக்கப்பட்டது, பிழை உள்ளது)" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "(Unsatisfied)" +msgstr "(திருப்தியற்ற)" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Disable all" +msgstr "அனைத்தையும் முடக்கு" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Disable modpack" +msgstr "மோட்பேக்கை முடக்கு" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Enable all" +msgstr "அனைத்தையும் இயக்கு" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Enable modpack" +msgstr "மோட்பேக்கை இயக்கவும்" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "" +"Failed to enable mod \"$1\" as it contains disallowed characters. Only " +"characters [a-z0-9_] are allowed." +msgstr "" +"மோட் \"$ 1\" ஐ அனுமதிக்காத எழுத்துக்களைக் கொண்டிருப்பதால் இயக்கத் தவறிவிட்டது. [A-" +"Z0-9_] எழுத்துக்கள் மட்டுமே அனுமதிக்கப்படுகின்றன." + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Find More Mods" +msgstr "மேலும் மோட்சைக் கண்டறியவும்" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "Mod:" +msgstr "மோட்:" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No (optional) dependencies" +msgstr "இல்லை (விரும்பினால்) சார்புகள்" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No game description provided." +msgstr "விளையாட்டு விளக்கம் எதுவும் வழங்கப்படவில்லை." + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No hard dependencies" +msgstr "கடினமான சார்புநிலைகள் இல்லை" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No modpack description provided." +msgstr "மோட்பேக் விளக்கம் எதுவும் வழங்கப்படவில்லை." + +#: builtin/mainmenu/dlg_config_world.lua +msgid "No optional dependencies" +msgstr "விருப்ப சார்புநிலைகள் இல்லை" + +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua +msgid "Optional dependencies:" +msgstr "விருப்ப சார்புநிலைகள்:" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "World:" +msgstr "உலகம்:" + +#: builtin/mainmenu/dlg_config_world.lua +msgid "enabled" +msgstr "இயக்கப்பட்டது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "A world named \"$1\" already exists" +msgstr "\"$ 1\" என்று பெயரிடப்பட்ட ஒரு உலகம் ஏற்கனவே உள்ளது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Additional terrain" +msgstr "கூடுதல் நிலப்பரப்பு" + +#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp +msgid "Altitude chill" +msgstr "உயர குளிர்ச்சியானது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Altitude dry" +msgstr "உயரம் உலர்ந்த" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Biome blending" +msgstr "பயோம் கலத்தல்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Biomes" +msgstr "பயோம்கள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Caverns" +msgstr "குகைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Caves" +msgstr "குகைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Create" +msgstr "உருவாக்கு" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Decorations" +msgstr "அலங்காரங்கள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Desert temples" +msgstr "பாலைவன கோயில்கள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Development Test is meant for developers." +msgstr "வளர்ச்சி சோதனை என்பது டெவலப்பர்களுக்கானது." + +#: builtin/mainmenu/dlg_create_world.lua +msgid "" +"Different dungeon variant generated in desert biomes (only if dungeons " +"enabled)" +msgstr "" +"பாலைவன பயோம்களில் உருவாக்கப்படும் வெவ்வேறு நிலவறை மாறுபாடு (நிலவறைகள் இயக்கப்பட்டால் " +"மட்டுமே)" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Dungeons" +msgstr "நிலவறைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Flat terrain" +msgstr "தட்டையான நிலப்பரப்பு" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Floating landmasses in the sky" +msgstr "வானத்தில் மிதக்கும் நிலப்பரப்புகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Floatlands (experimental)" +msgstr "ஃப்ளோட்லேண்ட்ச் (சோதனை)" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Generate non-fractal terrain: Oceans and underground" +msgstr "ஃப்ராக்டல் அல்லாத நிலப்பரப்பை உருவாக்குங்கள்: பெருங்கடல்கள் மற்றும் நிலத்தடி" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Hills" +msgstr "மலைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Humid rivers" +msgstr "ஈரப்பதமான ஆறுகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Increases humidity around rivers" +msgstr "ஆறுகளைச் சுற்றியுள்ள ஈரப்பதத்தை அதிகரிக்கிறது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Install another game" +msgstr "மற்றொரு விளையாட்டை நிறுவவும்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Lakes" +msgstr "ஏரிகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Low humidity and high heat causes shallow or dry rivers" +msgstr "குறைந்த ஈரப்பதம் மற்றும் அதிக வெப்பம் ஆழமற்ற அல்லது வறண்ட ஆறுகளை ஏற்படுத்துகிறது" + +#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp +msgid "Mapgen" +msgstr "மேப்சென்" + +#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp +msgid "Mapgen flags" +msgstr "மேப்சென் கொடிகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mapgen-specific flags" +msgstr "மேப்சென்-குறிப்பிட்ட கொடிகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mountains" +msgstr "மலைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Mud flow" +msgstr "மண் ஓட்டம்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Network of tunnels and caves" +msgstr "சுரங்கங்கள் மற்றும் குகைகளின் பிணையம்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "No game selected" +msgstr "எந்த விளையாட்டும் தேர்ந்தெடுக்கப்படவில்லை" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Reduces heat with altitude" +msgstr "உயரத்துடன் வெப்பத்தை குறைக்கிறது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Reduces humidity with altitude" +msgstr "உயரத்துடன் ஈரப்பதத்தை குறைக்கிறது" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Rivers" +msgstr "நதிகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Sea level rivers" +msgstr "கடல் மட்ட நதிகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Smooth transition between biomes" +msgstr "பயோம்களுக்கு இடையில் மென்மையான மாற்றம்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "" +"Structures appearing on the terrain (no effect on trees and jungle grass " +"created by v6)" +msgstr "" +"நிலப்பரப்பில் தோன்றும் கட்டமைப்புகள் (வி 6 ஆல் உருவாக்கப்பட்ட மரங்கள் மற்றும் காட்டில் புல் மீது " +"எந்த விளைவும் இல்லை)" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Structures appearing on the terrain, typically trees and plants" +msgstr "நிலப்பரப்பில் தோன்றும் கட்டமைப்புகள், பொதுவாக மரங்கள் மற்றும் தாவரங்கள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Temperate, Desert" +msgstr "மிதமான, பாலைவனம்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Temperate, Desert, Jungle" +msgstr "மிதமான, பாலைவனம், காடு" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Temperate, Desert, Jungle, Tundra, Taiga" +msgstr "மிதமான, பாலைவனம், காட்டில், டன்ட்ரா, டைகா" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Terrain surface erosion" +msgstr "நிலப்பரப்பு மேற்பரப்பு அரிப்பு" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Trees and jungle grass" +msgstr "மரங்கள் மற்றும் காட்டில் புல்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Vary river depth" +msgstr "நதி ஆழம் மாறுபடும்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "Very large caverns deep in the underground" +msgstr "நிலத்தடியில் ஆழமான மிகப் பெரிய குகைகள்" + +#: builtin/mainmenu/dlg_create_world.lua +msgid "World name" +msgstr "உலக பெயர்" + +#: builtin/mainmenu/dlg_delete_content.lua +msgid "Are you sure you want to delete \"$1\"?" +msgstr "\"$ 1\" ஐ நீக்க விரும்புகிறீர்களா?" + +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_local.lua +msgid "Delete" +msgstr "நீக்கு" + +#: builtin/mainmenu/dlg_delete_content.lua +msgid "pkgmgr: failed to delete \"$1\"" +msgstr "பி.கே.சி.எம்.சி.ஆர்: \"$ 1\" ஐ நீக்குவதில் தோல்வி" + +#: builtin/mainmenu/dlg_delete_content.lua +msgid "pkgmgr: invalid path \"$1\"" +msgstr "pkgmgr: தவறான பாதை \"$ 1\"" + +#: builtin/mainmenu/dlg_delete_world.lua +msgid "Delete World \"$1\"?" +msgstr "உலக \"$ 1\" ஐ நீக்கவா?" + +#: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp +msgid "Confirm Password" +msgstr "கடவுச்சொல்லை உறுதிப்படுத்தவும்" + +#: builtin/mainmenu/dlg_register.lua +msgid "Joining $1" +msgstr "இணைகிறது $ 1" + +#: builtin/mainmenu/dlg_register.lua +msgid "Missing name" +msgstr "பெயர் இல்லை" + +#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua +#: builtin/mainmenu/tab_online.lua +msgid "Name" +msgstr "பெயர்" + +#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua +#: builtin/mainmenu/tab_online.lua +msgid "Password" +msgstr "கடவுச்சொல்" + +#: builtin/mainmenu/dlg_register.lua +msgid "Passwords do not match" +msgstr "கடவுச்சொற்கள் பொருந்தவில்லை" + +#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua +msgid "Register" +msgstr "பதிவு செய்யுங்கள்" + +#: builtin/mainmenu/dlg_reinstall_mtg.lua +msgid "Dismiss" +msgstr "தள்ளுபடி" + +#: builtin/mainmenu/dlg_reinstall_mtg.lua +msgid "" +"For a long time, Luanti shipped with a default game called \"Minetest " +"Game\". Since version 5.8.0, Luanti ships without a default game." +msgstr "" +"நீண்ட காலமாக, லுவாண்டி \"மின்டெச்ட் கேம்\" என்று அழைக்கப்படும் இயல்புநிலை விளையாட்டை " +"அனுப்பினார். பதிப்பு 5.8.0 முதல், இயல்புநிலை விளையாட்டு இல்லாமல் லுவாண்டி அனுப்புகிறார்." + +#: builtin/mainmenu/dlg_reinstall_mtg.lua +msgid "" +"If you want to continue playing in your Minetest Game worlds, you need to " +"reinstall Minetest Game." +msgstr "" +"உங்கள் மின்தேச்ட் கேம் வேர்ல்ட்சில் நீங்கள் தொடர்ந்து விளையாட விரும்பினால், நீங்கள் மினிட்டெச்ட் " +"விளையாட்டை மீண்டும் நிறுவ வேண்டும்." + +#: builtin/mainmenu/dlg_reinstall_mtg.lua +msgid "Minetest Game is no longer installed by default" +msgstr "மின்டெச்ட் விளையாட்டு இனி இயல்புநிலையாக நிறுவப்படவில்லை" + +#: builtin/mainmenu/dlg_reinstall_mtg.lua +msgid "Reinstall Minetest Game" +msgstr "மின்டெச்ட் விளையாட்டை மீண்டும் நிறுவவும்" + +#: builtin/mainmenu/dlg_rename_modpack.lua +msgid "Accept" +msgstr "ஏற்றுக்கொள்" + +#: builtin/mainmenu/dlg_rename_modpack.lua +msgid "Rename Modpack:" +msgstr "மோட்பேக் மறுபெயரிடுதல்:" + +#: builtin/mainmenu/dlg_rename_modpack.lua +msgid "" +"This modpack has an explicit name given in its modpack.conf which will " +"override any renaming here." +msgstr "" +"இந்த மோட்பேக்கில் அதன் modpack.conf இல் கொடுக்கப்பட்ட வெளிப்படையான பெயரைக் கொண்டுள்ளது, " +"இது இங்கே எந்த மறுபெயரிடலையும் மீறும்." + +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "அனைத்தையும் இயக்கு" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_version_info.lua +msgid "A new $1 version is available" +msgstr "புதிய $ 1 பதிப்பு கிடைக்கிறது" + +#: builtin/mainmenu/dlg_version_info.lua +msgid "" +"Installed version: $1\n" +"New version: $2\n" +"Visit $3 to find out how to get the newest version and stay up to date with " +"features and bugfixes." +msgstr "" +"நிறுவப்பட்ட பதிப்பு: $ 1\n" +" புதிய பதிப்பு: $ 2\n" +" புதிய பதிப்பை எவ்வாறு பெறுவது என்பதை அறிய $ 3 ஐப் பார்வையிடவும், நற்பொருத்தங்கள் " +"மற்றும் பிழைத்திருத்தங்களுடன் புதுப்பித்த நிலையில் இருக்கவும்." + +#: builtin/mainmenu/dlg_version_info.lua +msgid "Later" +msgstr "பின்னர்" + +#: builtin/mainmenu/dlg_version_info.lua +msgid "Never" +msgstr "ஒருபோதும்" + +#: builtin/mainmenu/dlg_version_info.lua +msgid "Visit website" +msgstr "வலைத்தளத்தைப் பார்வையிடவும்" + +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp +msgid "Settings" +msgstr "அமைப்புகள்" + +#: builtin/mainmenu/serverlistmgr.lua +msgid "Public server list is disabled" +msgstr "பொது சேவையக பட்டியல் முடக்கப்பட்டுள்ளது" + +#: builtin/mainmenu/serverlistmgr.lua +msgid "Try reenabling public serverlist and check your internet connection." +msgstr "" +"பொது சேவையக பட்டியலை மீண்டும் இயக்க முயற்சிக்கவும், உங்கள் இணைய இணைப்பை சரிபார்க்கவும்." + +#: builtin/mainmenu/tab_about.lua +msgid "About" +msgstr "பற்றி" + +#: builtin/mainmenu/tab_about.lua +msgid "Active Contributors" +msgstr "செயலில் பங்களிப்பாளர்கள்" + +#: builtin/mainmenu/tab_about.lua +msgid "Active renderer:" +msgstr "ஆக்டிவ் ரெண்டரர்:" + +#: builtin/mainmenu/tab_about.lua +msgid "Core Developers" +msgstr "கோர் உருவாக்குபவர்கள்" + +#: builtin/mainmenu/tab_about.lua +msgid "Core Team" +msgstr "மைய அணி" + +#: builtin/mainmenu/tab_about.lua +msgid "Open User Data Directory" +msgstr "பயனர் தரவு கோப்பகத்தைத் திறக்கவும்" + +#: builtin/mainmenu/tab_about.lua +msgid "" +"Opens the directory that contains user-provided worlds, games, mods,\n" +"and texture packs in a file manager / explorer." +msgstr "" +"பயனர் வழங்கிய உலகங்கள், விளையாட்டுகள், மோட்ச், ஆகியவற்றைக் கொண்ட கோப்பகத்தைத் திறக்கிறது\n" +" மற்றும் ஒரு கோப்பு மேலாளர் / எக்ச்ப்ளோரரில் அமைப்பு பொதிகள்." + +#: builtin/mainmenu/tab_about.lua +msgid "Previous Contributors" +msgstr "முந்தைய பங்களிப்பாளர்கள்" + +#: builtin/mainmenu/tab_about.lua +msgid "Previous Core Developers" +msgstr "முந்தைய கோர் உருவாக்குபவர்கள்" + +#: builtin/mainmenu/tab_about.lua +msgid "Share debug log" +msgstr "பிழைத்திருத்த பதிவைப் பகிரவும்" + +#: builtin/mainmenu/tab_content.lua +msgid "Browse online content" +msgstr "நிகழ்நிலை உள்ளடக்கத்தை உலாவுக" + +#: builtin/mainmenu/tab_content.lua +msgid "Browse online content [$1]" +msgstr "நிகழ்நிலை உள்ளடக்கத்தை உலாவுக [$ 1]" + +#: builtin/mainmenu/tab_content.lua +msgid "Content" +msgstr "உள்ளடக்கம்" + +#: builtin/mainmenu/tab_content.lua +msgid "Content [$1]" +msgstr "உள்ளடக்கம் [$ 1]" + +#: builtin/mainmenu/tab_content.lua +msgid "Disable Texture Pack" +msgstr "அமைப்பு பேக்கை முடக்கு" + +#: builtin/mainmenu/tab_content.lua +msgid "Installed Packages:" +msgstr "நிறுவப்பட்ட தொகுப்புகள்:" + +#: builtin/mainmenu/tab_content.lua +msgid "No dependencies." +msgstr "சார்பு இல்லை." + +#: builtin/mainmenu/tab_content.lua +msgid "No package description available" +msgstr "தொகுப்பு விளக்கம் எதுவும் கிடைக்கவில்லை" + +#: builtin/mainmenu/tab_content.lua +msgid "Rename" +msgstr "மறுபெயரிடுங்கள்" + +#: builtin/mainmenu/tab_content.lua +msgid "Update available?" +msgstr "புதுப்பிப்பு கிடைக்குமா?" + +#: builtin/mainmenu/tab_content.lua +msgid "Use Texture Pack" +msgstr "அமைப்பு பேக் பயன்படுத்தவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Announce Server" +msgstr "சேவையகத்தை அறிவிக்கவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Bind Address" +msgstr "முகவரியை பிணைக்கவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Creative Mode" +msgstr "படைப்பு முறை" + +#: builtin/mainmenu/tab_local.lua +msgid "Enable Damage" +msgstr "சேதத்தை இயக்கவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Host Game" +msgstr "புரவலன் விளையாட்டு" + +#: builtin/mainmenu/tab_local.lua +msgid "Host Server" +msgstr "புரவலன் சேவையகம்" + +#: builtin/mainmenu/tab_local.lua +msgid "Install a game" +msgstr "ஒரு விளையாட்டை நிறுவவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Install games from ContentDB" +msgstr "ContentDB இலிருந்து கேம்களை நிறுவவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Luanti doesn't come with a game by default." +msgstr "முன்னிருப்பாக லுவாண்டி ஒரு விளையாட்டுடன் வரவில்லை." + +#: builtin/mainmenu/tab_local.lua +msgid "" +"Luanti is a game-creation platform that allows you to play many different " +"games." +msgstr "" +"லுவாண்டி என்பது ஒரு விளையாட்டு உருவாக்கும் தளமாகும், இது பல வித்தியாசமான " +"விளையாட்டுகளை விளையாட உங்களை அனுமதிக்கிறது." + +#: builtin/mainmenu/tab_local.lua +msgid "New" +msgstr "புதிய" + +#: builtin/mainmenu/tab_local.lua +msgid "No world created or selected!" +msgstr "எந்த உலகமும் உருவாக்கப்படவில்லை அல்லது தேர்ந்தெடுக்கப்படவில்லை!" + +#: builtin/mainmenu/tab_local.lua +msgid "Play Game" +msgstr "விளையாட்டு விளையாடுங்கள்" + +#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_online.lua +msgid "Port" +msgstr "துறைமுகம்" + +#: builtin/mainmenu/tab_local.lua +msgid "Select Mods" +msgstr "மோட்சைத் தேர்ந்தெடுக்கவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "Select World:" +msgstr "உலகத்தைத் தேர்ந்தெடுக்கவும்:" + +#: builtin/mainmenu/tab_local.lua +msgid "Server Port" +msgstr "சேவையக துறைமுகம்" + +#: builtin/mainmenu/tab_local.lua +msgid "Start Game" +msgstr "விளையாட்டைத் தொடங்கவும்" + +#: builtin/mainmenu/tab_local.lua +msgid "You need to install a game before you can create a world." +msgstr "நீங்கள் ஒரு உலகத்தை உருவாக்குவதற்கு முன்பு ஒரு விளையாட்டை நிறுவ வேண்டும்." + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "பிடித்ததை அகற்று" + +#: builtin/mainmenu/tab_online.lua +msgid "Address" +msgstr "முகவரி" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "கிளீன்" + +#: builtin/mainmenu/tab_online.lua +msgid "Creative mode" +msgstr "படைப்பு முறை" + +#. ~ PvP = Player versus Player +#: builtin/mainmenu/tab_online.lua +msgid "Damage / PvP" +msgstr "சேதம் / பி.வி.பி." + +#: builtin/mainmenu/tab_online.lua +msgid "Favorites" +msgstr "பிடித்தவை" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "விளையாட்டுகள்" + +#: builtin/mainmenu/tab_online.lua +msgid "Incompatible Servers" +msgstr "பொருந்தாத சேவையகங்கள்" + +#: builtin/mainmenu/tab_online.lua +msgid "Join Game" +msgstr "விளையாட்டில் சேரவும்" + +#: builtin/mainmenu/tab_online.lua +msgid "Login" +msgstr "புகுபதிவு" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "வெளிப்படும் நூல்களின் எண்ணிக்கை" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "அர்ப்பணிக்கப்பட்ட சேவையக படி" + +#: builtin/mainmenu/tab_online.lua +msgid "Ping" +msgstr "பிங்" + +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Public Servers" +msgstr "பொது சேவையகங்கள்" + +#: builtin/mainmenu/tab_online.lua +msgid "Refresh" +msgstr "புதுப்பிப்பு" + +#: builtin/mainmenu/tab_online.lua +msgid "Remove favorite" +msgstr "பிடித்ததை அகற்று" + +#: builtin/mainmenu/tab_online.lua +msgid "Server Description" +msgstr "சேவையக விளக்கம்" + +#: src/client/client.cpp +msgid "Connection aborted (protocol error?)." +msgstr "இணைப்பு கைவிடப்பட்டது (நெறிமுறை பிழை?)." + +#: src/client/client.cpp src/client/game.cpp +msgid "Connection timed out." +msgstr "இணைப்பு நேரம் முடிந்தது." + +#: src/client/client.cpp +msgid "Done!" +msgstr "முடிந்தது!" + +#: src/client/client.cpp +msgid "Initializing nodes" +msgstr "முனைகளைத் தொடங்குதல்" + +#: src/client/client.cpp +msgid "Initializing nodes..." +msgstr "முனைகளைத் தொடங்குதல் ..." + +#: src/client/client.cpp +msgid "Loading textures..." +msgstr "அமைப்புகளை ஏற்றுகிறது ..." + +#: src/client/client.cpp +msgid "Rebuilding shaders..." +msgstr "சேடர்களை மீண்டும் உருவாக்குதல் ..." + +#: src/client/clientlauncher.cpp +msgid "Could not find or load game: " +msgstr "விளையாட்டைக் கண்டுபிடிக்கவோ ஏற்றவோ முடியவில்லை: " + +#: src/client/clientlauncher.cpp +msgid "Main Menu" +msgstr "பட்டியல் விளையாடுங்கள்" + +#: src/client/clientlauncher.cpp +msgid "No world selected and no address provided. Nothing to do." +msgstr "" +"எந்த உலகமும் தேர்ந்தெடுக்கப்படவில்லை, முகவரி எதுவும் வழங்கப்படவில்லை. செய்ய எதுவும் இல்லை." + +#: src/client/clientlauncher.cpp +msgid "Player name too long." +msgstr "வீரர் பெயர் மிக நீளமானது." + +#: src/client/clientlauncher.cpp +msgid "Please choose a name!" +msgstr "தயவுசெய்து ஒரு பெயரைத் தேர்வுசெய்க!" + +#: src/client/clientlauncher.cpp +msgid "Provided password file failed to open: " +msgstr "வழங்கப்பட்ட கடவுச்சொல் கோப்பு திறக்கத் தவறிவிட்டது: " + +#: src/client/clientlauncher.cpp +msgid "Provided world path doesn't exist: " +msgstr "வழங்கப்பட்ட உலக பாதை இல்லை: " + +#: src/client/clientmedia.cpp src/client/game.cpp +msgid "Media..." +msgstr "ஊடகங்கள் ..." + +#: src/client/game.cpp src/client/shader.cpp src/server.cpp +msgid "" +"\n" +"Check debug.txt for details." +msgstr "" +"\n" +"விவரங்களுக்கு பிழைத்திருத்தத்தை சரிபார்க்கவும்." + +#: src/client/game.cpp +msgid "A serialization error occurred:" +msgstr "ஒரு சீரியலைசேசன் பிழை ஏற்பட்டது:" + +#: src/client/game.cpp +#, c-format +msgid "Access denied. Reason: %s" +msgstr "அணுகல் மறுக்கப்பட்டது. காரணம்: %s" + +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "பிழைத்திருத்த செய்தி காட்டப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Automatic forward disabled" +msgstr "தானியங்கி முன்னோக்கி முடக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Automatic forward enabled" +msgstr "தானியங்கி முன்னோக்கி இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Block bounds hidden" +msgstr "தொகுதி வரம்புகள் மறைக்கப்பட்டுள்ளன" + +#: src/client/game.cpp +msgid "Block bounds shown for current block" +msgstr "தற்போதைய தொகுதிக்கு காட்டப்பட்டுள்ள தொகுதி வரம்புகள்" + +#: src/client/game.cpp +msgid "Block bounds shown for nearby blocks" +msgstr "அருகிலுள்ள தொகுதிகளுக்கு காட்டப்பட்டுள்ள தொகுதி வரம்புகள்" + +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + +#: src/client/game.cpp +msgid "Camera update disabled" +msgstr "கேமரா புதுப்பிப்பு முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Camera update enabled" +msgstr "கேமரா புதுப்பிப்பு இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Can't show block bounds (disabled by game or mod)" +msgstr "" +"தொகுதி வரம்புகளைக் காட்ட முடியாது (விளையாட்டு அல்லது மோட் மூலம் முடக்கப்பட்டுள்ளது)" + +#: src/client/game.cpp +msgid "Cinematic mode disabled" +msgstr "சினிமா பயன்முறை முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Cinematic mode enabled" +msgstr "சினிமா பயன்முறை இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Client disconnected" +msgstr "வாங்கி துண்டிக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Client side scripting is disabled" +msgstr "கிளையன்ட் பக்க ச்கிரிப்டிங் முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Connecting to server..." +msgstr "சேவையகத்துடன் இணைக்கிறது ..." + +#: src/client/game.cpp +msgid "Connection error (timed out?)" +msgstr "இணைப்பு பிழை (நேரம் முடிந்தது?)" + +#: src/client/game.cpp +msgid "Connection failed for unknown reason" +msgstr "அறியப்படாத காரணத்திற்காக இணைப்பு தோல்வியடைந்தது" + +#: src/client/game.cpp +#, c-format +msgid "Couldn't resolve address: %s" +msgstr "முகவரியைத் தீர்க்க முடியவில்லை: %s" + +#: src/client/game.cpp +msgid "Creating client..." +msgstr "கிளையண்டை உருவாக்குதல் ..." + +#: src/client/game.cpp +msgid "Creating server..." +msgstr "சேவையகத்தை உருவாக்குதல் ..." + +#: src/client/game.cpp +msgid "Debug info shown" +msgstr "பிழைத்திருத்த செய்தி காட்டப்பட்டுள்ளது" + +#: src/client/game.cpp +#, c-format +msgid "Error creating client: %s" +msgstr "கிளையண்டை உருவாக்கும் பிழை: %s" + +#: src/client/game.cpp +msgid "Fast mode disabled" +msgstr "வேகமான பயன்முறை முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Fast mode enabled" +msgstr "வேகமான பயன்முறை இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Fast mode enabled (note: no 'fast' privilege)" +msgstr "வேகமான பயன்முறை இயக்கப்பட்டது (குறிப்பு: 'வேகமான' சலுகை இல்லை)" + +#: src/client/game.cpp +msgid "Fly mode disabled" +msgstr "பறக்க பயன்முறை முடக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Fly mode enabled" +msgstr "பறக்க பயன்முறை இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Fly mode enabled (note: no 'fly' privilege)" +msgstr "பறக்க பயன்முறை இயக்கப்பட்டது (குறிப்பு: 'பறக்க' சலுகை இல்லை)" + +#: src/client/game.cpp +msgid "Fog disabled" +msgstr "மூடுபனி முடக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Fog enabled" +msgstr "மூடுபனி இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Fog enabled by game or mod" +msgstr "விளையாட்டு அல்லது மோட் மூலம் மூடுபனி இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Item definitions..." +msgstr "உருப்படி வரையறைகள் ..." + +#: src/client/game.cpp +msgid "KiB/s" +msgstr "கிப் / கள்" + +#: src/client/game.cpp +msgid "MiB/s" +msgstr "Mib/s" + +#: src/client/game.cpp +msgid "Minimap currently disabled by game or mod" +msgstr "மினிமாப் தற்போது விளையாட்டு அல்லது மோட் மூலம் முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Multiplayer" +msgstr "மல்டிபிளேயர்" + +#: src/client/game.cpp +msgid "Noclip mode disabled" +msgstr "NOCLIP பயன்முறை முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Noclip mode enabled" +msgstr "NOCLIP பயன்முறை இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Noclip mode enabled (note: no 'noclip' privilege)" +msgstr "NOCLIP பயன்முறை இயக்கப்பட்டது (குறிப்பு: 'noclip' சலுகை இல்லை)" + +#: src/client/game.cpp +msgid "Node definitions..." +msgstr "முனை வரையறைகள் ..." + +#: src/client/game.cpp +msgid "Pitch move mode disabled" +msgstr "சுருதி நகர்வு பயன்முறை முடக்கப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Pitch move mode enabled" +msgstr "சுருதி நகர்வு பயன்முறை இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Profiler graph shown" +msgstr "சுயவிவர வரைபடம் காட்டப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Resolving address..." +msgstr "முகவரி தீர்க்கும் ..." + +#: src/client/game.cpp +msgid "Shutting down..." +msgstr "மூடுவது ..." + +#: src/client/game.cpp src/client/game_formspec.cpp +msgid "Singleplayer" +msgstr "ஒற்றை வீரர்" + +#: src/client/game.cpp +msgid "Sound muted" +msgstr "ஒலி முடக்கியது" + +#: src/client/game.cpp +msgid "Sound system is not supported on this build" +msgstr "இந்த கட்டமைப்பில் ஒலி அமைப்பு ஆதரிக்கப்படவில்லை" + +#: src/client/game.cpp +msgid "Sound unmuted" +msgstr "ஒலிக்காத ஒலி" + +#: src/client/game.cpp +#, c-format +msgid "The server is probably running a different version of %s." +msgstr "சேவையகம் %s இன் வேறுபட்ட பதிப்பை இயக்குகிறது." + +#: src/client/game.cpp +#, c-format +msgid "Unable to connect to %s because IPv6 is disabled" +msgstr "IPv6 முடக்கப்பட்டுள்ளதால் %s உடன் இணைக்க முடியவில்லை" + +#: src/client/game.cpp +#, c-format +msgid "Unable to listen on %s because IPv6 is disabled" +msgstr "ஐபிவி 6 முடக்கப்பட்டுள்ளதால் %s கேட்க முடியவில்லை" + +#: src/client/game.cpp +msgid "Unlimited viewing range disabled" +msgstr "வரம்பற்ற பார்வை வரம்பு முடக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Unlimited viewing range enabled" +msgstr "வரம்பற்ற பார்வை வரம்பு இயக்கப்பட்டது" + +#: src/client/game.cpp +msgid "Unlimited viewing range enabled, but forbidden by game or mod" +msgstr "" +"வரம்பற்ற பார்வை வரம்பு இயக்கப்பட்டது, ஆனால் விளையாட்டு அல்லது மோட் மூலம் தடைசெய்யப்பட்டுள்ளது" + +#: src/client/game.cpp +#, c-format +msgid "Viewing changed to %d (the minimum)" +msgstr "பார்வை %d ஆக மாற்றப்பட்டது (குறைந்தபட்சம்)" + +#: src/client/game.cpp +#, c-format +msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" +msgstr "" +"பார்ப்பது %d (குறைந்தபட்சம்) ஆக மாற்றப்பட்டது, ஆனால் விளையாட்டு அல்லது மோட் மூலம் %d க்கு " +"மட்டுப்படுத்தப்பட்டது" + +#: src/client/game.cpp +#, c-format +msgid "Viewing range changed to %d" +msgstr "பார்க்கும் வரம்பு %d ஆக மாற்றப்பட்டது" + +#: src/client/game.cpp +#, c-format +msgid "Viewing range changed to %d (the maximum)" +msgstr "பார்க்கும் வரம்பு %d ஆக மாற்றப்பட்டது (அதிகபட்சம்)" + +#: src/client/game.cpp +#, c-format +msgid "" +"Viewing range changed to %d (the maximum), but limited to %d by game or mod" +msgstr "" +"பார்க்கும் வரம்பு %d (அதிகபட்சம்) ஆக மாற்றப்பட்டது, ஆனால் விளையாட்டு அல்லது மோட் மூலம் %d " +"க்கு மட்டுப்படுத்தப்பட்டது" + +#: src/client/game.cpp +#, c-format +msgid "Viewing range changed to %d, but limited to %d by game or mod" +msgstr "" +"பார்க்கும் வரம்பு %d ஆக மாற்றப்பட்டது, ஆனால் விளையாட்டு அல்லது மோட் மூலம் %d க்கு மட்டுமே" + +#: src/client/game.cpp +#, c-format +msgid "Volume changed to %d%%" +msgstr "தொகுதி%d %% ஆக மாற்றப்பட்டது" + +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "சேடர்கள் இயக்கப்பட்டன, ஆனால் சி.எல்.எச்.எல் இயக்கி ஆதரிக்கவில்லை." + +#: src/client/game.cpp +msgid "Wireframe shown" +msgstr "வயர்ஃப்ரேம் காட்டப்பட்டுள்ளது" + +#: src/client/game.cpp +msgid "Zoom currently disabled by game or mod" +msgstr "சூம் தற்போது விளையாட்டு அல்லது மோட் மூலம் முடக்கப்பட்டுள்ளது" + +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- பயன்முறை: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- பொது: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- பி.வி.பி: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- சேவையக பெயர்: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "கடவுச்சொல்லை மாற்றவும்" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "தொடரவும்" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"கட்டுப்பாடுகள்:\n" +" பட்டியல் திறக்கப்படவில்லை:\n" +" - விரல் ச்லைடு: சுற்றிப் பாருங்கள்\n" +" - தட்டவும்: இடம்/பஞ்ச்/பயன்பாடு (இயல்புநிலை)\n" +" - நீண்ட குழாய்: தோண்டி/பயன்படுத்தவும் (இயல்புநிலை)\n" +" மெனு/சரக்கு திறந்திருக்கும்:\n" +" - இரட்டை தட்டு (வெளியே):\n" +" -> மூடு\n" +" - டச் அடுக்கு, டச் ச்லாட்:\n" +" -> அடுக்கை நகர்த்தவும்\n" +" - தொட்டு இழுக்கவும், 2 வது விரலைத் தட்டவும்\n" +" -> ஒற்றை உருப்படியை ச்லாட்டுக்கு வைக்கவும்\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "மெனுவுக்கு வெளியேறவும்" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "OS க்கு வெளியேறு" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "விளையாட்டு தகவல்:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "விளையாட்டு இடைநிறுத்தப்பட்டது" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "ஓச்டிங் சேவையகம்" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "அணை" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "ஆன்" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "தொலை சேவையகம்" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "ரெச்பான்" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "ஒலி தொகுதி" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "நீங்கள் இறந்துவிட்டீர்கள்" + +#: src/client/gameui.cpp +msgid "Chat currently disabled by game or mod" +msgstr "விளையாட்டு அல்லது மோட் மூலம் தற்போது முடக்கப்பட்டுள்ளது" + +#: src/client/gameui.cpp +msgid "Chat hidden" +msgstr "அரட்டை மறைக்கப்பட்டுள்ளது" + +#: src/client/gameui.cpp +msgid "Chat shown" +msgstr "அரட்டை காட்டப்பட்டுள்ளது" + +#: src/client/gameui.cpp +msgid "HUD hidden" +msgstr "HUD மறைக்கப்பட்டுள்ளது" + +#: src/client/gameui.cpp +msgid "HUD shown" +msgstr "HUD காட்டப்பட்டுள்ளது" + +#: src/client/gameui.cpp +msgid "Profiler hidden" +msgstr "விவரக்குறிப்பு மறைக்கப்பட்டுள்ளது" + +#: src/client/gameui.cpp +#, c-format +msgid "Profiler shown (page %d of %d)" +msgstr "சுயவிவரக் காட்டப்பட்டுள்ளது ( %d இன் பக்கம் %d)" + +#: src/client/keycode.cpp +msgid "Apps" +msgstr "பயன்பாடுகள்" + +#: src/client/keycode.cpp +msgid "Backspace" +msgstr "பேக்ச்பேச்" + +#. ~ Usually paired with the Pause key +#: src/client/keycode.cpp +msgid "Break Key" +msgstr "உடைக்கும் விசை" + +#: src/client/keycode.cpp +msgid "Caps Lock" +msgstr "தொப்பிகள் பூட்டு" + +#: src/client/keycode.cpp +msgid "Clear Key" +msgstr "தெளிவான விசை" + +#: src/client/keycode.cpp +msgid "Control Key" +msgstr "கட்டுப்பாட்டு விசை" + +#: src/client/keycode.cpp +msgid "Delete Key" +msgstr "விசையை நீக்கு" + +#: src/client/keycode.cpp +msgid "Down Arrow" +msgstr "கீழ் அம்பு" + +#: src/client/keycode.cpp +msgid "End" +msgstr "முடிவு" + +#: src/client/keycode.cpp +msgid "Erase EOF" +msgstr "EOF ஐ அழிக்கவும்" + +#: src/client/keycode.cpp +msgid "Execute" +msgstr "செயல்படுத்தவும்" + +#: src/client/keycode.cpp +msgid "Help" +msgstr "உதவி" + +#: src/client/keycode.cpp +msgid "Home" +msgstr "வீடு" + +#: src/client/keycode.cpp +msgid "IME Accept" +msgstr "Ime ஏற்றுக்கொள்ளுங்கள்" + +#: src/client/keycode.cpp +msgid "IME Convert" +msgstr "IME மாற்ற" + +#: src/client/keycode.cpp +msgid "IME Escape" +msgstr "எச்பேப் செய்ய" + +#: src/client/keycode.cpp +msgid "IME Mode Change" +msgstr "IME பயன்முறை மாற்றம்" + +#: src/client/keycode.cpp +msgid "IME Nonconvert" +msgstr "Ime non convert" + +#: src/client/keycode.cpp +msgid "Insert" +msgstr "செருகவும்" + +#: src/client/keycode.cpp +msgid "Left Arrow" +msgstr "இடது அம்பு" + +#: src/client/keycode.cpp +msgid "Left Button" +msgstr "இடது பொத்தான்" + +#: src/client/keycode.cpp +msgid "Left Control" +msgstr "இடது கட்டுப்பாடு" + +#: src/client/keycode.cpp +msgid "Left Menu" +msgstr "இடது பட்டியல்" + +#: src/client/keycode.cpp +msgid "Left Shift" +msgstr "இடது மாற்றம்" + +#: src/client/keycode.cpp +msgid "Left Windows" +msgstr "இடது சன்னல்கள்" + +#. ~ Key name, common on Windows keyboards +#: src/client/keycode.cpp +msgid "Menu Key" +msgstr "பட்டி விசை" + +#: src/client/keycode.cpp +msgid "Middle Button" +msgstr "நடுத்தர பொத்தான்" + +#: src/client/keycode.cpp +msgid "Num Lock" +msgstr "எண் பூட்டு" + +#: src/client/keycode.cpp +msgid "Numpad *" +msgstr "Numbad *" + +#: src/client/keycode.cpp +msgid "Numpad +" +msgstr "எண்பலகை +" + +#: src/client/keycode.cpp +msgid "Numpad -" +msgstr "எண் -" + +#: src/client/keycode.cpp +msgid "Numpad ." +msgstr "Numpad." + +#: src/client/keycode.cpp +msgid "Numpad /" +msgstr "நம்பர் /" + +#: src/client/keycode.cpp +msgid "Numpad 0" +msgstr "நம்பட் 0" + +#: src/client/keycode.cpp +msgid "Numpad 1" +msgstr "நம்பட் 1" + +#: src/client/keycode.cpp +msgid "Numpad 2" +msgstr "நம்பட் 2" + +#: src/client/keycode.cpp +msgid "Numpad 3" +msgstr "நம்பட் 3" + +#: src/client/keycode.cpp +msgid "Numpad 4" +msgstr "நம்பட் 4" + +#: src/client/keycode.cpp +msgid "Numpad 5" +msgstr "நம்பட் 5" + +#: src/client/keycode.cpp +msgid "Numpad 6" +msgstr "நம்பட் 6" + +#: src/client/keycode.cpp +msgid "Numpad 7" +msgstr "நம்பட் 7" + +#: src/client/keycode.cpp +msgid "Numpad 8" +msgstr "நம்பட் 8" + +#: src/client/keycode.cpp +msgid "Numpad 9" +msgstr "நம்பட் 9" + +#: src/client/keycode.cpp +msgid "OEM Clear" +msgstr "ஒஇஎம் தெளிவாக" + +#: src/client/keycode.cpp +msgid "Page Down" +msgstr "பக்கம் கீழே" + +#: src/client/keycode.cpp +msgid "Page Up" +msgstr "பக்கம்" + +#. ~ Usually paired with the Break key +#: src/client/keycode.cpp +msgid "Pause Key" +msgstr "இடைநிறுத்த விசை" + +#: src/client/keycode.cpp +msgid "Play" +msgstr "விளையாடுங்கள்" + +#. ~ "Print screen" key +#: src/client/keycode.cpp +msgid "Print" +msgstr "அச்சிடுக" + +#: src/client/keycode.cpp +msgid "Return Key" +msgstr "திரும்ப விசை" + +#: src/client/keycode.cpp +msgid "Right Arrow" +msgstr "வலது அம்பு" + +#: src/client/keycode.cpp +msgid "Right Button" +msgstr "வலது பொத்தான்" + +#: src/client/keycode.cpp +msgid "Right Control" +msgstr "சரியான கட்டுப்பாடு" + +#: src/client/keycode.cpp +msgid "Right Menu" +msgstr "வலது பட்டியல்" + +#: src/client/keycode.cpp +msgid "Right Shift" +msgstr "சரியான மாற்றம்" + +#: src/client/keycode.cpp +msgid "Right Windows" +msgstr "வலது சாளரங்கள்" + +#: src/client/keycode.cpp +msgid "Scroll Lock" +msgstr "உருள் பூட்டு" + +#. ~ Key name +#: src/client/keycode.cpp +msgid "Select" +msgstr "தேர்ந்தெடு" + +#: src/client/keycode.cpp +msgid "Shift Key" +msgstr "சிப்ட் விசை" + +#: src/client/keycode.cpp +msgid "Sleep" +msgstr "தூங்கு" + +#: src/client/keycode.cpp +msgid "Snapshot" +msgstr "ச்னாப்சாட்" + +#: src/client/keycode.cpp +msgid "Space" +msgstr "இடைவெளி" + +#: src/client/keycode.cpp +msgid "Tab" +msgstr "தாவல்" + +#: src/client/keycode.cpp +msgid "Up Arrow" +msgstr "அம்பு" + +#: src/client/keycode.cpp +msgid "X Button 1" +msgstr "ஃச் பொத்தான் 1" + +#: src/client/keycode.cpp +msgid "X Button 2" +msgstr "ஃச் பொத்தான் 2" + +#: src/client/keycode.cpp +msgid "Zoom Key" +msgstr "பெரிதாக்க விசை" + +#: src/client/minimap.cpp +msgid "Minimap hidden" +msgstr "மினிமாப் மறைக்கப்பட்டுள்ளது" + +#: src/client/minimap.cpp +#, c-format +msgid "Minimap in radar mode, Zoom x%d" +msgstr "ரேடார் பயன்முறையில் மினிமேப், பெரிதாக்கு x%d" + +#: src/client/minimap.cpp +#, c-format +msgid "Minimap in surface mode, Zoom x%d" +msgstr "மேற்பரப்பு பயன்முறையில் மினிமாப், பெரிதாக்க x%d" + +#: src/client/minimap.cpp +msgid "Minimap in texture mode" +msgstr "அமைப்பு பயன்முறையில் மினிமாப்" + +#: src/client/shader.cpp +#, c-format +msgid "Failed to compile the \"%s\" shader." +msgstr "\"%s\" சேடரை தொகுக்கத் தவறிவிட்டது." + +#: src/client/shader.cpp +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "சேடர்கள் இயக்கப்பட்டன, ஆனால் சி.எல்.எச்.எல் இயக்கி ஆதரிக்கவில்லை." + +#. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" +#: src/content/mod_configuration.cpp +#, c-format +msgid "%s is missing:" +msgstr "%s காணவில்லை:" + +#: src/content/mod_configuration.cpp +msgid "" +"Install and enable the required mods, or disable the mods causing errors." +msgstr "" +"தேவையான மோட்களை நிறுவி இயக்கவும், அல்லது பிழைகளை ஏற்படுத்தும் மோட்களை முடக்கவும்." + +#: src/content/mod_configuration.cpp +msgid "" +"Note: this may be caused by a dependency cycle, in which case try updating " +"the mods." +msgstr "" +"குறிப்பு: இது ஒரு சார்பு சுழற்சியால் ஏற்படலாம், இந்த விசயத்தில் மோட்களைப் புதுப்பிக்க " +"முயற்சிக்கவும்." + +#: src/content/mod_configuration.cpp +msgid "Some mods have unsatisfied dependencies:" +msgstr "சில மோட்களில் திருப்தியற்ற சார்புநிலைகள் உள்ளன:" + +#: src/gui/guiChatConsole.cpp +msgid "Failed to open webpage" +msgstr "வலைப்பக்கத்தைத் திறக்கத் தவறிவிட்டது" + +#: src/gui/guiChatConsole.cpp +msgid "Opening webpage" +msgstr "வலைப்பக்கத்தைத் திறக்கும்" + +#: src/gui/guiFormSpecMenu.cpp +msgid "Proceed" +msgstr "தொடரவும்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "\"Aux1\" = climb down" +msgstr "\"AUX1\" = கீழே ஏறவும்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Autoforward" +msgstr "ஆட்டோஃபார்வார்ட்" + +#: src/gui/guiKeyChangeMenu.cpp src/settings_translation_file.cpp +msgid "Automatic jumping" +msgstr "தானியங்கி சம்பிங்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Aux1" +msgstr "AU1" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Backward" +msgstr "பின்னோக்கு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Block bounds" +msgstr "தொகுதி வரம்புகள்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Change camera" +msgstr "கேமராவை மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Command" +msgstr "கட்டளை" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Console" +msgstr "கன்சோல்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Dec. range" +msgstr "டிசம்பர் வீச்சு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Dec. volume" +msgstr "டிசம்பர் தொகுதி" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Double tap \"jump\" to toggle fly" +msgstr "பறக்க மாற்ற \"சம்ப்\" இரட்டை தட்டவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Drop" +msgstr "துளி" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Forward" +msgstr "முன்னோக்கி" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Inc. range" +msgstr "இன்க் வரம்பு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Inc. volume" +msgstr "இன்க் தொகுதி" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Inventory" +msgstr "சரக்கு" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Jump" +msgstr "தாவு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Key already in use" +msgstr "ஏற்கனவே பயன்பாட்டில் உள்ள விசை" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Keybindings." +msgstr "விசைப்பலகைகள்." + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Left" +msgstr "இடது" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Local command" +msgstr "உள்ளக கட்டளை" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Mute" +msgstr "முடக்கு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Next item" +msgstr "அடுத்த உருப்படி" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Prev. item" +msgstr "முந்தைய. உருப்படி" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Range select" +msgstr "வரம்பு தேர்ந்தெடுக்கவும்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Right" +msgstr "வலது" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Screenshot" +msgstr "திரைக்காட்சி" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Sneak" +msgstr "பதுங்கிக் கொள்ளுங்கள்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Toggle HUD" +msgstr "HUD ஐ மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle chat log" +msgstr "அரட்டை பதிவை மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle fast" +msgstr "வேகமாக மாறவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle fly" +msgstr "பறக்க மாற்று" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Toggle fog" +msgstr "மூடுபனி மாற்று" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle minimap" +msgstr "மினிமேப்பை மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Toggle noclip" +msgstr "Noclip ஐ மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "Toggle pitchmove" +msgstr "பிட்ச்மோவை மாற்றவும்" + +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp +msgid "Zoom" +msgstr "பெரிதாக்கு" + +#: src/gui/guiKeyChangeMenu.cpp +msgid "press key" +msgstr "விசையை அழுத்தவும்" + +#: src/gui/guiOpenURL.cpp +msgid "Open" +msgstr "திற" + +#: src/gui/guiOpenURL.cpp +msgid "Open URL?" +msgstr "திறந்த URL?" + +#: src/gui/guiOpenURL.cpp +msgid "Unable to open URL" +msgstr "முகவரி ஐ திறக்க முடியவில்லை" + +#: src/gui/guiPasswordChange.cpp +msgid "Change" +msgstr "மாற்றம்" + +#: src/gui/guiPasswordChange.cpp +msgid "New Password" +msgstr "புதிய கடவுச்சொல்" + +#: src/gui/guiPasswordChange.cpp +msgid "Old Password" +msgstr "பழைய கடவுச்சொல்" + +#: src/gui/guiPasswordChange.cpp +msgid "Passwords do not match!" +msgstr "கடவுச்சொற்கள் பொருந்தவில்லை!" + +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp +msgid "Exit" +msgstr "வெளியேறு" + +#: src/gui/guiVolumeChange.cpp +msgid "Muted" +msgstr "முடக்கிய" + +#: src/gui/guiVolumeChange.cpp +#, c-format +msgid "Sound Volume: %d%%" +msgstr "ஒலி தொகுதி:%d %%" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "நடுத்தர பொத்தான்" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "முடிந்தது!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "தொலை சேவையகம்" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "இயக்குப்பிடி" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "வழிதல் பட்டியல்" + +#: src/gui/touchscreenlayout.cpp +msgid "Toggle debug" +msgstr "பிழைத்திருத்தத்தை மாற்றவும்" + +#: src/network/clientpackethandler.cpp +msgid "" +"Another client is connected with this name. If your client closed " +"unexpectedly, try again in a minute." +msgstr "" +"மற்றொரு வாடிக்கையாளர் இந்த பெயருடன் இணைக்கப்பட்டுள்ளார். உங்கள் வாடிக்கையாளர் எதிர்பாராத " +"விதமாக மூடப்பட்டால், ஒரு நிமிடத்தில் மீண்டும் முயற்சிக்கவும்." + +#: src/network/clientpackethandler.cpp +msgid "Empty passwords are disallowed. Set a password and try again." +msgstr "" +"வெற்று கடவுச்சொற்கள் அனுமதிக்கப்படவில்லை. கடவுச்சொல்லை அமைத்து மீண்டும் முயற்சிக்கவும்." + +#: src/network/clientpackethandler.cpp +msgid "Internal server error" +msgstr "உள் சேவையக பிழை" + +#: src/network/clientpackethandler.cpp +msgid "Invalid password" +msgstr "தவறான கடவுச்சொல்" + +#. ~ DO NOT TRANSLATE THIS LITERALLY! +#. This is a special string which needs to contain the translation's +#. language code (e.g. "de" for German). +#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp +#: src/script/lua_api/l_mainmenu.cpp +msgid "LANG_CODE" +msgstr "Lang_code" + +#: src/network/clientpackethandler.cpp +msgid "" +"Name is not registered. To create an account on this server, click 'Register'" +msgstr "" +"பெயர் பதிவு செய்யப்படவில்லை. இந்த சேவையகத்தில் ஒரு கணக்கை உருவாக்க, 'பதிவு' என்பதைக் " +"சொடுக்கு செய்க" + +#: src/network/clientpackethandler.cpp +msgid "Name is taken. Please choose another name" +msgstr "பெயர் எடுக்கப்படுகிறது. மற்றொரு பெயரைத் தேர்வுசெய்க" + +#: src/network/clientpackethandler.cpp +msgid "Player name contains disallowed characters" +msgstr "பிளேயர் பெயரில் அனுமதிக்கப்படாத எழுத்துக்கள் உள்ளன" + +#: src/network/clientpackethandler.cpp +msgid "Player name not allowed" +msgstr "வீரர் பெயர் அனுமதிக்கப்படவில்லை" + +#: src/network/clientpackethandler.cpp +msgid "Server shutting down" +msgstr "சேவையகம் மூடப்படுகிறது" + +#: src/network/clientpackethandler.cpp +msgid "" +"The server has experienced an internal error. You will now be disconnected." +msgstr "சேவையகம் ஒரு உள் பிழையை அனுபவித்துள்ளது. நீங்கள் இப்போது துண்டிக்கப்படுவீர்கள்." + +#: src/network/clientpackethandler.cpp +msgid "The server is running in singleplayer mode. You cannot connect." +msgstr "சேவையகம் சிங்கிள் பிளேயர் பயன்முறையில் இயங்குகிறது. நீங்கள் இணைக்க முடியாது." + +#: src/network/clientpackethandler.cpp +msgid "Too many users" +msgstr "அதிகமான பயனர்கள்" + +#: src/network/clientpackethandler.cpp +msgid "Unknown disconnect reason." +msgstr "அறியப்படாத துண்டிப்பு காரணம்." + +#: src/network/clientpackethandler.cpp +msgid "" +"Your client sent something the server didn't expect. Try reconnecting or " +"updating your client." +msgstr "" +"உங்கள் வாடிக்கையாளர் சேவையகம் எதிர்பார்க்காத ஒன்றை அனுப்பினார். உங்கள் வாடிக்கையாளரை மீண்டும் " +"இணைக்க அல்லது புதுப்பிக்க முயற்சிக்கவும்." + +#: src/network/clientpackethandler.cpp +msgid "" +"Your client's version is not supported.\n" +"Please contact the server administrator." +msgstr "" +"உங்கள் வாடிக்கையாளரின் பதிப்பு ஆதரிக்கப்படவில்லை.\n" +" சேவையக நிர்வாகியை தொடர்பு கொள்ளவும்." + +#: src/server.cpp +#, c-format +msgid "%s while shutting down: " +msgstr "மூடும்போது %s: " + +#: src/settings_translation_file.cpp +msgid "" +"(X,Y,Z) offset of fractal from world center in units of 'scale'.\n" +"Can be used to move a desired point to (0, 0) to create a\n" +"suitable spawn point, or to allow 'zooming in' on a desired\n" +"point by increasing 'scale'.\n" +"The default is tuned for a suitable spawn point for Mandelbrot\n" +"sets with default parameters, it may need altering in other\n" +"situations.\n" +"Range roughly -2 to 2. Multiply by 'scale' for offset in nodes." +msgstr "" +"(X, ஒய், z) 'அளவுகோல்' அலகுகளில் உலக மையத்திலிருந்து ஃப்ராக்டலை ஈடுசெய்யவும்.\n" +" ஒரு உருவாக்க விரும்பிய புள்ளியை (0, 0) நகர்த்த பயன்படுத்தலாம்\n" +" பொருத்தமான ச்பான் புள்ளி\n" +" 'அளவை' அதிகரிப்பதன் மூலம் புள்ளி.\n" +" மாண்டல்பிரோட்டுக்கு பொருத்தமான ச்பான் புள்ளிக்கு இயல்புநிலை சரிசெய்யப்படுகிறது\n" +" இயல்புநிலை அளவுருக்களுடன் அமைக்கிறது, இது மற்றவற்றில் மாற்ற வேண்டியிருக்கலாம்\n" +" சூழ்நிலைகள்.\n" +" வரம்பு -2 முதல் 2. வரை. முனைகளில் ஆஃப்செட்டுக்கு 'அளவுகோல்' மூலம் பெருக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"(X,Y,Z) scale of fractal in nodes.\n" +"Actual fractal size will be 2 to 3 times larger.\n" +"These numbers can be made very large, the fractal does\n" +"not have to fit inside the world.\n" +"Increase these to 'zoom' into the detail of the fractal.\n" +"Default is for a vertically-squashed shape suitable for\n" +"an island, set all 3 numbers equal for the raw shape." +msgstr "" +"(X, ஒய், z) முனைகளில் ஃப்ராக்டலின் அளவு.\n" +" உண்மையான பின்னம் அளவு 2 முதல் 3 மடங்கு பெரியதாக இருக்கும்.\n" +" இந்த எண்களை மிகப் பெரியதாக மாற்றலாம், பின்னல் செய்கிறது\n" +" உலகிற்குள் பொருந்த வேண்டியதில்லை.\n" +" இவற்றை 'சூம்' என அதிகரிக்கவும்.\n" +" இயல்புநிலை என்பது செங்குத்தாக சதுர வடிவத்திற்கு ஏற்றது\n" +" ஒரு தீவு, அனைத்து 3 எண்களையும் மூல வடிவத்திற்கு சமமாக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the shape/size of ridged mountains." +msgstr "அகற்றப்பட்ட மலைகளின் வடிவம்/அளவைக் கட்டுப்படுத்தும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the shape/size of rolling hills." +msgstr "உருளும் மலைகளின் வடிவம்/அளவைக் கட்டுப்படுத்தும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the shape/size of step mountains." +msgstr "படி மலைகளின் வடிவம்/அளவைக் கட்டுப்படுத்தும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the size/occurrence of ridged mountain ranges." +msgstr "2 டி ஒலி அகற்றப்பட்ட மலைத்தொடர்களின் அளவு/நிகழ்வைக் கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the size/occurrence of rolling hills." +msgstr "ரோலிங் மலைகளின் அளவு/நிகழ்வைக் கட்டுப்படுத்தும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "2D noise that controls the size/occurrence of step mountain ranges." +msgstr "படி மலைத்தொடர்களின் அளவு/நிகழ்வைக் கட்டுப்படுத்தும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "2D noise that locates the river valleys and channels." +msgstr "நதி பள்ளத்தாக்குகள் மற்றும் சேனல்களைக் கண்டுபிடிக்கும் 2 டி ஒலி." + +#: src/settings_translation_file.cpp +msgid "3D" +msgstr "ZD" + +#: src/settings_translation_file.cpp +msgid "3D clouds" +msgstr "3 டி மேகங்கள்" + +#: src/settings_translation_file.cpp +msgid "3D mode" +msgstr "3 டி பயன்முறை" + +#: src/settings_translation_file.cpp +msgid "3D mode parallax strength" +msgstr "3D பயன்முறை இடமாறு வலிமை" + +#: src/settings_translation_file.cpp +msgid "3D noise defining giant caverns." +msgstr "3D ஒலி மாபெரும் குகைகளை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "" +"3D noise defining mountain structure and height.\n" +"Also defines structure of floatland mountain terrain." +msgstr "" +"3D ஒலி மலை அமைப்பு மற்றும் உயரத்தை வரையறுக்கிறது.\n" +" ஃப்ளோட்லேண்ட் மலை நிலப்பரப்பின் கட்டமைப்பையும் வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "" +"3D noise defining structure of floatlands.\n" +"If altered from the default, the noise 'scale' (0.7 by default) may need\n" +"to be adjusted, as floatland tapering functions best when this noise has\n" +"a value range of approximately -2.0 to 2.0." +msgstr "" +"3 டி ஒலி ஃப்ளோட்லேண்ட்சின் கட்டமைப்பை வரையறுக்கிறது.\n" +" இயல்புநிலையிலிருந்து மாற்றப்பட்டால், ஒலி 'அளவு' (இயல்பாக 0.7) தேவைப்படலாம்\n" +" சரிசெய்யப்பட வேண்டும், இந்த ஒலி இருக்கும்போது ஃப்ளோட்லேண்ட் டேப்பரிங் சிறப்பாக " +"செயல்படுகிறது\n" +" தோராயமாக -2.0 முதல் 2.0 வரை மதிப்பு வரம்பு." + +#: src/settings_translation_file.cpp +msgid "3D noise defining structure of river canyon walls." +msgstr "3 டி ஒலி நதி பள்ளத்தாக்கு சுவர்களின் கட்டமைப்பை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "3D noise defining terrain." +msgstr "3D ஒலி நிலப்பரப்பை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." +msgstr "மலை ஓவர்ஆங்க்கள், குன்றுகள் போன்றவற்றுக்கான 3 டி ஒலி பொதுவாக சிறிய மாறுபாடுகள்." + +#: src/settings_translation_file.cpp +msgid "3D noise that determines number of dungeons per mapchunk." +msgstr "3 டி ஒலி ஒரு மேப்சங்கிற்கு நிலவறைகளின் எண்ணிக்கையை நிர்ணயிக்கும்." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"3D support.\n" +"Currently supported:\n" +"- none: no 3d output.\n" +"- anaglyph: cyan/magenta color 3d.\n" +"- interlaced: odd/even line based polarization screen support.\n" +"- topbottom: split screen top/bottom.\n" +"- sidebyside: split screen side by side.\n" +"- crossview: Cross-eyed 3d" +msgstr "" +"3D ஆதரவு.\n" +" தற்போது ஆதரிக்கப்படுகிறது:\n" +" - எதுவுமில்லை: 3D வெளியீடு இல்லை.\n" +" - அனக்லிஃப்: சியான்/மெசந்தா கலர் 3 டி.\n" +" - ஒன்றோடொன்று: ஒற்றைப்படை/கூட வரி அடிப்படையிலான துருவமுனைப்பு திரை ஆதரவு.\n" +" - டாப் பாட்டம்: திரை டாப்/கீழே.\n" +" - சைட்பைடு: திரையை அருகருகே பிரிக்கவும்.\n" +" - குறுக்குவெட்டு: குறுக்கு கண்கள் 3D\n" +" ஒன்றிணைந்த பயன்முறையில் சேடர்களை இயக்க வேண்டும் என்பதை நினைவில் கொள்க." + +#: src/settings_translation_file.cpp +msgid "" +"A chosen map seed for a new map, leave empty for random.\n" +"Will be overridden when creating a new world in the main menu." +msgstr "" +"புதிய வரைபடத்திற்கு தேர்ந்தெடுக்கப்பட்ட வரைபட விதை, சீரற்றதாக காலியாக விடவும்.\n" +" முதன்மையான பட்டியலில் புதிய உலகத்தை உருவாக்கும்போது மீறப்படும்." + +#: src/settings_translation_file.cpp +msgid "A message to be displayed to all clients when the server crashes." +msgstr "" +"சேவையகம் செயலிழக்கும்போது அனைத்து வாடிக்கையாளர்களுக்கும் காண்பிக்கப்பட வேண்டிய செய்தி." + +#: src/settings_translation_file.cpp +msgid "A message to be displayed to all clients when the server shuts down." +msgstr "" +"சேவையகம் மூடப்படும் போது அனைத்து வாடிக்கையாளர்களுக்கும் காண்பிக்கப்பட வேண்டிய செய்தி." + +#: src/settings_translation_file.cpp +msgid "ABM interval" +msgstr "ஏபிஎம் இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "ABM time budget" +msgstr "ஏபிஎம் நேர பட்செட்" + +#: src/settings_translation_file.cpp +msgid "Absolute limit of queued blocks to emerge" +msgstr "வரிசைப்படுத்தப்பட்ட தொகுதிகளின் முழுமையான வரம்பு வெளிப்படும்" + +#: src/settings_translation_file.cpp +msgid "Acceleration in air" +msgstr "காற்றில் முடுக்கம்" + +#: src/settings_translation_file.cpp +msgid "Acceleration of gravity, in nodes per second per second." +msgstr "ஈர்ப்பு முடுக்கம், நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "Active Block Modifiers" +msgstr "செயலில் தொகுதி மாற்றியமைப்பாளர்கள்" + +#: src/settings_translation_file.cpp +msgid "Active block management interval" +msgstr "செயலில் தொகுதி மேலாண்மை இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "Active block range" +msgstr "செயலில் தொகுதி வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Active object send range" +msgstr "செயலில் உள்ள பொருள் அனுப்பு வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Adjust the detected display density, used for scaling UI elements." +msgstr "" +"கண்டறியப்பட்ட காட்சி அடர்த்தியை சரிசெய்யவும், இடைமுகம் கூறுகளை அளவிடுவதற்குப் " +"பயன்படுத்தப்படுகிறது." + +#: src/settings_translation_file.cpp +#, c-format +msgid "" +"Adjusts the density of the floatland layer.\n" +"Increase value to increase density. Can be positive or negative.\n" +"Value = 0.0: 50% of volume is floatland.\n" +"Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" +"to be sure) creates a solid floatland layer." +msgstr "" +"ஃப்ளோட்லேண்ட் லேயரின் அடர்த்தியை சரிசெய்கிறது.\n" +" அடர்த்தியை அதிகரிக்க மதிப்பை அதிகரிக்கவும். நேர்மறை அல்லது எதிர்மறையாக இருக்கலாம்.\n" +" மதிப்பு = 0.0: 50% தொகுதி மிதவை.\n" +" மதிப்பு = 2.0 ('mgv7_np_floatland' ஐப் பொறுத்து அதிகமாக இருக்கலாம், எப்போதும் " +"சோதனை செய்யுங்கள்\n" +" நிச்சயமாக) ஒரு திட மிதவை அடுக்கை உருவாக்குகிறது." + +#: src/settings_translation_file.cpp +msgid "Admin name" +msgstr "நிர்வாக பெயர்" + +#: src/settings_translation_file.cpp +msgid "Advanced" +msgstr "மேம்பட்ட" + +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "பிளாட்டுக்கு பதிலாக 3D முகில் தோற்றத்தைப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "Allows liquids to be translucent." +msgstr "திரவங்கள் ஒளிஊடுருவக்கூடியதாக இருக்க அனுமதிக்கிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Alters the light curve by applying 'gamma correction' to it.\n" +"Higher values make middle and lower light levels brighter.\n" +"Value '1.0' leaves the light curve unaltered.\n" +"This only has significant effect on daylight and artificial\n" +"light, it has very little effect on natural night light." +msgstr "" +"அதில் 'காமா திருத்தம்' பயன்படுத்துவதன் மூலம் ஒளி வளைவை மாற்றுகிறது.\n" +" அதிக மதிப்புகள் நடுத்தர மற்றும் கீழ் ஒளி நிலைகளை பிரகாசமாக்குகின்றன.\n" +" மதிப்பு '1.0' ஒளி வளைவை மாற்றாமல் விட்டுவிடுகிறது.\n" +" இது பகல் மற்றும் செயற்கை ஆகியவற்றில் குறிப்பிடத்தக்க தாக்கத்தை ஏற்படுத்துகிறது\n" +" ஒளி, இது இயற்கையான இரவு ஒளியில் மிகக் குறைந்த விளைவைக் கொண்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "Always fly fast" +msgstr "எப்போதும் வேகமாக பறக்க" + +#: src/settings_translation_file.cpp +msgid "Ambient occlusion gamma" +msgstr "சுற்றுப்புற மறைவு காமா" + +#: src/settings_translation_file.cpp +msgid "Amplifies the valleys." +msgstr "பள்ளத்தாக்குகளை பெருக்குகிறது." + +#: src/settings_translation_file.cpp +msgid "Anisotropic filtering" +msgstr "அனிசோட்ரோபிக் வடிகட்டுதல்" + +#: src/settings_translation_file.cpp +msgid "Announce server" +msgstr "சேவையகத்தை அறிவிக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Announce to this serverlist." +msgstr "இந்த சேவையகத்திற்கு அறிவிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Anti-aliasing scale" +msgstr "எதிர்ப்பு மாற்றுப்பெயர் அளவு" + +#: src/settings_translation_file.cpp +msgid "Antialiasing method" +msgstr "ஆன்டிலிசிங் முறை" + +#: src/settings_translation_file.cpp +msgid "Anticheat flags" +msgstr "ஆன்டிசீட் கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Anticheat movement tolerance" +msgstr "ஆன்டிகீட் இயக்கம் சகிப்புத்தன்மை" + +#: src/settings_translation_file.cpp +msgid "Append item name" +msgstr "உருப்படி பெயரைச் சேர்க்கவும்" + +#: src/settings_translation_file.cpp +msgid "Append item name to tooltip." +msgstr "உதவிக்குறிப்பில் உருப்படி பெயரைச் சேர்க்கவும்." + +#: src/settings_translation_file.cpp +msgid "Apple trees noise" +msgstr "ஆப்பிள் மரங்கள் ஒலி" + +#: src/settings_translation_file.cpp +msgid "" +"Apply dithering to reduce color banding artifacts.\n" +"Dithering significantly increases the size of losslessly-compressed\n" +"screenshots and it works incorrectly if the display or operating system\n" +"performs additional dithering or if the color channels are not quantized\n" +"to 8 bits.\n" +"With OpenGL ES, dithering only works if the shader supports high\n" +"floating-point precision and it may have a higher performance impact." +msgstr "" +"வண்ண பேண்டிங் கலைப்பொருட்களைக் குறைக்க டிதீயிங்கைப் பயன்படுத்துங்கள்.\n" +" குறைப்பது இழப்பற்ற முறையில் சுருக்கப்பட்ட அளவை கணிசமாக அதிகரிக்கிறது\n" +" காட்சி அல்லது இயக்க முறைமை என்றால் திரை சாட்கள் மற்றும் அது தவறாக செயல்படுகிறது\n" +" கூடுதல் டூரிங் செய்கிறது அல்லது வண்ண சேனல்கள் அளவிடப்படாவிட்டால்\n" +" 8 பிட்களுக்கு.\n" +" ஓபன்சிஎல் எச் உடன், சேடர் உயர்ந்ததை ஆதரித்தால் மட்டுமே டூரிங் வேலை செய்யும்\n" +" மிதக்கும்-புள்ளி துல்லியம் மற்றும் இது அதிக செயல்திறன் தாக்கத்தை ஏற்படுத்தக்கூடும்." + +#: src/settings_translation_file.cpp +msgid "Apply specular shading to nodes." +msgstr "முனைகளுக்கு ஏகப்பட்ட நிழலைப் பயன்படுத்துங்கள்." + +#: src/settings_translation_file.cpp +msgid "Arm inertia" +msgstr "கை மந்தநிலை" + +#: src/settings_translation_file.cpp +msgid "" +"Arm inertia, gives a more realistic movement of\n" +"the arm when the camera moves." +msgstr "" +"கை மந்தநிலை, மிகவும் யதார்த்தமான இயக்கத்தை அளிக்கிறது\n" +" கேமரா நகரும் போது கை." + +#: src/settings_translation_file.cpp +msgid "Ask to reconnect after crash" +msgstr "விபத்துக்குப் பிறகு மீண்டும் இணைக்கச் சொல்லுங்கள்" + +#: src/settings_translation_file.cpp +msgid "" +"At this distance the server will aggressively optimize which blocks are sent " +"to\n" +"clients.\n" +"Small values potentially improve performance a lot, at the expense of " +"visible\n" +"rendering glitches (some blocks might not be rendered correctly in caves).\n" +"Setting this to a value greater than max_block_send_distance disables this\n" +"optimization.\n" +"Stated in MapBlocks (16 nodes)." +msgstr "" +"இந்த தூரத்தில் எந்த தொகுதிகள் அனுப்பப்படுகின்றன என்பதை சேவையகம் ஆக்ரோசமாக மேம்படுத்தும்\n" +" வாடிக்கையாளர்கள்.\n" +" சிறிய மதிப்புகள் செயல்திறனை நிறைய மேம்படுத்தக்கூடும், புலப்படும் செலவில்\n" +" குறைபாடுகளை வழங்குதல் (சில தொகுதிகள் குகைகளில் சரியாக வழங்கப்படாமல் போகலாம்).\n" +" இதை max_block_send_distance ஐ விட அதிகமான மதிப்புக்கு அமைப்பது இதை " +"முடக்குகிறது\n" +" தேர்வுமுறை.\n" +" மேப் பிளாக்சில் (16 முனைகள்) கூறப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"At this distance the server will perform a simpler and cheaper occlusion " +"check.\n" +"Smaller values potentially improve performance, at the expense of " +"temporarily visible\n" +"rendering glitches (missing blocks).\n" +"This is especially useful for very large viewing range (upwards of 500).\n" +"Stated in MapBlocks (16 nodes)." +msgstr "" +"இந்த தூரத்தில் சேவையகம் எளிமையான மற்றும் மலிவான மறைவு சோதனை செய்யும்.\n" +" சிறிய மதிப்புகள் தற்காலிகமாக காணக்கூடிய செலவில் செயல்திறனை மேம்படுத்தக்கூடும்\n" +" குறைபாடுகளை வழங்குதல் (காணாமல் போன தொகுதிகள்).\n" +" இது மிகப் பெரிய பார்வை வரம்பிற்கு மிகவும் பயனுள்ளதாக இருக்கும் (500 க்கு மேல்).\n" +" மேப் பிளாக்சில் (16 முனைகள்) கூறப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "Audio" +msgstr "ஆடியோ" + +#: src/settings_translation_file.cpp +msgid "Automatically jump up single-node obstacles." +msgstr "ஒற்றை-முனை தடைகளை தானாக மேலே குதிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Automatically report to the serverlist." +msgstr "சேவையகத்திற்கு தானாகவே புகாரளிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Autoscaling mode" +msgstr "ஆட்டோச்கேலிங் பயன்முறை" + +#: src/settings_translation_file.cpp +msgid "Aux1 key for climbing/descending" +msgstr "ஏறுதல்/இறங்குவதற்கான AUX1 விசை" + +#: src/settings_translation_file.cpp +msgid "Base ground level" +msgstr "அடிப்படை தரை மட்டத்தில்" + +#: src/settings_translation_file.cpp +msgid "Base terrain height." +msgstr "அடிப்படை நிலப்பரப்பு உயரம்." + +#: src/settings_translation_file.cpp +msgid "Base texture size" +msgstr "அடிப்படை அமைப்பு அளவு" + +#: src/settings_translation_file.cpp +msgid "Basic privileges" +msgstr "அடிப்படை சலுகைகள்" + +#: src/settings_translation_file.cpp +msgid "Beach noise" +msgstr "கடற்கரை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Beach noise threshold" +msgstr "கடற்கரை ஒலி வாசல்" + +#: src/settings_translation_file.cpp +msgid "Bilinear filtering" +msgstr "பிலினியர் வடிகட்டுதல்" + +#: src/settings_translation_file.cpp +msgid "Bind address" +msgstr "முகவரியை பிணைக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Biome API" +msgstr "பயோம் பநிஇ" + +#: src/settings_translation_file.cpp +msgid "Biome noise" +msgstr "பயோம் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Block bounds HUD radius" +msgstr "தொகுதி வரம்புகள் HUD ஆரம்" + +#: src/settings_translation_file.cpp +msgid "Block cull optimize distance" +msgstr "பிளாக் கல் தூரத்தை மேம்படுத்துகிறது" + +#: src/settings_translation_file.cpp +msgid "Block send optimize distance" +msgstr "பிளாக் அனுப்பு உகந்த தூரத்தை அனுப்புங்கள்" + +#: src/settings_translation_file.cpp +msgid "Bobbing" +msgstr "பாபிங்" + +#: src/settings_translation_file.cpp +msgid "Bold and italic font path" +msgstr "தைரியமான மற்றும் சாய்வு எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Bold and italic monospace font path" +msgstr "தைரியமான மற்றும் சாய்வு மோனோச்பேச் எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Bold font path" +msgstr "தைரியமான எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Bold monospace font path" +msgstr "தைரியமான மோனோச்பேச் எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Build inside player" +msgstr "பிளேயருக்குள் உருவாக்குங்கள்" + +#: src/settings_translation_file.cpp +msgid "Builtin" +msgstr "பில்டின்" + +#: src/settings_translation_file.cpp +msgid "Camera" +msgstr "கேமரா" + +#: src/settings_translation_file.cpp +msgid "Camera smoothing" +msgstr "கேமரா மென்மையாக்குதல்" + +#: src/settings_translation_file.cpp +msgid "Camera smoothing in cinematic mode" +msgstr "சினிமா பயன்முறையில் கேமரா மென்மையாக்குகிறது" + +#: src/settings_translation_file.cpp +msgid "Cave noise" +msgstr "குகை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Cave noise #1" +msgstr "குகை ஒலி #1" + +#: src/settings_translation_file.cpp +msgid "Cave noise #2" +msgstr "குகை ஒலி #2" + +#: src/settings_translation_file.cpp +msgid "Cave width" +msgstr "குகை அகலம்" + +#: src/settings_translation_file.cpp +msgid "Cave1 noise" +msgstr "குகை 1 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Cave2 noise" +msgstr "குகை 2 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Cavern limit" +msgstr "குகை வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Cavern noise" +msgstr "குகை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Cavern taper" +msgstr "குகை டேப்பர்" + +#: src/settings_translation_file.cpp +msgid "Cavern threshold" +msgstr "குகை வாசல்" + +#: src/settings_translation_file.cpp +msgid "Cavern upper limit" +msgstr "குகை மேல் வரம்பு" + +#: src/settings_translation_file.cpp +msgid "" +"Center of light curve boost range.\n" +"Where 0.0 is minimum light level, 1.0 is maximum light level." +msgstr "" +"ஒளி வளைவு பூச்ட் வரம்பின் மையம்.\n" +" 0.0 குறைந்தபட்ச ஒளி நிலை, 1.0 அதிகபட்ச ஒளி நிலை." + +#: src/settings_translation_file.cpp +msgid "Chat command time message threshold" +msgstr "அரட்டை கட்டளை நேர செய்தி வாசல்" + +#: src/settings_translation_file.cpp +msgid "Chat commands" +msgstr "அரட்டை கட்டளைகள்" + +#: src/settings_translation_file.cpp +msgid "Chat font size" +msgstr "எழுத்துரு அளவு அரட்டை" + +#: src/settings_translation_file.cpp +msgid "Chat log level" +msgstr "அரட்டை பதிவு நிலை" + +#: src/settings_translation_file.cpp +msgid "Chat message count limit" +msgstr "அரட்டை செய்தி எண்ணிக்கை வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Chat message format" +msgstr "அரட்டை செய்தி வடிவம்" + +#: src/settings_translation_file.cpp +msgid "Chat message kick threshold" +msgstr "அரட்டை செய்தி கிக் வாசல்" + +#: src/settings_translation_file.cpp +msgid "Chat message max length" +msgstr "அரட்டை செய்தி அதிகபட்ச நீளம்" + +#: src/settings_translation_file.cpp +msgid "Chat weblinks" +msgstr "வெப்லிங்க்ச் அரட்டை" + +#: src/settings_translation_file.cpp +msgid "Chunk size" +msgstr "துண்டு அளவு" + +#: src/settings_translation_file.cpp +msgid "" +"Clickable weblinks (middle-click or Ctrl+left-click) enabled in chat console " +"output." +msgstr "" +"சொடுக்கு செய்யக்கூடிய வலை இணைப்புகள் (நடுத்தர சொடுக்கு அல்லது சி.டி.ஆர்.எல்+இடது-" +"கிளிக்) அரட்டை கன்சோல் வெளியீட்டில் இயக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Client" +msgstr "கிளீன்" + +#: src/settings_translation_file.cpp +msgid "Client Mesh Chunksize" +msgstr "கிளையன்ட் கண்ணி துண்டுகள்" + +#: src/settings_translation_file.cpp +msgid "Client and Server" +msgstr "வாங்கி மற்றும் சேவையகம்" + +#: src/settings_translation_file.cpp +msgid "Client modding" +msgstr "கிளையன்ட் மோடிங்" + +#: src/settings_translation_file.cpp +msgid "Client side modding restrictions" +msgstr "கிளையன்ட் சைட் மோடிங் கட்டுப்பாடுகள்" + +#: src/settings_translation_file.cpp +msgid "Client-side Modding" +msgstr "கிளையன்ட் பக்க மோடிங்" + +#: src/settings_translation_file.cpp +msgid "Client-side node lookup range restriction" +msgstr "கிளையன்ட் பக்க முனை தேடல் வரம்பு கட்டுப்பாடு" + +#: src/settings_translation_file.cpp +msgid "Climbing speed" +msgstr "ஏறும் விரைவு" + +#: src/settings_translation_file.cpp +msgid "Cloud radius" +msgstr "முகில் ஆரம்" + +#: src/settings_translation_file.cpp +msgid "Clouds" +msgstr "மேகங்கள்" + +#: src/settings_translation_file.cpp +msgid "Clouds in menu" +msgstr "பட்டியலில் மேகங்கள்" + +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Colored fog" +msgstr "வண்ண மூடுபனி" + +#: src/settings_translation_file.cpp +msgid "Colored shadows" +msgstr "வண்ண நிழல்கள்" + +#: src/settings_translation_file.cpp +msgid "" +"Comma-separated list of AL and ALC extensions that should not be used.\n" +"Useful for testing. See al_extensions.[h,cpp] for details." +msgstr "" +"பயன்படுத்தக் கூடாத AL மற்றும் ALC நீட்டிப்புகளின் கமாவால் பிரிக்கப்பட்ட பட்டியல்.\n" +" சோதனைக்கு பயனுள்ளதாக இருக்கும். விவரங்களுக்கு Al_extensions. [H, CPP] ஐப் பார்க்கவும்." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Comma-separated list of flags to hide in the content repository.\n" +"\"nonfree\" can be used to hide packages which do not qualify as 'free " +"software',\n" +"as defined by the Free Software Foundation.\n" +"You can also specify content ratings.\n" +"These flags are independent from Luanti versions,\n" +"so see a full list at https://content.luanti.org/help/content_flags/" +msgstr "" +"உள்ளடக்க களஞ்சியத்தில் மறைக்க கமாவால் பிரிக்கப்பட்ட கொடிகளின் பட்டியல்.\n" +" 'இலவச மென்பொருள்' என்று தகுதி பெறாத தொகுப்புகளை மறைக்க \"இலவசம்\" " +"பயன்படுத்தப்படலாம்,\n" +" இலவச மென்பொருள் அறக்கட்டளையால் வரையறுக்கப்பட்டுள்ளது.\n" +" உள்ளடக்க மதிப்பீடுகளையும் நீங்கள் குறிப்பிடலாம்.\n" +" இந்த கொடிகள் லுவாண்டி பதிப்புகளிலிருந்து சுயாதீனமானவை,\n" +" எனவே ஒரு முழு பட்டியலையும் https://content.minetest.net/help/content_flags/ " +"இல் காண்க" + +#: src/settings_translation_file.cpp +msgid "" +"Comma-separated list of mods that are allowed to access HTTP APIs, which\n" +"allow them to upload and download data to/from the internet." +msgstr "" +"HTTP பநிஇ களை அணுக அனுமதிக்கப்பட்ட மோட்களின் கமாவால் பிரிக்கப்பட்ட பட்டியல், இது\n" +" இணையத்திலிருந்து/தரவைப் பதிவேற்றவும் பதிவிறக்கவும் அவர்களை அனுமதிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Comma-separated list of trusted mods that are allowed to access insecure\n" +"functions even when mod security is on (via request_insecure_environment())." +msgstr "" +"பாதுகாப்பற்றதை அணுக அனுமதிக்கப்பட்ட நம்பகமான மோட்களின் கமாவால் பிரிக்கப்பட்ட பட்டியல்\n" +" மோட் பாதுகாப்பு இயக்கத்தில் இருக்கும்போது கூட செயல்பாடுகள் " +"(Quest_insecure_enveronment () வழியாக)." + +#: src/settings_translation_file.cpp +msgid "" +"Compression level to use when saving mapblocks to disk.\n" +"-1 - use default compression level\n" +"0 - least compression, fastest\n" +"9 - best compression, slowest" +msgstr "" +"மேப் பிளாக்சை வட்டில் சேமிக்கும்போது பயன்படுத்த சுருக்க நிலை.\n" +" -1 - இயல்புநிலை சுருக்க அளவைப் பயன்படுத்தவும்\n" +" 0 - குறைந்த சுருக்க, வேகமாக\n" +" 9 - சிறந்த சுருக்க, மெதுவாக" + +#: src/settings_translation_file.cpp +msgid "" +"Compression level to use when sending mapblocks to the client.\n" +"-1 - use default compression level\n" +"0 - least compression, fastest\n" +"9 - best compression, slowest" +msgstr "" +"கிளையண்டிற்கு மேப் பிளாக்சை அனுப்பும்போது பயன்படுத்த வேண்டிய சுருக்க நிலை.\n" +" -1 - இயல்புநிலை சுருக்க அளவைப் பயன்படுத்தவும்\n" +" 0 - குறைந்த சுருக்க, வேகமாக\n" +" 9 - சிறந்த சுருக்க, மெதுவானது" + +#: src/settings_translation_file.cpp +msgid "Connect glass" +msgstr "கண்ணாடி இணைக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Connect to external media server" +msgstr "வெளிப்புற மீடியா சேவையகத்துடன் இணைக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Connects glass if supported by node." +msgstr "முனையால் ஆதரிக்கப்பட்டால் கண்ணாடியை இணைக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Console alpha" +msgstr "கன்சோல் ஆல்பா" + +#: src/settings_translation_file.cpp +msgid "Console color" +msgstr "கன்சோல் நிறம்" + +#: src/settings_translation_file.cpp +msgid "Console height" +msgstr "கன்சோல் உயரம்" + +#: src/settings_translation_file.cpp +msgid "Content Repository" +msgstr "உள்ளடக்க களஞ்சியம்" + +#: src/settings_translation_file.cpp +msgid "ContentDB Flag Blacklist" +msgstr "ContentDB கொடி தடுப்புப்பட்டியல்" + +#: src/settings_translation_file.cpp +msgid "ContentDB Max Concurrent Downloads" +msgstr "ContentDB அதிகபட்ச பதிவிறக்கங்கள்" + +#: src/settings_translation_file.cpp +msgid "ContentDB URL" +msgstr "ContentDB முகவரி" + +#: src/settings_translation_file.cpp +msgid "" +"Controls length of day/night cycle.\n" +"Examples:\n" +"72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged." +msgstr "" +"பகல்/இரவு சுழற்சியின் நீளத்தைக் கட்டுப்படுத்துகிறது.\n" +" எடுத்துக்காட்டுகள்:\n" +" 72 = 20 நிமிடங்கள், 360 = 4 நிமிடங்கள், 1 = 24 மணிநேரம், 0 = பகல்/இரவு/மாறாமல் " +"இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "" +"Controls sinking speed in liquid when idling. Negative values will cause\n" +"you to rise instead." +msgstr "" +"சும்மா இருக்கும்போது திரவத்தில் மூழ்கும் வேகத்தை கட்டுப்படுத்துகிறது. எதிர்மறை மதிப்புகள் " +"ஏற்படுத்தும்\n" +" அதற்கு பதிலாக நீங்கள் உயர வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Controls steepness/depth of lake depressions." +msgstr "ஏரி மந்தநிலைகளின் செங்குத்தான/ஆழத்தை கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Controls steepness/height of hills." +msgstr "மலைகளின் செங்குத்தான/உயரத்தை கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Controls width of tunnels, a smaller value creates wider tunnels.\n" +"Value >= 10.0 completely disables generation of tunnels and avoids the\n" +"intensive noise calculations." +msgstr "" +"சுரங்கங்களின் அகலத்தைக் கட்டுப்படுத்துகிறது, ஒரு சிறிய மதிப்பு பரந்த சுரங்கங்களை " +"உருவாக்குகிறது.\n" +" மதிப்பு> = 10.0 சுரங்கங்களின் தலைமுறையை முற்றிலுமாக முடக்குகிறது மற்றும் " +"தவிர்க்கிறது\n" +" தீவிர ஒலி கணக்கீடுகள்." + +#: src/settings_translation_file.cpp +msgid "Crash message" +msgstr "செயலிழப்பு செய்தி" + +#: src/settings_translation_file.cpp +msgid "Crosshair alpha" +msgstr "குறுக்குவழி ஆல்பா" + +#: src/settings_translation_file.cpp +msgid "" +"Crosshair alpha (opaqueness, between 0 and 255).\n" +"This also applies to the object crosshair." +msgstr "" +"குறுக்குவழி ஆல்பா (ஒளிபுகா, 0 மற்றும் 255 க்கு இடையில்).\n" +" இது குறுக்கு நாற்காலிக்கும் பொருந்தும்." + +#: src/settings_translation_file.cpp +msgid "Crosshair color" +msgstr "குறுக்கு நாற்காலி நிறம்" + +#: src/settings_translation_file.cpp +msgid "" +"Crosshair color (R,G,B).\n" +"Also controls the object crosshair color" +msgstr "" +"குறுக்குவழி நிறம் (ஆர், சி, பி).\n" +" பொருள் குறுக்குவழி நிறத்தையும் கட்டுப்படுத்துகிறது" + +#: src/settings_translation_file.cpp +msgid "Debug log file size threshold" +msgstr "பிழைத்திருத்த பதிவு கோப்பு அளவு வாசல்" + +#: src/settings_translation_file.cpp +msgid "Debug log level" +msgstr "பதிவு நிலை பிழைத்திருத்த" + +#: src/settings_translation_file.cpp +msgid "Debugging" +msgstr "பிழைத்திருத்தம்" + +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dedicated server step" +msgstr "அர்ப்பணிக்கப்பட்ட சேவையக படி" + +#: src/settings_translation_file.cpp +msgid "Default acceleration" +msgstr "இயல்புநிலை முடுக்கம்" + +#: src/settings_translation_file.cpp +msgid "" +"Default maximum number of forceloaded mapblocks.\n" +"Set this to -1 to disable the limit." +msgstr "" +"இயல்புநிலை அதிகபட்ச ஃபோர்செலோடட் மேப் பிளாக்சின் எண்ணிக்கை.\n" +" வரம்பை முடக்க இதை -1 ஆக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Default password" +msgstr "இயல்புநிலை கடவுச்சொல்" + +#: src/settings_translation_file.cpp +msgid "Default privileges" +msgstr "இயல்புநிலை சலுகைகள்" + +#: src/settings_translation_file.cpp +msgid "Default report format" +msgstr "இயல்புநிலை அறிக்கை வடிவம்" + +#: src/settings_translation_file.cpp +msgid "Default stack size" +msgstr "இயல்புநிலை அடுக்கு அளவு" + +#: src/settings_translation_file.cpp +msgid "" +"Define shadow filtering quality.\n" +"This simulates the soft shadows effect by applying a PCF or Poisson disk\n" +"but also uses more resources." +msgstr "" +"நிழல் வடிகட்டுதல் தரத்தை வரையறுக்கவும்.\n" +" இது பிசிஎஃப் அல்லது பாய்சன் வட்டைப் பயன்படுத்துவதன் மூலம் மென்மையான நிழல் விளைவை " +"உருவகப்படுத்துகிறது\n" +" ஆனால் அதிக வளங்களையும் பயன்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Define the oldest clients allowed to connect.\n" +"Older clients are compatible in the sense that they will not crash when " +"connecting\n" +"to new servers, but they may not support all new features that you are " +"expecting.\n" +"This allows for more fine-grained control than " +"strict_protocol_version_checking.\n" +"Luanti still enforces its own internal minimum, and enabling\n" +"strict_protocol_version_checking will effectively override this." +msgstr "" +"இணைக்க அனுமதிக்கப்பட்ட பழமையான வாடிக்கையாளர்களை வரையறுக்கவும்.\n" +" பழைய வாடிக்கையாளர்கள் இணைக்கும்போது அவர்கள் செயலிழக்க மாட்டார்கள் என்ற பொருளில் " +"இணக்கமானவர்கள்\n" +" புதிய சேவையகங்களுக்கு, ஆனால் நீங்கள் எதிர்பார்க்கும் அனைத்து புதிய அம்சங்களையும் அவை " +"ஆதரிக்காது.\n" +" இது ச்ட்ரிக்ட்_பிரோட்டோகால்_்வெர்சன்_செக்கிங்கை விட சிறந்த கட்டுப்பாட்டு கட்டுப்பாட்டை " +"அனுமதிக்கிறது.\n" +" லுவாண்டி இன்னும் அதன் சொந்த உள் குறைந்தபட்சத்தை செயல்படுத்துகிறது, மேலும் " +"செயல்படுத்துகிறது\n" +" grict_protocol_version_checking இதை திறம்பட மீறும்." + +#: src/settings_translation_file.cpp +msgid "Defines areas where trees have apples." +msgstr "மரங்களில் ஆப்பிள்கள் உள்ள பகுதிகளை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines areas with sandy beaches." +msgstr "மணல் கடற்கரைகளைக் கொண்ட பகுதிகளை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines distribution of higher terrain and steepness of cliffs." +msgstr "" +"உயர் நிலப்பரப்பின் வழங்கல் மற்றும் குன்றின் செங்குத்தான தன்மை ஆகியவற்றை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines distribution of higher terrain." +msgstr "உயர் நிலப்பரப்பின் விநியோகத்தை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines full size of caverns, smaller values create larger caverns." +msgstr "" +"குகைகளின் முழு அளவையும் வரையறுக்கிறது, சிறிய மதிப்புகள் பெரிய குகைகளை " +"உருவாக்குகின்றன." + +#: src/settings_translation_file.cpp +msgid "Defines large-scale river channel structure." +msgstr "பெரிய அளவிலான நதி சேனல் கட்டமைப்பை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines location and terrain of optional hills and lakes." +msgstr "விருப்ப மலைகள் மற்றும் ஏரிகளின் இருப்பிடம் மற்றும் நிலப்பரப்பை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines the base ground level." +msgstr "அடிப்படை தரை மட்டத்தை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines the depth of the river channel." +msgstr "நதி சேனலின் ஆழத்தை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)." +msgstr "தொகுதிகளில் அதிகபட்ச பிளேயர் பரிமாற்ற தூரத்தை வரையறுக்கிறது (0 = வரம்பற்றது)." + +#: src/settings_translation_file.cpp +msgid "" +"Defines the size of the sampling grid for FSAA and SSAA antialiasing " +"methods.\n" +"Value of 2 means taking 2x2 = 4 samples." +msgstr "" +"FSAA மற்றும் SSAA ஆன்டியாலியாசிங் முறைகளுக்கான மாதிரி கட்டத்தின் அளவை வரையறுக்கிறது.\n" +" 2 இன் மதிப்பு என்பது 2x2 = 4 மாதிரிகள் எடுப்பதைக் குறிக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines the width of the river channel." +msgstr "நதி சேனலின் அகலத்தை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines the width of the river valley." +msgstr "நதி பள்ளத்தாக்கின் அகலத்தை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Defines tree areas and tree density." +msgstr "மூன்று பகுதிகள் மற்றும் மர அடர்த்தியை வரையறுக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Delay between mesh updates on the client in ms. Increasing this will slow\n" +"down the rate of mesh updates, thus reducing jitter on slower clients." +msgstr "" +"எம்.எச்சில் கிளையண்டில் கண்ணி புதுப்பிப்புகளுக்கு இடையில் நேரந்தவறுகை. இதை அதிகரிப்பது " +"மெதுவாக இருக்கும்\n" +" கண்ணி புதுப்பிப்புகளின் வீதத்தைக் குறைக்கும், இதனால் மெதுவான வாடிக்கையாளர்கள் மீது " +"நடுக்கத்தை குறைக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Delay in sending blocks after building" +msgstr "கட்டிய பின் தொகுதிகள் அனுப்புவதில் நேரந்தவறுகை" + +#: src/settings_translation_file.cpp +msgid "Delay showing tooltips, stated in milliseconds." +msgstr "" +"மில்லி விநாடிகளில் குறிப்பிடப்பட்டுள்ள உதவிக்குறிப்புகளைக் காண்பிக்கும் நேரந்தவறுகை." + +#: src/settings_translation_file.cpp +msgid "Deprecated Lua API handling" +msgstr "நீக்கப்பட்ட லுவா பநிஇ கையாளுதல்" + +#: src/settings_translation_file.cpp +msgid "Depth below which you'll find giant caverns." +msgstr "கீழே உள்ள ஆழம் நீங்கள் மாபெரும் குகைகளைக் காணலாம்." + +#: src/settings_translation_file.cpp +msgid "Depth below which you'll find large caves." +msgstr "கீழே உள்ள ஆழம் நீங்கள் பெரிய குகைகளைக் காணலாம்." + +#: src/settings_translation_file.cpp +msgid "" +"Description of server, to be displayed when players join and in the " +"serverlist." +msgstr "" +"சேவையகத்தின் விளக்கம், வீரர்கள் சேரும்போது மற்றும் சர்வர் பட்டியலில் காண்பிக்கப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Desert noise threshold" +msgstr "பாலைவன ஒலி வாசல்" + +#: src/settings_translation_file.cpp +msgid "" +"Deserts occur when np_biome exceeds this value.\n" +"When the 'snowbiomes' flag is enabled, this is ignored." +msgstr "" +"NP_BIOME இந்த மதிப்பை மீறும் போது பாலைவனங்கள் நிகழ்கின்றன.\n" +" 'ச்னோபியோம்கள்' கொடி இயக்கப்பட்டால், இது புறக்கணிக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Developer Options" +msgstr "உருவாக்குபவர் விருப்பங்கள்" + +#: src/settings_translation_file.cpp +msgid "Disallow empty passwords" +msgstr "வெற்று கடவுச்சொற்களை அனுமதிக்காதீர்கள்" + +#: src/settings_translation_file.cpp +msgid "Display Density Scaling Factor" +msgstr "காட்சி அடர்த்தி அளவிடுதல் காரணி" + +#: src/settings_translation_file.cpp +msgid "" +"Distance in nodes at which transparency depth sorting is enabled.\n" +"Use this to limit the performance impact of transparency depth sorting.\n" +"Set to 0 to disable it entirely." +msgstr "" +"வெளிப்படைத்தன்மை ஆழம் வரிசைப்படுத்துதல் இயக்கப்பட்ட முனைகளில் தூரம்.\n" +" வெளிப்படைத்தன்மை ஆழம் வரிசையாக்கத்தின் செயல்திறன் தாக்கத்தை கட்டுப்படுத்த இதைப் " +"பயன்படுத்தவும்.\n" +" அதை முழுவதுமாக முடக்க 0 என அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Domain name of server, to be displayed in the serverlist." +msgstr "சேவையகத்தின் டொமைன் பெயர், சேவையக பட்டியலில் காட்டப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Double tap jump for fly" +msgstr "பறக்க இரட்டை தட்டு சம்ப்" + +#: src/settings_translation_file.cpp +msgid "Double-tapping the jump key toggles fly mode." +msgstr "சம்ப் விசையை இருமுறை தட்டுவது பறக்கும் பயன்முறையை மாற்றுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Dump the mapgen debug information." +msgstr "மேப்சென் பிழைத்திருத்த தகவலைக் கொட்டவும்." + +#: src/settings_translation_file.cpp +msgid "Dungeon maximum Y" +msgstr "நிலவறை அதிகபட்ச ஒய்" + +#: src/settings_translation_file.cpp +msgid "Dungeon minimum Y" +msgstr "நிலவறை குறைந்தபட்ச ஒய்" + +#: src/settings_translation_file.cpp +msgid "Dungeon noise" +msgstr "நிலவறை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Effects" +msgstr "விளைவுகள்" + +#: src/settings_translation_file.cpp +msgid "Enable Automatic Exposure" +msgstr "தானியங்கி வெளிப்பாட்டை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable Bloom" +msgstr "ப்ளூமை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable Bloom Debug" +msgstr "ப்ளூம் பிழைத்திருத்தத்தை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable Debanding" +msgstr "பற்றாக்குறையை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Enable IPv6 support (for both client and server).\n" +"Required for IPv6 connections to work at all." +msgstr "" +"IPv6 ஆதரவை இயக்கவும் (கிளையன்ட் மற்றும் சேவையகம் இரண்டிற்கும்).\n" +" ஐபிவி 6 இணைப்புகள் வேலை செய்ய தேவை." + +#: src/settings_translation_file.cpp +msgid "" +"Enable Lua modding support on client.\n" +"This support is experimental and API can change." +msgstr "" +"கிளையன்ட் மீது லுவா மோடிங் ஆதரவை இயக்கவும்.\n" +" இந்த உதவி சோதனை மற்றும் பநிஇ மாறலாம்." + +#: src/settings_translation_file.cpp +msgid "" +"Enable Poisson disk filtering.\n" +"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " +"filtering." +msgstr "" +"பாய்சன் வட்டு வடிகட்டலை இயக்கவும்.\n" +" உண்மையான பயன்பாடுகளில் \"மென்மையான நிழல்கள்\" செய்ய பாய்சன் வட்டு. இல்லையெனில் பிசிஎஃப் " +"வடிகட்டலைப் பயன்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Enable Post Processing" +msgstr "இடுகை செயலாக்கத்தை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable Raytraced Culling" +msgstr "ரேச்ட்ரேச் கலிங்கை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Enable automatic exposure correction\n" +"When enabled, the post-processing engine will\n" +"automatically adjust to the brightness of the scene,\n" +"simulating the behavior of human eye." +msgstr "" +"தானியங்கி வெளிப்பாடு திருத்தத்தை இயக்கவும்\n" +" இயக்கப்பட்டால், பிந்தைய செயலாக்க இயந்திரம்\n" +" காட்சியின் பிரகாசத்தை தானாக சரிசெய்யவும்,\n" +" மனித கண்ணின் நடத்தை உருவகப்படுத்துதல்." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Enable colored shadows for transculent nodes.\n" +"This is expensive." +msgstr "" +"வண்ண நிழல்களை இயக்கவும்.\n" +" உண்மையான ஒளிஊடுருவக்கூடிய முனைகளில் வண்ண நிழல்கள். இது விலை உயர்ந்தது." + +#: src/settings_translation_file.cpp +msgid "Enable console window" +msgstr "கன்சோல் சாளரத்தை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable joysticks" +msgstr "சாய்ச்டிக்சை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable joysticks. Requires a restart to take effect" +msgstr "சாய்ச்டிக்சை இயக்கவும். நடைமுறைக்கு வர மறுதொடக்கம் தேவை" + +#: src/settings_translation_file.cpp +msgid "Enable mod channels support." +msgstr "மோட் சேனல்கள் ஆதரவை இயக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Enable mod security" +msgstr "மோட் பாதுகாப்பை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Enable mouse wheel (scroll) for item selection in hotbar." +msgstr "ஆட்பாரில் உருப்படி தேர்வுக்கு மவுச் வீல் (சுருள்) இயக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Enable random mod loading (mainly used for testing)." +msgstr "சீரற்ற மோட் ஏற்றுதல் (முக்கியமாக சோதனைக்கு பயன்படுத்தப்படுகிறது)." + +#: src/settings_translation_file.cpp +msgid "Enable random user input (only used for testing)." +msgstr "சீரற்ற பயனர் உள்ளீட்டை இயக்கவும் (சோதனைக்கு மட்டுமே பயன்படுத்தப்படுகிறது)." + +#: src/settings_translation_file.cpp +msgid "Enable smooth lighting with simple ambient occlusion." +msgstr "எளிய சுற்றுப்புற மறுப்புடன் மென்மையான விளக்குகளை இயக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Enable split login/register" +msgstr "பிளவு உள்நுழைவு/பதிவேட்டை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Enable to disallow old clients from connecting.\n" +"Older clients are compatible in the sense that they will not crash when " +"connecting\n" +"to new servers, but they may not support all new features that you are " +"expecting." +msgstr "" +"பழைய வாடிக்கையாளர்களை இணைப்பதை அனுமதிக்க வேண்டாம்.\n" +" பழைய வாடிக்கையாளர்கள் இணைக்கும்போது அவர்கள் செயலிழக்க மாட்டார்கள் என்ற பொருளில் " +"இணக்கமானவர்கள்\n" +" புதிய சேவையகங்களுக்கு, ஆனால் நீங்கள் எதிர்பார்க்கும் அனைத்து புதிய அம்சங்களையும் அவை " +"ஆதரிக்காது." + +#: src/settings_translation_file.cpp +msgid "Enable updates available indicator on content tab" +msgstr "உள்ளடக்க தாவலில் கிடைக்கக்கூடிய காட்டி புதுப்பிப்புகளை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Enable usage of remote media server (if provided by server).\n" +"Remote servers offer a significantly faster way to download media (e.g. " +"textures)\n" +"when connecting to the server." +msgstr "" +"தொலை ஊடக சேவையகத்தின் பயன்பாட்டை இயக்கவும் (சேவையகத்தால் வழங்கப்பட்டால்).\n" +" தொலை சேவையகங்கள் மீடியாவைப் பதிவிறக்குவதற்கு கணிசமாக விரைவான வழியை வழங்குகின்றன " +"(எ.கா. அமைப்பு)\n" +" சேவையகத்துடன் இணைக்கும்போது." + +#: src/settings_translation_file.cpp +msgid "" +"Enable view bobbing and amount of view bobbing.\n" +"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." +msgstr "" +"பார்வை பாப்பிங் மற்றும் பார்வை பாபிங்கின் அளவு ஆகியவற்றை இயக்கவும்.\n" +" உதாரணமாக: 0 பார்வைக்கு இல்லை; சாதாரணத்திற்கு 1.0; இரட்டிப்புக்கு 2.0." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Enable/disable running an IPv6 server.\n" +"Ignored if bind_address is set." +msgstr "" +"ஐபிவி 6 சேவையகத்தை இயக்கவும்/முடக்கவும்.\n" +" BIND_ADDRESS அமைக்கப்பட்டால் புறக்கணிக்கப்படுகிறது.\n" +" இயக்க_ஐபிவி 6 இயக்கப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"Enables Hable's 'Uncharted 2' filmic tone mapping.\n" +"Simulates the tone curve of photographic film and how this approximates the\n" +"appearance of high dynamic range images. Mid-range contrast is slightly\n" +"enhanced, highlights and shadows are gradually compressed." +msgstr "" +"ஏபலின் 'பெயரிடப்படாத 2' ஃபிலிம் டோன் மேப்பிங்கை இயக்குகிறது.\n" +" புகைப்படப் படத்தின் தொனி வளைவை உருவகப்படுத்துகிறது, இது எவ்வாறு தோராயமாக " +"மதிப்பிடுகிறது\n" +" உயர் மாறும் ரேஞ்ச் படங்களின் தோற்றம். இடைப்பட்ட மாறுபாடு சற்று\n" +" மேம்படுத்தப்பட்ட, சிறப்பம்சங்கள் மற்றும் நிழல்கள் படிப்படியாக சுருக்கப்படுகின்றன." + +#: src/settings_translation_file.cpp +msgid "Enables animation of inventory items." +msgstr "சரக்கு உருப்படிகளின் அனிமேசனை செயல்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Enables debug and error-checking in the OpenGL driver." +msgstr "ஓபன்சிஎல் டிரைவரில் பிழைத்திருத்தம் மற்றும் பிழை சரிபார்ப்பை செயல்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Enables smooth scrolling." +msgstr "மென்மையான ச்க்ரோலிங் செயல்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Enables the post processing pipeline." +msgstr "பிந்தைய செயலாக்க குழாய்வழியை செயல்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Enables the touchscreen controls, allowing you to play the game with a " +"touchscreen.\n" +"\"auto\" means that the touchscreen controls will be enabled and disabled\n" +"automatically depending on the last used input method." +msgstr "" +"தொடுதிரை கட்டுப்பாடுகளை செயல்படுத்துகிறது, இது தொடுதிரை மூலம் விளையாட்டை விளையாட " +"அனுமதிக்கிறது.\n" +" \"ஆட்டோ\" என்பது தொடுதிரை கட்டுப்பாடுகள் இயக்கப்பட்டு முடக்கப்படும் என்பதாகும்\n" +" கடைசியாக பயன்படுத்தப்பட்ட உள்ளீட்டு முறையைப் பொறுத்து தானாகவே." + +#: src/settings_translation_file.cpp +msgid "" +"Enables tradeoffs that reduce CPU load or increase rendering performance\n" +"at the expense of minor visual glitches that do not impact game playability." +msgstr "" +"சிபியு சுமையைக் குறைக்கும் அல்லது வழங்குதல் செயல்திறனை அதிகரிக்கும் பரிமாற்றங்களை " +"செயல்படுத்துகிறது\n" +" விளையாட்டு விளையாட்டுத்திறனை பாதிக்காத சிறிய காட்சி குறைபாடுகளின் இழப்பில்." + +#: src/settings_translation_file.cpp +msgid "Engine Profiler" +msgstr "என்சின் விவரக்குறிப்பு" + +#: src/settings_translation_file.cpp +msgid "Engine profiling data print interval" +msgstr "இயந்திர விவரக்குறிப்பு தரவு அச்சு இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "Entity methods" +msgstr "நிறுவன முறைகள்" + +#: src/settings_translation_file.cpp +msgid "" +"Exponent of the floatland tapering. Alters the tapering behavior.\n" +"Value = 1.0 creates a uniform, linear tapering.\n" +"Values > 1.0 create a smooth tapering suitable for the default separated\n" +"floatlands.\n" +"Values < 1.0 (for example 0.25) create a more defined surface level with\n" +"flatter lowlands, suitable for a solid floatland layer." +msgstr "" +"ஃப்ளோட்லேண்ட் டேப்பரிங்கின் அடுக்கு. தட்டையான நடத்தை மாற்றுகிறது.\n" +" மதிப்பு = 1.0 ஒரு சீரான, நேரியல் டேப்பரிங் உருவாக்குகிறது.\n" +" மதிப்புகள்> 1.0 இயல்புநிலை பிரிக்கப்பட்ட ஒரு மென்மையான டேப்பரிங்கை உருவாக்கவும்\n" +" ஃப்ளோட்லேண்ட்ச்.\n" +" மதிப்புகள் <1.0 (எடுத்துக்காட்டாக 0.25) மேலும் வரையறுக்கப்பட்ட மேற்பரப்பு அளவை " +"உருவாக்குகிறது\n" +" ஒரு திடமான மிதவை அடுக்குக்கு ஏற்றது." + +#: src/settings_translation_file.cpp +msgid "Exposure compensation" +msgstr "வெளிப்பாடு இழப்பீடு" + +#: src/settings_translation_file.cpp +msgid "FPS" +msgstr "Fps" + +#: src/settings_translation_file.cpp +msgid "FPS when unfocused or paused" +msgstr "எஃப்.பி.எச் கவனம் செலுத்தப்படாத அல்லது இடைநிறுத்தப்படும்போது" + +#: src/settings_translation_file.cpp +msgid "Factor noise" +msgstr "காரணி ஒலி" + +#: src/settings_translation_file.cpp +msgid "Fall bobbing factor" +msgstr "வீழ்ச்சி பாப்பிங் காரணி" + +#: src/settings_translation_file.cpp +msgid "Fallback font path" +msgstr "குறைவடையும் எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Fast mode acceleration" +msgstr "வேகமான பயன்முறை முடுக்கம்" + +#: src/settings_translation_file.cpp +msgid "Fast mode speed" +msgstr "வேகமான பயன்முறை விரைவு" + +#: src/settings_translation_file.cpp +msgid "Field of view" +msgstr "பார்வை புலம்" + +#: src/settings_translation_file.cpp +msgid "Field of view in degrees." +msgstr "டிகிரிகளில் பார்வை புலம்." + +#: src/settings_translation_file.cpp +msgid "" +"File in client/serverlist/ that contains your favorite servers displayed in " +"the\n" +"Multiplayer Tab." +msgstr "" +"கிளையன்ட்/ சர்வர் லிச்டில் கோப்பு/ அதில் உங்களுக்கு பிடித்த சேவையகங்கள் உள்ளன\n" +" மல்டிபிளேயர் தாவல்." + +#: src/settings_translation_file.cpp +msgid "Filler depth" +msgstr "நிரப்பு ஆழம்" + +#: src/settings_translation_file.cpp +msgid "Filler depth noise" +msgstr "நிரப்பு ஆழம் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Filmic tone mapping" +msgstr "ஃபிலிம் டோன் மேப்பிங்" + +#: src/settings_translation_file.cpp +msgid "Filtering and Antialiasing" +msgstr "வடிகட்டுதல் மற்றும் ஆன்டிலியாசிங்" + +#: src/settings_translation_file.cpp +msgid "First of 4 2D noises that together define hill/mountain range height." +msgstr "இல்/மலை வீச்சு உயரத்தை ஒன்றாக வரையறுக்கும் 4 2 டி சத்தங்களில் முதல்." + +#: src/settings_translation_file.cpp +msgid "First of two 3D noises that together define tunnels." +msgstr "இரண்டு 3D சத்தங்களில் முதல் சுரங்கங்களை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Fixed map seed" +msgstr "நிலையான வரைபட விதை" + +#: src/settings_translation_file.cpp +msgid "Fixed virtual joystick" +msgstr "நிலையான மெய்நிகர் சாய்ச்டிக்" + +#: src/settings_translation_file.cpp +msgid "" +"Fixes the position of virtual joystick.\n" +"If disabled, virtual joystick will center to first-touch's position." +msgstr "" +"மெய்நிகர் சாய்ச்டிக் நிலையை சரிசெய்கிறது.\n" +" முடக்கப்பட்டால், மெய்நிகர் சாய்ச்டிக் முதல்-தொடுதலின் நிலைக்கு மையமாக இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "Floatland density" +msgstr "ஃப்ளோட்லேண்ட் அடர்த்தி" + +#: src/settings_translation_file.cpp +msgid "Floatland maximum Y" +msgstr "ஃப்ளோட்லேண்ட் அதிகபட்சம் ஒய்" + +#: src/settings_translation_file.cpp +msgid "Floatland minimum Y" +msgstr "ஃப்ளோட்லேண்ட் குறைந்தபட்ச ஒய்" + +#: src/settings_translation_file.cpp +msgid "Floatland noise" +msgstr "ஃப்ளோட்லேண்ட் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Floatland taper exponent" +msgstr "ஃப்ளோட்லேண்ட் டேப்பர் எக்ச்போனென்ட்" + +#: src/settings_translation_file.cpp +msgid "Floatland tapering distance" +msgstr "ஃப்ளோட்லேண்ட் டேப்பரிங் தூரம்" + +#: src/settings_translation_file.cpp +msgid "Floatland water level" +msgstr "ஃப்ளோட்லேண்ட் நீர் நிலை" + +#: src/settings_translation_file.cpp +msgid "Fog" +msgstr "மூடுபனி" + +#: src/settings_translation_file.cpp +msgid "Fog start" +msgstr "தொடங்கும்" + +#: src/settings_translation_file.cpp +msgid "Font" +msgstr "எழுத்துரு" + +#: src/settings_translation_file.cpp +msgid "Font bold by default" +msgstr "இயல்புநிலையாக எழுத்துரு தைரியமானது" + +#: src/settings_translation_file.cpp +msgid "Font italic by default" +msgstr "இயல்பாக எழுத்துரு சாய்வு" + +#: src/settings_translation_file.cpp +msgid "Font shadow" +msgstr "எழுத்துரு நிழல்" + +#: src/settings_translation_file.cpp +msgid "Font shadow alpha" +msgstr "எழுத்துரு நிழல் ஆல்பா" + +#: src/settings_translation_file.cpp +msgid "Font size" +msgstr "எழுத்துரு அளவு" + +#: src/settings_translation_file.cpp +msgid "Font size divisible by" +msgstr "எழுத்துரு அளவு பிரிக்கக்கூடியது" + +#: src/settings_translation_file.cpp +msgid "Font size of the default font where 1 unit = 1 pixel at 96 DPI" +msgstr "இயல்புநிலை எழுத்துருவின் எழுத்துரு அளவு, அங்கு 1 அலகு = 1 படப்புள்ளி 96 டிபிஐ" + +#: src/settings_translation_file.cpp +msgid "Font size of the monospace font where 1 unit = 1 pixel at 96 DPI" +msgstr "மோனோச்பேச் எழுத்துருவின் எழுத்துரு அளவு, அங்கு 1 யூனிட் = 1 படப்புள்ளி 96 டிபிஐ" + +#: src/settings_translation_file.cpp +msgid "" +"Font size of the recent chat text and chat prompt in point (pt).\n" +"Value 0 will use the default font size." +msgstr "" +"அண்மைக் கால அரட்டை உரையின் எழுத்துரு அளவு மற்றும் புள்ளியில் அரட்டை வரியில் (PT).\n" +" மதிப்பு 0 இயல்புநிலை எழுத்துரு அளவைப் பயன்படுத்தும்." + +#: src/settings_translation_file.cpp +msgid "" +"For pixel-style fonts that do not scale well, this ensures that font sizes " +"used\n" +"with this font will always be divisible by this value, in pixels. For " +"instance,\n" +"a pixel font 16 pixels tall should have this set to 16, so it will only ever " +"be\n" +"sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." +msgstr "" +"நன்றாக அளவிடாத படப்புள்ளி பாணி எழுத்துருக்களுக்கு, இது எழுத்துரு அளவுகள் " +"பயன்படுத்தப்படுவதை உறுதி செய்கிறது\n" +" இந்த எழுத்துரு எப்போதும் இந்த மதிப்பால், பிக்சல்களில் வகுக்கப்படும். உதாரணமாக,\n" +" ஒரு படப்புள்ளி எழுத்துரு 16 படப்புள்ளிகள் உயரம் இந்த தொகுப்பை 16 ஆக வைத்திருக்க " +"வேண்டும், எனவே அது எப்போதும் மட்டுமே இருக்கும்\n" +" அளவு 16, 32, 48, முதலியன, எனவே 25 அளவைக் கோரும் மோட் 32 கிடைக்கும்." + +#: src/settings_translation_file.cpp +msgid "" +"Format of player chat messages. The following strings are valid " +"placeholders:\n" +"@name, @message, @timestamp (optional)" +msgstr "" +"பிளேயர் அரட்டை செய்திகளின் வடிவம். பின்வரும் சரங்கள் செல்லுபடியாகும் ஒதுக்கிடங்கள்:\n" +" @name, @message, @timestamp (விரும்பினால்)" + +#: src/settings_translation_file.cpp +msgid "Format of screenshots." +msgstr "திரை சாட்களின் வடிவம்." + +#: src/settings_translation_file.cpp +msgid "Formspec Full-Screen Background Color" +msgstr "FORMSPEC முழு திரை பின்னணி நிறம்" + +#: src/settings_translation_file.cpp +msgid "Formspec Full-Screen Background Opacity" +msgstr "FORMSPEC முழு திரை பின்னணி ஒளிபுகாநிலை" + +#: src/settings_translation_file.cpp +msgid "Formspec full-screen background color (R,G,B)." +msgstr "FORMSPEC முழு திரை பின்னணி நிறம் (r, g, b)." + +#: src/settings_translation_file.cpp +msgid "Formspec full-screen background opacity (between 0 and 255)." +msgstr "FORMSPEC முழு திரை பின்னணி ஒளிபுகாநிலை (0 மற்றும் 255 க்கு இடையில்)." + +#: src/settings_translation_file.cpp +msgid "Fourth of 4 2D noises that together define hill/mountain range height." +msgstr "இல்/மலை வீச்சு உயரத்தை ஒன்றாக வரையறுக்கும் 4 2 டி சத்தங்களில் நான்காவது." + +#: src/settings_translation_file.cpp +msgid "Fractal type" +msgstr "பின்னல் வகை" + +#: src/settings_translation_file.cpp +msgid "Fraction of the visible distance at which fog starts to be rendered" +msgstr "மூடுபனி வழங்கத் தொடங்கும் புலப்படும் தூரத்தின் பின்னம்" + +#: src/settings_translation_file.cpp +msgid "" +"From how far blocks are generated for clients, stated in mapblocks (16 " +"nodes)." +msgstr "" +"மேப் பிளாக்ச் (16 முனைகளில்) குறிப்பிடப்பட்டுள்ள வாடிக்கையாளர்களுக்கு எவ்வளவு தூரம் " +"தொகுதிகள் உருவாக்கப்படுகின்றன என்பதிலிருந்து." + +#: src/settings_translation_file.cpp +msgid "" +"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." +msgstr "" +"மேப் பிளாக்ச் (16 முனைகளில்) கூறப்பட்ட வாடிக்கையாளர்களுக்கு எவ்வளவு தூரம் " +"அனுப்பப்படுகிறது என்பதிலிருந்து." + +#: src/settings_translation_file.cpp +msgid "" +"From how far clients know about objects, stated in mapblocks (16 nodes).\n" +"\n" +"Setting this larger than active_block_range will also cause the server\n" +"to maintain active objects up to this distance in the direction the\n" +"player is looking. (This can avoid mobs suddenly disappearing from view)" +msgstr "" +"மேப் பிளாக்சில் (16 முனைகள்) கூறப்பட்ட பொருள்களைப் பற்றி வாடிக்கையாளர்களுக்கு எவ்வளவு " +"தூரம் தெரியும் என்பதிலிருந்து.\n" +"\n" +" ஆக்டிவ்_பிளாக்_ரேஞ்சை விட இது பெரியதாக அமைப்பதும் சேவையகத்தை ஏற்படுத்தும்\n" +" திசையில் இந்த தூரம் வரை செயலில் உள்ள பொருட்களை பராமரிக்க\n" +" வீரர் பார்க்கிறார். (இது கும்பல்கள் திடீரென்று பார்வையில் இருந்து மறைந்து போவதைத் " +"தவிர்க்கலாம்)" + +#: src/settings_translation_file.cpp +msgid "Full screen" +msgstr "முழுத் திரை" + +#: src/settings_translation_file.cpp +msgid "Fullscreen mode." +msgstr "முழுத்திரை பயன்முறை." + +#: src/settings_translation_file.cpp +msgid "GUI" +msgstr "குய்" + +#: src/settings_translation_file.cpp +msgid "GUI scaling" +msgstr "GUI அளவிடுதல்" + +#: src/settings_translation_file.cpp +msgid "GUI scaling filter" +msgstr "GUI அளவிடுதல் வடிகட்டி" + +#: src/settings_translation_file.cpp +msgid "Gamepads" +msgstr "கேம்பேட்ச்" + +#: src/settings_translation_file.cpp +msgid "Global callbacks" +msgstr "உலகளாவிய கால்பேக்குகள்" + +#: src/settings_translation_file.cpp +msgid "" +"Global map generation attributes.\n" +"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n" +"and jungle grass, in all other mapgens this flag controls all decorations." +msgstr "" +"உலகளாவிய வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" MAPGEN V6 இல் 'அலங்காரங்கள்' கொடி மரங்களைத் தவிர அனைத்து அலங்காரங்களையும் " +"கட்டுப்படுத்துகிறது\n" +" மற்றும் சங்கிள் புல், மற்ற எல்லா வரைபடங்களிலும் இந்த கொடி அனைத்து அலங்காரங்களையும் " +"கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Gradient of light curve at maximum light level.\n" +"Controls the contrast of the highest light levels." +msgstr "" +"அதிகபட்ச ஒளி மட்டத்தில் ஒளி வளைவின் சாய்வு.\n" +" மிக உயர்ந்த ஒளி மட்டங்களின் மாறுபாட்டைக் கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Gradient of light curve at minimum light level.\n" +"Controls the contrast of the lowest light levels." +msgstr "" +"குறைந்தபட்ச ஒளி மட்டத்தில் ஒளி வளைவின் சாய்வு.\n" +" மிகக் குறைந்த ஒளி நிலைகளின் மாறுபாட்டைக் கட்டுப்படுத்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Graphics" +msgstr "கிராபிக்ச்" + +#: src/settings_translation_file.cpp +msgid "Graphics and Audio" +msgstr "கிராபிக்ச் மற்றும் ஆடியோ" + +#: src/settings_translation_file.cpp +msgid "Gravity" +msgstr "ஈர்ப்பு" + +#: src/settings_translation_file.cpp +msgid "Ground level" +msgstr "நிலத்தடி நிலை" + +#: src/settings_translation_file.cpp +msgid "Ground noise" +msgstr "நில ஒலி" + +#: src/settings_translation_file.cpp +msgid "HTTP mods" +msgstr "Http மோட்ச்" + +#: src/settings_translation_file.cpp +msgid "HUD" +msgstr "HUD" + +#: src/settings_translation_file.cpp +msgid "HUD scaling" +msgstr "HUD அளவிடுதல்" + +#: src/settings_translation_file.cpp +msgid "" +"Handling for deprecated Lua API calls:\n" +"- none: Do not log deprecated calls\n" +"- log: mimic and log backtrace of deprecated call (default).\n" +"- error: abort on usage of deprecated call (suggested for mod developers)." +msgstr "" +"நீக்கப்பட்ட லுவா பநிஇ அழைப்புகளைக் கையாளுதல்:\n" +" - எதுவுமில்லை: நீக்கப்பட்ட அழைப்புகளை பதிவு செய்ய வேண்டாம்\n" +" - பதிவு: நீக்கப்பட்ட அழைப்பின் (இயல்புநிலை) பின்னடைவு மற்றும் பதிவு.\n" +" - பிழை: நீக்கப்பட்ட அழைப்பின் பயன்பாட்டை நிறுத்துங்கள் (மோட் டெவலப்பர்களுக்கு " +"பரிந்துரைக்கப்படுகிறது)." + +#: src/settings_translation_file.cpp +msgid "" +"Have the profiler instrument itself:\n" +"* Instrument an empty function.\n" +"This estimates the overhead, that instrumentation is adding (+1 function " +"call).\n" +"* Instrument the sampler being used to update the statistics." +msgstr "" +"சுயவிவர கருவியை வைத்திருங்கள்:\n" +" * கருவி ஒரு வெற்று செயல்பாடு.\n" +" இது மேல்நிலைகளை மதிப்பிடுகிறது, அந்த கருவி சேர்க்கிறது (+1 செயல்பாட்டு அழைப்பு).\n" +" * கருவி புள்ளிவிவரங்களைப் புதுப்பிக்க மாதிரி பயன்படுத்தப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Heat blend noise" +msgstr "வெப்ப கலவை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Heat noise" +msgstr "வெப்ப ஒலி" + +#: src/settings_translation_file.cpp +msgid "Height component of the initial window size." +msgstr "ஆரம்ப சாளர அளவின் உயர கூறு." + +#: src/settings_translation_file.cpp +msgid "Height noise" +msgstr "உயர ஒலி" + +#: src/settings_translation_file.cpp +msgid "Height select noise" +msgstr "உயரம் சத்தத்தை தேர்ந்தெடுக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Hill steepness" +msgstr "மலை செங்குத்தானது" + +#: src/settings_translation_file.cpp +msgid "Hill threshold" +msgstr "மலை வாசல்" + +#: src/settings_translation_file.cpp +msgid "Hilliness1 noise" +msgstr "மலைப்பாங்கான 1 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Hilliness2 noise" +msgstr "மலையடிவரம் 2 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Hilliness3 noise" +msgstr "மலைப்பாங்கான 3 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Hilliness4 noise" +msgstr "மலைப்பாங்கான 4 ஒலி" + +#: src/settings_translation_file.cpp +msgid "Homepage of server, to be displayed in the serverlist." +msgstr "சேவையகத்தின் முகப்புப்பக்கம், சர்வர் பட்டியலில் காட்டப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal acceleration in air when jumping or falling,\n" +"in nodes per second per second." +msgstr "" +"குதிக்கும் போது அல்லது விழும்போது காற்றில் கிடைமட்ட முடுக்கம்,\n" +" நொடிக்கு ஒரு நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal and vertical acceleration in fast mode,\n" +"in nodes per second per second." +msgstr "" +"வேகமான பயன்முறையில் கிடைமட்ட மற்றும் செங்குத்து முடுக்கம்,\n" +" நொடிக்கு ஒரு நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "" +"Horizontal and vertical acceleration on ground or when climbing,\n" +"in nodes per second per second." +msgstr "" +"தரையில் அல்லது ஏறும் போது கிடைமட்ட மற்றும் செங்குத்து முடுக்கம்,\n" +" நொடிக்கு ஒரு நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "Hotbar: Enable mouse wheel for selection" +msgstr "ஆட்பார்: தேர்வுக்கு சுட்டி சக்கரத்தை இயக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Hotbar: Invert mouse wheel direction" +msgstr "ஆட்பார்: மவுச் சக்கர திசையை தலைகீழ்" + +#: src/settings_translation_file.cpp +msgid "How deep to make rivers." +msgstr "நதிகளை உருவாக்குவது எவ்வளவு ஆழமானது." + +#: src/settings_translation_file.cpp +msgid "" +"How fast liquid waves will move. Higher = faster.\n" +"If negative, liquid waves will move backwards." +msgstr "" +"எவ்வளவு வேகமாக திரவ அலைகள் நகரும். அதிக = வேகமான.\n" +" எதிர்மறையாக இருந்தால், திரவ அலைகள் பின்னோக்கி நகரும்." + +#: src/settings_translation_file.cpp +msgid "" +"How long the server will wait before unloading unused mapblocks, stated in " +"seconds.\n" +"Higher value is smoother, but will use more RAM." +msgstr "" +"பயன்படுத்தப்படாத மேப் பிளாக்சை இறக்குவதற்கு முன் சேவையகம் எவ்வளவு காலம் காத்திருக்கும், " +"நொடிகளில் கூறப்படுகிறது.\n" +" அதிக மதிப்பு மென்மையானது, ஆனால் அதிக ரேம் பயன்படுத்தும்." + +#: src/settings_translation_file.cpp +msgid "" +"How much you are slowed down when moving inside a liquid.\n" +"Decrease this to increase liquid resistance to movement." +msgstr "" +"ஒரு திரவத்திற்குள் நகரும் போது நீங்கள் எவ்வளவு மெதுவாக இருக்கிறீர்கள்.\n" +" இயக்கத்திற்கு திரவ எதிர்ப்பை அதிகரிக்க இதைக் குறைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "How wide to make rivers." +msgstr "ஆறுகளை உருவாக்குவது எவ்வளவு அகலமானது." + +#: src/settings_translation_file.cpp +msgid "Humidity blend noise" +msgstr "ஈரப்பதம் கலவை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Humidity noise" +msgstr "ஈரப்பதம் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Humidity variation for biomes." +msgstr "பயோம்களுக்கான ஈரப்பதம் மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "IPv6" +msgstr "Ipvsh" + +#: src/settings_translation_file.cpp +msgid "IPv6 server" +msgstr "ஐபிவி 6 சேவையகம்" + +#: src/settings_translation_file.cpp +msgid "" +"If FPS would go higher than this, limit it by sleeping\n" +"to not waste CPU power for no benefit." +msgstr "" +"இதை விட FPS அதிகமாக சென்றால், தூங்குவதன் மூலம் அதைக் கட்டுப்படுத்துங்கள்\n" +" எந்த நன்மையும் இல்லாமல் சிபியு சக்தியை வீணாக்கக்கூடாது." + +#: src/settings_translation_file.cpp +msgid "" +"If disabled, \"Aux1\" key is used to fly fast if both fly and fast mode are\n" +"enabled." +msgstr "" +"முடக்கப்பட்டால், பறக்க மற்றும் வேகமான பயன்முறை இரண்டும் இருந்தால் வேகமாக பறக்க \"AUX1\" " +"விசை பயன்படுத்தப்படுகிறது\n" +" இயக்கப்பட்டது." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled and you have ContentDB packages installed, Luanti may contact " +"ContentDB to\n" +"check for package updates when opening the mainmenu." +msgstr "" +"இயக்கப்பட்டிருந்தால் மற்றும் நீங்கள் ContentDB தொகுப்புகள் நிறுவப்பட்டிருந்தால், லுவாண்டி " +"உள்ளடக்கத்தை தொடர்பு கொள்ளலாம்\n" +" மெயின்மெனுவைத் திறக்கும்போது தொகுப்பு புதுப்பிப்புகளைச் சரிபார்க்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, \"Aux1\" key instead of \"Sneak\" key is used for climbing down " +"and\n" +"descending." +msgstr "" +"இயக்கப்பட்டால், \"ச்னீக்\" விசைக்கு பதிலாக \"AUX1\" விசை கீழே ஏற பயன்படுத்தப்படுகிறது\n" +" இறங்கு." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, actions are recorded for rollback.\n" +"This option is only read when server starts." +msgstr "" +"இயக்கப்பட்டிருந்தால், ரோல்பேக்குக்கு நடவடிக்கைகள் பதிவு செய்யப்படுகின்றன.\n" +" சேவையகம் தொடங்கும் போது மட்டுமே இந்த விருப்பம் படிக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, invalid world data won't cause the server to shut down.\n" +"Only enable this if you know what you are doing." +msgstr "" +"இயக்கப்பட்டால், தவறான உலக தரவு சேவையகம் மூடப்படாது.\n" +" நீங்கள் என்ன செய்கிறீர்கள் என்று உங்களுக்குத் தெரிந்தால் மட்டுமே இதை இயக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, players cannot join without a password or change theirs to an " +"empty password." +msgstr "" +"இயக்கப்பட்டிருந்தால், வீரர்கள் கடவுச்சொல் இல்லாமல் சேரவோ அல்லது வெற்று கடவுச்சொல்லாக மாற்றவோ " +"முடியாது." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"இயக்கப்பட்டால், கணக்கு பதிவு இடைமுகம் இல் உள்நுழைவிலிருந்து தனித்தனியாக இருக்கும்.\n" +" முடக்கப்பட்டால், உள்நுழையும்போது புதிய கணக்குகள் தானாக பதிவு செய்யப்படும்." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, the server will perform map block occlusion culling based on\n" +"on the eye position of the player. This can reduce the number of blocks\n" +"sent to the client by 50-80%. Clients will no longer receive most\n" +"invisible blocks, so that the utility of noclip mode is reduced." +msgstr "" +"இயக்கப்பட்டால், சேவையகம் வரைபடத் தொகுதி மறைமுகத்தை அடிப்படையாகக் கொண்டது\n" +" வீரரின் கண் நிலையில். இது தொகுதிகளின் எண்ணிக்கையைக் குறைக்கும்\n" +" வாடிக்கையாளருக்கு 50-80%அனுப்பப்பட்டது. வாடிக்கையாளர்கள் இனி அதிகம் பெற மாட்டார்கள்\n" +" கண்ணுக்கு தெரியாத தொகுதிகள், இதனால் NOCLIP பயன்முறையின் பயன்பாடு குறைக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"If enabled, you can place nodes at the position (feet + eye level) where you " +"stand.\n" +"This is helpful when working with nodeboxes in small areas." +msgstr "" +"இயக்கப்பட்டால், நீங்கள் நிற்கும் இடத்தில் (அடி + கண் நிலை) முனைகளில் முனைகளை வைக்கலாம்.\n" +" சிறிய பகுதிகளில் நோட்பாக்சுடன் பணிபுரியும் போது இது உதவியாக இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "" +"If the CSM restriction for node range is enabled, get_node calls are " +"limited\n" +"to this distance from the player to the node." +msgstr "" +"முனை வரம்பிற்கான சிஎச்எம் கட்டுப்பாடு இயக்கப்பட்டிருந்தால், get_node அழைப்புகள் குறைவாகவே " +"இருக்கும்\n" +" பிளேயரிலிருந்து முனை வரை இந்த தூரத்திற்கு." + +#: src/settings_translation_file.cpp +msgid "" +"If the execution of a chat command takes longer than this specified time in\n" +"seconds, add the time information to the chat command message" +msgstr "" +"அரட்டை கட்டளையை செயல்படுத்துவது இந்த குறிப்பிட்ட நேரத்தை விட அதிக நேரம் எடுத்தால்\n" +" விநாடிகள், அரட்டை கட்டளை செய்தியில் நேர தகவலைச் சேர்க்கவும்" + +#: src/settings_translation_file.cpp +msgid "" +"If the file size of debug.txt exceeds the number of megabytes specified in\n" +"this setting when it is opened, the file is moved to debug.txt.1,\n" +"deleting an older debug.txt.1 if it exists.\n" +"debug.txt is only moved if this setting is positive." +msgstr "" +"பிழைத்திருத்தத்தின் கோப்பு அளவு குறிப்பிடப்பட்ட மெகாபைட்டுகளின் எண்ணிக்கையை விட அதிகமாக " +"இருந்தால்\n" +" இந்த அமைப்பு திறக்கப்படும்போது, கோப்பு பிழைத்திருத்தத்திற்கு நகர்த்தப்படுகிறது. Txt.1,\n" +" பழைய பிழைத்திருத்தத்தை நீக்குதல். Txt.1 அது இருந்தால்.\n" +" இந்த அமைப்பு நேர்மறையாக இருந்தால் மட்டுமே பிழைத்திருத்தம். TXT நகர்த்தப்படும்." + +#: src/settings_translation_file.cpp +msgid "If this is set, players will always (re)spawn at the given position." +msgstr "" +"இது அமைக்கப்பட்டால், வீரர்கள் எப்போதும் (மறு) கொடுக்கப்பட்ட நிலையில் உருவாகிவிடுவார்கள்." + +#: src/settings_translation_file.cpp +msgid "Ignore world errors" +msgstr "உலக பிழைகளை புறக்கணிக்கவும்" + +#: src/settings_translation_file.cpp +msgid "In-game chat console background alpha (opaqueness, between 0 and 255)." +msgstr "விளையாட்டு அரட்டை கன்சோல் பின்னணி ஆல்பா (ஒளிபுகா, 0 மற்றும் 255 க்கு இடையில்)." + +#: src/settings_translation_file.cpp +msgid "In-game chat console background color (R,G,B)." +msgstr "விளையாட்டு அரட்டை கன்சோல் பின்னணி நிறம் (ஆர், சி, பி)." + +#: src/settings_translation_file.cpp +msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." +msgstr "விளையாட்டு அரட்டை கன்சோல் உயரம், 0.1 (10%) முதல் 1.0 (100%) வரை." + +#: src/settings_translation_file.cpp +msgid "Initial vertical speed when jumping, in nodes per second." +msgstr "ஆரம்ப செங்குத்து விரைவு குதிக்கும் போது, வினாடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "" +"Instrument builtin.\n" +"This is usually only needed by core/builtin contributors" +msgstr "" +"கருவி பில்டின்.\n" +" இது பொதுவாக கோர்/பில்டின் பங்களிப்பாளர்களால் மட்டுமே தேவைப்படுகிறது" + +#: src/settings_translation_file.cpp +msgid "Instrument chat commands on registration." +msgstr "பதிவு அரட்டை கட்டளைகள் பதிவு செய்வதில்." + +#: src/settings_translation_file.cpp +msgid "" +"Instrument global callback functions on registration.\n" +"(anything you pass to a core.register_*() function)" +msgstr "" +"கருவி உலகளாவிய கால்பேக் பதிவுகளில் செயல்பாடுகள்.\n" +" (நீங்கள் ஒரு கோர். ரெசிச்டர் _*() செயல்பாடு)" + +#: src/settings_translation_file.cpp +msgid "" +"Instrument the action function of Active Block Modifiers on registration." +msgstr "கருவி பதிவில் செயலில் தொகுதி மாற்றிகளின் செயல் செயல்பாடு." + +#: src/settings_translation_file.cpp +msgid "" +"Instrument the action function of Loading Block Modifiers on registration." +msgstr "கருவி பதிவில் தொகுதி மாற்றிகளை ஏற்றுவதற்கான செயல் செயல்பாடு." + +#: src/settings_translation_file.cpp +msgid "Instrument the methods of entities on registration." +msgstr "பதிவு செய்வதற்கான நிறுவனங்களின் முறைகள்." + +#: src/settings_translation_file.cpp +msgid "Interval of saving important changes in the world, stated in seconds." +msgstr "உலகில் முக்கியமான மாற்றங்களைச் சேமிக்கும் இடைவெளி, நொடிகளில் கூறப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "Inventory items animations" +msgstr "சரக்கு உருப்படிகள் அனிமேசன்கள்" + +#: src/settings_translation_file.cpp +msgid "Invert mouse" +msgstr "மவுச் தலைகீழ்" + +#: src/settings_translation_file.cpp +msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." +msgstr "ஆட்பாரில் உருப்படி தேர்வுக்கு மவுச் வீல் (சுருள்) திசையை தலைகீழ்." + +#: src/settings_translation_file.cpp +msgid "Invert vertical mouse movement." +msgstr "செங்குத்து சுட்டி இயக்கம் தலைகீழ்." + +#: src/settings_translation_file.cpp +msgid "Italic font path" +msgstr "சாய்வு எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Italic monospace font path" +msgstr "சாய்வு மோனோச்பேச் எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Item entity TTL" +msgstr "உருப்படி நிறுவனம் TTL" + +#: src/settings_translation_file.cpp +msgid "Iterations" +msgstr "மறு செய்கைகள்" + +#: src/settings_translation_file.cpp +msgid "" +"Iterations of the recursive function.\n" +"Increasing this increases the amount of fine detail, but also\n" +"increases processing load.\n" +"At iterations = 20 this mapgen has a similar load to mapgen V7." +msgstr "" +"சுழல்நிலை செயல்பாட்டின் மறு செய்கைகள்.\n" +" இதை அதிகரிப்பது சிறந்த விவரங்களின் அளவை அதிகரிக்கிறது, ஆனால்\n" +" செயலாக்க சுமை அதிகரிக்கிறது.\n" +" மறு செய்கைகளில் = 20 இந்த மேப்சென் மேப்சென் வி 7 க்கு ஒத்த சுமை உள்ளது." + +#: src/settings_translation_file.cpp +msgid "Joystick ID" +msgstr "சாய்ச்டிக் ஐடி" + +#: src/settings_translation_file.cpp +msgid "Joystick button repetition interval" +msgstr "சாய்ச்டிக் பொத்தான் மறுபடியும் இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "Joystick dead zone" +msgstr "சாய்ச்டிக் இறந்த மண்டலம்" + +#: src/settings_translation_file.cpp +msgid "Joystick frustum sensitivity" +msgstr "சாய்ச்டிக் ஃப்ரச்டம் உணர்திறன்" + +#: src/settings_translation_file.cpp +msgid "Joystick type" +msgstr "சாய்ச்டிக் வகை" + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"W component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Has no effect on 3D fractals.\n" +"Range roughly -2 to 2." +msgstr "" +"சூலியா மட்டுமே.\n" +" ஐப்பர் காம்ப்ளக்ச் மாறிலியின் w கூறு.\n" +" ஃப்ராக்டலின் வடிவத்தை மாற்றுகிறது.\n" +" 3D பின்னல்களில் எந்த விளைவும் இல்லை.\n" +" வரம்பு தோராயமாக -2 முதல் 2 வரை." + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"X component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" +"சூலியா மட்டுமே.\n" +" ஐப்பர் காம்ப்ளக்ச் மாறிலியின் ஃச் கூறு.\n" +" ஃப்ராக்டலின் வடிவத்தை மாற்றுகிறது.\n" +" வரம்பு தோராயமாக -2 முதல் 2 வரை." + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"Y component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" +"சூலியா மட்டுமே.\n" +" ஐப்பர் காம்ப்ளக்ச் மாறிலியின் ஒய் கூறு.\n" +" ஃப்ராக்டலின் வடிவத்தை மாற்றுகிறது.\n" +" வரம்பு தோராயமாக -2 முதல் 2 வரை." + +#: src/settings_translation_file.cpp +msgid "" +"Julia set only.\n" +"Z component of hypercomplex constant.\n" +"Alters the shape of the fractal.\n" +"Range roughly -2 to 2." +msgstr "" +"சூலியா மட்டுமே.\n" +" ஐப்பர் காம்ப்ளக்ச் மாறிலியின் சட் கூறு.\n" +" ஃப்ராக்டலின் வடிவத்தை மாற்றுகிறது.\n" +" வரம்பு தோராயமாக -2 முதல் 2 வரை." + +#: src/settings_translation_file.cpp +msgid "Julia w" +msgstr "சூலியா இன்" + +#: src/settings_translation_file.cpp +msgid "Julia x" +msgstr "சூலியா ஃச்" + +#: src/settings_translation_file.cpp +msgid "Julia y" +msgstr "சூலியா மற்றும்" + +#: src/settings_translation_file.cpp +msgid "Julia z" +msgstr "சூலியா சட்" + +#: src/settings_translation_file.cpp +msgid "Jumping speed" +msgstr "சம்பிங் விரைவு" + +#: src/settings_translation_file.cpp +msgid "Keyboard and Mouse" +msgstr "விசைப்பலகை மற்றும் சுட்டி" + +#: src/settings_translation_file.cpp +msgid "Kick players who sent more than X messages per 10 seconds." +msgstr "10 வினாடிகளுக்கு மேல் ஃச் செய்திகளை அனுப்பிய வீரர்களை கிக் செய்யுங்கள்." + +#: src/settings_translation_file.cpp +msgid "Lake steepness" +msgstr "ஏரி செங்குத்தானது" + +#: src/settings_translation_file.cpp +msgid "Lake threshold" +msgstr "ஏரி வாசல்" + +#: src/settings_translation_file.cpp +msgid "Language" +msgstr "மொழி" + +#: src/settings_translation_file.cpp +msgid "Large cave depth" +msgstr "பெரிய குகை ஆழம்" + +#: src/settings_translation_file.cpp +msgid "Large cave maximum number" +msgstr "பெரிய குகை அதிகபட்ச எண்" + +#: src/settings_translation_file.cpp +msgid "Large cave minimum number" +msgstr "பெரிய குகை குறைந்தபட்ச எண்" + +#: src/settings_translation_file.cpp +msgid "Large cave proportion flooded" +msgstr "பெரிய குகை விகிதம் வெள்ளத்தில் மூழ்கியது" + +#: src/settings_translation_file.cpp +msgid "Leaves style" +msgstr "இலைகள் நடை" + +#: src/settings_translation_file.cpp +msgid "" +"Leaves style:\n" +"- Fancy: all faces visible\n" +"- Simple: only outer faces\n" +"- Opaque: disable transparency" +msgstr "" +"இலைகள் நடை:\n" +" - ஆடம்பரமான: எல்லா முகங்களும் தெரியும்\n" +" - எளிமையானது: வெளிப்புற முகங்கள் மட்டுமே\n" +" - ஒளிபுகா: வெளிப்படைத்தன்மையை முடக்கு" + +#: src/settings_translation_file.cpp +msgid "" +"Length of a server tick (the interval at which everything is generally " +"updated),\n" +"stated in seconds.\n" +"Does not apply to sessions hosted from the client menu.\n" +"This is a lower bound, i.e. server steps may not be shorter than this, but\n" +"they are often longer." +msgstr "" +"ஒரு சேவையக டிக்கின் நீளம் (எல்லாம் பொதுவாக புதுப்பிக்கப்படும் இடைவெளி),\n" +" விநாடிகளில் கூறப்பட்டது.\n" +" கிளையன்ட் மெனுவிலிருந்து புரவலன் செய்யப்பட்ட அமர்வுகளுக்கு பொருந்தாது.\n" +" இது குறைந்த எல்லையாகும், அதாவது சேவையக படிகள் இதை விட குறைவாக இருக்காது, ஆனால்\n" +" அவை பெரும்பாலும் நீளமாக இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "Length of liquid waves." +msgstr "திரவ அலைகளின் நீளம்." + +#: src/settings_translation_file.cpp +msgid "" +"Length of time between Active Block Modifier (ABM) execution cycles, stated " +"in seconds." +msgstr "" +"செயலில் தொகுதி மாற்றியமைப்பாளர் (ஏபிஎம்) செயல்படுத்தல் சுழற்சிகளுக்கு இடையிலான நேரத்தின் " +"நீளம், நொடிகளில் குறிப்பிடப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "Length of time between NodeTimer execution cycles, stated in seconds." +msgstr "" +"நோடிமர் சாவுஒறுப்பு சுழற்சிகளுக்கு இடையிலான நேரத்தின் நீளம், நொடிகளில் " +"குறிப்பிடப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"Length of time between active block management cycles, stated in seconds." +msgstr "" +"செயலில் உள்ள தொகுதி மேலாண்மை சுழற்சிகளுக்கு இடையிலான நேரத்தின் நீளம், நொடிகளில் " +"குறிப்பிடப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"Level of logging to be written to debug.txt:\n" +"- (no logging)\n" +"- none (messages with no level)\n" +"- error\n" +"- warning\n" +"- action\n" +"- info\n" +"- verbose\n" +"- trace" +msgstr "" +"பிழைத்திருத்தத்திற்கு எழுத வேண்டிய பதிவு நிலை. Txt:\n" +" - <எதுவும்> (பதிவு இல்லை)\n" +" - எதுவுமில்லை (எந்த மட்டமும் இல்லாத செய்திகள்)\n" +" - பிழை\n" +" - எச்சரிக்கை\n" +" - செயல்\n" +" - செய்தி\n" +" - வாய்மொழி\n" +" - சுவடு" + +#: src/settings_translation_file.cpp +msgid "Light curve boost" +msgstr "ஒளி வளைவு பூச்ட்" + +#: src/settings_translation_file.cpp +msgid "Light curve boost center" +msgstr "ஒளி வளைவு பூச்ட் நடுவண்" + +#: src/settings_translation_file.cpp +msgid "Light curve boost spread" +msgstr "ஒளி வளைவு பூச்ட் பரவல்" + +#: src/settings_translation_file.cpp +msgid "Light curve gamma" +msgstr "ஒளி வளைவு காமா" + +#: src/settings_translation_file.cpp +msgid "Light curve high gradient" +msgstr "ஒளி வளைவு உயர் சாய்வு" + +#: src/settings_translation_file.cpp +msgid "Light curve low gradient" +msgstr "ஒளி வளைவு குறைந்த சாய்வு" + +#: src/settings_translation_file.cpp +msgid "Lighting" +msgstr "லைட்டிங்" + +#: src/settings_translation_file.cpp +msgid "" +"Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).\n" +"Only mapchunks completely within the mapgen limit are generated.\n" +"Value is stored per-world." +msgstr "" +"(0, 0, 0) இலிருந்து அனைத்து 6 திசைகளிலும் வரைபட உருவாக்கத்தின் வரம்பு, முனைகளில்.\n" +" மேப்சென் வரம்பிற்குள் MAPCHUNK கள் மட்டுமே உருவாக்கப்படுகின்றன.\n" +" மதிப்பு ஒரு உலகத்திற்கு சேமிக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Limits number of parallel HTTP requests. Affects:\n" +"- Media fetch if server uses remote_media setting.\n" +"- Serverlist download and server announcement.\n" +"- Downloads performed by main menu (e.g. mod manager).\n" +"Only has an effect if compiled with cURL." +msgstr "" +"இணையான HTTP கோரிக்கைகளின் எண்ணிக்கை. பாதிக்கிறது:\n" +" - சேவையகம் ரிமோட்_மீடியா அமைப்பைப் பயன்படுத்தினால் மீடியா பெறுதல்.\n" +" - சேவையக பட்டியல் பதிவிறக்கம் மற்றும் சேவையக அறிவிப்பு.\n" +" - முதன்மையான மெனுவால் நிகழ்த்தப்பட்ட பதிவிறக்கங்கள் (எ.கா. மோட் மேலாளர்).\n" +" சுருட்டை தொகுத்தால் மட்டுமே ஒரு விளைவைக் கொண்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "Liquid fluidity" +msgstr "திரவ திரவம்" + +#: src/settings_translation_file.cpp +msgid "Liquid fluidity smoothing" +msgstr "திரவ திரவம் மென்மையாக்குதல்" + +#: src/settings_translation_file.cpp +msgid "Liquid loop max" +msgstr "திரவ வளைய அதிகபட்சம்" + +#: src/settings_translation_file.cpp +msgid "Liquid queue purge time" +msgstr "திரவ வரிசை சுத்திகரிப்பு நேரம்" + +#: src/settings_translation_file.cpp +msgid "Liquid reflections" +msgstr "திரவ பிரதிபலிப்புகள்" + +#: src/settings_translation_file.cpp +msgid "Liquid sinking" +msgstr "திரவ மூழ்கும்" + +#: src/settings_translation_file.cpp +msgid "Liquid update interval in seconds." +msgstr "நொடிகளில் திரவ புதுப்பிப்பு இடைவெளி." + +#: src/settings_translation_file.cpp +msgid "Liquid update tick" +msgstr "திரவ புதுப்பிப்பு டிக்" + +#: src/settings_translation_file.cpp +msgid "Load the game profiler" +msgstr "விளையாட்டு சுயவிவரத்தை ஏற்றவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Load the game profiler to collect game profiling data.\n" +"Provides a /profiler command to access the compiled profile.\n" +"Useful for mod developers and server operators." +msgstr "" +"விளையாட்டு விவரக்குறிப்பு தரவை சேகரிக்க விளையாட்டு சுயவிவரத்தை ஏற்றவும்.\n" +" தொகுக்கப்பட்ட சுயவிவரத்தை அணுக ஏ /சுயவிவர கட்டளையை வழங்குகிறது.\n" +" மோட் உருவாக்குபவர்கள் மற்றும் சேவையக ஆபரேட்டர்களுக்கு பயனுள்ளதாக இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "Loading Block Modifiers" +msgstr "தொகுதி மாற்றிகளை ஏற்றுகிறது" + +#: src/settings_translation_file.cpp +msgid "Lower Y limit of dungeons." +msgstr "நிலவறைகளின் குறைந்த ஒய் வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Lower Y limit of floatlands." +msgstr "ஃப்ளோட்லேண்ட்சின் குறைந்த ஒய் வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Main menu script" +msgstr "முதன்மை பட்டியல் ச்கிரிப்ட்" + +#: src/settings_translation_file.cpp +msgid "" +"Make fog and sky colors depend on daytime (dawn/sunset) and view direction." +msgstr "" +"மூடுபனி மற்றும் வான வண்ணங்கள் பகல்நேரத்தை (விடியல்/சூரிய அச்தமனம்) சார்ந்து திசையைக் காண்க." + +#: src/settings_translation_file.cpp +msgid "Map Compression Level for Disk Storage" +msgstr "வட்டு சேமிப்பகத்திற்கான வரைபட சுருக்க நிலை" + +#: src/settings_translation_file.cpp +msgid "Map Compression Level for Network Transfer" +msgstr "பிணையம் பரிமாற்றத்திற்கான வரைபட சுருக்க நிலை" + +#: src/settings_translation_file.cpp +msgid "Map directory" +msgstr "வரைபட அடைவு" + +#: src/settings_translation_file.cpp +msgid "Map generation attributes specific to Mapgen Carpathian." +msgstr "வரைபட உருவாக்கம் மேப்சென் கார்பாதியனுக்கு குறிப்பிட்ட பண்புக்கூறுகள்." + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Flat.\n" +"Occasional lakes and hills can be added to the flat world." +msgstr "" +"மேப்சென் பிளாட்டுக்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" அவ்வப்போது ஏரிகள் மற்றும் மலைகள் தட்டையான உலகில் சேர்க்கப்படலாம்." + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Fractal.\n" +"'terrain' enables the generation of non-fractal terrain:\n" +"ocean, islands and underground." +msgstr "" +"மேப்சென் ஃப்ராக்டலுக்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" 'டெர்ரெய்ன்' ஃப்ராக்டல் அல்லாத நிலப்பரப்பின் தலைமுறையை செயல்படுத்துகிறது:\n" +" கடல், தீவுகள் மற்றும் நிலத்தடி." + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen Valleys.\n" +"'altitude_chill': Reduces heat with altitude.\n" +"'humid_rivers': Increases humidity around rivers.\n" +"'vary_river_depth': If enabled, low humidity and high heat causes rivers\n" +"to become shallower and occasionally dry.\n" +"'altitude_dry': Reduces humidity with altitude." +msgstr "" +"மேப்சென் பள்ளத்தாக்குகளுக்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" 'உயரம்_சில்': உயரத்துடன் வெப்பத்தை குறைக்கிறது.\n" +" 'ஈரப்பதம்_ரிவர்ச்': ஆறுகளைச் சுற்றியுள்ள ஈரப்பதத்தை அதிகரிக்கிறது.\n" +" 'vary_river_depth': இயக்கப்பட்டால், குறைந்த ஈரப்பதம் மற்றும் அதிக வெப்பம் ஆறுகளை " +"ஏற்படுத்துகிறது\n" +" ஆழமற்ற மற்றும் எப்போதாவது உலர்ந்ததாக மாற.\n" +" 'உயரம்_டி': உயரத்துடன் ஈரப்பதத்தை குறைக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Map generation attributes specific to Mapgen v5." +msgstr "MAPGEN V5 க்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்." + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen v6.\n" +"The 'snowbiomes' flag enables the new 5 biome system.\n" +"When the 'snowbiomes' flag is enabled jungles are automatically enabled and\n" +"the 'jungles' flag is ignored.\n" +"The 'temples' flag disables generation of desert temples. Normal dungeons " +"will appear instead." +msgstr "" +"MAPGEN V6 க்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" 'ச்னோபியோம்ச்' கொடி புதிய 5 பயோம் அமைப்பை செயல்படுத்துகிறது.\n" +" 'ச்னோபியோம்ச்' கொடி இயக்கப்பட்டிருக்கும் போது காடுகள் தானாக இயக்கப்படும்\n" +" 'காடுகள்' கொடி புறக்கணிக்கப்படுகிறது.\n" +" 'கோயில்கள்' கொடி பாலைவன கோயில்களின் தலைமுறையை முடக்குகிறது. அதற்கு பதிலாக சாதாரண " +"நிலவறைகள் தோன்றும்." + +#: src/settings_translation_file.cpp +msgid "" +"Map generation attributes specific to Mapgen v7.\n" +"'ridges': Rivers.\n" +"'floatlands': Floating land masses in the atmosphere.\n" +"'caverns': Giant caves deep underground." +msgstr "" +"MAPGEN V7 க்கு குறிப்பிட்ட வரைபட தலைமுறை பண்புக்கூறுகள்.\n" +" 'முகடுகள்': ஆறுகள்.\n" +" 'ஃப்ளோட்லேண்ட்ச்': வளிமண்டலத்தில் மிதக்கும் நிலப்பரப்பு.\n" +" 'கேவர்ன்ச்': செயண்ட் குகைகள் ஆழமான நிலத்தடி." + +#: src/settings_translation_file.cpp +msgid "Map generation limit" +msgstr "வரைபட தலைமுறை வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Map save interval" +msgstr "வரைபடம் இடைவெளி சேமிக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Map shadows update frames" +msgstr "வரைபட நிழல்கள் பிரேம்களைப் புதுப்பிக்கின்றன" + +#: src/settings_translation_file.cpp +msgid "Mapblock limit" +msgstr "மேப் பிளாக் வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Mapblock mesh generation delay" +msgstr "மேப் பிளாக் மெச் தலைமுறை நேரந்தவறுகை" + +#: src/settings_translation_file.cpp +msgid "Mapblock mesh generation threads" +msgstr "மேப் பிளாக் மெச் தலைமுறை நூல்கள்" + +#: src/settings_translation_file.cpp +msgid "Mapblock unload timeout" +msgstr "MapBlock இறக்குமதி நேரம் முடிந்தது" + +#: src/settings_translation_file.cpp +msgid "Mapgen Carpathian" +msgstr "மேப்சென் கார்பாதியன்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Carpathian specific flags" +msgstr "Mapgen Carpathian குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Flat" +msgstr "மேப்சென் பிளாட்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Flat specific flags" +msgstr "Mapgen தட்டையான குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Fractal" +msgstr "Mapgen Fractal" + +#: src/settings_translation_file.cpp +msgid "Mapgen Fractal specific flags" +msgstr "Mapgen Fractal குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen V5" +msgstr "மேப்சென் வி 5" + +#: src/settings_translation_file.cpp +msgid "Mapgen V5 specific flags" +msgstr "MAPGEN V5 குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen V6" +msgstr "மேப்சென் வி 6" + +#: src/settings_translation_file.cpp +msgid "Mapgen V6 specific flags" +msgstr "MAPGEN V6 குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen V7" +msgstr "மேப்சென் வி 7" + +#: src/settings_translation_file.cpp +msgid "Mapgen V7 specific flags" +msgstr "MAPGEN V7 குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Valleys" +msgstr "மேப்சென் பள்ளத்தாக்குகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen Valleys specific flags" +msgstr "Mapgen பள்ளத்தாக்குகள் குறிப்பிட்ட கொடிகள்" + +#: src/settings_translation_file.cpp +msgid "Mapgen debug" +msgstr "மேப்சென் பிழைத்திருத்தம்" + +#: src/settings_translation_file.cpp +msgid "Mapgen name" +msgstr "மேப்சென் பெயர்" + +#: src/settings_translation_file.cpp +msgid "Max block generate distance" +msgstr "அதிகபட்ச தொகுதி தூரத்தை உருவாக்குகிறது" + +#: src/settings_translation_file.cpp +msgid "Max block send distance" +msgstr "அதிகபட்ச தொகுதி தூரம் அனுப்பவும்" + +#: src/settings_translation_file.cpp +msgid "Max liquids processed per step." +msgstr "ஒரு படிக்கு செயலாக்கப்பட்ட அதிகபட்ச திரவங்கள்." + +#: src/settings_translation_file.cpp +msgid "Max. clearobjects extra blocks" +msgstr "அதிகபட்சம். கூடுதல் தொகுதிகள் க்ளியர்ஆப்செக்ட்ச்" + +#: src/settings_translation_file.cpp +msgid "Max. packets per iteration" +msgstr "அதிகபட்சம். மறு செய்கைக்கு பாக்கெட்டுகள்" + +#: src/settings_translation_file.cpp +msgid "Maximum FPS" +msgstr "அதிகபட்ச எஃப்.பி.எச்" + +#: src/settings_translation_file.cpp +msgid "Maximum FPS when the window is not focused, or when the game is paused." +msgstr "" +"சாளரம் கவனம் செலுத்தாதபோது, அல்லது விளையாட்டு இடைநிறுத்தப்படும்போது அதிகபட்ச " +"எஃப்.பி.எச்." + +#: src/settings_translation_file.cpp +msgid "Maximum distance to render shadows." +msgstr "நிழல்களை வழங்க அதிகபட்ச தூரம்." + +#: src/settings_translation_file.cpp +msgid "Maximum forceloaded blocks" +msgstr "அதிகபட்ச ஃபோர்செலோடட் தொகுதிகள்" + +#: src/settings_translation_file.cpp +msgid "Maximum hotbar width" +msgstr "அதிகபட்ச ஆட்பார் அகலம்" + +#: src/settings_translation_file.cpp +msgid "Maximum limit of random number of large caves per mapchunk." +msgstr "ஒரு மேப்சங்கிற்கு பெரிய குகைகளின் சீரற்ற எண்ணிக்கையின் அதிகபட்ச வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Maximum limit of random number of small caves per mapchunk." +msgstr "ஒரு மேப்சங்குக்கு சிறிய குகைகளின் சீரற்ற எண்ணிக்கையின் அதிகபட்ச வரம்பு." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum liquid resistance. Controls deceleration when entering liquid at\n" +"high speed." +msgstr "" +"அதிகபட்ச திரவ எதிர்ப்பு. திரவத்தில் நுழையும்போது குறைப்பைக் கட்டுப்படுத்துகிறது\n" +" அதிக விரைவு." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks that are simultaneously sent per client.\n" +"The maximum total count is calculated dynamically:\n" +"max_total = ceil((#clients + max_users) * per_client / 4)" +msgstr "" +"ஒரு வாடிக்கையாளருக்கு ஒரே நேரத்தில் அனுப்பப்படும் அதிகபட்ச தொகுதிகள்.\n" +" அதிகபட்ச மொத்த எண்ணிக்கை மாறும் வகையில் கணக்கிடப்படுகிறது:\n" +" max_total = ceil ((#வாடிக்கையாளர்கள் + அதிகபட்சம்_சர்கள்) * per_client / 4)" + +#: src/settings_translation_file.cpp +msgid "Maximum number of blocks that can be queued for loading." +msgstr "ஏற்றுவதற்கு வரிசைப்படுத்தக்கூடிய அதிகபட்ச தொகுதிகள்." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks to be queued that are to be generated.\n" +"This limit is enforced per player." +msgstr "" +"உருவாக்கப்பட வேண்டிய அதிகபட்ச தொகுதிகள் வரிசைப்படுத்தப்பட வேண்டும்.\n" +" இந்த வரம்பு ஒரு வீரருக்கு செயல்படுத்தப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of blocks to be queued that are to be loaded from file.\n" +"This limit is enforced per player." +msgstr "" +"கோப்பிலிருந்து ஏற்றப்பட வேண்டிய அதிகபட்ச தொகுதிகள் வரிசையில் வைக்கப்பட வேண்டும்.\n" +" இந்த வரம்பு ஒரு வீரருக்கு செயல்படுத்தப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of concurrent downloads. Downloads exceeding this limit will " +"be queued.\n" +"This should be lower than curl_parallel_limit." +msgstr "" +"ஒரே நேரத்தில் பதிவிறக்கங்களின் அதிகபட்ச எண்ணிக்கை. இந்த வரம்பை மீறும் பதிவிறக்கங்கள் " +"வரிசையில் நிற்கப்படும்.\n" +" இது CURL_PARALLEL_LIMIT ஐ விட குறைவாக இருக்க வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of mapblocks for client to be kept in memory.\n" +"Set to -1 for unlimited amount." +msgstr "" +"கிளையன்ட் நினைவகத்தில் வைக்க அதிகபட்ச மேப் பிளாக்சின் எண்ணிக்கை.\n" +" வரம்பற்ற தொகைக்கு -1 ஆக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum number of packets sent per send step in the low-level networking " +"code.\n" +"You generally don't need to change this, however busy servers may benefit " +"from a higher number." +msgstr "" +"குறைந்த அளவிலான நெட்வொர்க்கிங் குறியீட்டில் அனுப்பப்பட்ட படி அனுப்பப்பட்ட அதிகபட்ச " +"பாக்கெட்டுகள்.\n" +" நீங்கள் பொதுவாக இதை மாற்ற தேவையில்லை, இருப்பினும் பிசியான சேவையகங்கள் அதிக " +"எண்ணிக்கையில் இருந்து பயனடையக்கூடும்." + +#: src/settings_translation_file.cpp +msgid "Maximum number of players that can be connected simultaneously." +msgstr "ஒரே நேரத்தில் இணைக்கக்கூடிய அதிகபட்ச வீரர்களின் எண்ணிக்கை." + +#: src/settings_translation_file.cpp +msgid "Maximum number of recent chat messages to show" +msgstr "காண்பிக்க அண்மைக் கால அரட்டை செய்திகளின் அதிகபட்ச எண்ணிக்கை" + +#: src/settings_translation_file.cpp +msgid "Maximum number of statically stored objects in a block." +msgstr "ஒரு தொகுதியில் நிலையான சேமிக்கப்பட்ட பொருட்களின் அதிகபட்ச எண்ணிக்கை." + +#: src/settings_translation_file.cpp +msgid "Maximum objects per block" +msgstr "ஒரு தொகுதிக்கு அதிகபட்ச பொருள்கள்" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum proportion of current window to be used for hotbar.\n" +"Useful if there's something to be displayed right or left of hotbar." +msgstr "" +"ஆட்ட்பாருக்கு பயன்படுத்தப்பட வேண்டிய தற்போதைய சாளரத்தின் அதிகபட்ச விகிதம்.\n" +" ஆட்பாரின் வலது அல்லது இடதுபுறத்தில் ஏதாவது காட்டப்பட வேண்டும் என்றால் பயனுள்ளதாக " +"இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "Maximum simultaneous block sends per client" +msgstr "ஒரு வாடிக்கையாளருக்கு அதிகபட்சம் ஒரே நேரத்தில் தொகுதி அனுப்புகிறது" + +#: src/settings_translation_file.cpp +msgid "Maximum size of the outgoing chat queue" +msgstr "வெளிச்செல்லும் அரட்டை வரிசையின் அதிகபட்ச அளவு" + +#: src/settings_translation_file.cpp +msgid "" +"Maximum size of the outgoing chat queue.\n" +"0 to disable queueing and -1 to make the queue size unlimited." +msgstr "" +"வெளிச்செல்லும் அரட்டை வரிசையின் அதிகபட்ச அளவு.\n" +" வரிசையை முடக்க 0 மற்றும் -1 வரிசை அளவை வரம்பற்றதாக மாற்ற." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum time a file download (e.g. a mod download) may take, stated in " +"milliseconds." +msgstr "" +"அதிகபட்ச நேரம் ஒரு கோப்பு பதிவிறக்கம் (எ.கா. ஒரு மோட் பதிவிறக்கம்) மில்லி விநாடிகளில் " +"குறிப்பிடப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"Maximum time an interactive request (e.g. server list fetch) may take, " +"stated in milliseconds." +msgstr "" +"அதிகபட்ச நேரம் ஒரு ஊடாடும் கோரிக்கை (எ.கா. சேவையக பட்டியல் பெறுதல்) எடுக்கப்படலாம், " +"இது மில்லி விநாடிகளில் கூறப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Maximum users" +msgstr "அதிகபட்ச பயனர்கள்" + +#: src/settings_translation_file.cpp +msgid "Message of the day" +msgstr "அன்றைய செய்தி" + +#: src/settings_translation_file.cpp +msgid "Message of the day displayed to players connecting." +msgstr "இணைக்கும் வீரர்களுக்கு நாள் செய்தி காண்பிக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Method used to highlight selected object." +msgstr "தேர்ந்தெடுக்கப்பட்ட பொருளை முன்னிலைப்படுத்த பயன்படுத்தப்படும் முறை." + +#: src/settings_translation_file.cpp +msgid "Minimal level of logging to be written to chat." +msgstr "அரட்டைக்கு எழுதப்பட வேண்டிய குறைந்த அளவு பதிவு." + +#: src/settings_translation_file.cpp +msgid "Minimap scan height" +msgstr "மினிமாப் ச்கேன் உயரம்" + +#: src/settings_translation_file.cpp +msgid "Minimum dig repetition interval" +msgstr "குறைந்தபட்ச தோண்டி மறுபடியும் இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "Minimum limit of random number of large caves per mapchunk." +msgstr "ஒரு மேப்சன்குக்கு பெரிய குகைகளின் சீரற்ற எண்ணிக்கையின் குறைந்தபட்ச வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Minimum limit of random number of small caves per mapchunk." +msgstr "ஒரு மேப்சங்குக்கு சிறிய குகைகளின் சீரற்ற எண்ணிக்கையின் குறைந்தபட்ச வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Mipmapping" +msgstr "மிப்மாப்பிங்" + +#: src/settings_translation_file.cpp +msgid "Miscellaneous" +msgstr "மற்றவை" + +#: src/settings_translation_file.cpp +msgid "Mod Profiler" +msgstr "சுயவிவரங்களுக்கு எதிராக" + +#: src/settings_translation_file.cpp +msgid "Mod Security" +msgstr "மோட் பாதுகாப்பு" + +#: src/settings_translation_file.cpp +msgid "Mod channels" +msgstr "மோட் சேனல்கள்" + +#: src/settings_translation_file.cpp +msgid "Modifies the size of the HUD elements." +msgstr "HUD கூறுகளின் அளவை மாற்றியமைக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Monospace font path" +msgstr "மோனோச்பேச் எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Monospace font size" +msgstr "மோனோச்பேச் எழுத்துரு அளவு" + +#: src/settings_translation_file.cpp +msgid "Monospace font size divisible by" +msgstr "மோனோச்பேச் எழுத்துரு அளவு பிரிக்கக்கூடியது" + +#: src/settings_translation_file.cpp +msgid "Mountain height noise" +msgstr "மலை உயர ஒலி" + +#: src/settings_translation_file.cpp +msgid "Mountain noise" +msgstr "மலை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Mountain variation noise" +msgstr "மலை மாறுபாடு ஒலி" + +#: src/settings_translation_file.cpp +msgid "Mountain zero level" +msgstr "மலை சுழிய நிலை" + +#: src/settings_translation_file.cpp +msgid "Mouse sensitivity" +msgstr "சுட்டி உணர்திறன்" + +#: src/settings_translation_file.cpp +msgid "Mouse sensitivity multiplier." +msgstr "சுட்டி உணர்திறன் பெருக்கி." + +#: src/settings_translation_file.cpp +msgid "Movement threshold" +msgstr "இயக்க வாசல்" + +#: src/settings_translation_file.cpp +msgid "Mud noise" +msgstr "மண் ஒலி" + +#: src/settings_translation_file.cpp +msgid "" +"Multiplier for fall bobbing.\n" +"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." +msgstr "" +"வீழ்ச்சி பாப்பிங்கிற்கான பெருக்கி.\n" +" உதாரணமாக: 0 பார்வைக்கு இல்லை; சாதாரணத்திற்கு 1.0; இரட்டிப்புக்கு 2.0." + +#: src/settings_translation_file.cpp +msgid "Mute sound" +msgstr "முடக்கு ஒலி" + +#: src/settings_translation_file.cpp +msgid "" +"Name of map generator to be used when creating a new world.\n" +"Creating a world in the main menu will override this.\n" +"Current mapgens in a highly unstable state:\n" +"- The optional floatlands of v7 (disabled by default)." +msgstr "" +"புதிய உலகத்தை உருவாக்கும்போது பயன்படுத்த வேண்டிய வரைபட செனரேட்டரின் பெயர்.\n" +" முதன்மையான பட்டியலில் ஒரு உலகத்தை உருவாக்குவது இதை மேலெழுதும்.\n" +" மிகவும் நிலையற்ற நிலையில் தற்போதைய வரைபடங்கள்:\n" +" - V7 இன் விருப்பமான மிதவை நிலங்கள் (இயல்பாக முடக்கப்பட்டுள்ளது)." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Name of the player.\n" +"When running a server, a client connecting with this name is admin.\n" +"When starting from the main menu, this is overridden." +msgstr "" +"வீரரின் பெயர்.\n" +" சேவையகத்தை இயக்கும் போது, இந்த பெயருடன் இணைக்கும் வாடிக்கையாளர்கள் நிர்வாகிகள்.\n" +" முதன்மையான மெனுவிலிருந்து தொடங்கும் போது, இது மேலெழுதப்பட்டுள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"Name of the server, to be displayed when players join and in the serverlist." +msgstr "" +"சேவையகத்தின் பெயர், வீரர்கள் சேரும்போது மற்றும் சர்வர் பட்டியலில் காண்பிக்கப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"Network port to listen (UDP).\n" +"This value will be overridden when starting from the main menu." +msgstr "" +"கேட்க பிணையம் துறைமுகம் (யுடிபி).\n" +" முதன்மையான மெனுவிலிருந்து தொடங்கும் போது இந்த மதிப்பு மீறப்படும்." + +#: src/settings_translation_file.cpp +msgid "Networking" +msgstr "நெட்வொர்க்கிங்" + +#: src/settings_translation_file.cpp +msgid "New users need to input this password." +msgstr "புதிய பயனர்கள் இந்த கடவுச்சொல்லை உள்ளிட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Node and Entity Highlighting" +msgstr "முனை மற்றும் நிறுவனம் சிறப்பம்சமாக" + +#: src/settings_translation_file.cpp +msgid "Node highlighting" +msgstr "முனை சிறப்பம்சமாக" + +#: src/settings_translation_file.cpp +msgid "Node specular" +msgstr "முனை ஏகப்பட்ட" + +#: src/settings_translation_file.cpp +msgid "NodeTimer interval" +msgstr "நோடிமர் இடைவெளி" + +#: src/settings_translation_file.cpp +msgid "Noises" +msgstr "ஒலி" + +#: src/settings_translation_file.cpp +msgid "Number of emerge threads" +msgstr "வெளிப்படும் நூல்களின் எண்ணிக்கை" + +#: src/settings_translation_file.cpp +msgid "" +"Number of emerge threads to use.\n" +"Value 0:\n" +"- Automatic selection. The number of emerge threads will be\n" +"- 'number of processors - 2', with a lower limit of 1.\n" +"Any other value:\n" +"- Specifies the number of emerge threads, with a lower limit of 1.\n" +"WARNING: Increasing the number of emerge threads increases engine mapgen\n" +"speed, but this may harm game performance by interfering with other\n" +"processes, especially in singleplayer and/or when running Lua code in\n" +"'on_generated'. For many users the optimum setting may be '1'." +msgstr "" +"பயன்படுத்த வெளிப்படையான நூல்களின் எண்ணிக்கை.\n" +" மதிப்பு 0:\n" +" - தானியங்கி தேர்வு. வெளிப்படும் நூல்களின் எண்ணிக்கை இருக்கும்\n" +" - 'செயலிகளின் எண்ணிக்கை - 2', குறைந்த வரம்புடன் 1.\n" +" வேறு எந்த மதிப்பு:\n" +" - குறைந்த வரம்புடன் 1 இன் எமர்ச் நூல்களின் எண்ணிக்கையைக் குறிப்பிடுகிறது.\n" +" எச்சரிக்கை: வெளிப்படையான நூல்களின் எண்ணிக்கையை அதிகரிப்பது என்சின் மேப்சென் " +"அதிகரிக்கிறது\n" +" விரைவு, ஆனால் இது மற்றவர்களுடன் தலையிடுவதன் மூலம் விளையாட்டு செயல்திறனுக்கு தீங்கு " +"விளைவிக்கும்\n" +" செயல்முறைகள், குறிப்பாக சிங்கிள் பிளேயர் மற்றும்/அல்லது லுவா குறியீட்டை இயக்கும் போது\n" +" 'on_generated'. பல பயனர்களுக்கு உகந்த அமைப்பு '1' ஆக இருக்கலாம்." + +#: src/settings_translation_file.cpp +msgid "" +"Number of extra blocks that can be loaded by /clearobjects at once.\n" +"This is a trade-off between SQLite transaction overhead and\n" +"memory consumption (4096=100MB, as a rule of thumb)." +msgstr "" +"ஒரே நேரத்தில் /கிளியப்செக்டுகளால் ஏற்றக்கூடிய கூடுதல் தொகுதிகளின் எண்ணிக்கை.\n" +" இது SQLITE பரிவர்த்தனை மேல்நிலை மற்றும் இடையே ஒரு வர்த்தகமாகும்\n" +" நினைவக நுகர்வு (4096 = 100MB, கட்டைவிரல் விதியாக)." + +#: src/settings_translation_file.cpp +msgid "Number of messages a player may send per 10 seconds." +msgstr "ஒரு வீரர் 10 வினாடிகளுக்கு அனுப்பக்கூடிய செய்திகளின் எண்ணிக்கை." + +#: src/settings_translation_file.cpp +msgid "" +"Number of threads to use for mesh generation.\n" +"Value of 0 (default) will let Luanti autodetect the number of available " +"threads." +msgstr "" +"கண்ணி தலைமுறைக்கு பயன்படுத்த நூல்களின் எண்ணிக்கை.\n" +" 0 (இயல்புநிலை) மதிப்பு லுவாண்டி கிடைக்கக்கூடிய நூல்களின் எண்ணிக்கையை தன்னியக்கமாக்க " +"அனுமதிக்கும்." + +#: src/settings_translation_file.cpp +msgid "Occlusion Culler" +msgstr "மறைவு குல்லர்" + +#: src/settings_translation_file.cpp +msgid "Occlusion Culling" +msgstr "மறைவு குறைத்தல்" + +#: src/settings_translation_file.cpp +msgid "" +"Opaqueness (alpha) of the shadow behind the default font, between 0 and 255." +msgstr "" +"இயல்புநிலை எழுத்துருவின் பின்னால் உள்ள நிழலின் ஒளிபுகா (ஆல்பா), 0 முதல் 255 வரை." + +#: src/settings_translation_file.cpp +msgid "" +"Open the pause menu when the window's focus is lost. Does not pause if a " +"formspec is\n" +"open." +msgstr "" +"சாளரத்தின் கவனம் இழக்கப்படும்போது இடைநிறுத்த மெனுவைத் திறக்கவும். ஒரு ஃபார்ம்ச்பெக் " +"இருந்தால் இடைநிறுத்தப்படாது\n" +" திறந்த." + +#: src/settings_translation_file.cpp +msgid "OpenGL debug" +msgstr "Opengl பிழைத்திருத்தம்" + +#: src/settings_translation_file.cpp +msgid "Optimize GUI for touchscreens" +msgstr "தொடுதிரைகளுக்கு GUI ஐ மேம்படுத்தவும்" + +#: src/settings_translation_file.cpp +msgid "Optional override for chat weblink color." +msgstr "அரட்டை வெப்லிங்க் வண்ணத்திற்கான விருப்ப மேலெழுத்து." + +#: src/settings_translation_file.cpp +msgid "Other Effects" +msgstr "பிற விளைவுகள்" + +#: src/settings_translation_file.cpp +msgid "" +"Path of the fallback font. Must be a TrueType font.\n" +"This font will be used for certain languages or if the default font is " +"unavailable." +msgstr "" +"குறைவடையும் எழுத்துருவின் பாதை. ஒரு TRUETYPE எழுத்துருவாக இருக்க வேண்டும்.\n" +" இந்த எழுத்துரு சில மொழிகளுக்கு பயன்படுத்தப்படும் அல்லது இயல்புநிலை எழுத்துரு " +"கிடைக்கவில்லை என்றால்." + +#: src/settings_translation_file.cpp +msgid "" +"Path to save screenshots at. Can be an absolute or relative path.\n" +"The folder will be created if it doesn't already exist." +msgstr "" +"திரை சாட்களைச் சேமிப்பதற்கான பாதை. ஒரு முழுமையான அல்லது உறவினர் பாதையாக இருக்கலாம்.\n" +" கோப்புறை ஏற்கனவே இல்லாவிட்டால் உருவாக்கப்படும்." + +#: src/settings_translation_file.cpp +msgid "" +"Path to shader directory. If no path is defined, default location will be " +"used." +msgstr "" +"சேடர் கோப்பகத்திற்கான பாதை. பாதை வரையறுக்கப்படாவிட்டால், இயல்புநிலை இருப்பிடம் " +"பயன்படுத்தப்படும்." + +#: src/settings_translation_file.cpp +msgid "" +"Path to the default font. Must be a TrueType font.\n" +"The fallback font will be used if the font cannot be loaded." +msgstr "" +"இயல்புநிலை எழுத்துருவுக்கு பாதை. ஒரு TRUETYPE எழுத்துருவாக இருக்க வேண்டும்.\n" +" எழுத்துருவை ஏற்ற முடியாவிட்டால் குறைவடையும் எழுத்துரு பயன்படுத்தப்படும்." + +#: src/settings_translation_file.cpp +msgid "" +"Path to the monospace font. Must be a TrueType font.\n" +"This font is used for e.g. the console and profiler screen." +msgstr "" +"மோனோச்பேச் எழுத்துருவுக்கு பாதை. ஒரு TRUETYPE எழுத்துருவாக இருக்க வேண்டும்.\n" +" இந்த எழுத்துரு எ.கா. கன்சோல் மற்றும் சுயவிவரத் திரை." + +#: src/settings_translation_file.cpp +msgid "Pause on lost window focus" +msgstr "இழந்த சாளர மையத்தில் இடைநிறுத்தம்" + +#: src/settings_translation_file.cpp +msgid "Per-player limit of queued blocks load from disk" +msgstr "வரிசையில் இருந்து வரிசையில் இருந்து ஏற்றப்பட்ட தொகுதிகளின் பிளேயர் வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Per-player limit of queued blocks to generate" +msgstr "வரிசைப்படுத்தப்பட்ட தொகுதிகளின் ஒவ்வொரு பிளேயர் வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Physics" +msgstr "இயற்பியல்" + +#: src/settings_translation_file.cpp +msgid "Place repetition interval" +msgstr "மீண்டும் மறுபடியும் இடைவெளி வைக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Player transfer distance" +msgstr "பிளேயர் பரிமாற்ற தூரம்" + +#: src/settings_translation_file.cpp +msgid "Poisson filtering" +msgstr "பாய்சன் வடிகட்டுதல்" + +#: src/settings_translation_file.cpp +msgid "Post Processing" +msgstr "இடுகை செயலாக்கம்" + +#: src/settings_translation_file.cpp +msgid "" +"Prevent digging and placing from repeating when holding the respective " +"buttons.\n" +"Enable this when you dig or place too often by accident.\n" +"On touchscreens, this only affects digging." +msgstr "" +"அந்தந்த பொத்தான்களை வைத்திருக்கும்போது தோண்டுவதையும் மீண்டும் மீண்டும் வருவதையும் தடுக்கவும்.\n" +" தற்செயலாக நீங்கள் அடிக்கடி தோண்டும்போது அல்லது வைக்கும்போது இதை இயக்கவும்.\n" +" தொடுதிரைகளில், இது தோண்டுவதை மட்டுமே பாதிக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Prevent mods from doing insecure things like running shell commands." +msgstr "" +"செல் கட்டளைகளை இயக்குவது போன்ற பாதுகாப்பற்ற விசயங்களைச் செய்வதிலிருந்து மோட்சைத் " +"தடுக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Print the engine's profiling data in regular intervals (in seconds).\n" +"0 = disable. Useful for developers." +msgstr "" +"இயந்திரத்தின் விவரக்குறிப்பு தரவை வழக்கமான இடைவெளியில் (நொடிகளில்) அச்சிடுக.\n" +" 0 = முடக்கு. டெவலப்பர்களுக்கு பயனுள்ளதாக இருக்கும்." + +#: src/settings_translation_file.cpp +msgid "Privileges that players with basic_privs can grant" +msgstr "அடிப்படை_பிரிவ்சுடன் கூடிய வீரர்கள் வழங்கக்கூடிய சலுகைகள்" + +#: src/settings_translation_file.cpp +msgid "Profiler" +msgstr "விவரக்குறிப்பு" + +#: src/settings_translation_file.cpp +msgid "Prometheus listener address" +msgstr "ப்ரோமிதியச் கேட்பவரின் முகவரி" + +#: src/settings_translation_file.cpp +msgid "" +"Prometheus listener address.\n" +"If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" +"enable metrics listener for Prometheus on that address.\n" +"Metrics can be fetched on http://127.0.0.1:30000/metrics" +msgstr "" +"ப்ரோமிதியச் கேட்பவரின் முகவரி.\n" +" LUANTI ENABLE_PROMETHEUS விருப்பத்துடன் தொகுக்கப்பட்டால்,\n" +" அந்த முகவரியில் ப்ரோமிதியசுக்கு அளவீடுகள் கேட்பவரை இயக்கவும்.\n" +" அளவீடுகளை http://127.0.0.1:30000/metrics இல் பெறலாம்" + +#: src/settings_translation_file.cpp +msgid "Proportion of large caves that contain liquid." +msgstr "திரவத்தைக் கொண்ட பெரிய குகைகளின் விகிதம்." + +#: src/settings_translation_file.cpp +msgid "Protocol version minimum" +msgstr "நெறிமுறை பதிப்பு குறைந்தபட்சம்" + +#: src/settings_translation_file.cpp +msgid "Punch gesture" +msgstr "பஞ்ச் சைகை" + +#: src/settings_translation_file.cpp +msgid "" +"Radius of cloud area stated in number of 64 node cloud squares.\n" +"Values larger than 26 will start to produce sharp cutoffs at cloud area " +"corners." +msgstr "" +"மேகக்கணி பகுதியின் ஆரம் 64 முனை முகில் சதுரங்களின் எண்ணிக்கையில் கூறப்பட்டுள்ளது.\n" +" 26 ஐ விட பெரிய மதிப்புகள் முகில் பகுதி மூலைகளில் கூர்மையான வெட்டுக்களை உருவாக்கத் " +"தொடங்கும்." + +#: src/settings_translation_file.cpp +msgid "Radius to use when the block bounds HUD feature is set to near blocks." +msgstr "" +"தொகுதி வரம்புகள் HUD நற்பொருத்தம் அருகிலுள்ள தொகுதிகளுக்கு அமைக்கப்படும் போது பயன்படுத்த " +"ஆரம்." + +#: src/settings_translation_file.cpp +msgid "Raises terrain to make valleys around the rivers." +msgstr "ஆறுகளைச் சுற்றி பள்ளத்தாக்குகளை உருவாக்க நிலப்பரப்பை உயர்த்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Random input" +msgstr "சீரற்ற உள்ளீடு" + +#: src/settings_translation_file.cpp +msgid "Random mod load order" +msgstr "சீரற்ற மோட் சுமை வரிசை" + +#: src/settings_translation_file.cpp +msgid "Recent Chat Messages" +msgstr "அண்மைக் கால அரட்டை செய்திகள்" + +#: src/settings_translation_file.cpp +msgid "Regular font path" +msgstr "வழக்கமான எழுத்துரு பாதை" + +#: src/settings_translation_file.cpp +msgid "Remember screen size" +msgstr "திரை அளவை நினைவில் கொள்ளுங்கள்" + +#: src/settings_translation_file.cpp +msgid "Remote media" +msgstr "தொலை ஊடகங்கள்" + +#: src/settings_translation_file.cpp +msgid "" +"Remove color codes from incoming chat messages\n" +"Use this to stop players from being able to use color in their messages" +msgstr "" +"உள்வரும் அரட்டை செய்திகளிலிருந்து வண்ண குறியீடுகளை அகற்று\n" +" வீரர்கள் தங்கள் செய்திகளில் வண்ணத்தைப் பயன்படுத்துவதைத் தடுக்க இதைப் பயன்படுத்தவும்" + +#: src/settings_translation_file.cpp +msgid "Replaces the default main menu with a custom one." +msgstr "இயல்புநிலை முதன்மையான மெனுவை தனிப்பயன் மூலம் மாற்றுகிறது." + +#: src/settings_translation_file.cpp +msgid "Report path" +msgstr "அறிக்கை பாதை" + +#: src/settings_translation_file.cpp +msgid "" +"Restricts the access of certain client-side functions on servers.\n" +"Combine the byteflags below to restrict client-side features, or set to 0\n" +"for no restrictions:\n" +"LOAD_CLIENT_MODS: 1 (disable loading client-provided mods)\n" +"CHAT_MESSAGES: 2 (disable send_chat_message call client-side)\n" +"READ_ITEMDEFS: 4 (disable get_item_def call client-side)\n" +"READ_NODEDEFS: 8 (disable get_node_def call client-side)\n" +"LOOKUP_NODES_LIMIT: 16 (limits get_node call client-side to\n" +"csm_restriction_noderange)\n" +"READ_PLAYERINFO: 32 (disable get_player_names call client-side)" +msgstr "" +"சேவையகங்களில் சில கிளையன்ட் பக்க செயல்பாடுகளின் அணுகலை கட்டுப்படுத்துகிறது.\n" +" கிளையன்ட் பக்க அம்சங்களைக் கட்டுப்படுத்த கீழே உள்ள பைட்ஃப்ளாக்சை இணைக்கவும் அல்லது 0 ஆக " +"அமைக்கவும்\n" +" எந்த கட்டுப்பாடுகளுக்கும்:\n" +" Load_client_mods: 1 (கிளையன்ட் வழங்கிய மோட்களை ஏற்றுவதை முடக்கு)\n" +" சாட்_மெசேச்கள்: 2 (send_chat_message ஐ முடக்கு கிளையன்ட்-சைட்)\n" +" Read_itemdefs: 4 (Get_item_def ஐ முடக்கு கிளையன்ட்-சைட்)\n" +" Read_nodedefs: 8 (Get_node_def ஐ முடக்கு கிளையன்ட்-சைட்)\n" +" Goodup_nodes_limit: 16 (get_node கிளையன்ட்-பக்கத்தை அழைக்கவும்\n" +" CSM_RESTRICTION_NODERANGE)\n" +" Read_playerinfo: 32 (Get_Player_names ஐ முடக்கு கிளையன்ட்-சைட்)" + +#: src/settings_translation_file.cpp +msgid "Ridge mountain spread noise" +msgstr "ரிட்ச் மலை பரவல் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Ridge noise" +msgstr "ரிட்ச் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Ridge underwater noise" +msgstr "ரிட்ச் நீருக்கடியில் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Ridged mountain size noise" +msgstr "அகற்றப்பட்ட மலை அளவு ஒலி" + +#: src/settings_translation_file.cpp +msgid "River channel depth" +msgstr "நதி சேனல் ஆழம்" + +#: src/settings_translation_file.cpp +msgid "River channel width" +msgstr "நதி சேனல் அகலம்" + +#: src/settings_translation_file.cpp +msgid "River depth" +msgstr "நதி ஆழம்" + +#: src/settings_translation_file.cpp +msgid "River noise" +msgstr "நதி ஒலி" + +#: src/settings_translation_file.cpp +msgid "River size" +msgstr "நதி அளவு" + +#: src/settings_translation_file.cpp +msgid "River valley width" +msgstr "நதி பள்ளத்தாக்கு அகலம்" + +#: src/settings_translation_file.cpp +msgid "Rollback recording" +msgstr "ரோல்பேக் பதிவு" + +#: src/settings_translation_file.cpp +msgid "Rolling hill size noise" +msgstr "மலை அளவு ஒலி உருட்டல்" + +#: src/settings_translation_file.cpp +msgid "Rolling hills spread noise" +msgstr "ரோலிங் மலைகள் ஒலி பரவுகின்றன" + +#: src/settings_translation_file.cpp +msgid "Safe digging and placing" +msgstr "பாதுகாப்பான தோண்டி மற்றும் வைப்பது" + +#: src/settings_translation_file.cpp +msgid "Sandy beaches occur when np_beach exceeds this value." +msgstr "NP_BEACH இந்த மதிப்பை மீறும் போது மணல் கடற்கரைகள் ஏற்படுகின்றன." + +#: src/settings_translation_file.cpp +msgid "Save the map received by the client on disk." +msgstr "கிளையன்ட் பெறப்பட்ட வரைபடத்தை வட்டில் சேமிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Save window size automatically when modified.\n" +"If true, screen size is saved in screen_w and screen_h, and whether the " +"window\n" +"is maximized is stored in window_maximized.\n" +"(Autosaving window_maximized only works if compiled with SDL.)" +msgstr "" +"மாற்றியமைக்கும்போது சாளர அளவை தானாக சேமிக்கவும்.\n" +" உண்மை என்றால், திரை அளவு ச்கிரீன்_டபிள்யூ மற்றும் ச்கிரீன்_எச் ஆகியவற்றில் " +"சேமிக்கப்படுகிறது, மேலும் சாளரம் உள்ளதா\n" +" அதிகபட்சம் சாளரம்_மாக்சிமிசில் சேமிக்கப்படுகிறது.\n" +" (SDL உடன் தொகுக்கப்பட்டால் மட்டுமே ஆட்டோசேவிங் சாளரம்_மாக்சிமிச் வேலை செய்யும்.)" + +#: src/settings_translation_file.cpp +msgid "Saving map received from server" +msgstr "சேவையகத்திலிருந்து பெறப்பட்ட வரைபடம்" + +#: src/settings_translation_file.cpp +msgid "" +"Scale GUI by a user specified value.\n" +"Use a nearest-neighbor-anti-alias filter to scale the GUI.\n" +"This will smooth over some of the rough edges, and blend\n" +"pixels when scaling down, at the cost of blurring some\n" +"edge pixels when images are scaled by non-integer sizes." +msgstr "" +"ஒரு பயனர் குறிப்பிட்ட மதிப்பால் GUI ஐ அளவிடவும்.\n" +" GUI ஐ அளவிட அருகிலுள்ள-அக்ச்போர்-ஆன்டி-அலியாச் வடிகட்டியைப் பயன்படுத்தவும்.\n" +" இது சில கடினமான விளிம்புகளில் மென்மையாக இருக்கும், மேலும் கலக்கவும்\n" +" படப்புள்ளிகள் அளவிடும்போது, சிலவற்றை மழுங்கடிக்கும் செலவில்\n" +" விளிம்பில் படப்புள்ளிகள் படிகள் முழு எண் அல்லாத அளவுகளால் அளவிடப்படும்போது." + +#: src/settings_translation_file.cpp +msgid "Screen" +msgstr "திரை" + +#: src/settings_translation_file.cpp +msgid "Screen height" +msgstr "திரை உயரம்" + +#: src/settings_translation_file.cpp +msgid "Screen width" +msgstr "திரை அகலம்" + +#: src/settings_translation_file.cpp +msgid "Screenshot folder" +msgstr "திரைக்காட்சி கோப்புறை" + +#: src/settings_translation_file.cpp +msgid "Screenshot format" +msgstr "திரைக்காட்சி வடிவம்" + +#: src/settings_translation_file.cpp +msgid "Screenshot quality" +msgstr "திரைக்காட்சி தகுதி" + +#: src/settings_translation_file.cpp +msgid "" +"Screenshot quality. Only used for JPEG format.\n" +"1 means worst quality; 100 means best quality.\n" +"Use 0 for default quality." +msgstr "" +"திரைக்காட்சி தகுதி. JPEG வடிவத்திற்கு மட்டுமே பயன்படுத்தப்படுகிறது.\n" +" 1 என்றால் மோசமான தரம்; 100 என்றால் சிறந்த தரம்.\n" +" இயல்புநிலை தரத்திற்கு 0 ஐப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "Screenshots" +msgstr "திரைக்காட்சிகள்" + +#: src/settings_translation_file.cpp +msgid "Seabed noise" +msgstr "கடற்பரப்பு ஒலி" + +#: src/settings_translation_file.cpp +msgid "Second of 4 2D noises that together define hill/mountain range height." +msgstr "இல்/மலை வீச்சு உயரத்தை ஒன்றாக வரையறுக்கும் 4 2 டி சத்தங்களில் இரண்டாவது." + +#: src/settings_translation_file.cpp +msgid "Second of two 3D noises that together define tunnels." +msgstr "சுரங்கங்களை ஒன்றாக வரையறுக்கும் இரண்டு 3 டி சத்தங்களில் இரண்டாவது." + +#: src/settings_translation_file.cpp +msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" +msgstr "Https://www.sqlite.org/pragma.html#pragma_synchronous ஐப் பார்க்கவும்" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Select the antialiasing method to apply.\n" +"\n" +"* None - No antialiasing (default)\n" +"\n" +"* FSAA - Hardware-provided full-screen antialiasing\n" +"A.K.A multi-sample antialiasing (MSAA)\n" +"Smoothens out block edges but does not affect the insides of textures.\n" +"\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" +"Applies a post-processing filter to detect and smoothen high-contrast " +"edges.\n" +"Provides balance between speed and image quality.\n" +"\n" +"* SSAA - Super-sampling antialiasing\n" +"Renders higher-resolution image of the scene, then scales down to reduce\n" +"the aliasing effects. This is the slowest and the most accurate method." +msgstr "" +"விண்ணப்பிக்க ஆன்டிலியாசிங் முறையைத் தேர்ந்தெடுக்கவும்.\n" +"\n" +" * எதுவுமில்லை - ஆன்டிலியாசிங் இல்லை (இயல்புநிலை)\n" +"\n" +" * FSAA-வன்பொருள் வழங்கிய முழு திரை ஆண்டியலிசிங்\n" +" (பிந்தைய செயலாக்கம் மற்றும் அடிக்கோடிட்டுக் காட்டுவதற்கு பொருந்தாது)\n" +" A.k.a மல்டி-மாதிரி ஆன்டியாலியாசிங் (MSAA)\n" +" தொகுதி விளிம்புகளை மென்மையாக்குகிறது, ஆனால் அமைப்புகளின் உட்புறங்களை பாதிக்காது.\n" +" இந்த விருப்பத்தை மாற்ற மறுதொடக்கம் தேவை.\n" +"\n" +" * FXAA - வேகமான தோராயமான ஆன்டிலியாசிங் (சேடர்கள் தேவை)\n" +" உயர்-மாறுபட்ட விளிம்புகளைக் கண்டறிந்து மென்மையாக்க ஒரு பிந்தைய செயலாக்க வடிப்பானைப் " +"பயன்படுத்துகிறது.\n" +" விரைவு மற்றும் பட தரத்திற்கு இடையில் சமநிலையை வழங்குகிறது.\n" +"\n" +" * SSAA - சூப்பர் -மாதிரி ஆன்டிலியாசிங் (சேடர்கள் தேவை)\n" +" காட்சியின் உயர்-தெளிவுத்திறன் படத்தை வழங்குகிறது, பின்னர் குறைக்க செதில்கள்\n" +" மாற்றுப்பெயர் விளைவுகள். இது மெதுவான மற்றும் மிகவும் துல்லியமான முறையாகும்." + +#: src/settings_translation_file.cpp +msgid "Selection box border color (R,G,B)." +msgstr "தேர்வு பெட்டி எல்லை நிறம் (ஆர், சி, பி)." + +#: src/settings_translation_file.cpp +msgid "Selection box color" +msgstr "தேர்வு பெட்டி நிறம்" + +#: src/settings_translation_file.cpp +msgid "Selection box width" +msgstr "தேர்வு பெட்டி அகலம்" + +#: src/settings_translation_file.cpp +msgid "" +"Selects one of 18 fractal types.\n" +"1 = 4D \"Roundy\" Mandelbrot set.\n" +"2 = 4D \"Roundy\" Julia set.\n" +"3 = 4D \"Squarry\" Mandelbrot set.\n" +"4 = 4D \"Squarry\" Julia set.\n" +"5 = 4D \"Mandy Cousin\" Mandelbrot set.\n" +"6 = 4D \"Mandy Cousin\" Julia set.\n" +"7 = 4D \"Variation\" Mandelbrot set.\n" +"8 = 4D \"Variation\" Julia set.\n" +"9 = 3D \"Mandelbrot/Mandelbar\" Mandelbrot set.\n" +"10 = 3D \"Mandelbrot/Mandelbar\" Julia set.\n" +"11 = 3D \"Christmas Tree\" Mandelbrot set.\n" +"12 = 3D \"Christmas Tree\" Julia set.\n" +"13 = 3D \"Mandelbulb\" Mandelbrot set.\n" +"14 = 3D \"Mandelbulb\" Julia set.\n" +"15 = 3D \"Cosine Mandelbulb\" Mandelbrot set.\n" +"16 = 3D \"Cosine Mandelbulb\" Julia set.\n" +"17 = 4D \"Mandelbulb\" Mandelbrot set.\n" +"18 = 4D \"Mandelbulb\" Julia set." +msgstr "" +"18 ஃப்ராக்டல் வகைகளில் ஒன்றைத் தேர்ந்தெடுக்கிறது.\n" +" 1 = 4 டி \"ரவுண்டி\" மாண்டல்ப்ராட் தொகுப்பு.\n" +" 2 = 4 டி \"ரவுண்டி\" சூலியா தொகுப்பு.\n" +" 3 = 4 டி \"சதுர\" மாண்டல்ப்ராட் தொகுப்பு.\n" +" 4 = 4 டி \"சதுர\" சூலியா தொகுப்பு.\n" +" 5 = 4 டி \"மாண்டி உறவினர்\" மாண்டல்பிரோட் செட்.\n" +" 6 = 4 டி \"மாண்டி உறவினர்\" சூலியா செட்.\n" +" 7 = 4 டி \"மாறுபாடு\" மண்டெல்பிரோட் தொகுப்பு.\n" +" 8 = 4 டி \"மாறுபாடு\" சூலியா தொகுப்பு.\n" +" 9 = 3D \"மாண்டல்பிரோட்/மாண்டல்பார்\" மண்டெல்பிரோட் செட்.\n" +" 10 = 3D \"மாண்டல்பிரோட்/மாண்டல்பார்\" சூலியா செட்.\n" +" 11 = 3D \"கிறிச்துமச் மரம்\" மண்டல்பிரோட் தொகுப்பு.\n" +" 12 = 3D \"கிறிச்துமச் மரம்\" சூலியா தொகுப்பு.\n" +" 13 = 3D \"மாண்டல்பல்ப்\" மாண்டல்பிரோட் தொகுப்பு.\n" +" 14 = 3D \"மண்டேல்பல்ப்\" சூலியா தொகுப்பு.\n" +" 15 = 3D \"கொசைன் மாண்டல்பல்ப்\" மாண்டல்பிரோட் தொகுப்பு.\n" +" 16 = 3D \"கொசைன் மண்டேல்பல்ப்\" சூலியா தொகுப்பு.\n" +" 17 = 4 டி \"மாண்டல்பல்ப்\" மாண்டல்பிரோட் தொகுப்பு.\n" +" 18 = 4 டி \"மாண்டல்பல்ப்\" சூலியா தொகுப்பு." + +#: src/settings_translation_file.cpp +msgid "" +"Send names of online players to the serverlist. If disabled only the player " +"count is revealed." +msgstr "" +"நிகழ்நிலை பிளேயர்களின் பெயர்களை சேவையகத்திற்கு அனுப்பவும். முடக்கப்பட்டால் மட்டுமே வீரர் " +"எண்ணிக்கை வெளிப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Send player names to the server list" +msgstr "சேவையக பட்டியலில் பிளேயர் பெயர்களை அனுப்பவும்" + +#: src/settings_translation_file.cpp +msgid "Server" +msgstr "சேவையகம்" + +#: src/settings_translation_file.cpp +msgid "Server Gameplay" +msgstr "சேவையக விளையாட்டு" + +#: src/settings_translation_file.cpp +msgid "Server Security" +msgstr "சேவையக பாதுகாப்பு" + +#: src/settings_translation_file.cpp +msgid "Server URL" +msgstr "சேவையக முகவரி" + +#: src/settings_translation_file.cpp +msgid "Server address" +msgstr "சேவையக முகவரி" + +#: src/settings_translation_file.cpp +msgid "" +"Server anticheat configuration.\n" +"Flags are positive. Uncheck the flag to disable corresponding anticheat " +"module." +msgstr "" +"சேவையக ஆன்டிகீட் உள்ளமைவு.\n" +" கொடிகள் நேர்மறையானவை. தொடர்புடைய ஆன்டிகீட் தொகுதியை முடக்க கொடியைத் தேர்வுசெய்யவும்." + +#: src/settings_translation_file.cpp +msgid "Server description" +msgstr "சேவையக விளக்கம்" + +#: src/settings_translation_file.cpp +msgid "Server name" +msgstr "சேவையக பெயர்" + +#: src/settings_translation_file.cpp +msgid "Server port" +msgstr "சேவையக துறைமுகம்" + +#: src/settings_translation_file.cpp +msgid "Server-side occlusion culling" +msgstr "சேவையக பக்க மறைவு" + +#: src/settings_translation_file.cpp +msgid "Server/Env Performance" +msgstr "சேவையகம்/ENV செயல்திறன்" + +#: src/settings_translation_file.cpp +msgid "Serverlist URL" +msgstr "ServerList முகவரி" + +#: src/settings_translation_file.cpp +msgid "Serverlist and MOTD" +msgstr "சேவையக பட்டியல் மற்றும் MOTD" + +#: src/settings_translation_file.cpp +msgid "Serverlist file" +msgstr "சேவையக பட்டியல் கோப்பு" + +#: src/settings_translation_file.cpp +msgid "" +"Set the default tilt of Sun/Moon orbit in degrees.\n" +"Games may change orbit tilt via API.\n" +"Value of 0 means no tilt / vertical orbit." +msgstr "" +"சூரியன்/சந்திரன் சுற்றுப்பாதையின் இயல்புநிலை சாய்வை டிகிரிகளில் அமைக்கவும்.\n" +" விளையாட்டுகள் பநிஇ வழியாக சுற்றுப்பாதை சாய்வை மாற்றக்கூடும்.\n" +" 0 இன் மதிப்பு என்பது சாய்வு / செங்குத்து சுற்றுப்பாதை இல்லை." + +#: src/settings_translation_file.cpp +msgid "" +"Set the exposure compensation in EV units.\n" +"Value of 0.0 (default) means no exposure compensation.\n" +"Range: from -1 to 1.0" +msgstr "" +"வெளிப்பாடு இழப்பீட்டை EV அலகுகளில் அமைக்கவும்.\n" +" 0.0 (இயல்புநிலை) மதிப்பு என்பது வெளிப்பாடு இழப்பீடு இல்லை.\n" +" வரம்பு: -1 முதல் 1.0 வரை" + +#: src/settings_translation_file.cpp +msgid "" +"Set the language. By default, the system language is used.\n" +"A restart is required after changing this." +msgstr "" +"மொழியை அமைக்கவும். இயல்பாக, கணினி மொழி பயன்படுத்தப்படுகிறது.\n" +" இதை மாற்றிய பின் மறுதொடக்கம் தேவை." + +#: src/settings_translation_file.cpp +msgid "" +"Set the maximum length of a chat message (in characters) sent by clients." +msgstr "" +"வாடிக்கையாளர்களால் அனுப்பப்பட்ட அரட்டை செய்தியின் அதிகபட்ச நீளத்தை (எழுத்துக்களில்) " +"அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Set the shadow strength gamma.\n" +"Adjusts the intensity of in-game dynamic shadows.\n" +"Lower value means lighter shadows, higher value means darker shadows." +msgstr "" +"நிழல் வலிமை காமா அமைக்கவும்.\n" +" விளையாட்டு மாறும் நிழல்களின் தீவிரத்தை சரிசெய்கிறது.\n" +" குறைந்த மதிப்பு என்றால் இலகுவான நிழல்கள், அதிக மதிப்பு என்பது இருண்ட நிழல்கள் என்று " +"பொருள்." + +#: src/settings_translation_file.cpp +msgid "" +"Set the soft shadow radius size.\n" +"Lower values mean sharper shadows, bigger values mean softer shadows.\n" +"Minimum value: 1.0; maximum value: 15.0" +msgstr "" +"மென்மையான நிழல் ஆரம் அளவை அமைக்கவும்.\n" +" குறைந்த மதிப்புகள் கூர்மையான நிழல்களைக் குறிக்கின்றன, பெரிய மதிப்புகள் மென்மையான " +"நிழல்களைக் குறிக்கின்றன.\n" +" குறைந்தபட்ச மதிப்பு: 1.0; அதிகபட்ச மதிப்பு: 15.0" + +#: src/settings_translation_file.cpp +msgid "Set to true to enable Shadow Mapping." +msgstr "நிழல் மேப்பிங்கை இயக்க உண்மையாக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Set to true to enable bloom effect.\n" +"Bright colors will bleed over the neighboring objects." +msgstr "" +"பூக்கும் விளைவை செயல்படுத்த உண்மையாக அமைக்கவும்.\n" +" பிரகாசமான வண்ணங்கள் அண்டை பொருட்களின் மீது இரத்தம் வரும்." + +#: src/settings_translation_file.cpp +msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." +msgstr "" +"வால்யூமெட்ரிக் லைட்டிங் விளைவை இயக்குவதற்கு உண்மையாக அமைக்கவும் (a.k.a. \"கோட்ரேச்\")." + +#: src/settings_translation_file.cpp +msgid "Set to true to enable waving leaves." +msgstr "அசைக்கும் இலைகளை இயக்க உண்மையாக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Set to true to enable waving liquids (like water)." +msgstr "அசைக்கும் திரவங்களை (நீர் போன்றவை) செயல்படுத்த உண்மையாக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Set to true to enable waving plants." +msgstr "அசைந்த தாவரங்களை இயக்குவதற்கு உண்மையாக அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Set to true to render debugging breakdown of the bloom effect.\n" +"In debug mode, the screen is split into 4 quadrants:\n" +"top-left - processed base image, top-right - final image\n" +"bottom-left - raw base image, bottom-right - bloom texture." +msgstr "" +"பூக்கும் விளைவின் பிழைத்திருத்தத்தை வழங்குவதற்கு உண்மையாக அமைக்கவும்.\n" +" பிழைத்திருத்த பயன்முறையில், திரை 4 நாற்காலிகளாக பிரிக்கப்பட்டுள்ளது:\n" +" மேல் -இடது - செயலாக்கப்பட்ட அடிப்படை படம், மேல் -வலது - இறுதி படம்\n" +" கீழ் -இடது - மூல அடிப்படை படம், கீழ் -வலது - பூக்கும் அமைப்பு." + +#: src/settings_translation_file.cpp +msgid "" +"Sets shadow texture quality to 32 bits.\n" +"On false, 16 bits texture will be used.\n" +"This can cause much more artifacts in the shadow." +msgstr "" +"நிழல் அமைப்பு தரத்தை 32 பிட்களாக அமைக்கிறது.\n" +" பொய்யில், 16 பிட்கள் அமைப்பு பயன்படுத்தப்படும்.\n" +" இது நிழலில் அதிகமான கலைப்பொருட்களை ஏற்படுத்தும்." + +#: src/settings_translation_file.cpp +msgid "Shader path" +msgstr "சேடர் பாதை" + +#: src/settings_translation_file.cpp +msgid "Shadow filter quality" +msgstr "நிழல் வடிகட்டி தகுதி" + +#: src/settings_translation_file.cpp +msgid "Shadow map max distance in nodes to render shadows" +msgstr "நிழல்களை வழங்க முனைகளில் நிழல் வரைபடம் அதிகபட்ச தூரம்" + +#: src/settings_translation_file.cpp +msgid "Shadow map texture in 32 bits" +msgstr "32 பிட்களில் நிழல் வரைபட அமைப்பு" + +#: src/settings_translation_file.cpp +msgid "Shadow map texture size" +msgstr "நிழல் வரைபட அமைப்பு அளவு" + +#: src/settings_translation_file.cpp +msgid "" +"Shadow offset (in pixels) of the default font. If 0, then shadow will not be " +"drawn." +msgstr "" +"இயல்புநிலை எழுத்துருவின் நிழல் ஆஃப்செட் (பிக்சல்களில்). 0 என்றால், நிழல் வரையப்படாது." + +#: src/settings_translation_file.cpp +msgid "Shadow strength gamma" +msgstr "நிழல் வலிமை காமா" + +#: src/settings_translation_file.cpp +msgid "Show debug info" +msgstr "பிழைத்திருத்த தகவலைக் காட்டு" + +#: src/settings_translation_file.cpp +msgid "Show entity selection boxes" +msgstr "நிறுவன தேர்வு பெட்டிகளைக் காட்டு" + +#: src/settings_translation_file.cpp +msgid "" +"Show entity selection boxes\n" +"A restart is required after changing this." +msgstr "" +"நிறுவன தேர்வு பெட்டிகளைக் காட்டு\n" +" இதை மாற்றிய பின் மறுதொடக்கம் தேவை." + +#: src/settings_translation_file.cpp +msgid "Show name tag backgrounds by default" +msgstr "இயல்புநிலையாக பெயர் குறிச்சொல் பின்னணியைக் காட்டு" + +#: src/settings_translation_file.cpp +msgid "Shutdown message" +msgstr "பணிநிறுத்தம் செய்தி" + +#: src/settings_translation_file.cpp +msgid "" +"Side length of a cube of map blocks that the client will consider together\n" +"when generating meshes.\n" +"Larger values increase the utilization of the GPU by reducing the number of\n" +"draw calls, benefiting especially high-end GPUs.\n" +"Systems with a low-end GPU (or no GPU) would benefit from smaller values." +msgstr "" +"கிளையன்ட் ஒன்றாகக் கருத்தில் கொள்ளும் வரைபடத் தொகுதிகளின் ஒரு கனசதுரத்தின் பக்க நீளம்\n" +" மெச்களை உருவாக்கும் போது.\n" +" பெரிய மதிப்புகள் எண்ணிக்கையைக் குறைப்பதன் மூலம் சி.பீ.யுவின் பயன்பாட்டை அதிகரிக்கின்றன\n" +" அழைப்புகளை வரையவும், குறிப்பாக உயர்நிலை சி.பீ.யுகளுக்கு பயனளிக்கிறது.\n" +" குறைந்த-இறுதி சி.பீ.யூ (அல்லது சி.பீ.யூ இல்லை) கொண்ட அமைப்புகள் சிறிய " +"மதிப்புகளிலிருந்து பயனடைகின்றன." + +#: src/settings_translation_file.cpp +msgid "Simulate translucency when looking at foliage in the sunlight." +msgstr "சூரிய ஒளியில் பசுமையாகப் பார்க்கும்போது ஒளிஊடுருவலை உருவகப்படுத்துங்கள்." + +#: src/settings_translation_file.cpp +msgid "" +"Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" +"WARNING: There is no benefit, and there are several dangers, in\n" +"increasing this value above 5.\n" +"Reducing this value increases cave and dungeon density.\n" +"Altering this value is for special usage, leaving it unchanged is\n" +"recommended." +msgstr "" +"மேப் பிளாக்ச் (16 முனைகளில்) குறிப்பிடப்பட்ட மேப்கென் உருவாக்கிய மேப்சங்க்களின் அளவு.\n" +" எச்சரிக்கை: எந்த நன்மையும் இல்லை, மேலும் பல ஆபத்துகள் உள்ளன\n" +" இந்த மதிப்பை 5 க்கு மேல் அதிகரித்தல்.\n" +" இந்த மதிப்பைக் குறைப்பது குகை மற்றும் நிலவறை அடர்த்தியை அதிகரிக்கிறது.\n" +" இந்த மதிப்பை மாற்றுவது சிறப்பு பயன்பாட்டிற்கானது, மாறாமல் இருப்பது\n" +" பரிந்துரைக்கப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Sky Body Orbit Tilt" +msgstr "வான உடல் சுற்றுப்பாதை சாய்வு" + +#: src/settings_translation_file.cpp +msgid "Slice w" +msgstr "துண்டு w" + +#: src/settings_translation_file.cpp +msgid "Slope and fill work together to modify the heights." +msgstr "உயரங்களை மாற்ற சாய்வு மற்றும் நிரப்பு ஒன்றாக வேலை செய்யுங்கள்." + +#: src/settings_translation_file.cpp +msgid "Small cave maximum number" +msgstr "சிறிய குகை அதிகபட்ச எண்" + +#: src/settings_translation_file.cpp +msgid "Small cave minimum number" +msgstr "சிறிய குகை குறைந்தபட்ச எண்" + +#: src/settings_translation_file.cpp +msgid "Small-scale humidity variation for blending biomes on borders." +msgstr "எல்லைகளில் பயோம்களைக் கலப்பதற்கான சிறிய அளவிலான ஈரப்பதம் மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "Small-scale temperature variation for blending biomes on borders." +msgstr "எல்லைகளில் பயோம்களை கலப்பதற்கான சிறிய அளவிலான வெப்பநிலை மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "Smooth lighting" +msgstr "மென்மையான விளக்குகள்" + +#: src/settings_translation_file.cpp +msgid "Smooth scrolling" +msgstr "மென்மையான ச்க்ரோலிங்" + +#: src/settings_translation_file.cpp +msgid "" +"Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " +"cinematic mode by using the key set in Controls." +msgstr "" +"சினிமா பயன்முறையில் இருக்கும்போது கேமராவின் சுழற்சியை மென்மையாக்குகிறது, முடக்க 0. " +"கட்டுப்பாடுகளில் விசை தொகுப்பைப் பயன்படுத்தி சினிமா பயன்முறையை உள்ளிடவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Smooths rotation of camera, also called look or mouse smoothing. 0 to " +"disable." +msgstr "" +"கேமராவின் மென்மையான சுழற்சி, தோற்றம் அல்லது சுட்டி மென்மையாக்குதல் என்றும் " +"அழைக்கப்படுகிறது. முடக்க 0." + +#: src/settings_translation_file.cpp +msgid "Sneaking speed" +msgstr "பதுங்கியிருக்கும் விரைவு" + +#: src/settings_translation_file.cpp +msgid "Sneaking speed, in nodes per second." +msgstr "பதுங்கிய வேகத்தை, நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "Soft clouds" +msgstr "மென்மையான மேகங்கள்" + +#: src/settings_translation_file.cpp +msgid "Soft shadow radius" +msgstr "மென்மையான நிழல் ஆரம்" + +#: src/settings_translation_file.cpp +msgid "Sound" +msgstr "ஒலி" + +#: src/settings_translation_file.cpp +msgid "Sound Extensions Blacklist" +msgstr "ஒலி நீட்டிப்புகள் தடுப்புப்பட்டியல்" + +#: src/settings_translation_file.cpp +msgid "" +"Specifies URL from which client fetches media instead of using UDP.\n" +"$filename should be accessible from $remote_media$filename via cURL\n" +"(obviously, remote_media should end with a slash).\n" +"Files that are not present will be fetched the usual way." +msgstr "" +"UTP ஐப் பயன்படுத்துவதற்குப் பதிலாக கிளையன்ட் மீடியாவைப் பெறும் முகவரி ஐக் " +"குறிப்பிடுகிறது.\n" +" $ remote_media $ கோப்புப்பெயர் இலிருந்து சுருட்டை வழியாக கோப்பு பெயரை அணுக " +"வேண்டும்\n" +" (வெளிப்படையாக, ரிமோட்_மீடியா ஒரு குறைப்புடன் முடிவடைய வேண்டும்).\n" +" இல்லாத கோப்புகள் வழக்கமான வழியைப் பெறும்." + +#: src/settings_translation_file.cpp +msgid "" +"Specifies the default stack size of nodes, items and tools.\n" +"Note that mods or games may explicitly set a stack for certain (or all) " +"items." +msgstr "" +"முனைகள், உருப்படிகள் மற்றும் கருவிகளின் இயல்புநிலை அடுக்கு அளவைக் குறிப்பிடுகிறது.\n" +" மோட்ச் அல்லது கேம்கள் சில (அல்லது அனைத்து) உருப்படிகளுக்கு வெளிப்படையாக ஒரு அடுக்கை " +"அமைக்கக்கூடும் என்பதை நினைவில் கொள்க." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Spread a complete update of the shadow map over a given number of frames.\n" +"Higher values might make shadows laggy, lower values\n" +"will consume more resources." +msgstr "" +"கொடுக்கப்பட்ட பிரேம்களின் எண்ணிக்கையில் நிழல் வரைபடத்தின் முழுமையான புதுப்பிப்பை " +"பரப்பவும்.\n" +" அதிக மதிப்புகள் நிழல்களை பின்னடைவு, குறைந்த மதிப்புகளை உருவாக்கக்கூடும்\n" +" அதிக வளங்களை உட்கொள்ளும்.\n" +" குறைந்தபட்ச மதிப்பு: 1; அதிகபட்ச மதிப்பு: 16" + +#: src/settings_translation_file.cpp +msgid "" +"Spread of light curve boost range.\n" +"Controls the width of the range to be boosted.\n" +"Standard deviation of the light curve boost Gaussian." +msgstr "" +"ஒளி வளைவு பூச்ட் வரம்பின் பரவல்.\n" +" உயர்த்தப்பட வேண்டிய வரம்பின் அகலத்தை கட்டுப்படுத்துகிறது.\n" +" ஒளி வளைவின் நிலையான விலகல் காசியனை உயர்த்துகிறது." + +#: src/settings_translation_file.cpp +msgid "Static spawn point" +msgstr "நிலையான ச்பான் புள்ளி" + +#: src/settings_translation_file.cpp +msgid "Steepness noise" +msgstr "செங்குத்தான ஒலி" + +#: src/settings_translation_file.cpp +msgid "Step mountain size noise" +msgstr "மலை அளவு ஒலி" + +#: src/settings_translation_file.cpp +msgid "Step mountain spread noise" +msgstr "படி மலை பரவல் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Strength of 3D mode parallax." +msgstr "3D பயன்முறை இடமாறு வலிமை." + +#: src/settings_translation_file.cpp +msgid "" +"Strength of light curve boost.\n" +"The 3 'boost' parameters define a range of the light\n" +"curve that is boosted in brightness." +msgstr "" +"ஒளி வளைவு ஊக்கத்தின் வலிமை.\n" +" 3 'பூச்ட்' அளவுருக்கள் ஒளியின் வரம்பை வரையறுக்கின்றன\n" +" பிரகாசத்தில் அதிகரிக்கும் வளைவு." + +#: src/settings_translation_file.cpp +msgid "Strict protocol checking" +msgstr "கடுமையான நெறிமுறை சோதனை" + +#: src/settings_translation_file.cpp +msgid "Strip color codes" +msgstr "துண்டு வண்ண குறியீடுகளை" + +#: src/settings_translation_file.cpp +msgid "" +"Surface level of optional water placed on a solid floatland layer.\n" +"Water is disabled by default and will only be placed if this value is set\n" +"to above 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (the start of the\n" +"upper tapering).\n" +"***WARNING, POTENTIAL DANGER TO WORLDS AND SERVER PERFORMANCE***:\n" +"When enabling water placement, floatlands must be configured and tested\n" +"to be a solid layer by setting 'mgv7_floatland_density' to 2.0 (or other\n" +"required value depending on 'mgv7_np_floatland'), to avoid\n" +"server-intensive extreme water flow and to avoid vast flooding of the\n" +"world surface below." +msgstr "" +"ஒரு திட மிதவை அடுக்கில் வைக்கப்பட்டுள்ள விருப்ப நீரின் மேற்பரப்பு நிலை.\n" +" இயல்புநிலையாக நீர் முடக்கப்பட்டுள்ளது, இந்த மதிப்பு அமைக்கப்பட்டால் மட்டுமே வைக்கப்படும்\n" +" மேலே 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (தொடக்க\n" +" மேல் டேப்பரிங்).\n" +" *** எச்சரிக்கை, உலகங்களுக்கு இடர் மற்றும் சேவையக செயல்திறன் ***:\n" +" நீர் வேலைவாய்ப்பை செயல்படுத்தும்போது, ஃப்ளோட்லேண்ட்ச் கட்டமைக்கப்பட்டு சோதிக்கப்பட வேண்டும்\n" +" 'MGV7_FLOATLAND_DENCES' ஐ 2.0 ஆக அமைப்பதன் மூலம் ஒரு திட அடுக்காக இருக்க வேண்டும் " +"(அல்லது பிற\n" +" தவிர்க்க, 'mgv7_np_floatland' ஐப் பொறுத்து தேவை), தவிர்க்க\n" +" சேவையக-தீவிர தீவிர நீர் ஓட்டம் மற்றும் பரந்த வெள்ளத்தைத் தவிர்க்க\n" +" உலக மேற்பரப்பு கீழே." + +#: src/settings_translation_file.cpp +msgid "Synchronous SQLite" +msgstr "ஒத்திசைவான SQLite" + +#: src/settings_translation_file.cpp +msgid "Temperature variation for biomes." +msgstr "பயோம்களுக்கான வெப்பநிலை மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "Terrain alternative noise" +msgstr "நிலப்பரப்பு மாற்று ஒலி" + +#: src/settings_translation_file.cpp +msgid "Terrain base noise" +msgstr "நிலப்பரப்பு அடிப்படை ஒலி" + +#: src/settings_translation_file.cpp +msgid "Terrain height" +msgstr "நிலப்பரப்பு உயரம்" + +#: src/settings_translation_file.cpp +msgid "Terrain higher noise" +msgstr "நிலப்பரப்பு அதிக ஒலி" + +#: src/settings_translation_file.cpp +msgid "Terrain noise" +msgstr "நிலப்பரப்பு ஒலி" + +#: src/settings_translation_file.cpp +msgid "" +"Terrain noise threshold for hills.\n" +"Controls proportion of world area covered by hills.\n" +"Adjust towards 0.0 for a larger proportion." +msgstr "" +"மலைகளுக்கான நிலப்பரப்பு இரைச்சல் வாசல்.\n" +" மலைகள் மூடப்பட்ட உலகப் பகுதியின் விகிதத்தை கட்டுப்படுத்துகிறது.\n" +" ஒரு பெரிய விகிதத்திற்கு 0.0 ஐ சரிசெய்யவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Terrain noise threshold for lakes.\n" +"Controls proportion of world area covered by lakes.\n" +"Adjust towards 0.0 for a larger proportion." +msgstr "" +"ஏரிகளுக்கு நிலப்பரப்பு இரைச்சல் வாசல்.\n" +" ஏரிகளால் மூடப்பட்ட உலகப் பகுதியின் விகிதத்தை கட்டுப்படுத்துகிறது.\n" +" ஒரு பெரிய விகிதத்திற்கு 0.0 ஐ சரிசெய்யவும்." + +#: src/settings_translation_file.cpp +msgid "Terrain persistence noise" +msgstr "நிலப்பரப்பு நிலைத்தன்மை ஒலி" + +#: src/settings_translation_file.cpp +msgid "" +"Texture size to render the shadow map on.\n" +"This must be a power of two.\n" +"Bigger numbers create better shadows but it is also more expensive." +msgstr "" +"நிழல் வரைபடத்தை வழங்க அமைப்பு அளவு.\n" +" இது இரண்டின் சக்தியாக இருக்க வேண்டும்.\n" +" பெரிய எண்கள் சிறந்த நிழல்களை உருவாக்குகின்றன, ஆனால் இது மிகவும் விலை உயர்ந்தது." + +#: src/settings_translation_file.cpp +msgid "" +"Textures on a node may be aligned either to the node or to the world.\n" +"The former mode suits better things like machines, furniture, etc., while\n" +"the latter makes stairs and microblocks fit surroundings better.\n" +"However, as this possibility is new, thus may not be used by older servers,\n" +"this option allows enforcing it for certain node types. Note though that\n" +"that is considered EXPERIMENTAL and may not work properly." +msgstr "" +"ஒரு முனையில் உள்ள கட்டமைப்புகள் முனை அல்லது உலகத்துடன் சீரமைக்கப்படலாம்.\n" +" முன்னாள் பயன்முறை இயந்திரங்கள், தளபாடங்கள் போன்றவற்றுக்கு பொருந்தும்\n" +" பிந்தையது படிக்கட்டுகள் மற்றும் மைக்ரோ பிளாக்சை சுற்றுப்புறங்களை பொருத்தமாக்குகிறது.\n" +" இருப்பினும், இந்த சாத்தியம் புதியது என்பதால், பழைய சேவையகங்களால் பயன்படுத்தப்படாது,\n" +" இந்த விருப்பம் சில முனை வகைகளுக்கு அதை செயல்படுத்த அனுமதிக்கிறது. கவனியுங்கள்\n" +" இது சோதனைக்குரியதாகக் கருதப்படுகிறது மற்றும் சரியாக வேலை செய்யாது." + +#: src/settings_translation_file.cpp +msgid "The URL for the content repository" +msgstr "உள்ளடக்க களஞ்சியத்திற்கான முகவரி" + +#: src/settings_translation_file.cpp +msgid "The dead zone of the joystick" +msgstr "சாய்ச்டிக்கின் இறந்த மண்டலம்" + +#: src/settings_translation_file.cpp +msgid "" +"The default format in which profiles are being saved,\n" +"when calling `/profiler save [format]` without format." +msgstr "" +"சுயவிவரங்கள் சேமிக்கப்படும் இயல்புநிலை வடிவம்,\n" +" `/சுயவிவரத்தை அழைக்கும்போது [வடிவத்தை]` வடிவமின்றி சேமிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"The delay in milliseconds after which a touch interaction is considered a " +"long tap." +msgstr "" +"மில்லி விநாடிகளின் நேரந்தவறுகை அதன் பிறகு ஒரு தொடு தொடர்பு ஒரு நீண்ட குழாய் என்று " +"கருதப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"The file path relative to your world path in which profiles will be saved to." +msgstr "சுயவிவரங்கள் சேமிக்கப்படும் உங்கள் உலக பாதையுடன் தொடர்புடைய கோப்பு பாதை." + +#: src/settings_translation_file.cpp +msgid "" +"The gesture for punching players/entities.\n" +"This can be overridden by games and mods.\n" +"\n" +"* short_tap\n" +"Easy to use and well-known from other games that shall not be named.\n" +"\n" +"* long_tap\n" +"Known from the classic Luanti mobile controls.\n" +"Combat is more or less impossible." +msgstr "" +"வீரர்கள்/நிறுவனங்களை குத்துவதற்கான சைகை.\n" +" இதை விளையாட்டுகள் மற்றும் மோட்களால் மீறலாம்.\n" +"\n" +" * short_tap\n" +" பயன்படுத்த எளிதானது மற்றும் பெயரிடப்படாத பிற விளையாட்டுகளிலிருந்து நன்கு " +"அறியப்பட்டது.\n" +"\n" +" * long_tap\n" +" கிளாசிக் லுவாண்டி மொபைல் கட்டுப்பாடுகளிலிருந்து அறியப்படுகிறது.\n" +" போர் அதிகமாகவோ அல்லது குறைவாகவோ சாத்தியமற்றது." + +#: src/settings_translation_file.cpp +msgid "The identifier of the joystick to use" +msgstr "பயன்படுத்த சாய்ச்டிக்கின் அடையாளங்காட்டி" + +#: src/settings_translation_file.cpp +msgid "" +"The length in pixels after which a touch interaction is considered movement." +msgstr "பிக்சல்களில் உள்ள நீளம் அதன் பிறகு ஒரு தொடு தொடர்பு இயக்கமாகக் கருதப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"The maximum height of the surface of waving liquids.\n" +"4.0 = Wave height is two nodes.\n" +"0.0 = Wave doesn't move at all.\n" +"Default is 1.0 (1/2 node)." +msgstr "" +"திரவங்களை அசைக்கும் மேற்பரப்பின் அதிகபட்ச உயரம்.\n" +" 4.0 = அலை உயரம் இரண்டு முனைகள்.\n" +" 0.0 = அலை எதுவும் நகராது.\n" +" இயல்புநிலை 1.0 (1/2 முனை)." + +#: src/settings_translation_file.cpp +msgid "" +"The minimum time in seconds it takes between digging nodes when holding\n" +"the dig button." +msgstr "" +"நொடிகளில் குறைந்தபட்ச நேரம் வைத்திருக்கும் போது தோண்டும் முனைகளுக்கு இடையில் எடுக்கும்\n" +" தோண்டி பொத்தானை." + +#: src/settings_translation_file.cpp +msgid "The network interface that the server listens on." +msgstr "சேவையகம் கேட்கும் பிணைய இடைமுகம்." + +#: src/settings_translation_file.cpp +msgid "" +"The privileges that new users automatically get.\n" +"See /privs in game for a full list on your server and mod configuration." +msgstr "" +"புதிய பயனர்கள் தானாகவே பெறும் சலுகைகள்.\n" +" உங்கள் சேவையகம் மற்றும் மோட் உள்ளமைவில் முழு பட்டியலுக்கான விளையாட்டில் /privers ஐப் " +"பார்க்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"The radius of the volume of blocks around every player that is subject to " +"the\n" +"active block stuff, stated in mapblocks (16 nodes).\n" +"In active blocks objects are loaded and ABMs run.\n" +"This is also the minimum range in which active objects (mobs) are " +"maintained.\n" +"This should be configured together with active_object_send_range_blocks." +msgstr "" +"ஒவ்வொரு வீரரைச் சுற்றியுள்ள தொகுதிகளின் அளவின் ஆரம்\n" +" செயலில் உள்ள திறன், மேப் பிளாக்சில் (16 முனைகள்) கூறப்பட்டுள்ளது.\n" +" செயலில் உள்ள தொகுதிகளில் பொருள்கள் ஏற்றப்பட்டு ஏபிஎம்எச் இயங்கும்.\n" +" செயலில் உள்ள பொருள்கள் (COB கள்) பராமரிக்கப்படும் குறைந்தபட்ச வரம்பும் இதுவாகும்.\n" +" இது Active_object_send_range_blocks உடன் ஒன்றாக கட்டமைக்கப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"The rendering back-end.\n" +"Note: A restart is required after changing this!\n" +"OpenGL is the default for desktop, and OGLES2 for Android." +msgstr "" +"வழங்குதல் பின்-இறுதி.\n" +" குறிப்பு: இதை மாற்றிய பின் மறுதொடக்கம் தேவை!\n" +" OpenGL என்பது டெச்க்டாப்பின் இயல்புநிலை, மற்றும் ஆண்ட்ராய்டு க்கான OGLES2." + +#: src/settings_translation_file.cpp +msgid "" +"The sensitivity of the joystick axes for moving the\n" +"in-game view frustum around." +msgstr "" +"நகர்த்துவதற்கான சாய்ச்டிக் அச்சுகளின் உணர்திறன்\n" +" விளையாட்டில் பார்க்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"The strength (darkness) of node ambient-occlusion shading.\n" +"Lower is darker, Higher is lighter. The valid range of values for this\n" +"setting is 0.25 to 4.0 inclusive. If the value is out of range it will be\n" +"set to the nearest valid value." +msgstr "" +"முனை சுற்றுப்புற-மறுப்பு நிழலின் வலிமை (இருள்).\n" +" கீழ் இருண்டது, உயர்ந்தது இலகுவானது. இதற்கான மதிப்புகளின் சரியான வரம்பு\n" +" அமைப்பு 0.25 முதல் 4.0 ஆகியவை அடங்கும். மதிப்பு வரம்பில்லாமல் இருந்தால் அது இருக்கும்\n" +" அருகிலுள்ள செல்லுபடியாகும் மதிப்புக்கு அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "" +"The time (in seconds) that the liquids queue may grow beyond processing\n" +"capacity until an attempt is made to decrease its size by dumping old queue\n" +"items. A value of 0 disables the functionality." +msgstr "" +"திரவங்களின் வரிசை செயலாக்கத்திற்கு அப்பால் வளரக்கூடிய நேரம் (நொடிகளில்)\n" +" பழைய வரிசையை கொட்டுவதன் மூலம் அதன் அளவைக் குறைக்க முயற்சி செய்யும் வரை திறன்\n" +" உருப்படிகள். 0 இன் மதிப்பு செயல்பாட்டை முடக்குகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"The time budget allowed for ABMs to execute on each step\n" +"(as a fraction of the ABM Interval)" +msgstr "" +"ஒவ்வொரு அடியிலும் ஏபிஎம்எச் செயல்படுத்த நேர பட்செட் அனுமதித்தது\n" +" (ஏபிஎம் இடைவெளியின் ஒரு பகுதியாக)" + +#: src/settings_translation_file.cpp +msgid "" +"The time in seconds it takes between repeated events\n" +"when holding down a joystick button combination." +msgstr "" +"மீண்டும் மீண்டும் நிகழ்வுகளுக்கு இடையில் எடுக்கும் விநாடிகளில் நேரம்\n" +" சாய்ச்டிக் பொத்தான் கலவையை வைத்திருக்கும் போது." + +#: src/settings_translation_file.cpp +msgid "" +"The time in seconds it takes between repeated node placements when holding\n" +"the place button." +msgstr "" +"நொடிகளில் நேரம் எடுக்கும் போது மீண்டும் மீண்டும் முனை வேலைவாய்ப்புகளுக்கு இடையில் எடுக்கும் " +"நேரம்\n" +" இட பொத்தானை." + +#: src/settings_translation_file.cpp +msgid "The type of joystick" +msgstr "சாய்ச்டிக் வகை" + +#: src/settings_translation_file.cpp +msgid "" +"The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" +"enabled. Also, the vertical distance over which humidity drops by 10 if\n" +"'altitude_dry' is enabled." +msgstr "" +"'உயரம்_சில்' என்றால் வெப்பம் 20 ஆல் செங்குத்து தூரம்\n" +" இயக்கப்பட்டது. மேலும், ஈரப்பதம் 10 என்றால் செங்குத்து தூரம்\n" +" 'Altitute_dry' இயக்கப்பட்டது." + +#: src/settings_translation_file.cpp +msgid "Third of 4 2D noises that together define hill/mountain range height." +msgstr "இல்/மலை வீச்சு உயரத்தை ஒன்றாக வரையறுக்கும் 4 2 டி சத்தங்களில் மூன்றாவது." + +#: src/settings_translation_file.cpp +msgid "Threshold for long taps" +msgstr "நீண்ட குழாய்களுக்கான வாசல்" + +#: src/settings_translation_file.cpp +msgid "" +"Time in seconds for item entity (dropped items) to live.\n" +"Setting it to -1 disables the feature." +msgstr "" +"உருப்படி நிறுவனம் (கைவிடப்பட்ட உருப்படிகள்) வாழ விநாடிகளில் நேரம்.\n" +" அதை -1 ஆக அமைப்பது அம்சத்தை முடக்கியது." + +#: src/settings_translation_file.cpp +msgid "Time of day when a new world is started, in millihours (0-23999)." +msgstr "ஒரு புதிய உலகம் தொடங்கப்பட்ட நாள், மில்லிஓர்சில் (0-23999)." + +#: src/settings_translation_file.cpp +msgid "Time speed" +msgstr "நேர விரைவு" + +#: src/settings_translation_file.cpp +msgid "Timeout for client to remove unused map data from memory, in seconds." +msgstr "" +"பயன்படுத்தப்படாத வரைபடத் தரவை நினைவகத்திலிருந்து நொடிகளில் அகற்ற கிளையன்ட் நேரம் " +"முடிந்தது." + +#: src/settings_translation_file.cpp +msgid "" +"To reduce lag, block transfers are slowed down when a player is building " +"something.\n" +"This determines how long they are slowed down after placing or removing a " +"node." +msgstr "" +"பின்னடைவைக் குறைக்க, ஒரு வீரர் எதையாவது உருவாக்கும்போது தொகுதி இடமாற்றங்கள் " +"குறைகின்றன.\n" +" இது ஒரு முனையை வைத்த பிறகு அல்லது அகற்றிய பின் அவை எவ்வளவு நேரம் குறைகின்றன என்பதை " +"இது தீர்மானிக்கிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Tolerance of movement cheat detector.\n" +"Increase the value if players experience stuttery movement." +msgstr "" +"இயக்கம் ஏமாற்று கண்டுபிடிப்பாளரின் சகிப்புத்தன்மை.\n" +" வீரர்கள் ச்டட்டரி இயக்கத்தை அனுபவித்தால் மதிப்பை அதிகரிக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Tooltip delay" +msgstr "உதவிக்குறிப்பு நேரந்தவறுகை" + +#: src/settings_translation_file.cpp +msgid "Touchscreen" +msgstr "தொடுதிரை" + +#: src/settings_translation_file.cpp +msgid "Touchscreen controls" +msgstr "தொடுதிரை கட்டுப்பாடுகள்" + +#: src/settings_translation_file.cpp +msgid "Touchscreen sensitivity" +msgstr "தொடுதிரை உணர்திறன்" + +#: src/settings_translation_file.cpp +msgid "Touchscreen sensitivity multiplier." +msgstr "தொடுதிரை உணர்திறன் பெருக்கி." + +#: src/settings_translation_file.cpp +msgid "Tradeoffs for performance" +msgstr "செயல்திறனுக்கான பரிமாற்றங்கள்" + +#: src/settings_translation_file.cpp +msgid "Translucent foliage" +msgstr "கசியும் பசுமையாக" + +#: src/settings_translation_file.cpp +msgid "Translucent liquids" +msgstr "கசியும் திரவங்கள்" + +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Distance" +msgstr "வெளிப்படைத்தன்மை வரிசையாக்க தூரம்" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "வெளிப்படைத்தன்மை வரிசையாக்க தூரம்" + +#: src/settings_translation_file.cpp +msgid "Trees noise" +msgstr "மரங்களின் ஒலி" + +#: src/settings_translation_file.cpp +msgid "Trilinear filtering" +msgstr "Trilinear வடிகட்டுதல்" + +#: src/settings_translation_file.cpp +msgid "" +"True = 256\n" +"False = 128\n" +"Usable to make minimap smoother on slower machines." +msgstr "" +"உண்மை = 256\n" +" தவறு = 128\n" +" மெதுவான இயந்திரங்களில் மினிமேப்பை மென்மையாக்க பயன்படுத்தக்கூடியது." + +#: src/settings_translation_file.cpp +msgid "Trusted mods" +msgstr "நம்பகமான மோட்ச்" + +#: src/settings_translation_file.cpp +msgid "" +"Type of occlusion_culler\n" +"\n" +"\"loops\" is the legacy algorithm with nested loops and O(n³) complexity\n" +"\"bfs\" is the new algorithm based on breadth-first-search and side culling\n" +"\n" +"This setting should only be changed if you have performance problems." +msgstr "" +"Acclusion_culler வகை\n" +"\n" +" \"லூப்ச்\" என்பது உள்ளமைக்கப்பட்ட சுழல்கள் மற்றும் ஓ (n³) சிக்கலான மரபு வழிமுறை\n" +" \"பி.எஃப்.எச்\" என்பது அகலம்-முதல் தேடல் மற்றும் பக்கக் குறைப்பை அடிப்படையாகக் கொண்ட " +"புதிய வழிமுறையாகும்\n" +"\n" +" உங்களுக்கு செயல்திறன் சிக்கல்கள் இருந்தால் மட்டுமே இந்த அமைப்பை மாற்ற வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "" +"URL to JSON file which provides information about the newest Luanti " +"release.\n" +"If this is empty the engine will never check for updates." +msgstr "" +"புதிய லுவாண்டி வெளியீட்டைப் பற்றிய தகவல்களை வழங்கும் சாதொபொகு கோப்பிற்கான URL.\n" +" இது காலியாக இருந்தால், இயந்திரம் ஒருபோதும் புதுப்பிப்புகளை சரிபார்க்காது." + +#: src/settings_translation_file.cpp +msgid "URL to the server list displayed in the Multiplayer Tab." +msgstr "மல்டிபிளேயர் தாவலில் காட்டப்படும் சேவையக பட்டியலுக்கான முகவரி." + +#: src/settings_translation_file.cpp +msgid "Undersampling" +msgstr "அடிக்கோடிட்டுக் காட்டுகிறது" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Undersampling is similar to using a lower screen resolution, but it applies\n" +"to the game world only, keeping the GUI intact.\n" +"It should give a significant performance boost at the cost of less detailed " +"image.\n" +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." +msgstr "" +"அடிக்கோடிட்டுக் காட்டுவது குறைந்த திரை தெளிவுத்திறனைப் பயன்படுத்துவதைப் போன்றது, ஆனால் " +"அது பொருந்தும்\n" +" விளையாட்டு உலகிற்கு மட்டுமே, GUI ஐ அப்படியே வைத்திருத்தல்.\n" +" இது குறைந்த விரிவான படத்தின் விலையில் குறிப்பிடத்தக்க செயல்திறன் ஊக்கத்தை அளிக்க " +"வேண்டும்.\n" +" அதிக மதிப்புகள் குறைந்த விரிவான படத்தை விளைவிக்கின்றன." + +#: src/settings_translation_file.cpp +msgid "Unlimited player transfer distance" +msgstr "வரம்பற்ற வீரர் பரிமாற்ற தூரம்" + +#: src/settings_translation_file.cpp +msgid "Unload unused server data" +msgstr "பயன்படுத்தப்படாத சேவையக தரவை இறக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Update information URL" +msgstr "செய்தி முகவரி ஐப் புதுப்பிக்கவும்" + +#: src/settings_translation_file.cpp +msgid "Upper Y limit of dungeons." +msgstr "நிலவறைகளின் மேல் ஒய் வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Upper Y limit of floatlands." +msgstr "ஃப்ளோட்லேண்ட்சின் மேல் ஒய் வரம்பு." + +#: src/settings_translation_file.cpp +msgid "Use a cloud animation for the main menu background." +msgstr "முதன்மையான பட்டியல் பின்னணிக்கு முகில் அனிமேசனைப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." +msgstr "" +"ஒரு கோணத்தில் இருந்து அமைப்புகளைப் பார்க்கும்போது அனிசோட்ரோபிக் வடிகட்டலைப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "Use bilinear filtering when scaling textures." +msgstr "அமைப்புகளை அளவிடும்போது பிலினியர் வடிகட்டலைப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "Use crosshair for touch screen" +msgstr "தொடுதிரைக்கு குறுக்குவழியைப் பயன்படுத்தவும்" + +#: src/settings_translation_file.cpp +msgid "" +"Use crosshair to select object instead of whole screen.\n" +"If enabled, a crosshair will be shown and will be used for selecting object." +msgstr "" +"முழு திரைக்கு பதிலாக பொருளைத் தேர்ந்தெடுக்க குறுக்குவழியைப் பயன்படுத்தவும்.\n" +" இயக்கப்பட்டால், ஒரு குறுக்கு நாற்காலி காண்பிக்கப்படும் மற்றும் பொருளைத் தேர்ந்தெடுப்பதற்கு " +"பயன்படுத்தப்படும்." + +#: src/settings_translation_file.cpp +msgid "" +"Use mipmaps when scaling textures. May slightly increase performance,\n" +"especially when using a high-resolution texture pack.\n" +"Gamma-correct downscaling is not supported." +msgstr "" +"அமைப்புகளை அளவிடும்போது MIPMAP களைப் பயன்படுத்தவும். செயல்திறனை சற்று அதிகரிக்கலாம்,\n" +" குறிப்பாக உயர் தெளிவுத்திறன் கொண்ட அமைப்பு பேக்கைப் பயன்படுத்தும் போது.\n" +" காமா-திருத்த கீழ்நோக்கி ஆதரிக்கப்படவில்லை." + +#: src/settings_translation_file.cpp +msgid "" +"Use raytraced occlusion culling in the new culler.\n" +"This flag enables use of raytraced occlusion culling test for\n" +"client mesh sizes smaller than 4x4x4 map blocks." +msgstr "" +"புதிய குல்லரில் ரேச்ட்ரேச் க்ளூசன் குறைப்பைப் பயன்படுத்தவும்.\n" +" இந்த கொடி ரேச்ட்ரேச் க்ளூசன் க்ளிங் சோதனையைப் பயன்படுத்த உதவுகிறது\n" +" கிளையன்ட் மெச் அளவுகள் 4x4x4 வரைபடத் தொகுதிகளை விட சிறியவை." + +#: src/settings_translation_file.cpp +msgid "Use smooth cloud shading." +msgstr "மென்மையான மேக நிழல் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "" +"Use trilinear filtering when scaling textures.\n" +"If both bilinear and trilinear filtering are enabled, trilinear filtering\n" +"is applied." +msgstr "" +"அமைப்புகளை அளவிடும்போது Trilinear வடிகட்டலைப் பயன்படுத்தவும்.\n" +" பிலினியர் மற்றும் ட்ரிலினியர் வடிகட்டுதல் இரண்டும் இயக்கப்பட்டிருந்தால், ட்ரிலினியர் " +"வடிகட்டுதல்\n" +" பயன்படுத்தப்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "" +"Use virtual joystick to trigger \"Aux1\" button.\n" +"If enabled, virtual joystick will also tap \"Aux1\" button when out of main " +"circle." +msgstr "" +"\"AUX1\" பொத்தானைத் தூண்டுவதற்கு மெய்நிகர் சாய்ச்டிக் பயன்படுத்தவும்.\n" +" இயக்கப்பட்டால், முதன்மையான வட்டத்திற்கு வெளியே இருக்கும்போது மெய்நிகர் சாய்ச்டிக் \"AUX1\" " +"பொத்தானையும் தட்டிவிடும்." + +#: src/settings_translation_file.cpp +msgid "User Interfaces" +msgstr "பயனர் இடைமுகங்கள்" + +#: src/settings_translation_file.cpp +msgid "VSync" +msgstr "Vsync" + +#: src/settings_translation_file.cpp +msgid "Valley depth" +msgstr "பள்ளத்தாக்கு ஆழம்" + +#: src/settings_translation_file.cpp +msgid "Valley fill" +msgstr "பள்ளத்தாக்கு நிரப்பு" + +#: src/settings_translation_file.cpp +msgid "Valley profile" +msgstr "பள்ளத்தாக்கு சுயவிவரம்" + +#: src/settings_translation_file.cpp +msgid "Valley slope" +msgstr "பள்ளத்தாக்கு சாய்வு" + +#: src/settings_translation_file.cpp +msgid "Variation of biome filler depth." +msgstr "பயோம் நிரப்பு ஆழத்தின் மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "Variation of maximum mountain height (in nodes)." +msgstr "அதிகபட்ச மலை உயரத்தின் மாறுபாடு (முனைகளில்)." + +#: src/settings_translation_file.cpp +msgid "Variation of number of caves." +msgstr "குகைகளின் எண்ணிக்கையின் மாறுபாடு." + +#: src/settings_translation_file.cpp +msgid "" +"Variation of terrain vertical scale.\n" +"When noise is < -0.55 terrain is near-flat." +msgstr "" +"நிலப்பரப்பு செங்குத்து அளவின் மாறுபாடு.\n" +" ஒலி இருக்கும்போது <-0.55 நிலப்பரப்பு ஃப்ளாட் ஆகும்." + +#: src/settings_translation_file.cpp +msgid "Varies depth of biome surface nodes." +msgstr "பயோம் மேற்பரப்பு முனைகளின் ஆழம் மாறுபடும்." + +#: src/settings_translation_file.cpp +msgid "" +"Varies roughness of terrain.\n" +"Defines the 'persistence' value for terrain_base and terrain_alt noises." +msgstr "" +"நிலப்பரப்பின் கடினத்தன்மை மாறுபடும்.\n" +" TERRAIN_BASE மற்றும் TERRAIN_ALT சத்தங்களுக்கான 'விடாமுயற்சி' மதிப்பை வரையறுக்கிறது." + +#: src/settings_translation_file.cpp +msgid "Varies steepness of cliffs." +msgstr "குன்றின் செங்குத்தாக மாறுபடும்." + +#: src/settings_translation_file.cpp +msgid "Vertical climbing speed, in nodes per second." +msgstr "செங்குத்து ஏறும் விரைவு, நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "" +"Vertical screen synchronization. Your system may still force VSync on even " +"if this is disabled." +msgstr "" +"செங்குத்து திரை ஒத்திசைவு. இது முடக்கப்பட்டிருந்தாலும் உங்கள் கணினி VSYNC ஐ " +"கட்டாயப்படுத்தக்கூடும்." + +#: src/settings_translation_file.cpp +msgid "Video driver" +msgstr "வீடியோ இயக்கி" + +#: src/settings_translation_file.cpp +msgid "View bobbing factor" +msgstr "பாப்பிங் காரணியைக் காண்க" + +#: src/settings_translation_file.cpp +msgid "View distance in nodes." +msgstr "முனைகளில் தூரத்தைக் காண்க." + +#: src/settings_translation_file.cpp +msgid "Viewing range" +msgstr "பார்க்கும் வரம்பு" + +#: src/settings_translation_file.cpp +msgid "Virtual joystick triggers Aux1 button" +msgstr "மெய்நிகர் சாய்ச்டிக் AUX1 பொத்தானைத் தூண்டுகிறது" + +#: src/settings_translation_file.cpp +msgid "Volume" +msgstr "தொகுதி" + +#: src/settings_translation_file.cpp +msgid "Volume multiplier when the window is unfocused." +msgstr "சாளரம் கவனம் செலுத்தப்படாதபோது தொகுதி பெருக்கி." + +#: src/settings_translation_file.cpp +msgid "" +"Volume of all sounds.\n" +"Requires the sound system to be enabled." +msgstr "" +"எல்லா ஒலிகளின் அளவு.\n" +" ஒலி அமைப்பு இயக்கப்பட வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Volume when unfocused" +msgstr "கவனம் செலுத்தாதபோது தொகுதி" + +#: src/settings_translation_file.cpp +msgid "Volumetric lighting" +msgstr "அளவீட்டு விளக்குகள்" + +#: src/settings_translation_file.cpp +msgid "" +"W coordinate of the generated 3D slice of a 4D fractal.\n" +"Determines which 3D slice of the 4D shape is generated.\n" +"Alters the shape of the fractal.\n" +"Has no effect on 3D fractals.\n" +"Range roughly -2 to 2." +msgstr "" +"4 டி ஃப்ராக்டலின் உருவாக்கப்பட்ட 3 டி ச்லைசின் ஒருங்கிணைப்பு.\n" +" 4D வடிவத்தின் எந்த 3D துண்டு உருவாக்கப்படுகிறது என்பதை தீர்மானிக்கிறது.\n" +" ஃப்ராக்டலின் வடிவத்தை மாற்றுகிறது.\n" +" 3D பின்னல்களில் எந்த விளைவும் இல்லை.\n" +" வரம்பு தோராயமாக -2 முதல் 2 வரை." + +#: src/settings_translation_file.cpp +msgid "Walking and flying speed, in nodes per second." +msgstr "நடைபயிற்சி மற்றும் பறக்கும் விரைவு, நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "Walking speed" +msgstr "நடைபயிற்சி விரைவு" + +#: src/settings_translation_file.cpp +msgid "Walking, flying and climbing speed in fast mode, in nodes per second." +msgstr "" +"நடைபயிற்சி, பறக்கும் மற்றும் ஏறும் விரைவு வேகமான பயன்முறையில், நொடிக்கு முனைகளில்." + +#: src/settings_translation_file.cpp +msgid "Water level" +msgstr "நீர் நிலை" + +#: src/settings_translation_file.cpp +msgid "Water surface level of the world." +msgstr "உலகின் நீர் மேற்பரப்பு நிலை." + +#: src/settings_translation_file.cpp +msgid "Waving Nodes" +msgstr "முனைகள் அசைக்கும்" + +#: src/settings_translation_file.cpp +msgid "Waving leaves" +msgstr "இலைகளை அசைக்கும்" + +#: src/settings_translation_file.cpp +msgid "Waving liquids" +msgstr "திரவங்களை அசைக்கும்" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wave height" +msgstr "திரவங்களின் அலை உயரம்" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wave speed" +msgstr "திரவங்களின் அலை வேகத்தை அசைத்தல்" + +#: src/settings_translation_file.cpp +msgid "Waving liquids wavelength" +msgstr "திரவ அலைநீளம் அசைத்தல்" + +#: src/settings_translation_file.cpp +msgid "Waving plants" +msgstr "தாவரங்களை அசைத்தல்" + +#: src/settings_translation_file.cpp +msgid "Weblink color" +msgstr "வெப்லிங்க் நிறம்" + +#: src/settings_translation_file.cpp +msgid "When enabled, liquid reflections are simulated." +msgstr "இயக்கப்பட்டால், திரவ பிரதிபலிப்புகள் உருவகப்படுத்தப்படுகின்றன." + +#: src/settings_translation_file.cpp +msgid "" +"When enabled, the GUI is optimized to be more usable on touchscreens.\n" +"Whether this is enabled by default depends on your hardware form-factor." +msgstr "" +"இயக்கப்பட்டால், CUI தொடுதிரைகளில் மிகவும் பயன்படுத்தக்கூடியதாக இருக்கும்.\n" +" இது இயல்புநிலையாக இயக்கப்பட்டதா என்பது உங்கள் வன்பொருள் படிவ-காரணி சார்ந்துள்ளது." + +#: src/settings_translation_file.cpp +msgid "" +"When gui_scaling_filter is true, all GUI images need to be\n" +"filtered in software, but some images are generated directly\n" +"to hardware (e.g. render-to-texture for nodes in inventory)." +msgstr "" +"GUI_SCALING_FILTER உண்மையாக இருக்கும்போது, அனைத்து GUI படங்களும் இருக்க வேண்டும்\n" +" மென்பொருளில் வடிகட்டப்படுகிறது, ஆனால் சில படங்கள் நேரடியாக உருவாக்கப்படுகின்றன\n" +" வன்பொருளுக்கு (எ.கா. சரக்குகளில் முனைகளுக்கு ரெண்டர்-டு-டெக்ச்டர்)." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" +"This is also used as the base node texture size for world-aligned\n" +"texture autoscaling." +msgstr "" +"பிலினியர்/ட்ரிலினியர்/அனிசோட்ரோபிக் வடிப்பான்களைப் பயன்படுத்தும் போது, குறைந்த " +"தெளிவுத்திறன் கொண்ட கட்டங்கள்\n" +" மங்கலாக இருக்க முடியும், எனவே தானாகவே அவற்றை அருகிலுள்ள-அருவருப்பானதாக உயர்த்தவும்\n" +" மிருதுவான பிக்சல்களைப் பாதுகாக்க இடைக்கணிப்பு. இது குறைந்தபட்ச அமைப்பு அளவை " +"அமைக்கிறது\n" +" உயர்த்தப்பட்ட அமைப்புகளுக்கு; அதிக மதிப்புகள் கூர்மையாகத் தெரிகின்றன, ஆனால் இன்னும் தேவை\n" +" நினைவகம். 2 அதிகாரங்கள் பரிந்துரைக்கப்படுகின்றன. இந்த அமைப்பு என்றால் மட்டுமே " +"பயன்படுத்தப்படுகிறது\n" +" பிலினியர்/ட்ரிலினியர்/அனிசோட்ரோபிக் வடிகட்டுதல் இயக்கப்பட்டது.\n" +" இது உலக சீரமைக்கப்பட்ட அடிப்படை முனை அமைப்பு அளவாகவும் பயன்படுத்தப்படுகிறது\n" +" அமைப்பு ஆட்டோச்கேலிங்." + +#: src/settings_translation_file.cpp +msgid "" +"Whether name tag backgrounds should be shown by default.\n" +"Mods may still set a background." +msgstr "" +"பெயர் குறிச்சொல் பின்னணிகள் இயல்பாக காட்டப்பட வேண்டுமா.\n" +" மோட்ச் இன்னும் ஒரு பின்னணியை அமைக்கலாம்." + +#: src/settings_translation_file.cpp +msgid "" +"Whether players are shown to clients without any range limit.\n" +"Deprecated, use the setting player_transfer_distance instead." +msgstr "" +"எந்தவொரு வரம்பு வரம்பும் இல்லாமல் வீரர்கள் வாடிக்கையாளர்களுக்குக் காட்டப்படுகிறார்களா " +"என்பது.\n" +" நீக்கப்பட்டது, அதற்கு பதிலாக பிளேயர்_ டிரான்ச்ஃபர்_டிச்டன்ச் அமைப்பைப் பயன்படுத்தவும்." + +#: src/settings_translation_file.cpp +msgid "Whether the window is maximized." +msgstr "சாளரம் அதிகரிக்கப்பட்டுள்ளதா." + +#: src/settings_translation_file.cpp +msgid "" +"Whether to ask clients to reconnect after a (Lua) crash.\n" +"Set this to true if your server is set up to restart automatically." +msgstr "" +"ஒரு (LUA) விபத்துக்குப் பிறகு மீண்டும் இணைக்க வாடிக்கையாளர்களைக் கேட்கலாமா?\n" +" தானாக மறுதொடக்கம் செய்ய உங்கள் சேவையகம் அமைக்கப்பட்டால் இதை உண்மை என அமைக்கவும்." + +#: src/settings_translation_file.cpp +msgid "Whether to fog out the end of the visible area." +msgstr "புலப்படும் பகுதியின் முடிவை மூடுபனி செய்ய வேண்டுமா." + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"Whether to mute sounds. You can unmute sounds at any time.\n" +"In-game, you can toggle the mute state with the mute key or by using the\n" +"pause menu." +msgstr "" +"ஊமையாக ஒலிக்க வேண்டுமா. நீங்கள் எந்த நேரத்திலும் ஒலிகளை அசைக்கலாம்\n" +" ஒலி அமைப்பு முடக்கப்பட்டுள்ளது (enable_sound = பொய்).\n" +" விளையாட்டில், நீங்கள் முடக்கு நிலையை முடக்கு விசையுடன் அல்லது பயன்படுத்துவதன் மூலம் " +"மாற்றலாம்\n" +" இடைநிறுத்த பட்டியல்." + +#: src/settings_translation_file.cpp +msgid "" +"Whether to show the client debug info (has the same effect as hitting F5)." +msgstr "" +"கிளையன்ட் பிழைத்திருத்த தகவலைக் காட்ட வேண்டுமா (F5 ஐத் தாக்கும் அதே விளைவைக் கொண்டுள்ளது)." + +#: src/settings_translation_file.cpp +msgid "Width component of the initial window size." +msgstr "ஆரம்ப சாளர அளவின் அகல கூறு." + +#: src/settings_translation_file.cpp +msgid "Width of the selection box lines around nodes." +msgstr "முனைகளைச் சுற்றியுள்ள தேர்வு பெட்டி வரிகளின் அகலம்." + +#: src/settings_translation_file.cpp +msgid "Window maximized" +msgstr "சாளரம் அதிகரிக்கப்பட்டது" + +#: src/settings_translation_file.cpp +msgid "" +"Windows systems only: Start Luanti with the command line window in the " +"background.\n" +"Contains the same information as the file debug.txt (default name)." +msgstr "" +"சாளரங்கள் சிச்டம்ச் மட்டும்: பின்னணியில் கட்டளை வரி சாளரத்துடன் லுவாண்டியைத் தொடங்கவும்.\n" +" கோப்பு பிழைத்திருத்தத்தின் அதே தகவலைக் கொண்டுள்ளது. TXT (இயல்புநிலை பெயர்)." + +#: src/settings_translation_file.cpp +msgid "" +"World directory (everything in the world is stored here).\n" +"Not needed if starting from the main menu." +msgstr "" +"உலக அடைவு (உலகில் உள்ள அனைத்தும் இங்கே சேமிக்கப்பட்டுள்ளன).\n" +" முதன்மையான மெனுவிலிருந்து தொடங்கினால் தேவையில்லை." + +#: src/settings_translation_file.cpp +msgid "World start time" +msgstr "உலக தொடக்க நேரம்" + +#: src/settings_translation_file.cpp +msgid "" +"World-aligned textures may be scaled to span several nodes. However,\n" +"the server may not send the scale you want, especially if you use\n" +"a specially-designed texture pack; with this option, the client tries\n" +"to determine the scale automatically basing on the texture size.\n" +"See also texture_min_size.\n" +"Warning: This option is EXPERIMENTAL!" +msgstr "" +"உலக சீரமைக்கப்பட்ட அமைப்புகள் பல முனைகளை அளவிட அளவிடப்படலாம். இருப்பினும்,\n" +" சேவையகம் நீங்கள் விரும்பும் அளவை அனுப்பக்கூடாது, குறிப்பாக நீங்கள் பயன்படுத்தினால்\n" +" சிறப்பாக வடிவமைக்கப்பட்ட அமைப்பு பேக்; இந்த விருப்பத்துடன், வாடிக்கையாளர் முயற்சிக்கிறார்\n" +" அமைப்பு அளவைக் கட்டியெழுப்பும் அளவைத் தீர்மானிக்க.\n" +" Sexture_min_size ஐயும் காண்க.\n" +" எச்சரிக்கை: இந்த விருப்பம் சோதனை!" + +#: src/settings_translation_file.cpp +msgid "World-aligned textures mode" +msgstr "உலக சீரமைக்கப்பட்ட அமைப்பு பயன்முறை" + +#: src/settings_translation_file.cpp +msgid "Y of flat ground." +msgstr "தட்டையான தரை ஒய்." + +#: src/settings_translation_file.cpp +msgid "" +"Y of mountain density gradient zero level. Used to shift mountains " +"vertically." +msgstr "மலை அடர்த்தி சாய்வு சுழிய அளவின் ஒய். மலைகளை செங்குத்தாக மாற்ற பயன்படுகிறது." + +#: src/settings_translation_file.cpp +msgid "Y of upper limit of large caves." +msgstr "பெரிய குகைகளின் மேல் வரம்பின் ஒய்." + +#: src/settings_translation_file.cpp +msgid "Y-distance over which caverns expand to full size." +msgstr "குகைகள் முழு அளவிற்கு விரிவடையும் மீது ஒய்-தூரம்." + +#: src/settings_translation_file.cpp +msgid "" +"Y-distance over which floatlands taper from full density to nothing.\n" +"Tapering starts at this distance from the Y limit.\n" +"For a solid floatland layer, this controls the height of hills/mountains.\n" +"Must be less than or equal to half the distance between the Y limits." +msgstr "" +"Y- தூரம் எந்த ஃப்ளோட்லேண்ட்ச் முழு அடர்த்தியிலிருந்து ஒன்றும் இல்லை.\n" +" ஒய் வரம்பிலிருந்து இந்த தூரத்தில் தட்டுதல் தொடங்குகிறது.\n" +" திடமான மிதவை நிலப்பரப்புக்கு, இது மலைகள்/மலைகளின் உயரத்தை கட்டுப்படுத்துகிறது.\n" +" ஒய் வரம்புகளுக்கு இடையில் பாதி தூரத்தை விட குறைவாகவோ அல்லது சமமாகவோ இருக்க வேண்டும்." + +#: src/settings_translation_file.cpp +msgid "Y-level of average terrain surface." +msgstr "சராசரி நிலப்பரப்பு மேற்பரப்பின் y- நிலை." + +#: src/settings_translation_file.cpp +msgid "Y-level of cavern upper limit." +msgstr "கேவர்ன் மேல் வரம்பின் ஒய்-லெவல்." + +#: src/settings_translation_file.cpp +msgid "Y-level of higher terrain that creates cliffs." +msgstr "குன்றுகளை உருவாக்கும் உயர் நிலப்பரப்பின் ஒய்-நிலை." + +#: src/settings_translation_file.cpp +msgid "Y-level of lower terrain and seabed." +msgstr "கீழ் நிலப்பரப்பு மற்றும் கடற்பரப்பின் ஒய்-நிலை." + +#: src/settings_translation_file.cpp +msgid "Y-level of seabed." +msgstr "கடலோரத்தின் y- நிலை." + +#: src/settings_translation_file.cpp +msgid "cURL" +msgstr "சுருட்டை" + +#: src/settings_translation_file.cpp +msgid "cURL file download timeout" +msgstr "சுருட்டை கோப்பு பதிவிறக்க நேரம் முடிந்தது" + +#: src/settings_translation_file.cpp +msgid "cURL interactive timeout" +msgstr "ஊடாடும் காலக்கெடுவை சுருட்டுங்கள்" + +#: src/settings_translation_file.cpp +msgid "cURL parallel limit" +msgstr "இணையான வரம்பை சுருட்டுங்கள்" + +#~ msgid "Adds particles when digging a node." +#~ msgstr "ஒரு முனையைத் தோண்டும்போது துகள்களைச் சேர்க்கிறது." + +#~ msgid "Clouds are a client-side effect." +#~ msgstr "மேகங்கள் கிளையன்ட் பக்க விளைவு." + +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "பிழைத்திருத்த செய்தி மற்றும் சுயவிவர வரைபடம் மறைக்கப்பட்டுள்ளது" + +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "பிழைத்திருத்த செய்தி, சுயவிவர வரைபடம் மற்றும் வயர்ஃப்ரேம் மறைக்கப்பட்டுள்ளன" + +#~ msgid "Desynchronize block animation" +#~ msgstr "பிளாக் அனிமேசனை தேய்மானம்" + +#~ msgid "Digging particles" +#~ msgstr "துகள்களை தோண்டி எடுக்கும்" + +#~ msgid "Enable" +#~ msgstr "இயக்கு" + +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "FACEDIR சுழலும் மெச்களின் தேக்ககத்தை செயல்படுத்துகிறது.\n" +#~ " இது சேடர்கள் முடக்கப்பட்டால் மட்டுமே பயனுள்ளதாக இருக்கும்." + +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI அளவிடுதல் வடிகட்டி TXR2IMG" + +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "" +#~ "வாடிக்கையாளர்களுக்கு நாள் நேரத்தை அனுப்பும் இடைவெளி, நொடிகளில் கூறப்படுகிறது." + +#~ msgid "Irrlicht device:" +#~ msgstr "Irlicht சாதனம்:" + +#~ msgid "Mesh cache" +#~ msgstr "கண்ணி கேச்" + +#~ msgid "Shaders" +#~ msgstr "சேடர்ச்" + +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "சேடர்கள் ஒழுங்கமைப்பின் ஒரு அடிப்படை பகுதியாகும் மற்றும் மேம்பட்ட காட்சி விளைவுகளை " +#~ "இயக்குகின்றன." + +#~ msgid "Shaders are disabled." +#~ msgstr "சேடர்கள் முடக்கப்பட்டுள்ளன." + +#~ msgid "Sound system is disabled" +#~ msgstr "ஒலி அமைப்பு முடக்கப்பட்டுள்ளது" + +#~ msgid "This is not a recommended configuration." +#~ msgstr "இது பரிந்துரைக்கப்பட்ட உள்ளமைவு அல்ல." + +#~ msgid "Time send interval" +#~ msgstr "நேரம் இடைவெளி அனுப்பவும்" + +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "GUI_SCALING_FILTER_TXR2IMG உண்மையாக இருக்கும்போது, அந்த படங்களை நகலெடுக்கவும்\n" +#~ " வன்பொருள் முதல் மென்பொருள் வரை. பொய்யானது போது, பின்வாங்கவும்\n" +#~ " பழைய அளவிடுதல் முறைக்கு, இல்லாத வீடியோ இயக்கிகளுக்கு\n" +#~ " வன்பொருளிலிருந்து அமைப்புகளை பதிவிறக்குவதை ஒழுங்காக ஆதரிக்கவும்." + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "மேப் பிளாக் ஒன்றுக்கு முனை அமைப்பு அனிமேசன்கள் தேய்மானம் செய்யப்பட வேண்டுமா." diff --git a/po/th/luanti.po b/po/th/luanti.po index 3ae8aa207..399bc589e 100644 --- a/po/th/luanti.po +++ b/po/th/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Thai (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2022-03-18 01:05+0000\n" "Last-Translator: Thomas Wiegand \n" "Language-Team: Thai ] [-t]" msgstr "[ทั้งหมด | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "เรียกดู" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "แก้ไข" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "เลือกไดเรกทอรี" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "เลือกไฟล์" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "เลือก" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(ไม่มีคำอธิบายของการตั้งค่าที่ให้มา)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D นอยส์" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "ยกเลิก" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "ความไม่ชัดเจน" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#, fuzzy +msgid "Octaves" +msgstr "ความละเอียดของการสุ่ม" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "ค่าชดเชย" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "วิริยะ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "บันทึก" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "ขนาด" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "เมล็ดพันธุ์" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X กระจาย" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y กระจาย" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z กระจาย" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "ค่าผันแปรการสุ่มสร้างแผนที่" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "เริ่มต้น" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "ความนุ่มนวลของพื้นผิวบนทางลาด" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "แช" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "ล้าง" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "ควบคุม" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "ปิดการใช้งานแล้ว" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "เปิดใช้งานแล้ว" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "การเคลื่อนไหวเร็ว" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "ไม่มีผลลัพธ์" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "คืนค่าเริ่มต้น" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "ค้นหา" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "แสดงชื่อทางเทคนิค" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "ขีด จำกัด หน้าจอสัมผัส" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "FPS ในเมนูหยุดชั่วคราว" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "เลือก Mods" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Games" +msgstr "เนื้อหา" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Content: Mods" +msgstr "เนื้อหา" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "เงาแบบไดนามิก" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "สูง" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "ต่ำ" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "ปานกลาง" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "สูงเป็นพิเศษ" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "ต่ำมาก" + #: builtin/fstk/ui.lua msgid "" msgstr "<ไม่มี>" @@ -164,7 +412,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "หลัง" @@ -201,11 +448,6 @@ msgstr "ม็อด" msgid "No packages could be retrieved" msgstr "ไม่สามารถเรียกแพคเกจได้" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "ไม่มีผลลัพธ์" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "ไม่มีการปรับปรุง" @@ -251,18 +493,6 @@ msgstr "ติดตั้งแล้ว" msgid "Base Game:" msgstr "เกมพื้นฐาน:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "ยกเลิก" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -391,6 +621,12 @@ msgstr "ไม่สามารถติดตั้ง mod $1" msgid "Unable to install a $1 as a texture pack" msgstr "ไม่สามารถติดตั้งพื้นผิว Texture $1" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -455,12 +691,6 @@ msgstr "เสริม อ้างอิง" msgid "Optional dependencies:" msgstr "ไฟล์อ้างอิงที่เลือกใช้ได้:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "บันทึก" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "โลก:" @@ -612,11 +842,6 @@ msgstr "แม่น้ำ" msgid "Sea level rivers" msgstr "แม่น้ำระดับน้ำทะเล" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "เมล็ดพันธุ์" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "การเปลี่ยนแปลงที่ราบรื่นระหว่างไบโอม" @@ -755,6 +980,23 @@ msgid "" "override any renaming here." msgstr "ม็อดแพ็คมีชื่อชื่อที่ถูกตั้งในไฟล์ modpack.conf ซึ่งจะแทนที่ชื่อที่เปลี่ยนตรงนี้" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "เปิดใช้งานทั้งหมด" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -779,7 +1021,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "การตั้งค่า" @@ -791,233 +1033,6 @@ msgstr "รายชื่อเซิร์ฟเวอร์สาธารณ msgid "Try reenabling public serverlist and check your internet connection." msgstr "ลองเปิดใช้งานเซิร์ฟเวอร์ลิสต์สาธารณะอีกครั้งและตรวจสอบการเชื่อมต่ออินเทอร์เน็ต" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "เรียกดู" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "แก้ไข" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "เลือกไดเรกทอรี" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "เลือกไฟล์" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "เลือก" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(ไม่มีคำอธิบายของการตั้งค่าที่ให้มา)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D นอยส์" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "ความไม่ชัดเจน" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#, fuzzy -msgid "Octaves" -msgstr "ความละเอียดของการสุ่ม" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "ค่าชดเชย" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "วิริยะ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "ขนาด" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X กระจาย" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y กระจาย" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z กระจาย" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "ค่าผันแปรการสุ่มสร้างแผนที่" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "เริ่มต้น" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "ความนุ่มนวลของพื้นผิวบนทางลาด" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "แช" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "ล้าง" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "ควบคุม" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "ปิดการใช้งานแล้ว" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "เปิดใช้งานแล้ว" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "การเคลื่อนไหวเร็ว" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "คืนค่าเริ่มต้น" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "ค้นหา" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "แสดงชื่อทางเทคนิค" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "เลือก Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Games" -msgstr "เนื้อหา" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Content: Mods" -msgstr "เนื้อหา" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "เปิดใช้งานแล้ว" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "ปิดใช้งานการอัปเดตกล้องแล้ว" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "เงาแบบไดนามิก" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "สูง" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "ต่ำ" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "ปานกลาง" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "สูงเป็นพิเศษ" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "ต่ำมาก" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "เกี่ยวกับ" @@ -1038,10 +1053,6 @@ msgstr "นักพัฒนาหลัก" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "เปิดไดเรกทอรีข้อมูลผู้ใช้" @@ -1193,10 +1204,22 @@ msgstr "เริ่มเกม" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "รีโมตพอร์ต" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "ที่อยู่" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "ไคลเอนต์" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "โหมดสร้างสรรค์" @@ -1210,6 +1233,11 @@ msgstr "ดาเมจ / ผู้เล่นผ่านเครื่อง msgid "Favorites" msgstr "รายการโปรด" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "เกม" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "เซิร์ฟเวอร์ที่เข้ากันไม่ได้" @@ -1222,10 +1250,28 @@ msgstr "เข้าร่วมเกม" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "จำนวนเธรดที่โผล่ออกมา" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "ขั้นตอนเซิร์ฟเวอร์เฉพาะ" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "เวลาตอบสนอง" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "เซิฟเวอร์สาธารณะ" @@ -1312,23 +1358,6 @@ msgstr "" "\n" "ตรวจสอบรายละเอียด debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "-โหมด: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "-ประชาชน: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- ผู้เล่นวีซ่าผู้เล่น: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "-ชื่อเซิร์ฟเวอร์: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "เกิดข้อผิดพลาดในการทำให้เป็นอันดับ:" @@ -1338,6 +1367,11 @@ msgstr "เกิดข้อผิดพลาดในการทำให้ msgid "Access denied. Reason: %s" msgstr "ปฏิเสธการเข้าใช้. เหตุผล: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "แสดงข้อมูลการดีบัก" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "ปิดใช้งานการส่งต่ออัตโนมัติ" @@ -1358,6 +1392,10 @@ msgstr "ขอบเขตบล็อกที่แสดงสำหรับ msgid "Block bounds shown for nearby blocks" msgstr "แสดงขอบเขตบล็อกสำหรับบล็อกใกล้เคียง" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "ปิดใช้งานการอัปเดตกล้องแล้ว" @@ -1371,10 +1409,6 @@ msgstr "เปิดใช้งานการอัปเดตกล้อง msgid "Can't show block bounds (disabled by game or mod)" msgstr "ไม่สามารถแสดงขอบเขตการบล็อก (ต้องการสิทธิ์ 'basic_debug')" -#: src/client/game.cpp -msgid "Change Password" -msgstr "เปลี่ยนรหัสผ่าน" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "ปิดใช้งานโหมดภาพยนตร์" @@ -1403,39 +1437,6 @@ msgstr "ข้อผิดพลาดการเชื่อมต่อ (ห msgid "Connection failed for unknown reason" msgstr "การเชื่อมต่อล้มเหลวโดยไม่ทราบสาเหตุ" -#: src/client/game.cpp -msgid "Continue" -msgstr "ต่อ" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"การควบคุมเริ่มต้น:\n" -"ไม่ปรากฏเมนู:\n" -"- แตะเพียงครั้งเดียว: เปิดใช้งานปุ่ม\n" -"- แตะสองครั้ง: สถานที่ / การใช้งาน\n" -"- นิ้วสไลด์: มองไปรอบ ๆ\n" -"เมนู / คลังโฆษณาปรากฏ:\n" -"- แตะสองครั้ง (นอก):\n" -"-> ใกล้\n" -"- สแต็กสัมผัส, สล็อตสัมผัส:\n" -"-> ย้ายสแต็ก\n" -"- แตะแล้วลากแตะนิ้วที่สอง\n" -"-> วางรายการเดียวไปยังสล็อต\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1449,31 +1450,15 @@ msgstr "สร้างไคลเอ็นต์..." msgid "Creating server..." msgstr "การสร้างเซิร์ฟเวอร์..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "ข้อมูลการดีบักและกราฟตัวสร้างโปรไฟล์ถูกซ่อน" - #: src/client/game.cpp msgid "Debug info shown" msgstr "แสดงข้อมูลการดีบัก" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "ข้อมูลการแก้ปัญหากราฟ profiler และ wireframe ซ่อนอยู่" - #: src/client/game.cpp #, fuzzy, c-format msgid "Error creating client: %s" msgstr "สร้างไคลเอ็นต์..." -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "ออกจากเมนู" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "อธิบายระบบปฏิบัติการ" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "ปิดใช้งานโหมดเร็ว" @@ -1511,18 +1496,6 @@ msgstr "หมอกเปิดใช้งาน" msgid "Fog enabled by game or mod" msgstr "ซูมถูกปิดใช้งานในปัจจุบันโดยเกมหรือตัวดัดแปลง" -#: src/client/game.cpp -msgid "Game info:" -msgstr "ข้อมูลเกม:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "เกมหยุดชั่วคราว" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "เซิร์ฟเวอร์ที่โฮสต์" - #: src/client/game.cpp msgid "Item definitions..." msgstr "ข้อกำหนดของสินค้า..." @@ -1559,14 +1532,6 @@ msgstr "เปิดใช้งานโหมด Noclip (หมายเหต msgid "Node definitions..." msgstr "กำหนดโหน..." -#: src/client/game.cpp -msgid "Off" -msgstr "ปิด" - -#: src/client/game.cpp -msgid "On" -msgstr "บน" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "ปิดใช้งานโหมดย้ายสนาม" @@ -1579,38 +1544,22 @@ msgstr "สนามย้ายเปิดใช้โหมด" msgid "Profiler graph shown" msgstr "แสดงกราฟ Profiler" -#: src/client/game.cpp -msgid "Remote server" -msgstr "เซิร์ฟเวอร์ระยะไกล" - #: src/client/game.cpp msgid "Resolving address..." msgstr "การแก้ไขที่อยู่..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "เกิดใหม่" - #: src/client/game.cpp msgid "Shutting down..." msgstr "ปิด..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "เล่นคนเดียว" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "ระดับเสียง" - #: src/client/game.cpp msgid "Sound muted" msgstr "เสียงเสียง" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "ระบบเสียงปิดอยู่" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "ไม่รองรับระบบเสียงในบิลด์นี้" @@ -1684,18 +1633,116 @@ msgstr "ช่วงการดูเปลี่ยนเป็น %d1" msgid "Volume changed to %d%%" msgstr "ปริมาตรที่เปลี่ยนไป %d1%%2" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "แสดงโครงลวด" -#: src/client/game.cpp -msgid "You died" -msgstr "คุณตายแล้ว" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "ซูมถูกปิดใช้งานในปัจจุบันโดยเกมหรือตัวดัดแปลง" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "-โหมด: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "-ประชาชน: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- ผู้เล่นวีซ่าผู้เล่น: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "-ชื่อเซิร์ฟเวอร์: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "เปลี่ยนรหัสผ่าน" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "ต่อ" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"การควบคุมเริ่มต้น:\n" +"ไม่ปรากฏเมนู:\n" +"- แตะเพียงครั้งเดียว: เปิดใช้งานปุ่ม\n" +"- แตะสองครั้ง: สถานที่ / การใช้งาน\n" +"- นิ้วสไลด์: มองไปรอบ ๆ\n" +"เมนู / คลังโฆษณาปรากฏ:\n" +"- แตะสองครั้ง (นอก):\n" +"-> ใกล้\n" +"- สแต็กสัมผัส, สล็อตสัมผัส:\n" +"-> ย้ายสแต็ก\n" +"- แตะแล้วลากแตะนิ้วที่สอง\n" +"-> วางรายการเดียวไปยังสล็อต\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "ออกจากเมนู" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "อธิบายระบบปฏิบัติการ" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "ข้อมูลเกม:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "เกมหยุดชั่วคราว" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "เซิร์ฟเวอร์ที่โฮสต์" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "ปิด" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "บน" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "เซิร์ฟเวอร์ระยะไกล" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "เกิดใหม่" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "ระดับเสียง" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "คุณตายแล้ว" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2036,8 +2083,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "ไม่สามารถเปิดหน้าเว็บ" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "ไม่รองรับระบบเสียงในบิลด์นี้" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2085,7 +2133,7 @@ msgstr "ส่งต่ออัตโนมัติ" msgid "Automatic jumping" msgstr "กระโดด อัตโนมัติ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2097,7 +2145,7 @@ msgstr "ย้อนหลัง" msgid "Block bounds" msgstr "บล็อกขอบเขต" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "เปลี่ยนกล้อง" @@ -2121,7 +2169,7 @@ msgstr "ปริมาณลดลง" msgid "Double tap \"jump\" to toggle fly" msgstr "แตะสองครั้งกระโดดสลับบิน" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "ปล่อย" @@ -2137,11 +2185,11 @@ msgstr "เพิ่มช่วง" msgid "Inc. volume" msgstr "เพิ่มระดับเสียง" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "สินค้าคงคลัง" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "กระโดด" @@ -2173,7 +2221,7 @@ msgstr "รายการถัดไป" msgid "Prev. item" msgstr "รายการก่อนหน้า" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "ช่วงเลือก" @@ -2185,7 +2233,7 @@ msgstr "สิทธิ" msgid "Screenshot" msgstr "ภาพหน้าจอ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "แอบ" @@ -2193,15 +2241,15 @@ msgstr "แอบ" msgid "Toggle HUD" msgstr "สลับ HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "บันทึกสนทนาสลับ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "สลับอย่างรวดเร็ว" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "สลับบิน" @@ -2209,11 +2257,11 @@ msgstr "สลับบิน" msgid "Toggle fog" msgstr "สลับหมอก" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "แผนที่ย่อสลับ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "สลับ noclip" @@ -2221,7 +2269,7 @@ msgstr "สลับ noclip" msgid "Toggle pitchmove" msgstr "สลับ pitchmove" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "ซูม" @@ -2258,7 +2306,7 @@ msgstr "รหัสผ่านเก่า" msgid "Passwords do not match!" msgstr "รหัสผ่านไม่ตรงกับ!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "ออก" @@ -2271,16 +2319,47 @@ msgstr "เสียง" msgid "Sound Volume: %d%%" msgstr "ระดับเสียง: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "ปุ่มกลาง" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "ทำ!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "เซิร์ฟเวอร์ระยะไกล" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "จอยสติ๊ก ID" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "สลับหมอก" @@ -2503,8 +2582,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "รองรับ 3D\n" "รองรับในปัจจุบัน:\n" @@ -2569,10 +2647,6 @@ msgstr "ช่วงบล็อกที่ใช้งานอยู่" msgid "Active object send range" msgstr "ช่วงการส่งวัตถุที่ใช้งานอยู่" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "เพิ่มอนุภาคเมื่อขุดโหนด." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "ปรับความหนาแน่นของการแสดงผลที่ตรวจพบ ซึ่งใช้สำหรับปรับขนาดองค์ประกอบ UI" @@ -2601,6 +2675,17 @@ msgstr "ผนวกชื่อรายการ" msgid "Advanced" msgstr "สูง" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "ใช้รูปลักษณ์คลาวด์ 3D แทนที่จะเป็นแนวราบ" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3004,15 +3089,14 @@ msgstr "รัศมีเมฆ" msgid "Clouds" msgstr "เมฆ" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "เมฆเป็นผลข้างเคียงของลูกค้า" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "มีเมฆในเมนู" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "หมอกสี" @@ -3036,7 +3120,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "รายการแฟล็กที่คั่นด้วยเครื่องหมายจุลภาคเพื่อซ่อนในที่เก็บเนื้อหา.\n" "สามารถใช้ \"nonfree\" เพื่อซ่อนแพ็คเกจที่ไม่เข้าข่ายเป็น 'ซอฟต์แวร์ฟรี'\n" @@ -3201,6 +3285,14 @@ msgstr "ระดับบันทึกดีบัก" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "ขั้นตอนเซิร์ฟเวอร์เฉพาะ" @@ -3364,19 +3456,11 @@ msgstr "" "ทะเลทรายเกิดขึ้นเมื่อ np_biome เกินค่านี้.\n" "เมื่อเปิดใช้งานแฟล็ก 'snowbiomes' สิ่งนี้จะถูกละเว้น." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Desynchronize บล็อกภาพเคลื่อนไหว" - #: src/settings_translation_file.cpp #, fuzzy msgid "Developer Options" msgstr "ของตกแต่ง" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "ขุดอนุภาค" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "ไม่อนุญาตรหัสผ่านที่ว่างเปล่า" @@ -3404,6 +3488,14 @@ msgstr "แตะสองครั้งที่กระโดดสำหร msgid "Double-tapping the jump key toggles fly mode." msgstr "สำเร็จกระโดดปุ่มสลับโหมดการบิน." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "ดัมพ์ข้อมูลการดีบัก mapgen." @@ -3486,9 +3578,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" ".เปิดใช้งานเงาสี\n" "บนโหนดโปร่งแสงที่แท้จริงจะทำให้เกิดเงาสี. นี้มีราคาแพง." @@ -3573,10 +3666,10 @@ msgstr "" "ตัวอย่างเช่น: 0 ที่ไม่มีการสั่น 1.0 สำหรับปกติ 2.0 สำหรับสองเท่า" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "เปิดใช้งาน / ปิดการใช้งานเซิร์ฟเวอร์ IPv6.\n" "ข้ามไปหากตั้งค่า bind_address.\n" @@ -3598,13 +3691,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "เปิดใช้งานภาพเคลื่อนไหวของรายการสินค้าคงคลัง." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "เปิดใช้งานการแคชของตาข่ายที่หมุนได้." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3937,10 +4023,6 @@ msgstr "การปรับขนาด GUI" msgid "GUI scaling filter" msgstr "ตัวกรองมาตราส่วน GUI" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "ตัวกรองการปรับขนาด GUI txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4203,15 +4285,6 @@ msgstr "" "หากเปิดใช้งาน ปุ่ม \"Aux1\" แทนปุ่ม \"แอบ\" จะใช้สำหรับการปีนลงและ\n" "จากมากไปน้อย" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"เปิดใช้งานการยืนยันการลงทะเบียนเมื่อเชื่อมต่อกับเซิร์ฟเวอร์.\n" -"หากปิดใช้งานบัญชีใหม่จะถูกลงทะเบียนโดยอัตโนมัติ." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4235,6 +4308,16 @@ msgid "" "empty password." msgstr "หากเปิดใช้งานผู้เล่นใหม่จะไม่สามารถเข้าร่วมด้วยรหัสผ่านที่ว่างเปล่าได้." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"เปิดใช้งานการยืนยันการลงทะเบียนเมื่อเชื่อมต่อกับเซิร์ฟเวอร์.\n" +"หากปิดใช้งานบัญชีใหม่จะถูกลงทะเบียนโดยอัตโนมัติ." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4350,11 +4433,6 @@ msgstr "เครื่องมือวิธีการของหน่ว msgid "Interval of saving important changes in the world, stated in seconds." msgstr "ช่วงเวลาของการบันทึกการเปลี่ยนแปลงที่สำคัญในโลก ระบุเป็นวินาที." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "ช่วงเวลาในการส่งช่วงเวลาของวันให้กับลูกค้า." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "ภาพเคลื่อนไหวรายการสินค้าคงคลัง" @@ -5067,10 +5145,6 @@ msgstr "" msgid "Maximum users" msgstr "ผู้ใช้สูงสุด" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "แคชตาข่าย" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "ข้อความประจำวัน" @@ -5104,6 +5178,10 @@ msgstr "ขีดจำกัดขั้นต่ำของการสุ่ msgid "Minimum limit of random number of small caves per mapchunk." msgstr "ขีดจำกัดขั้นต่ำของจำนวนถ้ำขนาดเล็กแบบสุ่มต่อ mapchunk." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mipmapping (แมงป่อง)" @@ -5200,9 +5278,10 @@ msgstr "" "- floatlands เสริมของ v7 (ปิดใช้งานโดยค่าเริ่มต้น)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "ชื่อผู้เล่น.\n" @@ -5711,17 +5790,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5970,16 +6051,6 @@ msgstr "" msgid "Shader path" msgstr "เส้นทาง Shader" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "เฉดสี" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "คุณภาพของภาพหน้าจอ" @@ -6162,10 +6233,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "อัปเดตแผนที่เงาโดยสมบูรณ์ตามจำนวนเฟรมที่กำหนด.\n" "ค่าที่สูงขึ้นอาจทำให้เงาล้าหลัง ค่าที่ต่ำกว่า\n" @@ -6528,10 +6598,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "เวลาของวันที่เริ่มต้นโลกใหม่ หน่วยเป็นมิลลิชั่วโมง (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "ช่วงเวลาการส่ง" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "ความเร็วของเวลา" @@ -6599,6 +6665,10 @@ msgstr "ของเหลวทึบแสง" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "เสียงต้นไม้" @@ -6647,12 +6717,16 @@ msgid "Undersampling" msgstr "สุ่มตัวอย่าง" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "การสุ่มตัวอย่างต่ำจะคล้ายกับการใช้ความละเอียดหน้าจอที่ต่ำกว่า แต่ใช้ได้\n" "ให้กับโลกของเกมเท่านั้น โดยรักษา GUI ไว้เหมือนเดิม\n" @@ -6679,17 +6753,15 @@ msgstr "ขีด จำกัด Y บนของดันเจี้ยน." msgid "Upper Y limit of floatlands." msgstr "ขีด จำกัด Y บนของทุ่นลอยน้ำ." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "ใช้รูปลักษณ์คลาวด์ 3D แทนที่จะเป็นแนวราบ" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "ใช้ภาพเคลื่อนไหวคลาวด์สำหรับพื้นหลังเมนูหลัก." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "ใช้ตัวกรอง anisotropic เมื่อดูที่พื้นผิวจากมุม" #: src/settings_translation_file.cpp @@ -6949,25 +7021,14 @@ msgstr "" "เป็นฮาร์ดแวร์ (เช่น render-to-texture สำหรับโหนดในคลังโฆษณา)" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"เมื่อ gui_scaling_filter_txr2img เป็นจริงให้คัดลอกภาพเหล่านั้น\n" -"จากฮาร์ดแวร์ซอฟต์แวร์เพื่อการปรับขนาด เมื่อเท็จถอยกลับ\n" -"กับวิธีการปรับขนาดแบบเก่าสำหรับไดรเวอร์วิดีโอที่ไม่ต้องการ\n" -"รองรับการดาวน์โหลดพื้นผิวอย่างถูกต้องจากฮาร์ดแวร์" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6988,10 +7049,6 @@ msgstr "" "ควรแสดงพื้นหลังแท็กชื่อโดยค่าเริ่มต้นหรือไม่.\n" "Mods อาจยังคงตั้งค่าพื้นหลัง." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "ระบุว่าควรสร้างการซิงโครไนซ์ภาพเคลื่อนไหวพื้นผิวของโหนดต่อแม็ปบล็อกหรือไม่" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7017,9 +7074,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "ไม่ว่าจะเป็นการพ่นหมอกออกในตอนท้ายของพื้นที่มองเห็น" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7200,6 +7257,9 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ "เว้นว่างไว้เพื่อเริ่มเซิร์ฟเวอร์ภายใน\n" #~ "โปรดทราบว่าฟิลด์ที่อยู่ในเมนูหลักจะแทนที่การตั้งค่านี้" +#~ msgid "Adds particles when digging a node." +#~ msgstr "เพิ่มอนุภาคเมื่อขุดโหนด." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7305,6 +7365,10 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Clean transparent textures" #~ msgstr "ทำความสะอาดพื้นผิวโปร่งใส" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "เมฆเป็นผลข้างเคียงของลูกค้า" + #~ msgid "Command key" #~ msgstr "คีย์คำสั่ง" @@ -7386,9 +7450,15 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Darkness sharpness" #~ msgstr "ความมืดมิด" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "ข้อมูลการดีบักและกราฟตัวสร้างโปรไฟล์ถูกซ่อน" + #~ msgid "Debug info toggle key" #~ msgstr "แก้ไขคีย์การสลับข้อมูล" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "ข้อมูลการแก้ปัญหากราฟ profiler และ wireframe ซ่อนอยู่" + #~ msgid "Dec. volume key" #~ msgstr "ลดระดับเสียงที่สำคัญ" @@ -7412,9 +7482,15 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Del. Favorite" #~ msgstr "ลบรายการโปรด" +#~ msgid "Desynchronize block animation" +#~ msgstr "Desynchronize บล็อกภาพเคลื่อนไหว" + #~ msgid "Dig key" #~ msgstr "ปุ่มขวา" +#~ msgid "Digging particles" +#~ msgstr "ขุดอนุภาค" + #~ msgid "Disable anticheat" #~ msgstr "ปิดใช้งาน anticheat" @@ -7440,6 +7516,10 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Dynamic shadows:" #~ msgstr "เงาแบบไดนามิก: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "เปิดใช้งานแล้ว" + #~ msgid "Enable VBO" #~ msgstr "ทำให้สามารถ VBO" @@ -7473,6 +7553,12 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ "หรือจำเป็นต้องสร้างขึ้นอัตโนมัติ\n" #~ "ต้องมี shaders เพื่อเปิดใช้งาน" +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "เปิดใช้งานการแคชของตาข่ายที่หมุนได้." + #~ msgid "Enables filmic tone mapping" #~ msgstr "เปิดใช้งานการจับคู่โทนภาพยนตร์" @@ -7515,9 +7601,6 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ "ตัวเลือกการทดลองอาจทำให้เกิดช่องว่างระหว่างบล็อก\n" #~ "เมื่อตั้งค่าเป็นจำนวนที่สูงกว่า 0" -#~ msgid "FPS in pause menu" -#~ msgstr "FPS ในเมนูหยุดชั่วคราว" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7591,8 +7674,8 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Full screen BPP" #~ msgstr "BPP เต็มหน้าจอ" -#~ msgid "Game" -#~ msgstr "เกม" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "ตัวกรองการปรับขนาด GUI txr2img" #~ msgid "Gamma" #~ msgstr "แกมมา" @@ -7746,6 +7829,10 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Instrumentation" #~ msgstr "เครื่องมือวัด" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "ช่วงเวลาในการส่งช่วงเวลาของวันให้กับลูกค้า." + #~ msgid "Invalid gamespec." #~ msgstr "ข้อมูลจำเพาะเกี่ยวกับเกม ไม่ถูกต้อง." @@ -7757,647 +7844,647 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับลดช่วงการรับชม.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับลดระดับเสียง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำหรับการกระโดด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการวางรายการที่เลือกในปัจจุบัน.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเพิ่มช่วงการรับชม.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มกดสำหรับเพิ่มระดับเสียง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำหรับการกระโดด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มกดสำหรับการเคลื่อนที่อย่างรวดเร็วในโหมดเร็ว.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มกดสำหรับเลื่อนเครื่องเล่นถอยหลัง.\n" #~ "จะปิดใช้งานการป้อนอัตโนมัติอัตโนมัติเมื่อเปิดใช้งาน.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญสำหรับการย้ายผู้เล่นไปข้างหน้า.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับย้ายผู้เล่นไปทางซ้าย.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มกดสำหรับเลื่อนเครื่องเล่นไปทางขวา.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำหรับการปิดเสียงเกม.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเปิดหน้าต่างแชทเพื่อพิมพ์คำสั่ง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเปิดหน้าต่างแชทเพื่อพิมพ์คำสั่งในเครื่อง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "รหัสสำหรับเปิดหน้าต่างแชท.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการเปิดสินค้าคงคลัง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำหรับการกระโดด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 11.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 12.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 13.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 14.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 15.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 16.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 17.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 18.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 19.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 20.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 21.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 22.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 23.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 24.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 25.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 26.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 27.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 28.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 29.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 30.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 31.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ 32.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่แปด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่ห้า.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar แรก.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่สี่.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "แป้นสำหรับเลือกรายการถัดไปในแถบร้อน.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่เก้า.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "แป้นสำหรับเลือกรายการก่อนหน้าในแถบร้อน.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่สอง.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "คีย์สำหรับการเลือกสล็อต hotbar ที่เจ็ด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่หก.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกช่องเสียบที่สิบ.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับเลือกสล็อต hotbar ที่สาม.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ที่สำคัญสำหรับการด้อม.\n" #~ "นอกจากนี้ยังใช้สำหรับการปีนลงและลงไปในน้ำหากปิดการใช้งาน aux1_descends.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับระหว่างกล้องตัวแรกและตัวที่สาม.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญสำหรับการจับภาพหน้าจอ.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับ autoforward.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับโหมดโรงภาพยนตร์.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับการแสดงผลของแผนที่ย่อ.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับโหมดอย่างรวดเร็ว.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับการบิน.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "คีย์สำหรับสลับโหมด noclip.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับโหมด pitch.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับการอัปเดตกล้อง ใช้สำหรับการพัฒนาเท่านั้น\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับการแสดงผลของการแชท.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "คีย์สำหรับสลับการแสดงข้อมูลการดีบัก.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับการแสดงผลของหมอก.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับการแสดงผลของ HUD.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับการแสดงผลของแชทคอนโซลขนาดใหญ่.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "ปุ่มสำหรับสลับการแสดงผลของตัวสร้างโปรไฟล์ ใช้สำหรับการพัฒนา.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการสลับช่วงมุมมองไม่ จำกัด.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "กุญแจสำคัญในการใช้มุมมองซูมเมื่อเป็นไปได้.\n" -#~ "ดู http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "ดู http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8446,6 +8533,9 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Menus" #~ msgstr "เมนู" +#~ msgid "Mesh cache" +#~ msgstr "แคชตาข่าย" + #~ msgid "Minimap" #~ msgstr "แผนที่ขนาดเล็ก" @@ -8642,6 +8732,9 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Server / Singleplayer" #~ msgstr "เซิร์ฟเวอร์ / ผู้เล่นเดี่ยว" +#~ msgid "Shaders" +#~ msgstr "เฉดสี" + #~ msgid "Shaders (experimental)" #~ msgstr "เฉดสี (ไม่พร้อมใช้งาน)" @@ -8658,6 +8751,10 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ "บัตร\n" #~ "ใช้งานได้กับแบ็กเอนด์วิดีโอ OpenGL เท่านั้น" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "ปิดใช้งานการอัปเดตกล้องแล้ว" + #, fuzzy #~ msgid "" #~ "Shadow offset (in pixels) of the fallback font. If 0, then shadow will " @@ -8685,6 +8782,9 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "มากการหมุนของกล้อง 0 เพื่อปิดใช้งาน" +#~ msgid "Sound system is disabled" +#~ msgstr "ระบบเสียงปิดอยู่" + #~ msgid "Special" #~ msgstr "พิเศษ" @@ -8727,6 +8827,9 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "This font will be used for certain languages." #~ msgstr "แบบอักษรนี้จะใช้สำหรับบางภาษา" +#~ msgid "Time send interval" +#~ msgstr "ช่วงเวลาการส่ง" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "การเปิดใช้งานต้องมีโปรแกรมควบคุม OpenGL ของ shaders ใช้." @@ -8817,6 +8920,17 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ msgid "Waving water" #~ msgstr "โบกน้ำ" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "เมื่อ gui_scaling_filter_txr2img เป็นจริงให้คัดลอกภาพเหล่านั้น\n" +#~ "จากฮาร์ดแวร์ซอฟต์แวร์เพื่อการปรับขนาด เมื่อเท็จถอยกลับ\n" +#~ "กับวิธีการปรับขนาดแบบเก่าสำหรับไดรเวอร์วิดีโอที่ไม่ต้องการ\n" +#~ "รองรับการดาวน์โหลดพื้นผิวอย่างถูกต้องจากฮาร์ดแวร์" + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -8825,6 +8939,10 @@ msgstr "cURL ขีด จำกัด ขนาน" #~ "ไม่ว่าจะใช้ฟอนต์ FreeType ต้องมีการสนับสนุน FreeType เพื่อรวบรวม\n" #~ "หากปิดใช้งาน ฟอนต์บิตแมปและเอ็กซ์เอ็มแอลเวกเตอร์จะใช้แทน" +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "ระบุว่าควรสร้างการซิงโครไนซ์ภาพเคลื่อนไหวพื้นผิวของโหนดต่อแม็ปบล็อกหรือไม่" + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "ไม่ว่าจะอนุญาตให้ผู้เล่นสร้างความเสียหายและสังหารกัน." diff --git a/po/tok/luanti.po b/po/tok/luanti.po index 7a099ce78..b23223e4e 100644 --- a/po/tok/luanti.po +++ b/po/tok/luanti.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2024-08-12 16:09+0000\n" "Last-Translator: rubenwardy \n" "Language-Team: Toki Pona ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -166,7 +404,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -202,11 +439,6 @@ msgstr "" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "" @@ -251,18 +483,6 @@ msgstr "" msgid "Base Game:" msgstr "musi lawa:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -384,6 +604,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -446,12 +672,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "ma:" @@ -602,11 +822,6 @@ msgstr "" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -742,6 +957,22 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Expand all" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -766,7 +997,7 @@ msgstr "" msgid "Visit website" msgstr "" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "" @@ -778,223 +1009,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "" @@ -1015,10 +1029,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1163,10 +1173,20 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Clients:\n" +"$1" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1180,6 +1200,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "musi" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1192,10 +1217,26 @@ msgstr "" msgid "Login" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1278,23 +1319,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "" @@ -1304,6 +1328,10 @@ msgstr "" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1324,6 +1352,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1336,10 +1368,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1368,26 +1396,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1401,31 +1409,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1462,18 +1454,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1510,14 +1490,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1530,38 +1502,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "o kama sin" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1633,18 +1589,103 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "sina moli" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "o kama sin" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "sina moli" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1971,7 +2012,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2019,7 +2060,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "" @@ -2031,7 +2072,7 @@ msgstr "" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2055,7 +2096,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2071,11 +2112,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2107,7 +2148,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2119,7 +2160,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2127,15 +2168,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2143,11 +2184,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2155,7 +2196,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2191,7 +2232,7 @@ msgstr "" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "" @@ -2204,15 +2245,43 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Done" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2408,8 +2477,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2462,10 +2530,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2488,6 +2552,16 @@ msgstr "" msgid "Advanced" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2855,11 +2929,11 @@ msgid "Clouds" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2884,7 +2958,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3019,6 +3093,14 @@ msgstr "" msgid "Debugging" msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3170,18 +3252,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3209,6 +3283,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3282,8 +3364,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3356,8 +3438,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3372,12 +3453,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3679,10 +3754,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3906,12 +3977,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3930,6 +3995,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4024,10 +4096,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4642,10 +4710,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4678,6 +4742,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4767,7 +4835,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5206,17 +5274,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5409,16 +5479,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5579,10 +5639,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5861,10 +5920,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5923,6 +5978,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -5973,7 +6032,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -5996,16 +6058,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6242,20 +6302,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6266,10 +6318,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6292,8 +6340,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" diff --git a/po/tr/luanti.po b/po/tr/luanti.po index 875b68c24..5f168c3bf 100644 --- a/po/tr/luanti.po +++ b/po/tr/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Turkish (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-03-24 17:01+0000\n" -"Last-Translator: Oğuz Ersen \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-07 17:01+0000\n" +"Last-Translator: Siber \n" "Language-Team: Turkish \n" "Language: tr\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.5-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -71,14 +71,259 @@ msgstr "Komutlar için yardım alın" msgid "" "Use '.help ' to get more information, or '.help all' to list everything." msgstr "" -"Daha fazla bilgi almak için '.help ' veya her şeyi listelemek için '." -"help all' kullanın." +"Daha fazla bilgi almak için '.help ' veya her şeyi listelemek için " +"'.help all' kullanın." #: builtin/common/chatcommands.lua #, fuzzy msgid "[all | ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Gözat" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Düzenle" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Dizin seç" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Dosya seç" + +#: builtin/common/settings/components.lua +#, fuzzy +msgid "Set" +msgstr "Seç" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Ayarın verilen açıklaması yok)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D Gürültü" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "İptal" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Aralılık" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Oktavlar" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Kaydırma" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Süreklilik" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Kaydet" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Boyut" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Tohum" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X yayılması" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y yayılması" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z yayılması" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "mutlak değer" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "öntanımlılar" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "rahat" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Sistem dilini kullan)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Erişilebilirlik" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Sohbet" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Temizle" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Kontroller" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Devre dışı" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Etkin" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Genel" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Hareket" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Sonuç yok" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Ayarı öntanımlıya sıfırla" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Ayarı öntanımlı değere sıfırla ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Ara" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Gelişmiş ayarları göster" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Teknik adları göster" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Dokunmatik ekran" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "Duraklat menüsünde FPS" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "İstemci Modları" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "İçerik: Oyunlar" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "İçerik: Modlar" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Özel" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Dinamik gölgeler" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Yüksek" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Düşük" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Orta" + +#: builtin/common/settings/shadows_component.lua +#, fuzzy +msgid "Very High" +msgstr "Çok Yüksek" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Çok Düşük" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -160,11 +405,10 @@ msgstr "$1 indiriliyor..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "Hepsi" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Geri" @@ -179,7 +423,7 @@ msgstr "İndiriliyor..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Özellikler" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -201,11 +445,6 @@ msgstr "Modlar" msgid "No packages could be retrieved" msgstr "Paket alınamadı" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Sonuç yok" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Güncelleme yok" @@ -251,18 +490,6 @@ msgstr "Zaten kuruldu" msgid "Base Game:" msgstr "Yerel oyun:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "İptal" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -270,7 +497,7 @@ msgstr "Gereklilikler:" #: builtin/mainmenu/content/dlg_install.lua msgid "Error getting dependencies for package $1" -msgstr "" +msgstr "$1 paketin bağımlılığını alırken hata oluştu" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -316,16 +543,15 @@ msgstr "Sunucu Açıklaması" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "Bağış Yap" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "Forum Başlığı" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "Bilgi:" +msgstr "Bilgilendirme" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -334,15 +560,15 @@ msgstr "$1 kur" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Sorun Gözlemcisi" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Kaynak" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Çevir" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -390,6 +616,12 @@ msgstr "$1, bir $2 olarak kurulamadı" msgid "Unable to install a $1 as a texture pack" msgstr "$1 bir doku paketi olarak kurulamadı" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Etkinleştirildi, hata var)" @@ -454,12 +686,6 @@ msgstr "İsteğe bağlı bağımlılık yok" msgid "Optional dependencies:" msgstr "İsteğe bağlı bağımlılıklar:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Kaydet" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Dünya:" @@ -610,11 +836,6 @@ msgstr "Nehirler" msgid "Sea level rivers" msgstr "Deniz seviyesi nehirleri" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Tohum" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Biyomlar arası yumuşak geçiş" @@ -757,8 +978,25 @@ msgid "" "This modpack has an explicit name given in its modpack.conf which will " "override any renaming here." msgstr "" -"Bu mod paketinin buradaki yeniden adlandırmayı geçersiz kılacak, modpack." -"conf dosyasında verilen açık bir adı var." +"Bu mod paketinin buradaki yeniden adlandırmayı geçersiz kılacak, " +"modpack.conf dosyasında verilen açık bir adı var." + +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Hepsini etkinleştir" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" @@ -788,7 +1026,7 @@ msgstr "asla" msgid "Visit website" msgstr "siteyi ziyaret et" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Ayarlar" @@ -802,230 +1040,6 @@ msgstr "" "Herkese açık sunucu listesini tekrar etkinleştirmeyi deneyin ve internet " "bağlantınızı gözden geçirin." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Gözat" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Düzenle" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Dizin seç" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Dosya seç" - -#: builtin/mainmenu/settings/components.lua -#, fuzzy -msgid "Set" -msgstr "Seç" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Ayarın verilen açıklaması yok)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D Gürültü" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Aralılık" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Oktavlar" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Kaydırma" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Süreklilik" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Boyut" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X yayılması" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y yayılması" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z yayılması" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "mutlak değer" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "öntanımlılar" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "rahat" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Sistem dilini kullan)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Erişilebilirlik" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Sohbet" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Temizle" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Kontroller" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Devre dışı" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Etkin" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Genel" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Hareket" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Ayarı öntanımlıya sıfırla" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Ayarı öntanımlı değere sıfırla ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Ara" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Gelişmiş ayarları göster" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Teknik adları göster" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "İstemci Modları" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "İçerik: Oyunlar" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "İçerik: Modlar" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Etkin" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Kamera güncelleme devre dışı" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(Oyunun gölgeleri de etkinleştirmesi gerekecektir)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Özel" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Dinamik gölgeler" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Yüksek" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Düşük" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Orta" - -#: builtin/mainmenu/settings/shadows_component.lua -#, fuzzy -msgid "Very High" -msgstr "Çok Yüksek" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Çok Düşük" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Hakkında" @@ -1046,10 +1060,6 @@ msgstr "Çekirdek Geliştiriciler" msgid "Core Team" msgstr "Çekirdek Takım" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht aygıtı:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Kullanıcı Veri Dizinini Aç" @@ -1198,10 +1208,22 @@ msgstr "Oyun Başlat" msgid "You need to install a game before you can create a world." msgstr "Bir mod kurabilmeniz için önce bir oyun kurmanız gerekir" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Uzak port" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Adres" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "İstemci" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Yaratıcı kip" @@ -1215,6 +1237,11 @@ msgstr "Hasar / Savaş (PvP)" msgid "Favorites" msgstr "Sık Kullanılanlar" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Oyun" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Uyumsuz Sunucular" @@ -1227,10 +1254,28 @@ msgstr "Oyuna Katıl" msgid "Login" msgstr "Giriş" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Emerge iş sayısı" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Adanmış sunucu adımı" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Herkese Açık Sunucular" @@ -1316,23 +1361,6 @@ msgstr "" "\n" "Hata ayrıntıları için debug.txt dosyasına bakın." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Kip: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Herkese Açık: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- Savaş (PvP): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Sunucu Adı: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Serileştirme hatası oluştu:" @@ -1342,6 +1370,11 @@ msgstr "Serileştirme hatası oluştu:" msgid "Access denied. Reason: %s" msgstr "Erişim reddedildi. Neden: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Hata ayıklama bilgisi gösteriliyor" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Kendiliğinden ileri devre dışı" @@ -1362,6 +1395,10 @@ msgstr "Blok sınırları geçerli blok için gösteriliyor" msgid "Block bounds shown for nearby blocks" msgstr "Blok sınırları yakındaki bloklar için gösteriliyor" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Kamera güncelleme devre dışı" @@ -1375,10 +1412,6 @@ msgstr "Kamera güncelleme etkin" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Blok sınırları gösterilemiyor ('basic_debug' ayrıcalığına ihtiyaç var)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Parola Değiştir" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Sinematik kip devre dışı" @@ -1407,39 +1440,6 @@ msgstr "Bağlantı hatası (zaman aşımı?)" msgid "Connection failed for unknown reason" msgstr "Bilinmeyen bir nedenle bağlantı başarısız oldu" -#: src/client/game.cpp -msgid "Continue" -msgstr "Devam et" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Öntanımlı Kontroller:\n" -"Tüm menüler gizli:\n" -"- tek tık: tuş etkin\n" -"- çift tık: yerleştir/kullan\n" -"- parmağı kaydır: etrafa bak\n" -"Menü/Envanter görünür:\n" -"- çift tık (dışarda):\n" -" -->kapat\n" -"- yığına dokun, bölmeye dokun:\n" -" --> yığını taşı\n" -"- dokun&sürükle, iki parmakla dokun\n" -" --> bölmeye tek bir öge yerleştir\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1453,31 +1453,15 @@ msgstr "İstemci yaratılıyor..." msgid "Creating server..." msgstr "Sunucu yaratılıyor..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Hata ayıklama bilgisi ve profilci grafiği gizli" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Hata ayıklama bilgisi gösteriliyor" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Hata ayıklama bilgisi, profilci grafiği ve tel kafes gizli" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "İstemci oluşturulurken hata: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Menüye Çık" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Oyundan Çık" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Hızlı kip devre dışı" @@ -1515,18 +1499,6 @@ msgstr "Sis etkin" msgid "Fog enabled by game or mod" msgstr "Yakınlaştırma şu anda oyun veya mod tarafından devre dışı" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Oyun Bilgisi:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Oyun duraklatıldı" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Sunucu barındırılıyor" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Öge tanımları..." @@ -1563,14 +1535,6 @@ msgstr "Hayalet kipi etkin (not: 'hayalet' yetkisi yok)" msgid "Node definitions..." msgstr "Nod tanımları..." -#: src/client/game.cpp -msgid "Off" -msgstr "Kapalı" - -#: src/client/game.cpp -msgid "On" -msgstr "Açık" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Eğim hareket kipi devre dışı" @@ -1583,38 +1547,22 @@ msgstr "Eğim hareket kipi etkin" msgid "Profiler graph shown" msgstr "Profilci grafiği gösteriliyor" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Uzak sunucu" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Adres çözümleniyor..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Yeniden Canlan" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Kapatılıyor..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Tek oyunculu" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Ses Seviyesi" - #: src/client/game.cpp msgid "Sound muted" msgstr "Ses kısık" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Ses sistemi devre dışı" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Bu inşada ses sistemi desteklenmiyor" @@ -1692,18 +1640,116 @@ msgstr "Görüntüleme uzaklığı değişti: %d" msgid "Volume changed to %d%%" msgstr "Ses %d/100'e değişti" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Telkafes gösteriliyor" -#: src/client/game.cpp -msgid "You died" -msgstr "Öldün" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Yakınlaştırma şu anda oyun veya mod tarafından devre dışı" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Kip: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Herkese Açık: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- Savaş (PvP): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Sunucu Adı: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Parola Değiştir" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Devam et" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Öntanımlı Kontroller:\n" +"Tüm menüler gizli:\n" +"- tek tık: tuş etkin\n" +"- çift tık: yerleştir/kullan\n" +"- parmağı kaydır: etrafa bak\n" +"Menü/Envanter görünür:\n" +"- çift tık (dışarda):\n" +" -->kapat\n" +"- yığına dokun, bölmeye dokun:\n" +" --> yığını taşı\n" +"- dokun&sürükle, iki parmakla dokun\n" +" --> bölmeye tek bir öge yerleştir\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Menüye Çık" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Oyundan Çık" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Oyun Bilgisi:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Oyun duraklatıldı" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Sunucu barındırılıyor" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Kapalı" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Açık" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Uzak sunucu" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Yeniden Canlan" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Ses Seviyesi" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Öldün" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Sohbet şu anda oyun veya mod tarafından devre dışı" @@ -2033,8 +2079,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Web sayfası açılamadı" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Bu inşada ses sistemi desteklenmiyor" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2085,7 +2132,7 @@ msgstr "Kendiliğinden-ileri" msgid "Automatic jumping" msgstr "Kendiliğinden zıplama" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2097,7 +2144,7 @@ msgstr "Geri" msgid "Block bounds" msgstr "Blok sınırları" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Kamera değiştir" @@ -2121,7 +2168,7 @@ msgstr "Sesi alçalt" msgid "Double tap \"jump\" to toggle fly" msgstr "\"zıpla\" ya çift dokunarak uçmayı aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "At" @@ -2137,11 +2184,11 @@ msgstr "Uzaklığı Azalt" msgid "Inc. volume" msgstr "Sesi yükselt" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Envanter" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Zıpla" @@ -2173,7 +2220,7 @@ msgstr "Sonraki öge" msgid "Prev. item" msgstr "Önceki öge" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Uzaklık seçimi" @@ -2185,7 +2232,7 @@ msgstr "Sağ" msgid "Screenshot" msgstr "Ekran yakala" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Sız" @@ -2193,15 +2240,15 @@ msgstr "Sız" msgid "Toggle HUD" msgstr "HUD'ı aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Sohbet günlüğünü aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Hızlıyı aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Uçmayı aç/kapa" @@ -2209,11 +2256,11 @@ msgstr "Uçmayı aç/kapa" msgid "Toggle fog" msgstr "Sisi aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Mini haritayı aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Hayalet aç/kapa" @@ -2221,7 +2268,7 @@ msgstr "Hayalet aç/kapa" msgid "Toggle pitchmove" msgstr "Eğim hareketi aç/kapa" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Yakınlaştır" @@ -2258,7 +2305,7 @@ msgstr "Eski Parola" msgid "Passwords do not match!" msgstr "Parolalar eşleşmiyor!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Çıkış" @@ -2271,16 +2318,47 @@ msgstr "Ses Kısık" msgid "Sound Volume: %d%%" msgstr "Ses Seviyesi: %%%d" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Orta Tuş" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Tamam!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Uzak sunucu" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "Joystick ID" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Sisi aç/kapa" @@ -2505,8 +2583,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D desteği.\n" "Şu an desteklenen:\n" @@ -2571,10 +2648,6 @@ msgstr "Etkin blok uzaklığı" msgid "Active object send range" msgstr "Etkin nesne gönderme uzaklığı" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Nodları kazarken parçacıklar ekler." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2604,6 +2677,17 @@ msgstr "Yönetici adı" msgid "Advanced" msgstr "Gelişmiş" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Düz yerine 3D bulut görünümünü kullanın." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -3006,15 +3090,14 @@ msgstr "Bulut yarıçapı" msgid "Clouds" msgstr "Bulutlar" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Bulutlar istemci tarafı bir efekttir." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Ana menüde bulutlar" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Renkli sis" @@ -3038,7 +3121,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "İçerik deposunda gizlemek için bayrakların virgülle ayrılmış listesi.\n" "\"nonfree\" Özgür Yazılım Vakfının tanımına göre 'özgür yazılım' olarak\n" @@ -3208,6 +3291,14 @@ msgstr "Hata ayıklama günlük düzeyi" msgid "Debugging" msgstr "Hata ayıklama" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Adanmış sunucu adımı" @@ -3383,18 +3474,10 @@ msgstr "" "Çöller, np_biome bu değeri aştığında gerçekleşir.\n" "'Snowbiomes' bayrağı etkinleştirildiğinde, bu yok sayılır." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Blok animasyonlarını eşzamansız yap" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Geliştirici Seçenekleri" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Kazı parçacıkları" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Boş parolalara izin verme" @@ -3422,6 +3505,14 @@ msgstr "Uçma için zıplamaya çift dokun" msgid "Double-tapping the jump key toggles fly mode." msgstr "Zıplama tuşuna çift dokunmak uçma kipini açar/kapar." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Mapgen hata ayıklama bilgisini dökümle." @@ -3505,9 +3596,10 @@ msgid "" msgstr "" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Renkli gölgeleri etkinleştir.\n" "Doğru ise yarı saydam düğümlerde renkli gölgeler oluşturur. Bu fazla kaynak " @@ -3593,10 +3685,10 @@ msgstr "" "Örneğin: 0 ise görüntü sallanması yok; 1.0 ise normal; 2.0 ise çift." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "IPv6 sunucu çalıştırmayı etkin/devre dışı kılar.\n" "Eğer bind_address ayarlı ise yok sayılır.\n" @@ -3619,13 +3711,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Envanter ögelerinin animasyonunu etkinleştirir." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Yüz yönü döndürülmüş kafeslerin önbelleklenmesini etkinleştirir." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3960,10 +4045,6 @@ msgstr "Arayüz boyutlandırma" msgid "GUI scaling filter" msgstr "Arayüz boyutlandırma filtresi" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Arayüz boyutlandırma filtresi txr2img" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4231,15 +4312,6 @@ msgstr "" "alçalma\n" "için kullanılır." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Sunucuya bağlanırken kayıt onayını etkinleştir.\n" -"Devre dışı bırakılırsa, yeni hesap kendiliğinden kaydedilir." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4263,6 +4335,16 @@ msgid "" "empty password." msgstr "Etkinleştirilirse, yeni oyuncular boş bir parola ile katılamaz." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Sunucuya bağlanırken kayıt onayını etkinleştir.\n" +"Devre dışı bırakılırsa, yeni hesap kendiliğinden kaydedilir." + #: src/settings_translation_file.cpp #, fuzzy msgid "" @@ -4385,11 +4467,6 @@ msgstr "Kayıt sırasında varlık yöntemlerini belgele." msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Dünyadaki önemli değişiklikleri kaydetme aralığı, saniye cinsinden." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Günün saatini istemcilere gönderme aralığı." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Envanter ögeleri animasyonu" @@ -5106,10 +5183,6 @@ msgstr "" msgid "Maximum users" msgstr "Maksimum kullanıcı" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Kafes önbelleği" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Günün iletisi" @@ -5143,6 +5216,10 @@ msgstr "Her harita yığını için rastgele büyük mağara sayısının alt s msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Her harita yığını için rastgele küçük mağara sayısının alt sınırı." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip eşleme" @@ -5239,9 +5316,10 @@ msgstr "" "- v7'nin isteğe bağlı yüzenkaraları (öntanımlı olarak devre dışı)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Oyuncunun adı.\n" @@ -5766,17 +5844,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -6027,16 +6107,6 @@ msgstr "" msgid "Shader path" msgstr "Gölgeleme konumu" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Gölgelemeler" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Gölge filtresi kalitesi" @@ -6222,10 +6292,9 @@ msgstr "" #: src/settings_translation_file.cpp #, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Yumuşak gölge yarıçapı boyutunu ayarla.\n" "Daha düşük değerler daha keskin, daha büyük değerler daha yumuşak gölgeler " @@ -6605,10 +6674,6 @@ msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" "Yeni bir Dünya başlatıldığında, milisaat cinsinden (0-23999), günün saati." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Zaman gönderme aralığı" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Zaman hızı" @@ -6677,6 +6742,10 @@ msgstr "Opak sıvılar" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Ağaçlar gürültüsü" @@ -6726,12 +6795,16 @@ msgid "Undersampling" msgstr "Aşağı örnekleme" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Alt örnekleme, daha düşük bir ekran çözünürlüğü kullanmaya benzer, ancak\n" "GUI'yi koruyarak, yalnızca oyun dünyasına uygulanır.\n" @@ -6759,17 +6832,15 @@ msgstr "Zindanların üst Y sınırı." msgid "Upper Y limit of floatlands." msgstr "Yüzenkaraların üst Y sınırı." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Düz yerine 3D bulut görünümünü kullanın." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Ana menü arka planı için bir bulut animasyonu kullan." #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "Dokulara bir açıdan bakarken anisotropik filtreleme kullan." #: src/settings_translation_file.cpp @@ -7032,27 +7103,15 @@ msgstr "" "yazılım ile filtrelenmesi gerekir, ama bazı görüntüler doğrudan\n" "donanımda üretilir (ör: envanterdeki nodlar için dokuya-işleme)." -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"gui_scaling_filter_txr2img true (doğru) olduğunda, görüntüleri\n" -"boyutlandırmak için donanımdan yazılıma kopyala. False (yanlış) ise,\n" -"dokuları donanımdan geri indirmeyi düzgün desteklemeyen video\n" -"sürücüleri için, eski boyutlandırma yöntemini kullan." - #: src/settings_translation_file.cpp #, fuzzy msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7077,12 +7136,6 @@ msgstr "" "Ad etiketi arka planlarının öntanımlı olarak gösterilip gösterilmeyileceği.\n" "Modlar yine de bir arka plan ayarlayabilir." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Harita bloğu başına nod doku animasyonlarının eşzamansız yapılıp " -"yapılmayacağı." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7111,9 +7164,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Görünebilir alanın sonunun sislendirilip sislendirilmeyeceği." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7298,6 +7351,9 @@ msgstr "cURL paralel sınırı" #~ "Yerel bir sunucu başlatmak için bunu boş bırakın.\n" #~ "Ana menüdeki adres alanının bu ayarı geçersiz kılacağını unutmayın." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Nodları kazarken parçacıklar ekler." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7424,6 +7480,10 @@ msgstr "cURL paralel sınırı" #~ msgid "Clean transparent textures" #~ msgstr "Saydam dokuları temizle" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Bulutlar istemci tarafı bir efekttir." + #~ msgid "Command key" #~ msgstr "Komut tuşu" @@ -7517,9 +7577,15 @@ msgstr "cURL paralel sınırı" #~ msgid "Darkness sharpness" #~ msgstr "Karanlık keskinliği" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Hata ayıklama bilgisi ve profilci grafiği gizli" + #~ msgid "Debug info toggle key" #~ msgstr "Hata ayıklama bilgisi açma/kapama tuşu" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Hata ayıklama bilgisi, profilci grafiği ve tel kafes gizli" + #~ msgid "Dec. volume key" #~ msgstr "Ses alçaltma tuşu" @@ -7566,9 +7632,15 @@ msgstr "cURL paralel sınırı" #~ "sıvılarını tanımlayın ve bulun.\n" #~ "Büyük mağaralarda lav üst sınırının Y'si." +#~ msgid "Desynchronize block animation" +#~ msgstr "Blok animasyonlarını eşzamansız yap" + #~ msgid "Dig key" #~ msgstr "Kazma tuşu" +#~ msgid "Digging particles" +#~ msgstr "Kazı parçacıkları" + #~ msgid "Disable anticheat" #~ msgstr "Hile önleme devre dışı" @@ -7594,6 +7666,10 @@ msgstr "cURL paralel sınırı" #~ msgid "Dynamic shadows:" #~ msgstr "Dinamik gölgeler: " +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Etkin" + #~ msgid "Enable VBO" #~ msgstr "VBO'yu etkinleştir" @@ -7628,6 +7704,12 @@ msgstr "cURL paralel sınırı" #~ "veya kendiliğinden üretilmesi gerekir\n" #~ "Gölgelemelerin etkin olmasını gerektirir." +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "Yüz yönü döndürülmüş kafeslerin önbelleklenmesini etkinleştirir." + #~ msgid "Enables filmic tone mapping" #~ msgstr "Filmsel ton eşlemeyi etkinleştirir" @@ -7670,9 +7752,6 @@ msgstr "cURL paralel sınırı" #~ "Deneysel seçenek, 0'dan daha büyük bir sayıya ayarlandığında\n" #~ "bloklar arasında görünür boşluklara neden olabilir." -#~ msgid "FPS in pause menu" -#~ msgstr "Duraklat menüsünde FPS" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7759,8 +7838,8 @@ msgstr "cURL paralel sınırı" #~ msgid "Full screen BPP" #~ msgstr "Tam ekran BPP" -#~ msgid "Game" -#~ msgstr "Oyun" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Arayüz boyutlandırma filtresi txr2img" #~ msgid "Gamma" #~ msgstr "Gama" @@ -7923,659 +8002,666 @@ msgstr "cURL paralel sınırı" #~ msgid "Instrumentation" #~ msgstr "Belgeleme" +#, fuzzy +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Günün saatini istemcilere gönderme aralığı." + #~ msgid "Invalid gamespec." #~ msgstr "Geçersiz oyun özellikleri." #~ msgid "Inventory key" #~ msgstr "Envanter tuşu" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht aygıtı:" + #~ msgid "Jump key" #~ msgstr "Zıplama tuşu" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Görüntüleme uzaklığını azaltma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ses alçaltma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kazma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "O anki seçili ögeyi atma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Görüntüleme uzaklığını artırma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ses yükseltme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Zıplama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hızlı kipte hızlı hareket tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Oyuncuyu geriye hareket ettirme tuşu.\n" #~ "Etkinken, kendiliğinden ileriyi de devre dışı kılar\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Oyuncuyu ileri hareket ettirme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Oyuncuyu sola hareket ettirme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Oyuncuyu sağa hareket ettirme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ses kısma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Komut yazmak için sohbet penceresini açma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Yerel komutlar yazmak için sohbet penceresini açma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sohbet penceresini açma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Envanteri açma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Yerleştirme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "11. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "12. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "13. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "14. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "15. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "16. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "17. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "18. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "19. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "20. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "21. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "22. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "23. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "24. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "25. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "26. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "27. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "28. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "29. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "30. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "31. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "32. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "8. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "5. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "1. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "4. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hotbar'da sonraki ögeyi seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "9. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hotbar'da önceki ögeyi seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "2. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "7. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "6. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "10. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "3. hotbar bölmesini seçme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sızma tuşu.\n" #~ "Aynı zamanda aşağı inmek ve, aux1_descends kapalı ise, suda alçalmak için " #~ "kullanılır.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Birinci ve üçüncü kişi kamerası arası geçiş tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Ekran yakalama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kendiliğinden ileriyi açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sinematik kipi açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Mini harita gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hızlı kipi açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Uçma açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hayalet kipi açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Eğim hareket kipi açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Kamera güncelleme açma/kapama tuşu. Yalnızca geliştirme için kullanılır.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sohbet gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Hata ayıklama bilgisi gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sis gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "HUD gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Büyük sohbet konsolunu gösterme/gizleme tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Profilciyi gösterme/gizleme tuşu. Geliştirme için kullanılır.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Sınırsız görüş uzaklığı açma/kapama tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Mümkün olduğunda görünüm yakınlaştırmayı kullanma tuşu.\n" -#~ "Bakın: http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Bakın: http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8640,6 +8726,9 @@ msgstr "cURL paralel sınırı" #~ msgid "Menus" #~ msgstr "Menüler" +#~ msgid "Mesh cache" +#~ msgstr "Kafes önbelleği" + #~ msgid "Minimap" #~ msgstr "Mini harita" @@ -8854,6 +8943,9 @@ msgstr "cURL paralel sınırı" #~ "anlamına gelir, ancak daha fazla kaynak tüketir.\n" #~ "En düşük değer 0,001 saniye, en yüksek değer 0,2 saniyedir" +#~ msgid "Shaders" +#~ msgstr "Gölgelemeler" + #~ msgid "Shaders (experimental)" #~ msgstr "Gölgelendirme (deneysel)" @@ -8871,6 +8963,10 @@ msgstr "cURL paralel sınırı" #~ "artırabilir.\n" #~ "Bu yalnızca OpenGL video arka ucu ile çalışır." +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Kamera güncelleme devre dışı" + #~ msgid "Shadow limit" #~ msgstr "Gölge sınırı" @@ -8902,6 +8998,9 @@ msgstr "cURL paralel sınırı" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "Kamera dönüşünü yumuşatır. 0 devre dışı bırakır." +#~ msgid "Sound system is disabled" +#~ msgstr "Ses sistemi devre dışı" + #~ msgid "Special" #~ msgstr "Özel" @@ -8945,6 +9044,9 @@ msgstr "cURL paralel sınırı" #~ msgid "This font will be used for certain languages." #~ msgstr "Belirli diller için bu yazı tipi kullanılacak." +#~ msgid "Time send interval" +#~ msgstr "Zaman gönderme aralığı" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "OpenGL sürücüleri seçilmeden gölgelemeler etkinleştirilemez." @@ -9049,6 +9151,17 @@ msgstr "cURL paralel sınırı" #~ msgid "Waving water" #~ msgstr "Dalgalanan su" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "gui_scaling_filter_txr2img true (doğru) olduğunda, görüntüleri\n" +#~ "boyutlandırmak için donanımdan yazılıma kopyala. False (yanlış) ise,\n" +#~ "dokuları donanımdan geri indirmeyi düzgün desteklemeyen video\n" +#~ "sürücüleri için, eski boyutlandırma yöntemini kullan." + #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " #~ "in.\n" @@ -9061,6 +9174,12 @@ msgstr "cURL paralel sınırı" #~ msgid "Whether dungeons occasionally project from the terrain." #~ msgstr "Zindanların bazen araziden yansıyıp yansımayacağı." +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Harita bloğu başına nod doku animasyonlarının eşzamansız yapılıp " +#~ "yapılmayacağı." + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "" #~ "Oyuncuların birbirini öldürmesine veya zarar vermesine izin verilip " diff --git a/po/tt/luanti.po b/po/tt/luanti.po index 4d09d8023..fe4b60abd 100644 --- a/po/tt/luanti.po +++ b/po/tt/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: minetest\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2023-10-29 05:22+0000\n" "Last-Translator: Timur Seber \n" "Language-Team: Tatar ] [-t]" msgstr "[all | <команда>]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Карап чыгу" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Төзәтү" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Каталогны сайлау" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Файлны сайлау" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Баш тарту" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октавлар" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Саклау" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +#, fuzzy +msgid "Chat" +msgstr "Чат" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Чистарту" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Enabled" +msgstr "$1 (Кабызылган)" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Эзләү" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Touchscreen layout" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Үзгә" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Урта" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "" + #: builtin/fstk/ui.lua msgid "" msgstr "<мөмкин түгел>" @@ -163,7 +403,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "" @@ -199,11 +438,6 @@ msgstr "Модлар" msgid "No packages could be retrieved" msgstr "" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Яңартулар юк" @@ -248,18 +482,6 @@ msgstr "" msgid "Base Game:" msgstr "" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Баш тарту" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua #, fuzzy @@ -384,6 +606,12 @@ msgstr "" msgid "Unable to install a $1 as a texture pack" msgstr "" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "" @@ -447,12 +675,6 @@ msgstr "" msgid "Optional dependencies:" msgstr "" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Саклау" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Дөнья:" @@ -603,11 +825,6 @@ msgstr "Елгалар" msgid "Sea level rivers" msgstr "" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "" @@ -743,6 +960,23 @@ msgid "" "override any renaming here." msgstr "" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Барысын да кабызу" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "" @@ -767,7 +1001,7 @@ msgstr "Беркайчан да" msgid "Visit website" msgstr "Вебсайтны карау" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Көйләүләр" @@ -779,226 +1013,6 @@ msgstr "" msgid "Try reenabling public serverlist and check your internet connection." msgstr "" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Карап чыгу" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Төзәтү" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Каталогны сайлау" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Файлны сайлау" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октавлар" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -#, fuzzy -msgid "Chat" -msgstr "Чат" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Чистарту" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Enabled" -msgstr "$1 (Кабызылган)" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Эзләү" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Барысын да кабызу" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Үзгә" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Урта" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Хакында" @@ -1019,10 +1033,6 @@ msgstr "" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht җиһазы:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "" @@ -1169,11 +1179,22 @@ msgstr "" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +msgid "Add favorite" +msgstr "" + #: builtin/mainmenu/tab_online.lua #, fuzzy msgid "Address" msgstr "Адрес" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Клиент" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "" @@ -1187,6 +1208,11 @@ msgstr "" msgid "Favorites" msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Уеннар" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "" @@ -1199,10 +1225,26 @@ msgstr "" msgid "Login" msgstr "Керү" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Пинг" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "" @@ -1285,24 +1327,6 @@ msgid "" "Check debug.txt for details." msgstr "" -#: src/client/game.cpp -#, fuzzy -msgid "- Mode: " -msgstr "- Режим: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Сервер исеме: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Сериалештерү хатасы килеп чыкты:" @@ -1312,6 +1336,10 @@ msgstr "Сериалештерү хатасы килеп чыкты:" msgid "Access denied. Reason: %s" msgstr "" +#: src/client/game.cpp +msgid "All debug info hidden" +msgstr "" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "" @@ -1332,6 +1360,10 @@ msgstr "" msgid "Block bounds shown for nearby blocks" msgstr "" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "" @@ -1344,10 +1376,6 @@ msgstr "" msgid "Can't show block bounds (disabled by game or mod)" msgstr "" -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "" @@ -1376,26 +1404,6 @@ msgstr "" msgid "Connection failed for unknown reason" msgstr "" -#: src/client/game.cpp -msgid "Continue" -msgstr "Дәвам итү" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1409,31 +1417,15 @@ msgstr "" msgid "Creating server..." msgstr "" -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - #: src/client/game.cpp msgid "Debug info shown" msgstr "" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Менюга чыгу" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Уеннан чыгу" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "" @@ -1470,18 +1462,6 @@ msgstr "" msgid "Fog enabled by game or mod" msgstr "" -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - #: src/client/game.cpp msgid "Item definitions..." msgstr "" @@ -1518,14 +1498,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Сүнгән" - -#: src/client/game.cpp -msgid "On" -msgstr "Кабынган" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1538,38 +1510,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "" -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - #: src/client/game.cpp msgid "Resolving address..." msgstr "" -#: src/client/game.cpp -msgid "Respawn" -msgstr "Тергезелергә" - #: src/client/game.cpp msgid "Shutting down..." msgstr "" -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Тавыш көче" - #: src/client/game.cpp msgid "Sound muted" msgstr "" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "" @@ -1641,18 +1597,104 @@ msgstr "" msgid "Volume changed to %d%%" msgstr "" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "" -#: src/client/game.cpp -msgid "You died" -msgstr "Сез үлдегез" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "" +#: src/client/game_formspec.cpp +#, fuzzy +msgid "- Mode: " +msgstr "- Режим: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "" + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "" + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Сервер исеме: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Дәвам итү" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Менюга чыгу" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Уеннан чыгу" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Сүнгән" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Кабынган" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Тергезелергә" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Тавыш көче" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Сез үлдегез" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "" @@ -1985,7 +2027,7 @@ msgid "Failed to compile the \"%s\" shader." msgstr "" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2033,7 +2075,7 @@ msgstr "" msgid "Automatic jumping" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp #, fuzzy msgid "Aux1" msgstr "Aux1" @@ -2046,7 +2088,7 @@ msgstr "Кирегә" msgid "Block bounds" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "" @@ -2071,7 +2113,7 @@ msgstr "" msgid "Double tap \"jump\" to toggle fly" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "" @@ -2087,11 +2129,11 @@ msgstr "" msgid "Inc. volume" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Инвентарь" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "" @@ -2123,7 +2165,7 @@ msgstr "" msgid "Prev. item" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "" @@ -2135,7 +2177,7 @@ msgstr "" msgid "Screenshot" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "" @@ -2143,15 +2185,15 @@ msgstr "" msgid "Toggle HUD" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "" @@ -2159,11 +2201,11 @@ msgstr "" msgid "Toggle fog" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2171,7 +2213,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "" @@ -2207,7 +2249,7 @@ msgstr "Иске серсүз" msgid "Passwords do not match!" msgstr "" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Чыгу" @@ -2220,15 +2262,44 @@ msgstr "" msgid "Sound Volume: %d%%" msgstr "Тавыш көче: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +msgid "Add button" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Әзер!" + +#: src/gui/touchscreeneditor.cpp +msgid "Remove" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" msgstr "" @@ -2424,8 +2495,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2478,10 +2548,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2504,6 +2570,16 @@ msgstr "" msgid "Advanced" msgstr "Өстәмә" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2875,11 +2951,11 @@ msgid "Clouds" msgstr "Болытлар" #: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." +msgid "Clouds in menu" msgstr "" #: src/settings_translation_file.cpp -msgid "Clouds in menu" +msgid "Color depth for post-processing texture" msgstr "" #: src/settings_translation_file.cpp @@ -2904,7 +2980,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3039,6 +3115,14 @@ msgstr "" msgid "Debugging" msgstr "Хата табу" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3190,18 +3274,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "" @@ -3229,6 +3305,14 @@ msgstr "" msgid "Double-tapping the jump key toggles fly mode." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3303,8 +3387,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3377,8 +3461,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3393,12 +3476,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3701,10 +3778,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "" @@ -3931,12 +4004,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -3955,6 +4022,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4049,10 +4123,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4671,10 +4741,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4707,6 +4773,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4796,7 +4866,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5236,17 +5306,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5439,16 +5511,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5610,10 +5672,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -5892,10 +5953,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -5954,6 +6011,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6004,7 +6065,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6027,16 +6091,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6273,20 +6335,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6297,10 +6351,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6323,8 +6373,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6463,6 +6512,13 @@ msgstr "" #~ msgid "Damage" #~ msgstr "Зыян" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Барысын да кабызу" + +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht җиһазы:" + #, fuzzy #~ msgid "You died." #~ msgstr "Сез үлдегез" diff --git a/po/uk/luanti.po b/po/uk/luanti.po index 5a281c7ec..8f1d25a86 100644 --- a/po/uk/luanti.po +++ b/po/uk/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Ukrainian (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-04 01:00+0000\n" -"Last-Translator: Yof \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-02-05 11:03+0000\n" +"Last-Translator: Тарас Арт \n" "Language-Team: Ukrainian \n" "Language: uk\n" @@ -13,7 +13,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -"X-Generator: Weblate 5.8.2\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -78,6 +78,245 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | <команда>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Оглянути" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Редагувати" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Виберіть каталог" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Виберіть файл" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "Задати" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(не задані описи налаштувань)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D-шум" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Скасувати" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Порожнистість" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Октави" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "Зсув" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Постійність" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Зберегти" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Шкала" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Зерно" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "Поширення за X" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Поширення за Y" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Поширення за Z" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Абс. величина" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "За замовчанням" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "полегшений" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(В грі також буде потрібно увімкнути автоматичні тіні)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(В грі також потрібно увімкнути розмиття)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(В грі також потрібно увімкнути об'ємне освітлення)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(Використувати мову системи)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "Доступність" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "Авто" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Чат" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Очистити" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Керування" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Вимкнено" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Увімкнено" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "Загальне" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "Пересування" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Немає результатів" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "Відновити типове налаштування" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "Відновити типове налаштування ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Пошук" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "Просунуті налаштування" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Показувати технічні назви" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Сенсорний екран" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "Клієнтські моди" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Вміст: Ігри" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Вміст: Моди" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(грі також буде потрібно увімкнути тіні)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "Користувацький" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Динамічні тіні" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Високий" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Низький" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Середній" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Дуже високий" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Дуже низький" + #: builtin/fstk/ui.lua msgid "" msgstr "<немає доступних>" @@ -164,7 +403,6 @@ msgstr "Все" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "Назад" @@ -178,7 +416,7 @@ msgstr "Завантаження..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "Рекомендовано" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -200,11 +438,6 @@ msgstr "Моди" msgid "No packages could be retrieved" msgstr "Не вдалося отримати пакунки" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Нічого не знайдено" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Немає оновлень" @@ -249,18 +482,6 @@ msgstr "Вже встановлено" msgid "Base Game:" msgstr "Основна гра:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Скасувати" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -328,15 +549,15 @@ msgstr "Встановити [$1]" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "Трекер Проблем" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "Джерело" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "Перекласти" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -347,17 +568,16 @@ msgid "Update" msgstr "Оновити" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" msgstr "Відвідати сайт" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "Зроблено $1 — $2 загрузок — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" -msgstr "$1 (увімкнено)" +msgstr "$1 (увімкненно)" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 mods" @@ -383,9 +603,15 @@ msgstr "Не вдалося встановити $1 як $2" msgid "Unable to install a $1 as a texture pack" msgstr "Не вдалося встановити $1 як набір текстур" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" -msgstr "(Увімкнено, є помилка)" +msgstr "(Увімкненно, є помилка)" #: builtin/mainmenu/dlg_config_world.lua msgid "(Unsatisfied)" @@ -425,7 +651,7 @@ msgstr "Мод:" #: builtin/mainmenu/dlg_config_world.lua msgid "No (optional) dependencies" -msgstr "Відсутні (необовʼязкові) залежності" +msgstr "Відсутні (необов'язкові) залежності" #: builtin/mainmenu/dlg_config_world.lua msgid "No game description provided." @@ -433,7 +659,7 @@ msgstr "Опис гри відсутній." #: builtin/mainmenu/dlg_config_world.lua msgid "No hard dependencies" -msgstr "Без обовʼязкових залежностей" +msgstr "Без обов'язкових залежностей" #: builtin/mainmenu/dlg_config_world.lua msgid "No modpack description provided." @@ -441,17 +667,11 @@ msgstr "Опис пакмода відсутній." #: builtin/mainmenu/dlg_config_world.lua msgid "No optional dependencies" -msgstr "Відсутні необовʼязкові залежності" +msgstr "Відсутні необов'язкові залежності" #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Optional dependencies:" -msgstr "Необовʼязкові залежності:" - -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Зберегти" +msgstr "Необов'язкові залежності:" #: builtin/mainmenu/dlg_config_world.lua msgid "World:" @@ -459,7 +679,7 @@ msgstr "Світ:" #: builtin/mainmenu/dlg_config_world.lua msgid "enabled" -msgstr "увімкнено" +msgstr "увімкненно" #: builtin/mainmenu/dlg_create_world.lua msgid "A world named \"$1\" already exists" @@ -467,7 +687,7 @@ msgstr "Світ з назвою \"$1\" вже існує" #: builtin/mainmenu/dlg_create_world.lua msgid "Additional terrain" -msgstr "Додаткова місцевість" +msgstr "Додатковий ландшафт" #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp msgid "Altitude chill" @@ -487,7 +707,7 @@ msgstr "Біоми" #: builtin/mainmenu/dlg_create_world.lua msgid "Caverns" -msgstr "Каверни" +msgstr "Печери" #: builtin/mainmenu/dlg_create_world.lua msgid "Caves" @@ -503,7 +723,7 @@ msgstr "Декорації" #: builtin/mainmenu/dlg_create_world.lua msgid "Desert temples" -msgstr "Храми пустель" +msgstr "Пустельні храми" #: builtin/mainmenu/dlg_create_world.lua msgid "Development Test is meant for developers." @@ -523,7 +743,7 @@ msgstr "Підземелля" #: builtin/mainmenu/dlg_create_world.lua msgid "Flat terrain" -msgstr "Рівна місцевість" +msgstr "Рівний ландшафт" #: builtin/mainmenu/dlg_create_world.lua msgid "Floating landmasses in the sky" @@ -605,11 +825,6 @@ msgstr "Річки" msgid "Sea level rivers" msgstr "Річки на рівні моря" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Зерно" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Плавний перехід між біомами" @@ -694,7 +909,7 @@ msgstr "Назва відсутня" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua #: builtin/mainmenu/tab_online.lua msgid "Name" -msgstr "Ім'я" +msgstr "Назва" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua #: builtin/mainmenu/tab_online.lua @@ -707,21 +922,19 @@ msgstr "Паролі не збігаються" #: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua msgid "Register" -msgstr "Реєстрація" +msgstr "Зареєструватися" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "Dismiss" msgstr "Відмовитись" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"Довгий час, рушій Minetest встановлювався разом зі звичайною грою під назвою " -"\"Minetest Game\". З версії 5.8.0, Minetest встановлювається без звичайної " -"гри." +"Довгий час, рушій Luanti встановлювався разом зі звичайною грою під назвою " +"\"Minetest Game\". З версії 5.8.0, Luanti встановлювається без звичайної гри." #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -754,6 +967,23 @@ msgid "" msgstr "" "Цей пакмод має явну назву в modpack.conf, на що не вплине перейменування." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Увімкнути все" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Доступна нова версія $1" @@ -782,7 +1012,7 @@ msgstr "Ніколи" msgid "Visit website" msgstr "Відвідати сайт" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Налаштування" @@ -796,231 +1026,9 @@ msgstr "" "Спробуйте оновити список публічних серверів та перевірте своє Інтернет-" "з'єднання." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Оглянути" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Редагувати" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Виберіть каталог" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Виберіть файл" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "Задати" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(не задані описи налаштувань)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D-шум" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Порожнистість" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Октави" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "Зсув" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Постійність" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Шкала" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "Поширення за X" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Поширення за Y" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Поширення за Z" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Абс. величина" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "За замовчанням" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "полегшений" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(грі також буде потрібно увімкнути тіні)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(грі також буде потрібно увімкнути тіні)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(грі також буде потрібно увімкнути тіні)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(Використувати мову системи)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "Доступність" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Чат" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Очистити" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Керування" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Вимкнено" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Увімкнено" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "Загальне" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "Рух" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "Відновити типове налаштування" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "Відновити типове налаштування ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Пошук" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "Просунуті налаштування" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Показувати технічні назви" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "Клієнтські моди" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Вміст: Ігри" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Вміст: Моди" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Увімкнено" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Оновлення камери вимкнено" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(грі також буде потрібно увімкнути тіні)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "Користувацький" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Динамічні тіні" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Високий" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Низький" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Середній" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Дуже високий" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Дуже низький" - #: builtin/mainmenu/tab_about.lua msgid "About" -msgstr "Про рушій" +msgstr "Деталі" #: builtin/mainmenu/tab_about.lua msgid "Active Contributors" @@ -1038,10 +1046,6 @@ msgstr "Основні розробники" msgid "Core Team" msgstr "Основна команда" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Пристрій Irrlicht:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Відкрити каталог користувацьких даних" @@ -1143,17 +1147,16 @@ msgid "Install games from ContentDB" msgstr "Встановити ігри з ContentDB" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "Minetest більше не встановлювається з грою." +msgstr "Luanti більше не стоїть по замовчуванню." #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." msgstr "" -"Minetest – це ігрова платформа, що дозволяє вам грати у багато різних ігор." +"Luanti– це ігрова платформа для створення модифікацій, що дозволяє вам грати " +"у багато різних ігор." #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1191,10 +1194,22 @@ msgstr "Почати гру" msgid "You need to install a game before you can create a world." msgstr "Вам потрібно встановити гру перед ти, як створювати світ." +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Видалити улюблений" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Адреса" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Клієнт" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Творчий режим" @@ -1208,6 +1223,11 @@ msgstr "Пошкодження / PvP" msgid "Favorites" msgstr "Відібрані" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Гра" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Несумісні сервери" @@ -1220,10 +1240,28 @@ msgstr "Долучитися до гри" msgid "Login" msgstr "Логін" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "Кількість потоків підвантаження" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "Крок виділеного серверу" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Затримка" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Публічні сервери" @@ -1308,23 +1346,6 @@ msgstr "" "\n" "Подробиці у файлі debug.txt." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Режим: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Публічний: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- ГпГ (бої): " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Назва сервера: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Трапилася помилка серіалізації:" @@ -1334,6 +1355,11 @@ msgstr "Трапилася помилка серіалізації:" msgid "Access denied. Reason: %s" msgstr "Доступ відхилено. Причина: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Інформація для налагодження увімкнена" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Автоматичний рух вперед вимкнено" @@ -1354,6 +1380,10 @@ msgstr "Межі показуються у поточного блоку" msgid "Block bounds shown for nearby blocks" msgstr "Межі показуються у близьких блоків" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Оновлення камери вимкнено" @@ -1366,10 +1396,6 @@ msgstr "Оновлення камери увімкнено" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Неможливо показати межі блоків (вимкнено грою або модом)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Змінити пароль" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Кінорежим вимкнено" @@ -1398,38 +1424,6 @@ msgstr "Помилка зʼєднання (час вийшов?)" msgid "Connection failed for unknown reason" msgstr "Невдале зʼєднання з невідомих причин" -#: src/client/game.cpp -msgid "Continue" -msgstr "Продовжити" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Керування:\n" -"Коли немає відкритих меню:\n" -"- проведення пальцем: роззирнутися\n" -"- дотик: встановити/вдарити/використати\n" -"- довгий дотик: копати/використати\n" -"У відкритому меню або інвертарі:\n" -"- подвійний дотик (поза межами):\n" -" --> закрити\n" -"- доторкання купи, доторкання комірки\n" -" --> перемістити купу\n" -"- доторкання і перетягування, дотик другим пальцем\n" -" --> помістити один предмет у комірку\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1443,31 +1437,15 @@ msgstr "Створення клієнта..." msgid "Creating server..." msgstr "Створення сервера..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Відомості налагодження та графік профайлера приховано" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Інформація для налагодження увімкнена" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Відомості налагодження, графік профайлера й каркас приховано" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Помилка створення клієнта: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Вихід у меню" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Вихід із гри" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Швидкий рух вимкнено" @@ -1504,18 +1482,6 @@ msgstr "Туман увімкнено" msgid "Fog enabled by game or mod" msgstr "Туман увімкнено грою або модом" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Інформація про гру:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Гра на паузі" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Сервер (хост)" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Визначення предметів..." @@ -1552,14 +1518,6 @@ msgstr "Прохід крізь стіни увімкнено (немає доз msgid "Node definitions..." msgstr "Визначення блоків..." -#: src/client/game.cpp -msgid "Off" -msgstr "Вимк." - -#: src/client/game.cpp -msgid "On" -msgstr "Увім." - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "Осьовий політ вимкнено" @@ -1572,38 +1530,22 @@ msgstr "Осьовий політ увімкнено" msgid "Profiler graph shown" msgstr "Графік профайлера відображено" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Віддалений сервер" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Отримання адреси..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Відродитися" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Вимкнення..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Одиночна гра" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Гучність звуку" - #: src/client/game.cpp msgid "Sound muted" msgstr "Звук вимкнено" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Систему звуку вимкнено" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Система звуку не підтримується у цій збірці" @@ -1675,18 +1617,116 @@ msgstr "Видимість змінено до %d, але обмежено до msgid "Volume changed to %d%%" msgstr "Гучність звуку змінено на %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "Відтінювачі увімкнені, але GLSL не підтримується драйвером." + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Показ трикутників" -#: src/client/game.cpp -msgid "You died" -msgstr "Ви загинули" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Наближення (бінокль) вимкнено грою або модифікацією" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Режим: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Публічний: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- ГпГ (бої): " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Назва сервера: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Змінити пароль" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Продовжити" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Керування:\n" +"Коли немає відкритих меню:\n" +"- проведення пальцем: роззирнутися\n" +"- дотик: встановити/вдарити/використати\n" +"- довгий дотик: копати/використати\n" +"У відкритому меню або інвертарі:\n" +"- подвійний дотик (поза межами):\n" +" --> закрити\n" +"- доторкання купи, доторкання комірки\n" +" --> перемістити купу\n" +"- доторкання і перетягування, дотик другим пальцем\n" +" --> помістити один предмет у комірку\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Вихід у меню" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Вихід із гри" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Інформація про гру:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Гра на паузі" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Сервер (хост)" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Вимк." + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Увім." + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Віддалений сервер" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Відродитися" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Гучність звуку" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Ви загинули" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "Чат зараз вимкнено грою або модом" @@ -2013,7 +2053,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Не вдалося скомпілювати шейдер \"%s\"." #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "Відтінювачі увімкнені, але GLSL не підтримується драйвером." #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2065,7 +2106,7 @@ msgstr "Автохід" msgid "Automatic jumping" msgstr "Автоматичне перестрибування" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2077,7 +2118,7 @@ msgstr "Назад" msgid "Block bounds" msgstr "Межі блоків" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Змінити камеру" @@ -2101,7 +2142,7 @@ msgstr "Зменшити звук" msgid "Double tap \"jump\" to toggle fly" msgstr "Подвійний стрибок вмикає політ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Викинути" @@ -2117,11 +2158,11 @@ msgstr "Збільш. видимість" msgid "Inc. volume" msgstr "Збільшити звук" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Інвентар" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Стрибок" @@ -2153,7 +2194,7 @@ msgstr "Наступний предмет" msgid "Prev. item" msgstr "Попередній предмет" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Вибір діапазону" @@ -2165,7 +2206,7 @@ msgstr "Праворуч" msgid "Screenshot" msgstr "Знімок екрана" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Крастися" @@ -2173,15 +2214,15 @@ msgstr "Крастися" msgid "Toggle HUD" msgstr "Увімкнути HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Увімкнути журнал чату" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Прискорення" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Політ" @@ -2189,11 +2230,11 @@ msgstr "Політ" msgid "Toggle fog" msgstr "Увімкнути туман" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Увімкнути мінімапу" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "Прохід крізь стіни" @@ -2201,7 +2242,7 @@ msgstr "Прохід крізь стіни" msgid "Toggle pitchmove" msgstr "Увімкнути висотний рух" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Збільшити" @@ -2237,7 +2278,7 @@ msgstr "Старий пароль" msgid "Passwords do not match!" msgstr "Паролі не збігаються!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Вихід" @@ -2250,38 +2291,68 @@ msgstr "Звук вимкнено" msgid "Sound Volume: %d%%" msgstr "Гучність звуку: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp #, fuzzy -msgid "Joystick" -msgstr "ІД джойстика" +msgid "Add button" +msgstr "Середня кнопка" -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Готово!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Віддалений сервер" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "Джойстик" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "Переповнене меню" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "Увімкнути туман" +msgstr "Увімкнути налагодження" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." msgstr "" +"Інший пристрій вже підключений з таким іменем. · · Якщо ваш пристрій " +"неочікувано закрився, повторіть спробу через хвилину." #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" +msgstr "Порожні паролі не дозволені. · ·Створіть пароль і спробуйте знову." #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "Внутрішня помилка сервера" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "Старий пароль" +msgstr "Введіть пароль" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2304,46 +2375,48 @@ msgstr "Ім'я зайнято. Будь ласка, оберіть інше і #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "Ім'я гравця містить заборонені символи" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "Імʼя гравця задовге." +msgstr "Імʼя гравця не дозволене" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "Вимкнення..." +msgstr "Сервер вимикається" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "У сервера виникнула помилка · ·Ви будете відключенні." #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "Сервер працює в одиночному режимі.· ·Ви не можете підключитися." #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "Забагато користувачів" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "Невідома причина відключення." #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." msgstr "" +"Ваш пристрій надіслав то, що сервер не очікував.· ·Спробуйте повторно " +"підключитись або обновити свій пристрій." #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"Версія вашого пристрою не підтримується.\n" +"Будь ласка, зв'яжіться з адміністратором сервера." #: src/server.cpp #, c-format @@ -2473,6 +2546,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "3D шум що визначає кількість підземель на фрагмент мапи." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2481,8 +2555,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "Підтримка 3D.\n" "Зараз підтримуються:\n" @@ -2547,10 +2620,6 @@ msgstr "Діапазон активних блоків" msgid "Active object send range" msgstr "Діапазон надсилання активних об'єктів" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "Додавати часточки при копанні блока." - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2581,6 +2650,17 @@ msgstr "Ім'я адміністратора" msgid "Advanced" msgstr "Додатково" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "Використовувати об'ємні хмари замість плоских." + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "Дозволяє рідинам бути напівпрозорими." @@ -2633,11 +2713,11 @@ msgstr "Метод згладжування" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "Прапори Анти-чіта" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "Допуск руху Анти-чита" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2671,7 +2751,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "Використовувати дзеркальне затемнення до блоків." #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2787,9 +2867,8 @@ msgid "Biome noise" msgstr "Шум біому" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block bounds HUD radius" -msgstr "Межі блоків" +msgstr "Радіус HUD блока" #: src/settings_translation_file.cpp msgid "Block cull optimize distance" @@ -2978,14 +3057,14 @@ msgstr "Радіус хмар" msgid "Clouds" msgstr "Хмари" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "Хмари є ефектом на боці клієнта." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Хмари в меню" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Кольоровий туман" @@ -3012,7 +3091,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "Розділений комами перелік міток, які треба приховувати у репозиторії " "вмісту.\n" @@ -3184,6 +3263,14 @@ msgstr "Рівень журналу зневадження" msgid "Debugging" msgstr "Налагодження" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "Крок виділеного серверу" @@ -3227,7 +3314,6 @@ msgstr "" "диск, але також використовує більше ресурсів." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Define the oldest clients allowed to connect.\n" "Older clients are compatible in the sense that they will not crash when " @@ -3246,7 +3332,7 @@ msgstr "" "очікуєте.\n" "Це дозволяє детальніший контроль, ніж strict_protocol_version_checking.\n" "Minetest все ще примушує свій внутрішній мінімум, і включення\n" -"strict_protocol_version_checking перевизначить це ефективно." +"strict_protocol_version_checking пере визначить це ефективно." #: src/settings_translation_file.cpp msgid "Defines areas where trees have apples." @@ -3359,18 +3445,10 @@ msgstr "" "Пустелі з'являються, коли np_biome перевищує це значення.\n" "Це ігнорується, коли мітку \"snowbiomes\" увімкнено." -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Розсинхронізація анімації блоків" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Розробницькі налаштування" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Часточки при копанні" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Заборонити порожні паролі" @@ -3380,14 +3458,14 @@ msgid "Display Density Scaling Factor" msgstr "Масштабування щільності відображення" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Distance in nodes at which transparency depth sorting is enabled.\n" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"Відстань у блоках, на якій увімкнено розділення за глибиною прозорості\n" -"Користуйтейся цим для обмеження впливу розділення на продуктивність" +"Відстань у блоках, на якій увімкнено розділення за глибиною прозорості.\n" +"Користуйтеся цим для обмеження впливу розділення на продуктивність.\n" +"Встановіть на 0 для повного вимкнення." #: src/settings_translation_file.cpp msgid "Domain name of server, to be displayed in the serverlist." @@ -3401,6 +3479,14 @@ msgstr "Подвійне натискання стрибка для польот msgid "Double-tapping the jump key toggles fly mode." msgstr "Подвійне натискання кнопки стрибка вмикає режим польоту." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "Записувати дані налагодження генератору світу." @@ -3418,9 +3504,8 @@ msgid "Dungeon noise" msgstr "Шум підземелля" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" -msgstr "Графічні ефекти" +msgstr "Ефекти" #: src/settings_translation_file.cpp msgid "Enable Automatic Exposure" @@ -3485,9 +3570,10 @@ msgstr "" "імітуючи поведінку людського ока." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "Увімкнути кольорові тіні.\n" "Коли увімкнено, напівпрозорі блоки відкидують кольорові тіні. Це ресурсоємно." @@ -3527,11 +3613,8 @@ msgid "Enable random user input (only used for testing)." msgstr "Увімкнути випадкове введення користувача (тільки для тестування)." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" -"Увімкнути згладжене освітлення із простим навколишнім затіненням.\n" -"Вимикається для швидкості або іншого вигляду." +msgstr "Увімкнути згладжене освітлення із простим навколишнім затіненням." #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3552,7 +3635,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "Ввімкнути індикатор доступних оновлень і вкладці \"контент\"" #: src/settings_translation_file.cpp msgid "" @@ -3574,10 +3657,10 @@ msgstr "" "Наприклад: 0 вимикає похитування, 1.0 для звичайного, 2.0 для подвійного." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "Увімкнути/вимкнути сервер IPv6.\n" "Ігнорується, якщо налаштовано bind_address.\n" @@ -3599,21 +3682,13 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Дозволити анімацію предметів інвентаря." -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "Вмикає кешування мешів, яких повернули." - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "Вмикає зневадження й перевірку помилок у драйвері OpenGL." #: src/settings_translation_file.cpp -#, fuzzy msgid "Enables smooth scrolling." -msgstr "Увімкнути постобробку" +msgstr "Вмикає плавну прокрутку." #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." @@ -3626,6 +3701,11 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"Вмикає сенсорні елементи управління, дозволяючи вам грати в гру за допомогою " +"сенсору.\n" +"\"Auto\" означає, що сенсорні елементи управління будуть вмикатися і " +"вимикатися\n" +"В залежності від посліднього використовуваного методу." #: src/settings_translation_file.cpp msgid "" @@ -3942,10 +4022,6 @@ msgstr "Масштабування інтерфейсу" msgid "GUI scaling filter" msgstr "Фільтр масштабування інтерфейсу" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "Фільтр масштабування інтерфейсу txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "Контролери" @@ -4193,6 +4269,9 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"Якщо ввімкненно і у вас встановленні пакети ContentDB, Luanti може " +"зв'язатись з ContentDB,\n" +"Щоб перевірити наявність оновлень пакетів при відкритті головного меню." #: src/settings_translation_file.cpp msgid "" @@ -4204,14 +4283,6 @@ msgstr "" "використано\n" "для спуска й підьйому." -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"Якщо увімкнено, реєстрація акаунта розділена від входу в інтерфейсі.\n" -"Якщо вимкнено, нові акаунти автоматично реєструватимуться при вході." - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4236,6 +4307,16 @@ msgstr "" "Якщо увімкнено, гравці не зможуть під'єднатись без паролю або змінити його " "на порожній." +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"Якщо увімкнено, реєстрація акаунта розділена від входу в інтерфейсі.\n" +"Якщо вимкнено, нові акаунти автоматично реєструватимуться при вході." + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4324,7 +4405,6 @@ msgid "Instrument chat commands on registration." msgstr "Заміряти команди чату при реєстрації." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Instrument global callback functions on registration.\n" "(anything you pass to a core.register_*() function)" @@ -4351,10 +4431,6 @@ msgstr "Замірювати методи сутностей при реєстр msgid "Interval of saving important changes in the world, stated in seconds." msgstr "Інтервал збереження важливих змін у світі, зазначається у секундах." -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "Інтервал надсилання частини дня клієнтам, зазначається у секундах." - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "Анімація предметів інвентаря" @@ -4509,7 +4585,7 @@ msgstr "Поріг озер" #: src/settings_translation_file.cpp msgid "Language" -msgstr "Мова" +msgstr "Мови" #: src/settings_translation_file.cpp msgid "Large cave depth" @@ -4532,7 +4608,6 @@ msgid "Leaves style" msgstr "Стиль листя" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Leaves style:\n" "- Fancy: all faces visible\n" @@ -4543,10 +4618,9 @@ msgstr "" "- Fancy: усі сторони видно\n" "- Simple: тільки зовнішні сторони, якщо використовуються зазначені " "special_tiles\n" -"- Opaque: вимкнути прозорість" +"- Opaque: вимкнута прозорість" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Length of a server tick (the interval at which everything is generally " "updated),\n" @@ -4557,7 +4631,9 @@ msgid "" msgstr "" "Довжина кроку серверу (інтервал, з яким все зазвичай оновлюються),\n" "зазначається у секундах.\n" -"Не застовується до сесій, які запущено з клієнтського меню." +"Не застосовується до сесій, які запущено з клієнтського меню.\n" +"Це нижня границя, тобто кроки серверу не можуть бути коротше за це\n" +"значення, але вони часто длініше." #: src/settings_translation_file.cpp msgid "Length of liquid waves." @@ -4674,9 +4750,8 @@ msgid "Liquid queue purge time" msgstr "Час очищення черги рідин" #: src/settings_translation_file.cpp -#, fuzzy msgid "Liquid reflections" -msgstr "Текучість рідини" +msgstr "Рефлексії рідини" #: src/settings_translation_file.cpp msgid "Liquid sinking" @@ -5012,6 +5087,10 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"Максимальна кількість пакетів, відправлених на крок відправки в коді низько " +"рівневої мережі.\n" +"За звичай це не потрібно міняти, однак для напружених серверів може бути " +"корисним." #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5074,10 +5153,6 @@ msgstr "" msgid "Maximum users" msgstr "Найбільше користувачів" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Кеш мешів" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "Повідомлення дня" @@ -5110,6 +5185,10 @@ msgstr "Мінимум випадкового числа великих пече msgid "Minimum limit of random number of small caves per mapchunk." msgstr "Мінімум випадкового числа малих печер на фрагмент мапи." +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mіп-текстурування" @@ -5203,9 +5282,10 @@ msgstr "" "- Необов'язкові висячі острови у v7 (вимкнено за замовчуванням)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "Ім'я гравця.\n" @@ -5243,7 +5323,7 @@ msgstr "Підсвічувати блок" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "Дзеркальний блок" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5297,7 +5377,6 @@ msgid "Number of messages a player may send per 10 seconds." msgstr "Кількість повідомлень, які гравець може надіслати протягом 10 секунд." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of threads to use for mesh generation.\n" "Value of 0 (default) will let Luanti autodetect the number of available " @@ -5335,18 +5414,16 @@ msgid "OpenGL debug" msgstr "Зневадження OpenGL" #: src/settings_translation_file.cpp -#, fuzzy msgid "Optimize GUI for touchscreens" -msgstr "Перехрестя для дотику" +msgstr "Оптимізує інтерфейс для дотику" #: src/settings_translation_file.cpp msgid "Optional override for chat weblink color." msgstr "Необов'язкове перевизначення кольору посилання у чаті." #: src/settings_translation_file.cpp -#, fuzzy msgid "Other Effects" -msgstr "Графічні ефекти" +msgstr "Інші ефекти" #: src/settings_translation_file.cpp msgid "" @@ -5460,7 +5537,6 @@ msgid "Prometheus listener address" msgstr "Адреса прослуховування Prometheus" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Prometheus listener address.\n" "If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" @@ -5468,7 +5544,7 @@ msgid "" "Metrics can be fetched on http://127.0.0.1:30000/metrics" msgstr "" "Адреса прослуховування Prometheus.\n" -"Якщо Minetest скомпільовано з увімкненим ENABLE_PROMETHEUS,\n" +"Якщо Luanti скомпільовано з увімкненим ENABLE_PROMETHEUS,\n" "увімкається прослуховування метрик Prometheus за цією адресою.\n" "Метрики можна отримати на http://127.0.0.1:30000/metrics" @@ -5496,6 +5572,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." msgstr "" +"Радіус, використаний, коли функція відображення кордонів блоків встановлена " +"на близькі блоки." #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5717,23 +5795,26 @@ msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" msgstr "Дивіться https://www.sqlite.org/pragma.html#pragma_synchronous" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Select the antialiasing method to apply.\n" "\n" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5815,11 +5896,12 @@ msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." msgstr "" +"Відправляти імена онлайн гравців і список сервера. Якщо цей параметр " +"відключений, відображається тільки кількість гравців." #: src/settings_translation_file.cpp -#, fuzzy msgid "Send player names to the server list" -msgstr "Оголошувати сервер до цього переліку серверів." +msgstr "Відправляти імена гравців до списку сервера" #: src/settings_translation_file.cpp msgid "Server" @@ -5847,6 +5929,8 @@ msgid "" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"Конфігурація анти-чіта сервера.\n" +"Прапори позитивні. Зніміть їй, щоб відключити модуль анти-чіта." #: src/settings_translation_file.cpp msgid "Server description" @@ -5991,16 +6075,6 @@ msgstr "" msgid "Shader path" msgstr "Шлях до відтінювачів" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Відтінювачі" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "Якість фільтру тіні" @@ -6072,7 +6146,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +msgstr "Імітувати прозорість при погляді на листя в сонячному світлі." #: src/settings_translation_file.cpp msgid "" @@ -6125,9 +6199,8 @@ msgid "Smooth lighting" msgstr "Згладжене освітлення" #: src/settings_translation_file.cpp -#, fuzzy msgid "Smooth scrolling" -msgstr "Згладжене освітлення" +msgstr "Плавна прокрутка" #: src/settings_translation_file.cpp msgid "" @@ -6154,9 +6227,8 @@ msgid "Sneaking speed, in nodes per second." msgstr "Швидкість підкрадання, в блоках в секунду." #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "Обʼємні хмари" +msgstr "Об'ємні хмари" #: src/settings_translation_file.cpp msgid "Soft shadow radius" @@ -6193,11 +6265,11 @@ msgstr "" "предметів." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "Поширювати повне оновлення мапи тіней на дану кількість кадрів.\n" "Вищі значення можуть зробити тіні нестабльними, нижчі значення\n" @@ -6394,7 +6466,6 @@ msgstr "" "Шлях до файла відносно до вашого шляху світу, де зберігатимуться профайли." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The gesture for punching players/entities.\n" "This can be overridden by games and mods.\n" @@ -6407,14 +6478,14 @@ msgid "" "Combat is more or less impossible." msgstr "" "Жест, що означає удар по гравцю або сутності.\n" -"Це перевизначатися іграми або модами.\n" +"Це визначаться іграми або модами.\n" "\n" "* short_tap (короткий дотик)\n" "Простий у використанні й відомий за іншими іграми, які не повинні бути " "названі.\n" "\n" "* long_tap (довгий дотик)\n" -"Відомий за класичному мобільному управлінні Minetest.\n" +"Відомий за класичному мобільному управлінні Luanti.\n" "Бої більш-менш неможливі." #: src/settings_translation_file.cpp @@ -6477,7 +6548,6 @@ msgstr "" "Це повинно бути налаштовано разом з active_object_send_range_blocks." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The rendering back-end.\n" "Note: A restart is required after changing this!\n" @@ -6485,8 +6555,7 @@ msgid "" msgstr "" "Двигун промальовування.\n" "Примітка: після змінення цього потрібен перезапуск!\n" -"За замовчуванням OpenGL для ПК, й OGLES2 для Android.\n" -"Відтінювачі підтримуються усіма крім OGLES1." +"За замовчуванням OpenGL для настільних комп'ютерів, й OGLES2 для Android." #: src/settings_translation_file.cpp msgid "" @@ -6577,10 +6646,6 @@ msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" "Частина дня, коли на новому світі грають вперше, у мілігодинах (0-23999)." -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "Період надсилання часу" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "Швидкість часу" @@ -6607,6 +6672,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"Значення допустимості детектору читів на рух.\n" +"Збільште значення, якщо рух гравців занадто часто затримується." #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6617,9 +6684,8 @@ msgid "Touchscreen" msgstr "Сенсорний екран" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "Поріг дотику" +msgstr "Сенсорне управління" #: src/settings_translation_file.cpp msgid "Touchscreen sensitivity" @@ -6634,7 +6700,6 @@ msgid "Tradeoffs for performance" msgstr "Домовленності для продуктивності" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent foliage" msgstr "Напівпрозорі рідини" @@ -6646,6 +6711,11 @@ msgstr "Напівпрозорі рідини" msgid "Transparency Sorting Distance" msgstr "Дальність сортування за прозорістю" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "Дальність сортування за прозорістю" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "Шум дерев" @@ -6687,13 +6757,12 @@ msgstr "" "продуктивністю." #: src/settings_translation_file.cpp -#, fuzzy msgid "" "URL to JSON file which provides information about the newest Luanti " "release.\n" "If this is empty the engine will never check for updates." msgstr "" -"URL до файлу JSON, що забезпечує інформацію про найновіший реліз Minetest\n" +"URL до файлу JSON, що забезпечує інформацію про найновіший реліз Luanti \n" "Якщо ще порожнє, рушій ніколи не перевірятиме оновлення." #: src/settings_translation_file.cpp @@ -6706,12 +6775,16 @@ msgid "Undersampling" msgstr "Субдискретизація" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "Субдискретизація подібна використанню низької роздільності, але це\n" "застовується лише до світу гри, не доторкуючись графічного інтерфейсу.\n" @@ -6738,16 +6811,15 @@ msgstr "Максимальний Y підземель." msgid "Upper Y limit of floatlands." msgstr "Максимальний Y висячих островів." -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "Використовувати об'ємні хмари замість плоских." - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "Використовувати анімацію хмар для фону головного меню." #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" "Використовувати анізотропну фільтрацію при погляді на текстури під кутом." @@ -6791,7 +6863,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "Використовує плавний шейдинг хмар." #: src/settings_translation_file.cpp msgid "" @@ -6999,13 +7071,16 @@ msgstr "Колір вебпосилання" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "При ввімкнені імітують рефлексії від рідини." #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"Якщо увімкнено, інтерфейс оптимізується для більш зручного використання на " +"сенсорних екранах.\n" +"Розмір вашого пристрою визначає, чи буде це увімкнено за замовчуванням." #: src/settings_translation_file.cpp msgid "" @@ -7018,27 +7093,14 @@ msgstr "" "апаратно (наприклад render-to-texture для блоків у інвентарі)." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"Коли gui_scaling_filter_txr2img увімкнено, копіювати ті зображення\n" -"від апаратного забезпечння до програмного для масштабування.\n" -"Коли вимкнено, повертатися до старого методу масштабування для " -"відеодрайверів,\n" -"які неправильно підтримують завантаження текстур назад з апаратного " -"забезпечення." - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -7064,11 +7126,6 @@ msgstr "" "Чи повинен фон напису з ім'ям бути відображеним за замовчуванням.\n" "Моди все ще можуть задати фон." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" -"Чи повинні бути десинхронізованими анімації текстур блоків між блоками мапи." - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -7095,9 +7152,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "Чи затуманювати кінець видимої області." #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7126,14 +7183,14 @@ msgid "Window maximized" msgstr "Вікно розгорнуто" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Windows systems only: Start Luanti with the command line window in the " "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"Тільки для Windows: запускати Minetest з вікном командного рядка позаду.\n" -"Містить таку ж саму інформацію, що й файл debug.txt (звичайна назва фалу)." +"Тільки для Windows: запускати Luanti з вікном командного рядка у фоновому " +"режимі.\n" +"Містить ту ж саму інформацію, що й файл debug.txt (назва за замовчуванням)." #: src/settings_translation_file.cpp msgid "" @@ -7229,11 +7286,11 @@ msgstr "cURL" #: src/settings_translation_file.cpp msgid "cURL file download timeout" -msgstr "Таймаут завантаження файлів через cURL" +msgstr "Час очікування завантаження файлів через cURL вийшов" #: src/settings_translation_file.cpp msgid "cURL interactive timeout" -msgstr "Час очікування під час взаємодії із cURL" +msgstr "Час очікування під час взаємодії із cURL вийшов" #: src/settings_translation_file.cpp msgid "cURL parallel limit" @@ -7289,6 +7346,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ "Зауважте що поле адреси у головному меню має пріоритет над цим " #~ "налаштуванням." +#~ msgid "Adds particles when digging a node." +#~ msgstr "Додавати часточки при копанні блока." + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7385,6 +7445,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Cinematic mode key" #~ msgstr "Клавіша кінорежиму" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Хмари є ефектом на боці клієнта." + #~ msgid "Command key" #~ msgstr "Клавіша команди" @@ -7463,9 +7526,15 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Damage enabled" #~ msgstr "Ушкодження ввімкнено" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Відомості налагодження та графік профайлера приховано" + #~ msgid "Debug info toggle key" #~ msgstr "Клавіша увімкнення даних налагодження" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Відомості налагодження, графік профайлера й каркас приховано" + #~ msgid "Dec. volume key" #~ msgstr "Клавіша зменш. гучності" @@ -7498,9 +7567,15 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Del. Favorite" #~ msgstr "Видалити зі закладок" +#~ msgid "Desynchronize block animation" +#~ msgstr "Розсинхронізація анімації блоків" + #~ msgid "Dig key" #~ msgstr "Клавіша Копати" +#~ msgid "Digging particles" +#~ msgstr "Часточки при копанні" + #~ msgid "Disable anticheat" #~ msgstr "Вимкнути античіт" @@ -7528,6 +7603,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Динамічні тіні:" +#~ msgid "Enable" +#~ msgstr "Увімкненно" + #~ msgid "Enable VBO" #~ msgstr "Увімкнути VBO" @@ -7547,6 +7625,13 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ "Увімкнути об'єкти буферу вершин.\n" #~ "Це повинно значно покращити графічну продуктивність." +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "Вмикає кешування повернутих сіток facedir.\n" +#~ "Це працює тільки якщо шейдери вимкненні." + #~ msgid "Enables minimap." #~ msgstr "Вмикає мінімапу." @@ -7599,8 +7684,8 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Forward key" #~ msgstr "Клавіша Вперед" -#~ msgid "Game" -#~ msgstr "Гра" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "Фільтр масштабування інтерфейсу txr2img" #~ msgid "Generate Normal Maps" #~ msgstr "Генерувати мапи нормалів" @@ -7728,266 +7813,272 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Install: file: \"$1\"" #~ msgstr "Встановлення: файл: \"$1\"" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "Інтервал надсилання частини дня клієнтам, зазначається у секундах." + #~ msgid "Invalid gamespec." #~ msgstr "Помилкова конфігурація gamespec." #~ msgid "Inventory key" #~ msgstr "Клавіша інвентаря" +#~ msgid "Irrlicht device:" +#~ msgstr "Пристрій Irrlicht:" + #~ msgid "Jump key" #~ msgstr "Клавіша Стрибок" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для зменшення видимості.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для зменшення гучності.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для копання.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для кидання поточного предмета.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для збільшення видимості.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для збільшення гучності.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для стрибання.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для швидкого руху у швидкому режимі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для руху гравця вперед.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для руху гравця вліво.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для руху гравця вправо.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для приглушення гри.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для відкривання вікна чату для введення команд.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для відкривання вікна чату для набирання локальних команд.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для відкривання вікна чату.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для відкривання інвентаря.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша покласти.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 11-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 12-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 13-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 14-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 15-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 16-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 17-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 18-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 19-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша для вибору 20-го слоту швидкої панелі.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "Клавіша ввімкнення відображення HUD.\n" -#~ "Дивіться http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "Дивіться http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8041,6 +8132,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Menus" #~ msgstr "Меню" +#~ msgid "Mesh cache" +#~ msgstr "Кеш мешів" + #~ msgid "Minimap" #~ msgstr "Мінімапа" @@ -8175,6 +8269,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Server / Singleplayer" #~ msgstr "Сервер / Одиночна гра" +#~ msgid "Shaders" +#~ msgstr "Відтінювачі" + #~ msgid "Shaders (experimental)" #~ msgstr "Відтінювачі (експериментальне)" @@ -8189,6 +8286,16 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ "Відтінювачі дозволяють просунуті визуальні ефекти й можуть збільшити\n" #~ "продуктивність на деяких відеокартах." +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "" +#~ "Шейдери є фундаментальною частиною рендерінга и забезпечує розширені " +#~ "візуальні ефекти." + +#~ msgid "Shaders are disabled." +#~ msgstr "Шейдери вимкнено." + #~ msgid "Simple Leaves" #~ msgstr "Просте листя" @@ -8204,6 +8311,9 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Smooth Lighting" #~ msgstr "Згладжене освітлення" +#~ msgid "Sound system is disabled" +#~ msgstr "Систему звуку вимкнено" + #~ msgid "Special" #~ msgstr "Спеціальна" @@ -8231,6 +8341,12 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "The value must not be larger than $1." #~ msgstr "Значення має бути не більше $1." +#~ msgid "This is not a recommended configuration." +#~ msgstr "Ця конфігурація не рекомендується." + +#~ msgid "Time send interval" +#~ msgstr "Період надсилання часу" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "Для того, щоб увімкнути шейдери, потрібно мати драйвер OpenGL." @@ -8292,6 +8408,25 @@ msgstr "Обмеження одночасних з'єднань cURL" #~ msgid "Waving Plants" #~ msgstr "Коливати квіти" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "Коли gui_scaling_filter_txr2img увімкнено, копіювати ті зображення\n" +#~ "від апаратного забезпечння до програмного для масштабування.\n" +#~ "Коли вимкнено, повертатися до старого методу масштабування для " +#~ "відеодрайверів,\n" +#~ "які неправильно підтримують завантаження текстур назад з апаратного " +#~ "забезпечення." + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "" +#~ "Чи повинні бути десинхронізованими анімації текстур блоків між блоками " +#~ "мапи." + #~ msgid "X" #~ msgstr "Х" diff --git a/po/vi/luanti.po b/po/vi/luanti.po index c6b760ecb..a82cc82c5 100644 --- a/po/vi/luanti.po +++ b/po/vi/luanti.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: Vietnamese (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" "PO-Revision-Date: 2022-08-26 10:18+0000\n" "Last-Translator: Văn Chí \n" "Language-Team: Vietnamese ' to get more information, or '.help all' to list everything." msgstr "" -"Dùng '.help ' để có thêm thông tin về một câu lệnh hoặc dùng '." -"help all' để xem danh sách về những câu lệnh có sẵn." +"Dùng '.help ' để có thêm thông tin về một câu lệnh hoặc dùng " +"'.help all' để xem danh sách về những câu lệnh có sẵn." #: builtin/common/chatcommands.lua #, fuzzy msgid "[all | ] [-t]" msgstr "[all | ]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "Duyệt" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "Chỉnh sửa" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "Chọn thư mục" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "Chọn tệp" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(Không có mô tả về Cài đặt nào được đưa ra)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "Nhiễu 2D" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "Hủy" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "Khoảng cách" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "Quãng tám" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Offset" +msgstr "Độ bù" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "Sự bền bỉ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "Lưu" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "Tỉ lệ" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "Mã khởi tạo" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "Giá trị tuyệt đối" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "Mặc định" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "Nới lỏng" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "Trò chuyện" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Xóa" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "Điều khiển" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "Đã vô hiệu" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "Đã kích hoạt" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Movement" +msgstr "Đi nhanh" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "Không có kết quả" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Reset setting to default" +msgstr "Phục hồi Cài đặt mặc định" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "Tìm kiếm" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "Hiển thị tên kỹ thuật" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "Độ nhạy chuột" + +#: builtin/common/settings/dlg_settings.lua +msgid "pause_menu" +msgstr "" + +#: builtin/common/settings/settingtypes.lua +#, fuzzy +msgid "Client Mods" +msgstr "Mod đã chọn" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "Nội dung: Trò chơi" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "Nội dung: Mod" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "Bóng kiểu động lực học" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "Cao" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "Thấp" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "Trung bình" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "Cực cao" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "Cực thấp" + #: builtin/fstk/ui.lua msgid "" msgstr "" @@ -165,7 +408,6 @@ msgstr "" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua #, fuzzy msgid "Back" msgstr "Lùi xuống" @@ -204,11 +446,6 @@ msgstr "Sửa đổi" msgid "No packages could be retrieved" msgstr "Không nhận được gói nào" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "Không có kết quả" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "Không có cập nhật mới" @@ -254,18 +491,6 @@ msgstr "Đã được cài đặt" msgid "Base Game:" msgstr "Trò chơi cơ bản:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "Hủy" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -395,6 +620,12 @@ msgstr "Không thể cài đặt mod dưới dạng $1" msgid "Unable to install a $1 as a texture pack" msgstr "Không thể cài đặt $1 dưới dạng gói kết cấu" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(Đã kích hoạt, có lỗi)" @@ -459,12 +690,6 @@ msgstr "Không có phần phụ thuộc tùy chọn nào" msgid "Optional dependencies:" msgstr "Phần phụ thuộc tùy chọn:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "Lưu" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "Thế giới:" @@ -618,11 +843,6 @@ msgstr "Sông" msgid "Sea level rivers" msgstr "Sông theo mực nước biển" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "Mã khởi tạo" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "Chuyển đổi mượt mà giữa các quần xã" @@ -763,6 +983,23 @@ msgstr "" "Modpack này có một tên rõ ràng được đưa ra trong tệp modpack.conf của nó, " "tên này sẽ ghi đè bất kỳ sự đổi tên nào ở đây." +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "Kích hoạt tất cả" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "Phiên bản mới $1 hiện có sẵn" @@ -791,7 +1028,7 @@ msgstr "Không bao giờ" msgid "Visit website" msgstr "Truy cập website" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "Cài đặt" @@ -805,229 +1042,6 @@ msgstr "" "Hãy thử kích hoạt lại danh sách máy chủ công cộng và kiểm tra kết nối mạng " "của bạn." -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "Duyệt" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "Chỉnh sửa" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "Chọn thư mục" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "Chọn tệp" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(Không có mô tả về Cài đặt nào được đưa ra)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "Nhiễu 2D" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "Khoảng cách" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "Quãng tám" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Offset" -msgstr "Độ bù" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "Sự bền bỉ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "Tỉ lệ" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "Giá trị tuyệt đối" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "Mặc định" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "Nới lỏng" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "Trò chuyện" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Xóa" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "Điều khiển" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "Đã vô hiệu" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "Đã kích hoạt" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Movement" -msgstr "Đi nhanh" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "Reset setting to default" -msgstr "Phục hồi Cài đặt mặc định" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "Tìm kiếm" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "Hiển thị tên kỹ thuật" - -#: builtin/mainmenu/settings/settingtypes.lua -#, fuzzy -msgid "Client Mods" -msgstr "Mod đã chọn" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "Nội dung: Trò chơi" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "Nội dung: Mod" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "Đã kích hoạt" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "Cập nhật máy ảnh đã tắt" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "Bóng kiểu động lực học" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "Cao" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "Thấp" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "Trung bình" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "Cực cao" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "Cực thấp" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "Giới thiệu" @@ -1048,10 +1062,6 @@ msgstr "Các nhà phát triển cốt lõi" msgid "Core Team" msgstr "" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "Mở thư mục Dữ liệu người dùng" @@ -1201,10 +1211,22 @@ msgstr "Bắt đầu trò chơi" msgid "You need to install a game before you can create a world." msgstr "" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "Xóa yêu thích" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "Địa chỉ" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "Máy khách" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "Chế độ sáng tạo" @@ -1218,6 +1240,11 @@ msgstr "Sát thương / PvP" msgid "Favorites" msgstr "Yêu thích" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "Trò chơi" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "Máy chủ không tương thích" @@ -1230,10 +1257,26 @@ msgstr "Tham gia trò chơi" msgid "Login" msgstr "Đăng nhập" +#: builtin/mainmenu/tab_online.lua +msgid "Number of mods: $1" +msgstr "" + +#: builtin/mainmenu/tab_online.lua +msgid "Open server website" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "Máy chủ công cộng" @@ -1322,23 +1365,6 @@ msgstr "" "\n" "Hãy kiểm tra debug.txt để có thông tin chi tiết." -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- Chế độ: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- Công cộng: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- Tên máy chủ: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "Đã xảy ra lỗi tuần tự hóa:" @@ -1348,6 +1374,11 @@ msgstr "Đã xảy ra lỗi tuần tự hóa:" msgid "Access denied. Reason: %s" msgstr "Quyền truy cập bị từ chối với lý do: %s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "Thông tin gỡ lỗi đã hiển thị" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "Tự động chuyển tiếp bị tắt" @@ -1368,6 +1399,10 @@ msgstr "Đã hiển thị ranh giới hiển thị cho khối hiện tại" msgid "Block bounds shown for nearby blocks" msgstr "Đã hiển thị ranh giới cho các khối gần bạn" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "Cập nhật máy ảnh đã tắt" @@ -1381,10 +1416,6 @@ msgstr "Cập nhật máy ảnh đã bật" msgid "Can't show block bounds (disabled by game or mod)" msgstr "Không thể hiển thị ranh giới khối (bị tắt bởi mod hoặc trò chơi)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "Đổi mật khẩu" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "Chế độ điện ảnh đã tắt" @@ -1414,39 +1445,6 @@ msgstr "Lỗi kết nối (hết thời gian chờ?)" msgid "Connection failed for unknown reason" msgstr "Kết nối không thành công vì lý do không xác định" -#: src/client/game.cpp -msgid "Continue" -msgstr "Tiếp tục" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"Điều khiển mặc định:\n" -"Khi menu không hiển thị:\n" -"- một lần nhấn: nút kích hoạt\n" -"- nhấn đúp: đặt khối / sử dụng\n" -"- trượt ngón tay: nhìn xung quanh\n" -"Khi Menu / Túi đồ hiển thị:\n" -"- nhấn đúp (bên ngoài):\n" -" -> đóng\n" -"- chạm ngăn xếp, chạm ô:\n" -" -> di chuyển ngăn xếp\n" -"- chạm và kéo, chạm vào ngón tay thứ 2\n" -" -> đặt một mục duy nhất vào vị trí\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1460,31 +1458,15 @@ msgstr "Đang tạo máy khách..." msgid "Creating server..." msgstr "Đang tạo máy chủ..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "Thông tin gỡ lỗi và biểu đồ hồ sơ đã ẩn" - #: src/client/game.cpp msgid "Debug info shown" msgstr "Thông tin gỡ lỗi đã hiển thị" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "Thông tin gỡ lỗi, biểu đồ hồ sơ và khung dây đã ẩn" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "Đã xảy ra lỗi khi tạo máy khách: %s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "Thoát ra màn hình chính" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "Thoát Minetest" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "Chế độ nhanh đã tắt" @@ -1522,18 +1504,6 @@ msgstr "Sương mù đã bật" msgid "Fog enabled by game or mod" msgstr "Thu phóng đã bị vô hiệu bởi trò chơi hoặc mod" -#: src/client/game.cpp -msgid "Game info:" -msgstr "Thông tin trò chơi:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "Trò chơi đã được tạm dừng" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "Đang tải máy chủ" - #: src/client/game.cpp msgid "Item definitions..." msgstr "Định nghĩa vật phẩm..." @@ -1570,14 +1540,6 @@ msgstr "" msgid "Node definitions..." msgstr "" -#: src/client/game.cpp -msgid "Off" -msgstr "Tắt" - -#: src/client/game.cpp -msgid "On" -msgstr "Bật" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "" @@ -1590,38 +1552,22 @@ msgstr "" msgid "Profiler graph shown" msgstr "Biểu đồ hồ sơ đã hiện" -#: src/client/game.cpp -msgid "Remote server" -msgstr "Máy chủ từ xa" - #: src/client/game.cpp msgid "Resolving address..." msgstr "Đang giải mã địa chỉ..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "Hồi sinh" - #: src/client/game.cpp msgid "Shutting down..." msgstr "Đang thoát..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "Chơi đơn" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "Âm lượng" - #: src/client/game.cpp msgid "Sound muted" msgstr "Đã tắt tiếng" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "Hệ thống âm thanh đã bị vô hiệu" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "Hệ thống âm thanh không được hỗ trợ trong bản dựng này" @@ -1695,18 +1641,116 @@ msgstr "Phạm vi nhìn được đặt thành %d" msgid "Volume changed to %d%%" msgstr "Âm lượng được đặt thành %d%%" +#: src/client/game.cpp +msgid "Wireframe not supported by video driver" +msgstr "" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "Hiện khung dây" -#: src/client/game.cpp -msgid "You died" -msgstr "Bạn đã bị chết" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "Thu phóng đã bị vô hiệu bởi trò chơi hoặc mod" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- Chế độ: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- Công cộng: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- Tên máy chủ: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "Đổi mật khẩu" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "Tiếp tục" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"Điều khiển mặc định:\n" +"Khi menu không hiển thị:\n" +"- một lần nhấn: nút kích hoạt\n" +"- nhấn đúp: đặt khối / sử dụng\n" +"- trượt ngón tay: nhìn xung quanh\n" +"Khi Menu / Túi đồ hiển thị:\n" +"- nhấn đúp (bên ngoài):\n" +" -> đóng\n" +"- chạm ngăn xếp, chạm ô:\n" +" -> di chuyển ngăn xếp\n" +"- chạm và kéo, chạm vào ngón tay thứ 2\n" +" -> đặt một mục duy nhất vào vị trí\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "Thoát ra màn hình chính" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "Thoát Minetest" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "Thông tin trò chơi:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "Trò chơi đã được tạm dừng" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "Đang tải máy chủ" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "Tắt" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "Bật" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "Máy chủ từ xa" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "Hồi sinh" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "Âm lượng" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "Bạn đã bị chết" + #: src/client/gameui.cpp #, fuzzy msgid "Chat currently disabled by game or mod" @@ -2046,8 +2090,9 @@ msgid "Failed to compile the \"%s\" shader." msgstr "Đã xảy ra lỗi khi mở trang web" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" +#, fuzzy +msgid "GLSL is not supported by the driver" +msgstr "Hệ thống âm thanh không được hỗ trợ trong bản dựng này" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" #: src/content/mod_configuration.cpp @@ -2095,7 +2140,7 @@ msgstr "Tự động tiến" msgid "Automatic jumping" msgstr "Tự động nhảy" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2107,7 +2152,7 @@ msgstr "Lùi xuống" msgid "Block bounds" msgstr "Ranh giới khối" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "Thay đổi camera" @@ -2131,7 +2176,7 @@ msgstr "Giảm âm lượng" msgid "Double tap \"jump\" to toggle fly" msgstr "Nhấn đúp nút \"nhảy\" để chuyển đổi chế độ bay" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "Thả" @@ -2147,11 +2192,11 @@ msgstr "Tăng phạm vi" msgid "Inc. volume" msgstr "Tăng âm lượng" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "Túi đồ" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "Nhảy" @@ -2183,7 +2228,7 @@ msgstr "Vật phẩm tiếp theo" msgid "Prev. item" msgstr "Vật phẩm trước" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "Lựa chọn phạm vi" @@ -2195,7 +2240,7 @@ msgstr "Sang phải" msgid "Screenshot" msgstr "Chụp màn hình" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "Đi rón rén" @@ -2203,15 +2248,15 @@ msgstr "Đi rón rén" msgid "Toggle HUD" msgstr "Chuyển đổi HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "Chuyển đổi nhật kí trò chuyện" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "Chuyển đổi chạy nhanh" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "Chuyển đổi bay" @@ -2219,11 +2264,11 @@ msgstr "Chuyển đổi bay" msgid "Toggle fog" msgstr "Chuyển đổi sương mù" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "Chuyển đổi minimap" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "" @@ -2231,7 +2276,7 @@ msgstr "" msgid "Toggle pitchmove" msgstr "" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "Thu phóng" @@ -2268,7 +2313,7 @@ msgstr "Mật khẩu cũ" msgid "Passwords do not match!" msgstr "Mật khẩu không khớp!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "Thoát" @@ -2281,15 +2326,46 @@ msgstr "Đã tắt tiếng" msgid "Sound Volume: %d%%" msgstr "Âm lượng: %d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "Nút giữa" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "Đã xong!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "Máy chủ từ xa" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp msgid "Joystick" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" msgstr "" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "Chuyển đổi sương mù" @@ -2494,8 +2570,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" #: src/settings_translation_file.cpp @@ -2550,10 +2625,6 @@ msgstr "" msgid "Active object send range" msgstr "" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "" @@ -2577,6 +2648,16 @@ msgstr "Tên quản trị viên" msgid "Advanced" msgstr "Nâng cao" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +msgid "Allow clouds to look 3D instead of flat." +msgstr "" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "" @@ -2950,15 +3031,14 @@ msgstr "Bán kính mây" msgid "Clouds" msgstr "Mây" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "Clouds are a client-side effect." -msgstr "Mây là một hiệu ứng ở máy khách." - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "Mây trong menu" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "Sương mù có màu" @@ -2981,7 +3061,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" #: src/settings_translation_file.cpp @@ -3123,6 +3203,14 @@ msgstr "" msgid "Debugging" msgstr "Gỡ lỗi" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "" @@ -3283,18 +3371,10 @@ msgid "" "When the 'snowbiomes' flag is enabled, this is ignored." msgstr "" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "Không đồng bộ hoạt ảnh khối" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "Tùy chọn nhà phát triển" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "Hạt hiệu ứng khi đào" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "Không cho phép mật khẩu trống" @@ -3322,6 +3402,14 @@ msgstr "Nhấn đúp nút nhảy để bay" msgid "Double-tapping the jump key toggles fly mode." msgstr "Nhấn đúp phím nhảy để chuyển đổi chế độ bay." +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "" @@ -3402,8 +3490,8 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" #: src/settings_translation_file.cpp @@ -3483,8 +3571,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" #: src/settings_translation_file.cpp @@ -3499,12 +3586,6 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "Kích hoạt hoạt ảnh của các vật phẩm trong túi đồ." -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "" @@ -3810,10 +3891,6 @@ msgstr "" msgid "GUI scaling filter" msgstr "" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - #: src/settings_translation_file.cpp #, fuzzy msgid "Gamepads" @@ -4038,12 +4115,6 @@ msgid "" "descending." msgstr "" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4062,6 +4133,13 @@ msgid "" "empty password." msgstr "" +#: src/settings_translation_file.cpp +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4156,10 +4234,6 @@ msgstr "" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "" @@ -4779,10 +4853,6 @@ msgstr "" msgid "Maximum users" msgstr "" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "" @@ -4815,6 +4885,10 @@ msgstr "" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "" @@ -4905,7 +4979,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" @@ -5349,17 +5423,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5557,16 +5633,6 @@ msgstr "" msgid "Shader path" msgstr "" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "Trình đổ bóng" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "" @@ -5734,10 +5800,9 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" #: src/settings_translation_file.cpp @@ -6016,10 +6081,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "" @@ -6081,6 +6142,10 @@ msgstr "" msgid "Transparency Sorting Distance" msgstr "" +#: src/settings_translation_file.cpp +msgid "Transparency Sorting Group by Buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "" @@ -6131,7 +6196,10 @@ msgid "" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" #: src/settings_translation_file.cpp @@ -6154,16 +6222,14 @@ msgstr "" msgid "Upper Y limit of floatlands." msgstr "" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "" #: src/settings_translation_file.cpp @@ -6406,20 +6472,12 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6430,10 +6488,6 @@ msgid "" "Mods may still set a background." msgstr "" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6456,8 +6510,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6665,6 +6718,10 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ msgid "Clean transparent textures" #~ msgstr "Xóa các kết cấu trong suốt" +#, fuzzy +#~ msgid "Clouds are a client-side effect." +#~ msgstr "Mây là một hiệu ứng ở máy khách." + #~ msgid "Command key" #~ msgstr "Phím lệnh" @@ -6715,9 +6772,15 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ msgid "Damage" #~ msgstr "Sát thương" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "Thông tin gỡ lỗi và biểu đồ hồ sơ đã ẩn" + #~ msgid "Debug info toggle key" #~ msgstr "Phím chuyển đổi thông tin gỡ lỗi" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "Thông tin gỡ lỗi, biểu đồ hồ sơ và khung dây đã ẩn" + #~ msgid "Dec. volume key" #~ msgstr "Phím giảm âm lượng" @@ -6731,9 +6794,15 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ "Trò chơi mặc định khi tạo thế giới mới.\n" #~ "Nó sẽ bị ghi đè khi tạo một thế giới từ màn hình chính." +#~ msgid "Desynchronize block animation" +#~ msgstr "Không đồng bộ hoạt ảnh khối" + #~ msgid "Dig key" #~ msgstr "Phím đào" +#~ msgid "Digging particles" +#~ msgstr "Hạt hiệu ứng khi đào" + #~ msgid "Disable anticheat" #~ msgstr "Vô hiệu trình chống gian lận" @@ -6756,6 +6825,10 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ msgid "Dynamic shadows:" #~ msgstr "Bóng kiểu động lực học:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "Đã kích hoạt" + #~ msgid "Enable creative mode for all players" #~ msgstr "Kích hoạt chế độ sáng tạo cho tất cả người chơi" @@ -6787,9 +6860,6 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ msgid "Flying" #~ msgstr "Bay" -#~ msgid "Game" -#~ msgstr "Trò chơi" - #, fuzzy #~ msgid "Hide: Temporary Settings" #~ msgstr "Cài đặt" @@ -6844,15 +6914,25 @@ msgstr "Gặp giới hạn số lượng tệp tải xuống trong cURL" #~ msgid "Screen:" #~ msgstr "Màn hình:" +#~ msgid "Shaders" +#~ msgstr "Trình đổ bóng" + #~ msgid "Shaders (experimental)" #~ msgstr "Trình đổ bóng (thử nghiệm)" #~ msgid "Shaders (unavailable)" #~ msgstr "Trình đổ bóng (không tồn tại)" +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "Cập nhật máy ảnh đã tắt" + #~ msgid "Simple Leaves" #~ msgstr "Lá đơn giản" +#~ msgid "Sound system is disabled" +#~ msgstr "Hệ thống âm thanh đã bị vô hiệu" + #~ msgid "Texturing:" #~ msgstr "Kết cấu:" diff --git a/po/yue/luanti.po b/po/yue/luanti.po deleted file mode 100644 index 2671ce9f8..000000000 --- a/po/yue/luanti.po +++ /dev/null @@ -1,6399 +0,0 @@ -msgid "" -msgstr "" -"Project-Id-Version: minetest\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2023-12-03 17:17+0000\n" -"Last-Translator: Krock \n" -"Language-Team: Yue (Traditional) \n" -"Language: yue\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.3-dev\n" - -#: builtin/client/chatcommands.lua -msgid "Clear the out chat queue" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Empty command." -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Exit to main menu" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Invalid command: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Issued command: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "List online players" -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "Online players: " -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "The out chat queue is now empty." -msgstr "" - -#: builtin/client/chatcommands.lua -msgid "This command is disabled by server." -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Available commands:" -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Available commands: " -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Command not available: " -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "Get help for commands (-t: output in chat)" -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "" -"Use '.help ' to get more information, or '.help all' to list everything." -msgstr "" - -#: builtin/common/chatcommands.lua -msgid "[all | ] [-t]" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "An error occurred in a Lua script:" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "An error occurred:" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "Main menu" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "OK" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "Reconnect" -msgstr "" - -#: builtin/fstk/ui.lua -msgid "The server has requested a reconnect:" -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Protocol version mismatch. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Server enforces protocol version $1. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "Server supports protocol versions between $1 and $2. " -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "We only support protocol version $1." -msgstr "" - -#: builtin/mainmenu/common.lua -msgid "We support protocol versions between version $1 and $2." -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Error installing \"$1\": $2" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Failed to download \"$1\"" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "Failed to download $1" -msgstr "" - -#: builtin/mainmenu/content/contentdb.lua -msgid "" -"Failed to extract \"$1\" (insufficient disk space, unsupported file type or " -"broken archive)" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "" -"$1 downloading,\n" -"$2 queued" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "$1 downloading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "All" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Back" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "ContentDB is not available when Luanti was compiled without cURL" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Downloading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Featured" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Games" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/serverlistmgr.lua -#: src/client/game.cpp -msgid "Loading..." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Mods" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/content/dlg_package.lua -msgid "No packages could be retrieved" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "No updates" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Queued" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Texture Packs" -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "The package $1 was not found." -msgstr "" - -#: builtin/mainmenu/content/dlg_contentdb.lua -msgid "Update All [$1]" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 and $2 dependencies will be installed." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 by $2" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 required dependencies could not be found." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "$1 will be installed, and $2 dependencies will be skipped." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Already installed" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Base Game:" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua -msgid "Dependencies:" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Error getting dependencies for package $1" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install $1" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Install missing dependencies" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Not found" -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "Please check that the base game is correct." -msgstr "" - -#: builtin/mainmenu/content/dlg_install.lua -msgid "You need to install a game before you can install a mod" -msgstr "" - -#: builtin/mainmenu/content/dlg_overwrite.lua -msgid "\"$1\" already exists. Would you like to overwrite it?" -msgstr "" - -#: builtin/mainmenu/content/dlg_overwrite.lua -msgid "Overwrite" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "ContentDB page" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Description" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Donate" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Forum Topic" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Information" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Install [$1]" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Issue Tracker" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Source" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Translate" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Uninstall" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua -msgid "Update" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "Website" -msgstr "" - -#: builtin/mainmenu/content/dlg_package.lua -msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "$1 (Enabled)" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "$1 mods" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Failed to install $1 to $2" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Install: Unable to find suitable folder name for $1" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to find a valid mod, modpack, or game" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to install a $1 as a $2" -msgstr "" - -#: builtin/mainmenu/content/pkgmgr.lua -msgid "Unable to install a $1 as a texture pack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "(Enabled, has error)" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "(Unsatisfied)" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable all" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Disable modpack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable all" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Enable modpack" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "" -"Failed to enable mod \"$1\" as it contains disallowed characters. Only " -"characters [a-z0-9_] are allowed." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Find More Mods" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "Mod:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No (optional) dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No game description provided." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No hard dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No modpack description provided." -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "No optional dependencies" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua -msgid "Optional dependencies:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "World:" -msgstr "" - -#: builtin/mainmenu/dlg_config_world.lua -msgid "enabled" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "A world named \"$1\" already exists" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Additional terrain" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Altitude chill" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Altitude dry" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Biome blending" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Biomes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Caverns" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Caves" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Create" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Decorations" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Desert temples" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Development Test is meant for developers." -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "" -"Different dungeon variant generated in desert biomes (only if dungeons " -"enabled)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Dungeons" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Flat terrain" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floating landmasses in the sky" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Floatlands (experimental)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Generate non-fractal terrain: Oceans and underground" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Hills" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Humid rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Increases humidity around rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Install another game" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Lakes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Low humidity and high heat causes shallow or dry rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp -msgid "Mapgen flags" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mapgen-specific flags" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mountains" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Mud flow" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Network of tunnels and caves" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "No game selected" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces heat with altitude" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Reduces humidity with altitude" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Sea level rivers" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Smooth transition between biomes" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "" -"Structures appearing on the terrain (no effect on trees and jungle grass " -"created by v6)" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Structures appearing on the terrain, typically trees and plants" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Temperate, Desert, Jungle, Tundra, Taiga" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Terrain surface erosion" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Trees and jungle grass" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Vary river depth" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "Very large caverns deep in the underground" -msgstr "" - -#: builtin/mainmenu/dlg_create_world.lua -msgid "World name" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "Are you sure you want to delete \"$1\"?" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/tab_local.lua -msgid "Delete" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "pkgmgr: failed to delete \"$1\"" -msgstr "" - -#: builtin/mainmenu/dlg_delete_content.lua -msgid "pkgmgr: invalid path \"$1\"" -msgstr "" - -#: builtin/mainmenu/dlg_delete_world.lua -msgid "Delete World \"$1\"?" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua src/gui/guiPasswordChange.cpp -msgid "Confirm Password" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Joining $1" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Missing name" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua -#: builtin/mainmenu/tab_online.lua -msgid "Name" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_local.lua -#: builtin/mainmenu/tab_online.lua -msgid "Password" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua -msgid "Passwords do not match" -msgstr "" - -#: builtin/mainmenu/dlg_register.lua builtin/mainmenu/tab_online.lua -msgid "Register" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Dismiss" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "" -"For a long time, Luanti shipped with a default game called \"Minetest " -"Game\". Since version 5.8.0, Luanti ships without a default game." -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "" -"If you want to continue playing in your Minetest Game worlds, you need to " -"reinstall Minetest Game." -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Minetest Game is no longer installed by default" -msgstr "" - -#: builtin/mainmenu/dlg_reinstall_mtg.lua -msgid "Reinstall Minetest Game" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "Accept" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "Rename Modpack:" -msgstr "" - -#: builtin/mainmenu/dlg_rename_modpack.lua -msgid "" -"This modpack has an explicit name given in its modpack.conf which will " -"override any renaming here." -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "A new $1 version is available" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "" -"Installed version: $1\n" -"New version: $2\n" -"Visit $3 to find out how to get the newest version and stay up to date with " -"features and bugfixes." -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Later" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Never" -msgstr "" - -#: builtin/mainmenu/dlg_version_info.lua -msgid "Visit website" -msgstr "" - -#: builtin/mainmenu/init.lua -msgid "Settings" -msgstr "" - -#: builtin/mainmenu/serverlistmgr.lua -msgid "Public server list is disabled" -msgstr "" - -#: builtin/mainmenu/serverlistmgr.lua -msgid "Try reenabling public serverlist and check your internet connection." -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable automatic exposure as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable bloom as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Enable" -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "Shaders are disabled." -msgstr "" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "About" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Active Contributors" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Active renderer:" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Core Developers" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Core Team" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Open User Data Directory" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "" -"Opens the directory that contains user-provided worlds, games, mods,\n" -"and texture packs in a file manager / explorer." -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Contributors" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Previous Core Developers" -msgstr "" - -#: builtin/mainmenu/tab_about.lua -msgid "Share debug log" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Browse online content" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Browse online content [$1]" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Content" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Content [$1]" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Disable Texture Pack" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Installed Packages:" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "No dependencies." -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "No package description available" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Rename" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Update available?" -msgstr "" - -#: builtin/mainmenu/tab_content.lua -msgid "Use Texture Pack" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Announce Server" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Bind Address" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Creative Mode" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Enable Damage" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Host Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Host Server" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Install a game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Install games from ContentDB" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Luanti doesn't come with a game by default." -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "" -"Luanti is a game-creation platform that allows you to play many different " -"games." -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "New" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "No world created or selected!" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Play Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_online.lua -msgid "Port" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Select Mods" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Select World:" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Server Port" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "Start Game" -msgstr "" - -#: builtin/mainmenu/tab_local.lua -msgid "You need to install a game before you can create a world." -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Address" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Creative mode" -msgstr "" - -#. ~ PvP = Player versus Player -#: builtin/mainmenu/tab_online.lua -msgid "Damage / PvP" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Favorites" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Incompatible Servers" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Join Game" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Login" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Ping" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Public Servers" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Refresh" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Remove favorite" -msgstr "" - -#: builtin/mainmenu/tab_online.lua -msgid "Server Description" -msgstr "" - -#: src/client/client.cpp -msgid "Connection aborted (protocol error?)." -msgstr "" - -#: src/client/client.cpp src/client/game.cpp -msgid "Connection timed out." -msgstr "" - -#: src/client/client.cpp -msgid "Done!" -msgstr "" - -#: src/client/client.cpp -msgid "Initializing nodes" -msgstr "" - -#: src/client/client.cpp -msgid "Initializing nodes..." -msgstr "" - -#: src/client/client.cpp -msgid "Loading textures..." -msgstr "" - -#: src/client/client.cpp -msgid "Rebuilding shaders..." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Could not find or load game: " -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Main Menu" -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "No world selected and no address provided. Nothing to do." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Player name too long." -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Please choose a name!" -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Provided password file failed to open: " -msgstr "" - -#: src/client/clientlauncher.cpp -msgid "Provided world path doesn't exist: " -msgstr "" - -#: src/client/clientmedia.cpp src/client/game.cpp -msgid "Media..." -msgstr "" - -#: src/client/game.cpp src/client/shader.cpp src/server.cpp -msgid "" -"\n" -"Check debug.txt for details." -msgstr "" - -#: src/client/game.cpp -msgid "- Mode: " -msgstr "" - -#: src/client/game.cpp -msgid "- Public: " -msgstr "" - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "" - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "" - -#: src/client/game.cpp -msgid "A serialization error occurred:" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Access denied. Reason: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Automatic forward disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Automatic forward enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds hidden" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds shown for current block" -msgstr "" - -#: src/client/game.cpp -msgid "Block bounds shown for nearby blocks" -msgstr "" - -#: src/client/game.cpp -msgid "Camera update disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Camera update enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Can't show block bounds (disabled by game or mod)" -msgstr "" - -#: src/client/game.cpp -msgid "Change Password" -msgstr "" - -#: src/client/game.cpp -msgid "Cinematic mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Cinematic mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Client disconnected" -msgstr "" - -#: src/client/game.cpp -msgid "Client side scripting is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Connecting to server..." -msgstr "" - -#: src/client/game.cpp -msgid "Connection error (timed out?)" -msgstr "" - -#: src/client/game.cpp -msgid "Connection failed for unknown reason" -msgstr "" - -#: src/client/game.cpp -msgid "Continue" -msgstr "" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Couldn't resolve address: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Creating client..." -msgstr "" - -#: src/client/game.cpp -msgid "Creating server..." -msgstr "" - -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "" - -#: src/client/game.cpp -msgid "Debug info shown" -msgstr "" - -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Error creating client: %s" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fast mode enabled (note: no 'fast' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fly mode enabled (note: no 'fly' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Fog disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fog enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Fog enabled by game or mod" -msgstr "" - -#: src/client/game.cpp -msgid "Game info:" -msgstr "" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "" - -#: src/client/game.cpp -msgid "Item definitions..." -msgstr "" - -#: src/client/game.cpp -msgid "KiB/s" -msgstr "" - -#: src/client/game.cpp -msgid "MiB/s" -msgstr "" - -#: src/client/game.cpp -msgid "Minimap currently disabled by game or mod" -msgstr "" - -#: src/client/game.cpp -msgid "Multiplayer" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Noclip mode enabled (note: no 'noclip' privilege)" -msgstr "" - -#: src/client/game.cpp -msgid "Node definitions..." -msgstr "" - -#: src/client/game.cpp -msgid "Off" -msgstr "" - -#: src/client/game.cpp -msgid "On" -msgstr "" - -#: src/client/game.cpp -msgid "Pitch move mode disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Pitch move mode enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Profiler graph shown" -msgstr "" - -#: src/client/game.cpp -msgid "Remote server" -msgstr "" - -#: src/client/game.cpp -msgid "Resolving address..." -msgstr "" - -#: src/client/game.cpp -msgid "Respawn" -msgstr "" - -#: src/client/game.cpp -msgid "Shutting down..." -msgstr "" - -#: src/client/game.cpp -msgid "Singleplayer" -msgstr "" - -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "" - -#: src/client/game.cpp -msgid "Sound muted" -msgstr "" - -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Sound system is not supported on this build" -msgstr "" - -#: src/client/game.cpp -msgid "Sound unmuted" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "The server is probably running a different version of %s." -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Unable to connect to %s because IPv6 is disabled" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Unable to listen on %s because IPv6 is disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range disabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range enabled" -msgstr "" - -#: src/client/game.cpp -msgid "Unlimited viewing range enabled, but forbidden by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing changed to %d (the minimum)" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing changed to %d (the minimum), but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d (the maximum)" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "" -"Viewing range changed to %d (the maximum), but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Viewing range changed to %d, but limited to %d by game or mod" -msgstr "" - -#: src/client/game.cpp -#, c-format -msgid "Volume changed to %d%%" -msgstr "" - -#: src/client/game.cpp -msgid "Wireframe shown" -msgstr "" - -#: src/client/game.cpp -msgid "You died" -msgstr "" - -#: src/client/game.cpp -msgid "Zoom currently disabled by game or mod" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat currently disabled by game or mod" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat hidden" -msgstr "" - -#: src/client/gameui.cpp -msgid "Chat shown" -msgstr "" - -#: src/client/gameui.cpp -msgid "HUD hidden" -msgstr "" - -#: src/client/gameui.cpp -msgid "HUD shown" -msgstr "" - -#: src/client/gameui.cpp -msgid "Profiler hidden" -msgstr "" - -#: src/client/gameui.cpp -#, c-format -msgid "Profiler shown (page %d of %d)" -msgstr "" - -#: src/client/keycode.cpp -msgid "Apps" -msgstr "" - -#: src/client/keycode.cpp -msgid "Backspace" -msgstr "" - -#. ~ Usually paired with the Pause key -#: src/client/keycode.cpp -msgid "Break Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Caps Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Clear Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Control Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Delete Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Down Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "End" -msgstr "" - -#: src/client/keycode.cpp -msgid "Erase EOF" -msgstr "" - -#: src/client/keycode.cpp -msgid "Execute" -msgstr "" - -#: src/client/keycode.cpp -msgid "Help" -msgstr "" - -#: src/client/keycode.cpp -msgid "Home" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Accept" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Convert" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Escape" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Mode Change" -msgstr "" - -#: src/client/keycode.cpp -msgid "IME Nonconvert" -msgstr "" - -#: src/client/keycode.cpp -msgid "Insert" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Control" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Menu" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Left Windows" -msgstr "" - -#. ~ Key name, common on Windows keyboards -#: src/client/keycode.cpp -msgid "Menu Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Middle Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Num Lock" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad *" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad +" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad -" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad ." -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad /" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 0" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 1" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 2" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 3" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 4" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 5" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 6" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 7" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 8" -msgstr "" - -#: src/client/keycode.cpp -msgid "Numpad 9" -msgstr "" - -#: src/client/keycode.cpp -msgid "OEM Clear" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Down" -msgstr "" - -#: src/client/keycode.cpp -msgid "Page Up" -msgstr "" - -#. ~ Usually paired with the Break key -#: src/client/keycode.cpp -msgid "Pause Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Play" -msgstr "" - -#. ~ "Print screen" key -#: src/client/keycode.cpp -msgid "Print" -msgstr "" - -#: src/client/keycode.cpp -msgid "Return Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Button" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Control" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Menu" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Shift" -msgstr "" - -#: src/client/keycode.cpp -msgid "Right Windows" -msgstr "" - -#: src/client/keycode.cpp -msgid "Scroll Lock" -msgstr "" - -#. ~ Key name -#: src/client/keycode.cpp -msgid "Select" -msgstr "" - -#: src/client/keycode.cpp -msgid "Shift Key" -msgstr "" - -#: src/client/keycode.cpp -msgid "Sleep" -msgstr "" - -#: src/client/keycode.cpp -msgid "Snapshot" -msgstr "" - -#: src/client/keycode.cpp -msgid "Space" -msgstr "" - -#: src/client/keycode.cpp -msgid "Tab" -msgstr "" - -#: src/client/keycode.cpp -msgid "Up Arrow" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 1" -msgstr "" - -#: src/client/keycode.cpp -msgid "X Button 2" -msgstr "" - -#: src/client/keycode.cpp -msgid "Zoom Key" -msgstr "" - -#: src/client/minimap.cpp -msgid "Minimap hidden" -msgstr "" - -#: src/client/minimap.cpp -#, c-format -msgid "Minimap in radar mode, Zoom x%d" -msgstr "" - -#: src/client/minimap.cpp -#, c-format -msgid "Minimap in surface mode, Zoom x%d" -msgstr "" - -#: src/client/minimap.cpp -msgid "Minimap in texture mode" -msgstr "" - -#: src/client/shader.cpp -#, c-format -msgid "Failed to compile the \"%s\" shader." -msgstr "" - -#: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." -msgstr "" - -#. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" -#: src/content/mod_configuration.cpp -#, c-format -msgid "%s is missing:" -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "" -"Install and enable the required mods, or disable the mods causing errors." -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "" -"Note: this may be caused by a dependency cycle, in which case try updating " -"the mods." -msgstr "" - -#: src/content/mod_configuration.cpp -msgid "Some mods have unsatisfied dependencies:" -msgstr "" - -#: src/gui/guiChatConsole.cpp -msgid "Failed to open webpage" -msgstr "" - -#: src/gui/guiChatConsole.cpp -msgid "Opening webpage" -msgstr "" - -#: src/gui/guiFormSpecMenu.cpp -msgid "Proceed" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "\"Aux1\" = climb down" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Autoforward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/settings_translation_file.cpp -msgid "Automatic jumping" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Aux1" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Backward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Block bounds" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Change camera" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Command" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Console" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Dec. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Double tap \"jump\" to toggle fly" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Drop" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Forward" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. range" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Inc. volume" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Inventory" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Jump" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Key already in use" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Keybindings." -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Left" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Local command" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Mute" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Next item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Prev. item" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Range select" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Right" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Screenshot" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Sneak" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle HUD" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle chat log" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fast" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle fly" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle fog" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle minimap" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Toggle noclip" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "Toggle pitchmove" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp -msgid "Zoom" -msgstr "" - -#: src/gui/guiKeyChangeMenu.cpp -msgid "press key" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Open" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Open URL?" -msgstr "" - -#: src/gui/guiOpenURL.cpp -msgid "Unable to open URL" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Change" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "New Password" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Old Password" -msgstr "" - -#: src/gui/guiPasswordChange.cpp -msgid "Passwords do not match!" -msgstr "" - -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp -msgid "Exit" -msgstr "" - -#: src/gui/guiVolumeChange.cpp -msgid "Muted" -msgstr "" - -#: src/gui/guiVolumeChange.cpp -#, c-format -msgid "Sound Volume: %d%%" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Joystick" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" -msgstr "" - -#: src/gui/touchcontrols.cpp -msgid "Toggle debug" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Another client is connected with this name. If your client closed " -"unexpectedly, try again in a minute." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Internal server error" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Invalid password" -msgstr "" - -#. ~ DO NOT TRANSLATE THIS LITERALLY! -#. This is a special string which needs to contain the translation's -#. language code (e.g. "de" for German). -#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp -#: src/script/lua_api/l_mainmenu.cpp -msgid "LANG_CODE" -msgstr "yue_Hant" - -#: src/network/clientpackethandler.cpp -msgid "" -"Name is not registered. To create an account on this server, click 'Register'" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Name is taken. Please choose another name" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name contains disallowed characters" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Player name not allowed" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Server shutting down" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"The server has experienced an internal error. You will now be disconnected." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Too many users" -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "Unknown disconnect reason." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Your client sent something the server didn't expect. Try reconnecting or " -"updating your client." -msgstr "" - -#: src/network/clientpackethandler.cpp -msgid "" -"Your client's version is not supported.\n" -"Please contact the server administrator." -msgstr "" - -#: src/server.cpp -#, c-format -msgid "%s while shutting down: " -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"(X,Y,Z) offset of fractal from world center in units of 'scale'.\n" -"Can be used to move a desired point to (0, 0) to create a\n" -"suitable spawn point, or to allow 'zooming in' on a desired\n" -"point by increasing 'scale'.\n" -"The default is tuned for a suitable spawn point for Mandelbrot\n" -"sets with default parameters, it may need altering in other\n" -"situations.\n" -"Range roughly -2 to 2. Multiply by 'scale' for offset in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"(X,Y,Z) scale of fractal in nodes.\n" -"Actual fractal size will be 2 to 3 times larger.\n" -"These numbers can be made very large, the fractal does\n" -"not have to fit inside the world.\n" -"Increase these to 'zoom' into the detail of the fractal.\n" -"Default is for a vertically-squashed shape suitable for\n" -"an island, set all 3 numbers equal for the raw shape." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of ridged mountains." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of rolling hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the shape/size of step mountains." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of ridged mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of rolling hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that controls the size/occurrence of step mountain ranges." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "2D noise that locates the river valleys and channels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D mode parallax strength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining giant caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining mountain structure and height.\n" -"Also defines structure of floatland mountain terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D noise defining structure of floatlands.\n" -"If altered from the default, the noise 'scale' (0.7 by default) may need\n" -"to be adjusted, as floatland tapering functions best when this noise has\n" -"a value range of approximately -2.0 to 2.0." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining structure of river canyon walls." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise defining terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise for mountain overhangs, cliffs, etc. Usually small variations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "3D noise that determines number of dungeons per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"3D support.\n" -"Currently supported:\n" -"- none: no 3d output.\n" -"- anaglyph: cyan/magenta color 3d.\n" -"- interlaced: odd/even line based polarization screen support.\n" -"- topbottom: split screen top/bottom.\n" -"- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"A chosen map seed for a new map, leave empty for random.\n" -"Will be overridden when creating a new world in the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server crashes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "A message to be displayed to all clients when the server shuts down." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ABM time budget" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Absolute limit of queued blocks to emerge" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration in air" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Acceleration of gravity, in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active block management interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active block range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Active object send range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Adjust the detected display density, used for scaling UI elements." -msgstr "" - -#: src/settings_translation_file.cpp -#, c-format -msgid "" -"Adjusts the density of the floatland layer.\n" -"Increase value to increase density. Can be positive or negative.\n" -"Value = 0.0: 50% of volume is floatland.\n" -"Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" -"to be sure) creates a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Admin name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Advanced" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Allows liquids to be translucent." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Alters the light curve by applying 'gamma correction' to it.\n" -"Higher values make middle and lower light levels brighter.\n" -"Value '1.0' leaves the light curve unaltered.\n" -"This only has significant effect on daylight and artificial\n" -"light, it has very little effect on natural night light." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Always fly fast" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ambient occlusion gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Amplifies the valleys." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anisotropic filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Announce server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Announce to this serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anti-aliasing scale" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Antialiasing method" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Anticheat movement tolerance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Append item name to tooltip." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Apple trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Apply dithering to reduce color banding artifacts.\n" -"Dithering significantly increases the size of losslessly-compressed\n" -"screenshots and it works incorrectly if the display or operating system\n" -"performs additional dithering or if the color channels are not quantized\n" -"to 8 bits.\n" -"With OpenGL ES, dithering only works if the shader supports high\n" -"floating-point precision and it may have a higher performance impact." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Apply specular shading to nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Arm inertia" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Arm inertia, gives a more realistic movement of\n" -"the arm when the camera moves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ask to reconnect after crash" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"At this distance the server will aggressively optimize which blocks are sent " -"to\n" -"clients.\n" -"Small values potentially improve performance a lot, at the expense of " -"visible\n" -"rendering glitches (some blocks might not be rendered correctly in caves).\n" -"Setting this to a value greater than max_block_send_distance disables this\n" -"optimization.\n" -"Stated in MapBlocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"At this distance the server will perform a simpler and cheaper occlusion " -"check.\n" -"Smaller values potentially improve performance, at the expense of " -"temporarily visible\n" -"rendering glitches (missing blocks).\n" -"This is especially useful for very large viewing range (upwards of 500).\n" -"Stated in MapBlocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Audio" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically jump up single-node obstacles." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Automatically report to the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Autoscaling mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Aux1 key for climbing/descending" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base terrain height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Base texture size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Basic privileges" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Beach noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bind address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome API" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Biome noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block bounds HUD radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block cull optimize distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Block send optimize distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bobbing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold and italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Bold monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Build inside player" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Builtin" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera smoothing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Camera smoothing in cinematic mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #1" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave noise #2" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cave2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern taper" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cavern upper limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Center of light curve boost range.\n" -"Where 0.0 is minimum light level, 1.0 is maximum light level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat command time message threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat commands" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message count limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message kick threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat message max length" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chat weblinks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Chunk size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Clickable weblinks (middle-click or Ctrl+left-click) enabled in chat console " -"output." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client Mesh Chunksize" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client and Server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client modding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client side modding restrictions" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client-side Modding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Client-side node lookup range restriction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Climbing speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Cloud radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Clouds in menu" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Colored shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of AL and ALC extensions that should not be used.\n" -"Useful for testing. See al_extensions.[h,cpp] for details." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of flags to hide in the content repository.\n" -"\"nonfree\" can be used to hide packages which do not qualify as 'free " -"software',\n" -"as defined by the Free Software Foundation.\n" -"You can also specify content ratings.\n" -"These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of mods that are allowed to access HTTP APIs, which\n" -"allow them to upload and download data to/from the internet." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Comma-separated list of trusted mods that are allowed to access insecure\n" -"functions even when mod security is on (via request_insecure_environment())." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Compression level to use when saving mapblocks to disk.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Compression level to use when sending mapblocks to the client.\n" -"-1 - use default compression level\n" -"0 - least compression, fastest\n" -"9 - best compression, slowest" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connect glass" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connect to external media server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Connects glass if supported by node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Console height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Content Repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB Flag Blacklist" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB Max Concurrent Downloads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "ContentDB URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls length of day/night cycle.\n" -"Examples:\n" -"72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays unchanged." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls sinking speed in liquid when idling. Negative values will cause\n" -"you to rise instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Controls steepness/depth of lake depressions." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Controls steepness/height of hills." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Controls width of tunnels, a smaller value creates wider tunnels.\n" -"Value >= 10.0 completely disables generation of tunnels and avoids the\n" -"intensive noise calculations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crash message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair alpha (opaqueness, between 0 and 255).\n" -"This also applies to the object crosshair." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Crosshair color (R,G,B).\n" -"Also controls the object crosshair color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log file size threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debug log level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Debugging" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dedicated server step" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Default maximum number of forceloaded mapblocks.\n" -"Set this to -1 to disable the limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default password" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default privileges" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default report format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Default stack size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Define shadow filtering quality.\n" -"This simulates the soft shadows effect by applying a PCF or Poisson disk\n" -"but also uses more resources." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Define the oldest clients allowed to connect.\n" -"Older clients are compatible in the sense that they will not crash when " -"connecting\n" -"to new servers, but they may not support all new features that you are " -"expecting.\n" -"This allows for more fine-grained control than " -"strict_protocol_version_checking.\n" -"Luanti still enforces its own internal minimum, and enabling\n" -"strict_protocol_version_checking will effectively override this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas where trees have apples." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines areas with sandy beaches." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain and steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines distribution of higher terrain." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines full size of caverns, smaller values create larger caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines large-scale river channel structure." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines location and terrain of optional hills and lakes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the base ground level." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the depth of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the maximal player transfer distance in blocks (0 = unlimited)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Defines the size of the sampling grid for FSAA and SSAA antialiasing " -"methods.\n" -"Value of 2 means taking 2x2 = 4 samples." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river channel." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines the width of the river valley." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Defines tree areas and tree density." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Delay between mesh updates on the client in ms. Increasing this will slow\n" -"down the rate of mesh updates, thus reducing jitter on slower clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay in sending blocks after building" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Delay showing tooltips, stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Deprecated Lua API handling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find giant caverns." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Depth below which you'll find large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Description of server, to be displayed when players join and in the " -"serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Desert noise threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Deserts occur when np_biome exceeds this value.\n" -"When the 'snowbiomes' flag is enabled, this is ignored." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Developer Options" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Disallow empty passwords" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Display Density Scaling Factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Distance in nodes at which transparency depth sorting is enabled.\n" -"Use this to limit the performance impact of transparency depth sorting.\n" -"Set to 0 to disable it entirely." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Domain name of server, to be displayed in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Double tap jump for fly" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Double-tapping the jump key toggles fly mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dump the mapgen debug information." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Dungeon noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Automatic Exposure" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Bloom" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Bloom Debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Debanding" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable IPv6 support (for both client and server).\n" -"Required for IPv6 connections to work at all." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Lua modding support on client.\n" -"This support is experimental and API can change." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable Poisson disk filtering.\n" -"On true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF " -"filtering." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable Raytraced Culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable automatic exposure correction\n" -"When enabled, the post-processing engine will\n" -"automatically adjust to the brightness of the scene,\n" -"simulating the behavior of human eye." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable console window" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable joysticks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable joysticks. Requires a restart to take effect" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod channels support." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mod security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable mouse wheel (scroll) for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random mod loading (mainly used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable random user input (only used for testing)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable split login/register" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable to disallow old clients from connecting.\n" -"Older clients are compatible in the sense that they will not crash when " -"connecting\n" -"to new servers, but they may not support all new features that you are " -"expecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enable updates available indicator on content tab" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable usage of remote media server (if provided by server).\n" -"Remote servers offer a significantly faster way to download media (e.g. " -"textures)\n" -"when connecting to the server." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable view bobbing and amount of view bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables Hable's 'Uncharted 2' filmic tone mapping.\n" -"Simulates the tone curve of photographic film and how this approximates the\n" -"appearance of high dynamic range images. Mid-range contrast is slightly\n" -"enhanced, highlights and shadows are gradually compressed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables animation of inventory items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables debug and error-checking in the OpenGL driver." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables smooth scrolling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Enables the post processing pipeline." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables the touchscreen controls, allowing you to play the game with a " -"touchscreen.\n" -"\"auto\" means that the touchscreen controls will be enabled and disabled\n" -"automatically depending on the last used input method." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Enables tradeoffs that reduce CPU load or increase rendering performance\n" -"at the expense of minor visual glitches that do not impact game playability." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Engine profiling data print interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Entity methods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Exponent of the floatland tapering. Alters the tapering behavior.\n" -"Value = 1.0 creates a uniform, linear tapering.\n" -"Values > 1.0 create a smooth tapering suitable for the default separated\n" -"floatlands.\n" -"Values < 1.0 (for example 0.25) create a more defined surface level with\n" -"flatter lowlands, suitable for a solid floatland layer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Exposure compensation" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "FPS when unfocused or paused" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Factor noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fall bobbing factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fallback font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode acceleration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fast mode speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Field of view in degrees." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"File in client/serverlist/ that contains your favorite servers displayed in " -"the\n" -"Multiplayer Tab." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filler depth noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filmic tone mapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Filtering and Antialiasing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "First of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed map seed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fixed virtual joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Fixes the position of virtual joystick.\n" -"If disabled, virtual joystick will center to first-touch's position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland density" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland maximum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland minimum Y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland taper exponent" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland tapering distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Floatland water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fog start" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font bold by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font italic by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font shadow alpha" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the default font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Font size of the monospace font where 1 unit = 1 pixel at 96 DPI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Font size of the recent chat text and chat prompt in point (pt).\n" -"Value 0 will use the default font size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"For pixel-style fonts that do not scale well, this ensures that font sizes " -"used\n" -"with this font will always be divisible by this value, in pixels. For " -"instance,\n" -"a pixel font 16 pixels tall should have this set to 16, so it will only ever " -"be\n" -"sized 16, 32, 48, etc., so a mod requesting a size of 25 will get 32." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Format of player chat messages. The following strings are valid " -"placeholders:\n" -"@name, @message, @timestamp (optional)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Format of screenshots." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec Full-Screen Background Opacity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Formspec full-screen background opacity (between 0 and 255)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fourth of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fractal type" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fraction of the visible distance at which fog starts to be rendered" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far blocks are generated for clients, stated in mapblocks (16 " -"nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"From how far clients know about objects, stated in mapblocks (16 nodes).\n" -"\n" -"Setting this larger than active_block_range will also cause the server\n" -"to maintain active objects up to this distance in the direction the\n" -"player is looking. (This can avoid mobs suddenly disappearing from view)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Full screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Fullscreen mode." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Gamepads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Global callbacks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Global map generation attributes.\n" -"In Mapgen v6 the 'decorations' flag controls all decorations except trees\n" -"and jungle grass, in all other mapgens this flag controls all decorations." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at maximum light level.\n" -"Controls the contrast of the highest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Gradient of light curve at minimum light level.\n" -"Controls the contrast of the lowest light levels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Graphics and Audio" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Gravity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ground level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ground noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HTTP mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HUD" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "HUD scaling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Handling for deprecated Lua API calls:\n" -"- none: Do not log deprecated calls\n" -"- log: mimic and log backtrace of deprecated call (default).\n" -"- error: abort on usage of deprecated call (suggested for mod developers)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Have the profiler instrument itself:\n" -"* Instrument an empty function.\n" -"This estimates the overhead, that instrumentation is adding (+1 function " -"call).\n" -"* Instrument the sampler being used to update the statistics." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Heat noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Height select noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hill steepness" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hill threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness1 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness2 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness3 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hilliness4 noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Homepage of server, to be displayed in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal acceleration in air when jumping or falling,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration in fast mode,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Horizontal and vertical acceleration on ground or when climbing,\n" -"in nodes per second per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Enable mouse wheel for selection" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Hotbar: Invert mouse wheel direction" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How deep to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How fast liquid waves will move. Higher = faster.\n" -"If negative, liquid waves will move backwards." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How long the server will wait before unloading unused mapblocks, stated in " -"seconds.\n" -"Higher value is smoother, but will use more RAM." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"How much you are slowed down when moving inside a liquid.\n" -"Decrease this to increase liquid resistance to movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "How wide to make rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity blend noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Humidity variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "IPv6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "IPv6 server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If FPS would go higher than this, limit it by sleeping\n" -"to not waste CPU power for no benefit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If disabled, \"Aux1\" key is used to fly fast if both fly and fast mode are\n" -"enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled and you have ContentDB packages installed, Luanti may contact " -"ContentDB to\n" -"check for package updates when opening the mainmenu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, \"Aux1\" key instead of \"Sneak\" key is used for climbing down " -"and\n" -"descending." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, actions are recorded for rollback.\n" -"This option is only read when server starts." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, invalid world data won't cause the server to shut down.\n" -"Only enable this if you know what you are doing." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, players cannot join without a password or change theirs to an " -"empty password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, the server will perform map block occlusion culling based on\n" -"on the eye position of the player. This can reduce the number of blocks\n" -"sent to the client by 50-80%. Clients will no longer receive most\n" -"invisible blocks, so that the utility of noclip mode is reduced." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If enabled, you can place nodes at the position (feet + eye level) where you " -"stand.\n" -"This is helpful when working with nodeboxes in small areas." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the CSM restriction for node range is enabled, get_node calls are " -"limited\n" -"to this distance from the player to the node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the execution of a chat command takes longer than this specified time in\n" -"seconds, add the time information to the chat command message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"If the file size of debug.txt exceeds the number of megabytes specified in\n" -"this setting when it is opened, the file is moved to debug.txt.1,\n" -"deleting an older debug.txt.1 if it exists.\n" -"debug.txt is only moved if this setting is positive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "If this is set, players will always (re)spawn at the given position." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ignore world errors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console background alpha (opaqueness, between 0 and 255)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console background color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "In-game chat console height, between 0.1 (10%) and 1.0 (100%)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Initial vertical speed when jumping, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument builtin.\n" -"This is usually only needed by core/builtin contributors" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument chat commands on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument global callback functions on registration.\n" -"(anything you pass to a core.register_*() function)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Active Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Instrument the action function of Loading Block Modifiers on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Instrument the methods of entities on registration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of saving important changes in the world, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Inventory items animations" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert mouse wheel (scroll) direction for item selection in hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Invert vertical mouse movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Italic monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Item entity TTL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Iterations" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Iterations of the recursive function.\n" -"Increasing this increases the amount of fine detail, but also\n" -"increases processing load.\n" -"At iterations = 20 this mapgen has a similar load to mapgen V7." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick ID" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick button repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick dead zone" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick frustum sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Joystick type" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"W component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"X component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"Y component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Julia set only.\n" -"Z component of hypercomplex constant.\n" -"Alters the shape of the fractal.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia w" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia x" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia y" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Julia z" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Jumping speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Keyboard and Mouse" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Kick players who sent more than X messages per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lake steepness" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lake threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Language" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Large cave proportion flooded" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Leaves style" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Leaves style:\n" -"- Fancy: all faces visible\n" -"- Simple: only outer faces\n" -"- Opaque: disable transparency" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of a server tick (the interval at which everything is generally " -"updated),\n" -"stated in seconds.\n" -"Does not apply to sessions hosted from the client menu.\n" -"This is a lower bound, i.e. server steps may not be shorter than this, but\n" -"they are often longer." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of liquid waves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between Active Block Modifier (ABM) execution cycles, stated " -"in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Length of time between NodeTimer execution cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Length of time between active block management cycles, stated in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Level of logging to be written to debug.txt:\n" -"- (no logging)\n" -"- none (messages with no level)\n" -"- error\n" -"- warning\n" -"- action\n" -"- info\n" -"- verbose\n" -"- trace" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost center" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve boost spread" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve high gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Light curve low gradient" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Limit of map generation, in nodes, in all 6 directions from (0, 0, 0).\n" -"Only mapchunks completely within the mapgen limit are generated.\n" -"Value is stored per-world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Limits number of parallel HTTP requests. Affects:\n" -"- Media fetch if server uses remote_media setting.\n" -"- Serverlist download and server announcement.\n" -"- Downloads performed by main menu (e.g. mod manager).\n" -"Only has an effect if compiled with cURL." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid fluidity smoothing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid loop max" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid queue purge time" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid reflections" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid sinking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid update interval in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Liquid update tick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Load the game profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Load the game profiler to collect game profiling data.\n" -"Provides a /profiler command to access the compiled profile.\n" -"Useful for mod developers and server operators." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Loading Block Modifiers" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Lower Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Main menu script" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Make fog and sky colors depend on daytime (dawn/sunset) and view direction." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Disk Storage" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map Compression Level for Network Transfer" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map directory" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen Carpathian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Flat.\n" -"Occasional lakes and hills can be added to the flat world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Fractal.\n" -"'terrain' enables the generation of non-fractal terrain:\n" -"ocean, islands and underground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen Valleys.\n" -"'altitude_chill': Reduces heat with altitude.\n" -"'humid_rivers': Increases humidity around rivers.\n" -"'vary_river_depth': If enabled, low humidity and high heat causes rivers\n" -"to become shallower and occasionally dry.\n" -"'altitude_dry': Reduces humidity with altitude." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation attributes specific to Mapgen v5." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v6.\n" -"The 'snowbiomes' flag enables the new 5 biome system.\n" -"When the 'snowbiomes' flag is enabled jungles are automatically enabled and\n" -"the 'jungles' flag is ignored.\n" -"The 'temples' flag disables generation of desert temples. Normal dungeons " -"will appear instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Map generation attributes specific to Mapgen v7.\n" -"'ridges': Rivers.\n" -"'floatlands': Floating land masses in the atmosphere.\n" -"'caverns': Giant caves deep underground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map generation limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map save interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Map shadows update frames" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock limit" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock mesh generation delay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock mesh generation threads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapblock unload timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Carpathian specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Flat" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Flat specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Fractal" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Fractal specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V5 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V6 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen V7 specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Valleys" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen Valleys specific flags" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mapgen name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max block generate distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max block send distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max liquids processed per step." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max. clearobjects extra blocks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Max. packets per iteration" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum FPS when the window is not focused, or when the game is paused." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum distance to render shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum forceloaded blocks" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum hotbar width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum liquid resistance. Controls deceleration when entering liquid at\n" -"high speed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks that are simultaneously sent per client.\n" -"The maximum total count is calculated dynamically:\n" -"max_total = ceil((#clients + max_users) * per_client / 4)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of blocks that can be queued for loading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks to be queued that are to be generated.\n" -"This limit is enforced per player." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of blocks to be queued that are to be loaded from file.\n" -"This limit is enforced per player." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of concurrent downloads. Downloads exceeding this limit will " -"be queued.\n" -"This should be lower than curl_parallel_limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of mapblocks for client to be kept in memory.\n" -"Set to -1 for unlimited amount." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum number of packets sent per send step in the low-level networking " -"code.\n" -"You generally don't need to change this, however busy servers may benefit " -"from a higher number." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of players that can be connected simultaneously." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of recent chat messages to show" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum number of statically stored objects in a block." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum objects per block" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum proportion of current window to be used for hotbar.\n" -"Useful if there's something to be displayed right or left of hotbar." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum simultaneous block sends per client" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum size of the outgoing chat queue" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum size of the outgoing chat queue.\n" -"0 to disable queueing and -1 to make the queue size unlimited." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum time a file download (e.g. a mod download) may take, stated in " -"milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Maximum time an interactive request (e.g. server list fetch) may take, " -"stated in milliseconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Maximum users" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Message of the day" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Message of the day displayed to players connecting." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Method used to highlight selected object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimal level of logging to be written to chat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimap scan height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum dig repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of large caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Minimum limit of random number of small caves per mapchunk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mipmapping" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Miscellaneous" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mod channels" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Modifies the size of the HUD elements." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Monospace font size divisible by" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain height noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain variation noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mountain zero level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mouse sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Movement threshold" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mud noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Multiplier for fall bobbing.\n" -"For example: 0 for no view bobbing; 1.0 for normal; 2.0 for double." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Mute sound" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of map generator to be used when creating a new world.\n" -"Creating a world in the main menu will override this.\n" -"Current mapgens in a highly unstable state:\n" -"- The optional floatlands of v7 (disabled by default)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" -"When starting from the main menu, this is overridden." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Name of the server, to be displayed when players join and in the serverlist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Network port to listen (UDP).\n" -"This value will be overridden when starting from the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Networking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "New users need to input this password." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node and Entity Highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node highlighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Node specular" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "NodeTimer interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Noises" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Number of emerge threads" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of emerge threads to use.\n" -"Value 0:\n" -"- Automatic selection. The number of emerge threads will be\n" -"- 'number of processors - 2', with a lower limit of 1.\n" -"Any other value:\n" -"- Specifies the number of emerge threads, with a lower limit of 1.\n" -"WARNING: Increasing the number of emerge threads increases engine mapgen\n" -"speed, but this may harm game performance by interfering with other\n" -"processes, especially in singleplayer and/or when running Lua code in\n" -"'on_generated'. For many users the optimum setting may be '1'." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of extra blocks that can be loaded by /clearobjects at once.\n" -"This is a trade-off between SQLite transaction overhead and\n" -"memory consumption (4096=100MB, as a rule of thumb)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Number of messages a player may send per 10 seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Number of threads to use for mesh generation.\n" -"Value of 0 (default) will let Luanti autodetect the number of available " -"threads." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Occlusion Culler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Occlusion Culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Opaqueness (alpha) of the shadow behind the default font, between 0 and 255." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Open the pause menu when the window's focus is lost. Does not pause if a " -"formspec is\n" -"open." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "OpenGL debug" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Optimize GUI for touchscreens" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Optional override for chat weblink color." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Other Effects" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path of the fallback font. Must be a TrueType font.\n" -"This font will be used for certain languages or if the default font is " -"unavailable." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to save screenshots at. Can be an absolute or relative path.\n" -"The folder will be created if it doesn't already exist." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to shader directory. If no path is defined, default location will be " -"used." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the default font. Must be a TrueType font.\n" -"The fallback font will be used if the font cannot be loaded." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Path to the monospace font. Must be a TrueType font.\n" -"This font is used for e.g. the console and profiler screen." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Pause on lost window focus" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks load from disk" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Per-player limit of queued blocks to generate" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Physics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Place repetition interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Poisson filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Post Processing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prevent digging and placing from repeating when holding the respective " -"buttons.\n" -"Enable this when you dig or place too often by accident.\n" -"On touchscreens, this only affects digging." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prevent mods from doing insecure things like running shell commands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Print the engine's profiling data in regular intervals (in seconds).\n" -"0 = disable. Useful for developers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Privileges that players with basic_privs can grant" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Profiler" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Prometheus listener address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Prometheus listener address.\n" -"If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" -"enable metrics listener for Prometheus on that address.\n" -"Metrics can be fetched on http://127.0.0.1:30000/metrics" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Proportion of large caves that contain liquid." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Protocol version minimum" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Punch gesture" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Radius of cloud area stated in number of 64 node cloud squares.\n" -"Values larger than 26 will start to produce sharp cutoffs at cloud area " -"corners." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Radius to use when the block bounds HUD feature is set to near blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Raises terrain to make valleys around the rivers." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random input" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Random mod load order" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Recent Chat Messages" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Regular font path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Remember screen size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Remote media" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Remove color codes from incoming chat messages\n" -"Use this to stop players from being able to use color in their messages" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Replaces the default main menu with a custom one." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Report path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Restricts the access of certain client-side functions on servers.\n" -"Combine the byteflags below to restrict client-side features, or set to 0\n" -"for no restrictions:\n" -"LOAD_CLIENT_MODS: 1 (disable loading client-provided mods)\n" -"CHAT_MESSAGES: 2 (disable send_chat_message call client-side)\n" -"READ_ITEMDEFS: 4 (disable get_item_def call client-side)\n" -"READ_NODEDEFS: 8 (disable get_node_def call client-side)\n" -"LOOKUP_NODES_LIMIT: 16 (limits get_node call client-side to\n" -"csm_restriction_noderange)\n" -"READ_PLAYERINFO: 32 (disable get_player_names call client-side)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridge underwater noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Ridged mountain size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River channel width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "River valley width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rollback recording" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hill size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Rolling hills spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Safe digging and placing" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sandy beaches occur when np_beach exceeds this value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Save the map received by the client on disk." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Save window size automatically when modified.\n" -"If true, screen size is saved in screen_w and screen_h, and whether the " -"window\n" -"is maximized is stored in window_maximized.\n" -"(Autosaving window_maximized only works if compiled with SDL.)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Saving map received from server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Scale GUI by a user specified value.\n" -"Use a nearest-neighbor-anti-alias filter to scale the GUI.\n" -"This will smooth over some of the rough edges, and blend\n" -"pixels when scaling down, at the cost of blurring some\n" -"edge pixels when images are scaled by non-integer sizes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screen width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot folder" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot format" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshot quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Screenshot quality. Only used for JPEG format.\n" -"1 means worst quality; 100 means best quality.\n" -"Use 0 for default quality." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Screenshots" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Seabed noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Second of two 3D noises that together define tunnels." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "See https://www.sqlite.org/pragma.html#pragma_synchronous" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Select the antialiasing method to apply.\n" -"\n" -"* None - No antialiasing (default)\n" -"\n" -"* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" -"A.K.A multi-sample antialiasing (MSAA)\n" -"Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" -"\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" -"Applies a post-processing filter to detect and smoothen high-contrast " -"edges.\n" -"Provides balance between speed and image quality.\n" -"\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" -"Renders higher-resolution image of the scene, then scales down to reduce\n" -"the aliasing effects. This is the slowest and the most accurate method." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box border color (R,G,B)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Selection box width" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Selects one of 18 fractal types.\n" -"1 = 4D \"Roundy\" Mandelbrot set.\n" -"2 = 4D \"Roundy\" Julia set.\n" -"3 = 4D \"Squarry\" Mandelbrot set.\n" -"4 = 4D \"Squarry\" Julia set.\n" -"5 = 4D \"Mandy Cousin\" Mandelbrot set.\n" -"6 = 4D \"Mandy Cousin\" Julia set.\n" -"7 = 4D \"Variation\" Mandelbrot set.\n" -"8 = 4D \"Variation\" Julia set.\n" -"9 = 3D \"Mandelbrot/Mandelbar\" Mandelbrot set.\n" -"10 = 3D \"Mandelbrot/Mandelbar\" Julia set.\n" -"11 = 3D \"Christmas Tree\" Mandelbrot set.\n" -"12 = 3D \"Christmas Tree\" Julia set.\n" -"13 = 3D \"Mandelbulb\" Mandelbrot set.\n" -"14 = 3D \"Mandelbulb\" Julia set.\n" -"15 = 3D \"Cosine Mandelbulb\" Mandelbrot set.\n" -"16 = 3D \"Cosine Mandelbulb\" Julia set.\n" -"17 = 4D \"Mandelbulb\" Mandelbrot set.\n" -"18 = 4D \"Mandelbulb\" Julia set." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Send names of online players to the serverlist. If disabled only the player " -"count is revealed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Send player names to the server list" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Gameplay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server Security" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server address" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Server anticheat configuration.\n" -"Flags are positive. Uncheck the flag to disable corresponding anticheat " -"module." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server description" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server name" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server port" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server-side occlusion culling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Server/Env Performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist and MOTD" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Serverlist file" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the default tilt of Sun/Moon orbit in degrees.\n" -"Games may change orbit tilt via API.\n" -"Value of 0 means no tilt / vertical orbit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the exposure compensation in EV units.\n" -"Value of 0.0 (default) means no exposure compensation.\n" -"Range: from -1 to 1.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the language. By default, the system language is used.\n" -"A restart is required after changing this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the maximum length of a chat message (in characters) sent by clients." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the shadow strength gamma.\n" -"Adjusts the intensity of in-game dynamic shadows.\n" -"Lower value means lighter shadows, higher value means darker shadows." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set the soft shadow radius size.\n" -"Lower values mean sharper shadows, bigger values mean softer shadows.\n" -"Minimum value: 1.0; maximum value: 15.0" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable Shadow Mapping." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set to true to enable bloom effect.\n" -"Bright colors will bleed over the neighboring objects." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving leaves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving liquids (like water)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Set to true to enable waving plants." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Set to true to render debugging breakdown of the bloom effect.\n" -"In debug mode, the screen is split into 4 quadrants:\n" -"top-left - processed base image, top-right - final image\n" -"bottom-left - raw base image, bottom-right - bloom texture." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Sets shadow texture quality to 32 bits.\n" -"On false, 16 bits texture will be used.\n" -"This can cause much more artifacts in the shadow." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shader path" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow filter quality" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map max distance in nodes to render shadows" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture in 32 bits" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow map texture size" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Shadow offset (in pixels) of the default font. If 0, then shadow will not be " -"drawn." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shadow strength gamma" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show debug info" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show entity selection boxes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Show entity selection boxes\n" -"A restart is required after changing this." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Show name tag backgrounds by default" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Shutdown message" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Side length of a cube of map blocks that the client will consider together\n" -"when generating meshes.\n" -"Larger values increase the utilization of the GPU by reducing the number of\n" -"draw calls, benefiting especially high-end GPUs.\n" -"Systems with a low-end GPU (or no GPU) would benefit from smaller values." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Size of mapchunks generated by mapgen, stated in mapblocks (16 nodes).\n" -"WARNING: There is no benefit, and there are several dangers, in\n" -"increasing this value above 5.\n" -"Reducing this value increases cave and dungeon density.\n" -"Altering this value is for special usage, leaving it unchanged is\n" -"recommended." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sky Body Orbit Tilt" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slice w" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Slope and fill work together to modify the heights." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave maximum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small cave minimum number" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale humidity variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Small-scale temperature variation for blending biomes on borders." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Smooth scrolling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " -"cinematic mode by using the key set in Controls." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Smooths rotation of camera, also called look or mouse smoothing. 0 to " -"disable." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sneaking speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft clouds" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Soft shadow radius" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Sound Extensions Blacklist" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Specifies URL from which client fetches media instead of using UDP.\n" -"$filename should be accessible from $remote_media$filename via cURL\n" -"(obviously, remote_media should end with a slash).\n" -"Files that are not present will be fetched the usual way." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Specifies the default stack size of nodes, items and tools.\n" -"Note that mods or games may explicitly set a stack for certain (or all) " -"items." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread a complete update of shadow map over given number of frames.\n" -"Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Spread of light curve boost range.\n" -"Controls the width of the range to be boosted.\n" -"Standard deviation of the light curve boost Gaussian." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Static spawn point" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Steepness noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Step mountain size noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Step mountain spread noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strength of 3D mode parallax." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Strength of light curve boost.\n" -"The 3 'boost' parameters define a range of the light\n" -"curve that is boosted in brightness." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strict protocol checking" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Strip color codes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Surface level of optional water placed on a solid floatland layer.\n" -"Water is disabled by default and will only be placed if this value is set\n" -"to above 'mgv7_floatland_ymax' - 'mgv7_floatland_taper' (the start of the\n" -"upper tapering).\n" -"***WARNING, POTENTIAL DANGER TO WORLDS AND SERVER PERFORMANCE***:\n" -"When enabling water placement, floatlands must be configured and tested\n" -"to be a solid layer by setting 'mgv7_floatland_density' to 2.0 (or other\n" -"required value depending on 'mgv7_np_floatland'), to avoid\n" -"server-intensive extreme water flow and to avoid vast flooding of the\n" -"world surface below." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Synchronous SQLite" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Temperature variation for biomes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain alternative noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain base noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain higher noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Terrain noise threshold for hills.\n" -"Controls proportion of world area covered by hills.\n" -"Adjust towards 0.0 for a larger proportion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Terrain noise threshold for lakes.\n" -"Controls proportion of world area covered by lakes.\n" -"Adjust towards 0.0 for a larger proportion." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Terrain persistence noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Texture size to render the shadow map on.\n" -"This must be a power of two.\n" -"Bigger numbers create better shadows but it is also more expensive." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Textures on a node may be aligned either to the node or to the world.\n" -"The former mode suits better things like machines, furniture, etc., while\n" -"the latter makes stairs and microblocks fit surroundings better.\n" -"However, as this possibility is new, thus may not be used by older servers,\n" -"this option allows enforcing it for certain node types. Note though that\n" -"that is considered EXPERIMENTAL and may not work properly." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The URL for the content repository" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The dead zone of the joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The default format in which profiles are being saved,\n" -"when calling `/profiler save [format]` without format." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The delay in milliseconds after which a touch interaction is considered a " -"long tap." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The file path relative to your world path in which profiles will be saved to." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The gesture for punching players/entities.\n" -"This can be overridden by games and mods.\n" -"\n" -"* short_tap\n" -"Easy to use and well-known from other games that shall not be named.\n" -"\n" -"* long_tap\n" -"Known from the classic Luanti mobile controls.\n" -"Combat is more or less impossible." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The identifier of the joystick to use" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The length in pixels after which a touch interaction is considered movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The maximum height of the surface of waving liquids.\n" -"4.0 = Wave height is two nodes.\n" -"0.0 = Wave doesn't move at all.\n" -"Default is 1.0 (1/2 node)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The minimum time in seconds it takes between digging nodes when holding\n" -"the dig button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The network interface that the server listens on." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The privileges that new users automatically get.\n" -"See /privs in game for a full list on your server and mod configuration." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The radius of the volume of blocks around every player that is subject to " -"the\n" -"active block stuff, stated in mapblocks (16 nodes).\n" -"In active blocks objects are loaded and ABMs run.\n" -"This is also the minimum range in which active objects (mobs) are " -"maintained.\n" -"This should be configured together with active_object_send_range_blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The rendering back-end.\n" -"Note: A restart is required after changing this!\n" -"OpenGL is the default for desktop, and OGLES2 for Android." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The sensitivity of the joystick axes for moving the\n" -"in-game view frustum around." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The strength (darkness) of node ambient-occlusion shading.\n" -"Lower is darker, Higher is lighter. The valid range of values for this\n" -"setting is 0.25 to 4.0 inclusive. If the value is out of range it will be\n" -"set to the nearest valid value." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time (in seconds) that the liquids queue may grow beyond processing\n" -"capacity until an attempt is made to decrease its size by dumping old queue\n" -"items. A value of 0 disables the functionality." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time budget allowed for ABMs to execute on each step\n" -"(as a fraction of the ABM Interval)" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated events\n" -"when holding down a joystick button combination." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The time in seconds it takes between repeated node placements when holding\n" -"the place button." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "The type of joystick" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"The vertical distance over which heat drops by 20 if 'altitude_chill' is\n" -"enabled. Also, the vertical distance over which humidity drops by 10 if\n" -"'altitude_dry' is enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Third of 4 2D noises that together define hill/mountain range height." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Threshold for long taps" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Time in seconds for item entity (dropped items) to live.\n" -"Setting it to -1 disables the feature." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time of day when a new world is started, in millihours (0-23999)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Time speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Timeout for client to remove unused map data from memory, in seconds." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"To reduce lag, block transfers are slowed down when a player is building " -"something.\n" -"This determines how long they are slowed down after placing or removing a " -"node." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Tolerance of movement cheat detector.\n" -"Increase the value if players experience stuttery movement." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tooltip delay" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen controls" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Touchscreen sensitivity multiplier." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Tradeoffs for performance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent foliage" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Translucent liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Transparency Sorting Distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trees noise" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trilinear filtering" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"True = 256\n" -"False = 128\n" -"Usable to make minimap smoother on slower machines." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Trusted mods" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Type of occlusion_culler\n" -"\n" -"\"loops\" is the legacy algorithm with nested loops and O(n³) complexity\n" -"\"bfs\" is the new algorithm based on breadth-first-search and side culling\n" -"\n" -"This setting should only be changed if you have performance problems." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"URL to JSON file which provides information about the newest Luanti " -"release.\n" -"If this is empty the engine will never check for updates." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "URL to the server list displayed in the Multiplayer Tab." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Undersampling" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Undersampling is similar to using a lower screen resolution, but it applies\n" -"to the game world only, keeping the GUI intact.\n" -"It should give a significant performance boost at the cost of less detailed " -"image.\n" -"Higher values result in a less detailed image." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unlimited player transfer distance" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Unload unused server data" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Update information URL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of dungeons." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Upper Y limit of floatlands." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use a cloud animation for the main menu background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use bilinear filtering when scaling textures." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use crosshair for touch screen" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use crosshair to select object instead of whole screen.\n" -"If enabled, a crosshair will be shown and will be used for selecting object." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use mipmaps when scaling textures. May slightly increase performance,\n" -"especially when using a high-resolution texture pack.\n" -"Gamma-correct downscaling is not supported." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use raytraced occlusion culling in the new culler.\n" -"This flag enables use of raytraced occlusion culling test for\n" -"client mesh sizes smaller than 4x4x4 map blocks." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Use smooth cloud shading." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use trilinear filtering when scaling textures.\n" -"If both bilinear and trilinear filtering are enabled, trilinear filtering\n" -"is applied." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Use virtual joystick to trigger \"Aux1\" button.\n" -"If enabled, virtual joystick will also tap \"Aux1\" button when out of main " -"circle." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "User Interfaces" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "VSync" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley depth" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley fill" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley profile" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Valley slope" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of biome filler depth." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of maximum mountain height (in nodes)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Variation of number of caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Variation of terrain vertical scale.\n" -"When noise is < -0.55 terrain is near-flat." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies depth of biome surface nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Varies roughness of terrain.\n" -"Defines the 'persistence' value for terrain_base and terrain_alt noises." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Varies steepness of cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Vertical climbing speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Vertical screen synchronization. Your system may still force VSync on even " -"if this is disabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Video driver" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "View bobbing factor" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "View distance in nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Viewing range" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Virtual joystick triggers Aux1 button" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume multiplier when the window is unfocused." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Volume of all sounds.\n" -"Requires the sound system to be enabled." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volume when unfocused" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Volumetric lighting" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"W coordinate of the generated 3D slice of a 4D fractal.\n" -"Determines which 3D slice of the 4D shape is generated.\n" -"Alters the shape of the fractal.\n" -"Has no effect on 3D fractals.\n" -"Range roughly -2 to 2." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking and flying speed, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Walking, flying and climbing speed in fast mode, in nodes per second." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water level" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Water surface level of the world." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving Nodes" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving leaves" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave height" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wave speed" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving liquids wavelength" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Waving plants" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Weblink color" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "When enabled, liquid reflections are simulated." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When enabled, the GUI is optimized to be more usable on touchscreens.\n" -"Whether this is enabled by default depends on your hardware form-factor." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter is true, all GUI images need to be\n" -"filtered in software, but some images are generated directly\n" -"to hardware (e.g. render-to-texture for nodes in inventory)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" -"This is also used as the base node texture size for world-aligned\n" -"texture autoscaling." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether name tag backgrounds should be shown by default.\n" -"Mods may still set a background." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether players are shown to clients without any range limit.\n" -"Deprecated, use the setting player_transfer_distance instead." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether the window is maximized." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to ask clients to reconnect after a (Lua) crash.\n" -"Set this to true if your server is set up to restart automatically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Whether to fog out the end of the visible area." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" -"In-game, you can toggle the mute state with the mute key or by using the\n" -"pause menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Whether to show the client debug info (has the same effect as hitting F5)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width component of the initial window size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Width of the selection box lines around nodes." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Window maximized" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Windows systems only: Start Luanti with the command line window in the " -"background.\n" -"Contains the same information as the file debug.txt (default name)." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"World directory (everything in the world is stored here).\n" -"Not needed if starting from the main menu." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "World start time" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"World-aligned textures may be scaled to span several nodes. However,\n" -"the server may not send the scale you want, especially if you use\n" -"a specially-designed texture pack; with this option, the client tries\n" -"to determine the scale automatically basing on the texture size.\n" -"See also texture_min_size.\n" -"Warning: This option is EXPERIMENTAL!" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "World-aligned textures mode" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of flat ground." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y of mountain density gradient zero level. Used to shift mountains " -"vertically." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y of upper limit of large caves." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-distance over which caverns expand to full size." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "" -"Y-distance over which floatlands taper from full density to nothing.\n" -"Tapering starts at this distance from the Y limit.\n" -"For a solid floatland layer, this controls the height of hills/mountains.\n" -"Must be less than or equal to half the distance between the Y limits." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of average terrain surface." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of cavern upper limit." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of higher terrain that creates cliffs." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of lower terrain and seabed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "Y-level of seabed." -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL file download timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL interactive timeout" -msgstr "" - -#: src/settings_translation_file.cpp -msgid "cURL parallel limit" -msgstr "" diff --git a/po/zh_CN/luanti.po b/po/zh_CN/luanti.po index 6fdf6bbec..62d828f3f 100644 --- a/po/zh_CN/luanti.po +++ b/po/zh_CN/luanti.po @@ -2,9 +2,9 @@ msgid "" msgstr "" "Project-Id-Version: Chinese (Simplified) (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-11-01 22:24+0000\n" -"Last-Translator: y5nw \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-17 17:24+0000\n" +"Last-Translator: Poesty Li \n" "Language-Team: Chinese (Simplified Han script) \n" "Language: zh_CN\n" @@ -12,7 +12,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -77,6 +77,249 @@ msgstr "" msgid "[all | ] [-t]" msgstr "[all | <命令>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "浏览" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "编辑" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "选择目录" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "选择文件" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "设置" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(没有关于此设置的信息)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "2D 噪声" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "取消" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "空白" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "八音" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "补偿" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "持续性" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "保存" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "比例" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "种子" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "x 点差" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "y 点差" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "z 点差" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "绝对值" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "默认值" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "缓解" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(子游戏需要支持阴影才能生效)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable bloom as well)" +msgstr "(子游戏需要支持阴影才能生效)" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(子游戏需要支持阴影才能生效)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(使用系统语言)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "辅助功能" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "自动" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "聊天" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "Clear键" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "控制" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "禁用" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "启用" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "通用" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "移动" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "无结果" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "恢复默认设置" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "恢复默认设置 ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "搜索" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "显示高级设置" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "显示高级名称" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "触摸屏" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "暂停菜单 FPS" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "客户端 Mods" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "内容:子游戏" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "内容:模组" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(子游戏需要支持阴影才能生效)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "自定义" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "动态阴影" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "高" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "低" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "中" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "极高" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "极低" + #: builtin/fstk/ui.lua msgid "" msgstr "<无可用命令>" @@ -158,11 +401,10 @@ msgstr "正在下载 $1…" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "全部" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "后退" @@ -177,7 +419,7 @@ msgstr "下载中..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "特性" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -199,11 +441,6 @@ msgstr "Mod" msgid "No packages could be retrieved" msgstr "无法检索任何包" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "无结果" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "没有更新" @@ -249,18 +486,6 @@ msgstr "已安装" msgid "Base Game:" msgstr "基础游戏:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "取消" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" @@ -313,11 +538,11 @@ msgstr "描述" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "捐赠" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "论坛主题" #: builtin/mainmenu/content/dlg_package.lua #, fuzzy @@ -331,7 +556,7 @@ msgstr "安装$1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "问题跟踪器" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" @@ -355,7 +580,7 @@ msgstr "网站" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "由 $1 — $2 次下载 — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -385,6 +610,12 @@ msgstr "无法将$1 作为 $2 安装为mod" msgid "Unable to install a $1 as a texture pack" msgstr "无法将$1安装为材质包" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(已启用,出错)" @@ -447,12 +678,6 @@ msgstr "无可选依赖项" msgid "Optional dependencies:" msgstr "可选依赖项:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "保存" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "世界:" @@ -503,7 +728,7 @@ msgstr "装饰" #: builtin/mainmenu/dlg_create_world.lua msgid "Desert temples" -msgstr "" +msgstr "沙漠神庙" #: builtin/mainmenu/dlg_create_world.lua msgid "Development Test is meant for developers." @@ -513,7 +738,7 @@ msgstr "开发测试版适用于开发者。" msgid "" "Different dungeon variant generated in desert biomes (only if dungeons " "enabled)" -msgstr "" +msgstr "在沙漠生物群落中生成的不同地牢变体(仅在启用地牢时)" #: builtin/mainmenu/dlg_create_world.lua msgid "Dungeons" @@ -603,11 +828,6 @@ msgstr "河流" msgid "Sea level rivers" msgstr "海平面河流" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "种子" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "生物群落之间的平滑过渡" @@ -715,8 +935,8 @@ msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"一直以来,Luanti 游戏引擎默认自带了“Minetest Game”这个子游戏。但是从 5.8.0 " -"版本起,Luanti 不再自带任何子游戏。" +"一直以来,Luanti 游戏引擎默认自带了“Minetest Game”这个子游戏。但是从 5.8.0 版" +"本起,Luanti 不再自带任何子游戏。" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -749,6 +969,23 @@ msgid "" msgstr "" "此整合包在它的 modpack.conf 中有一个明确的名称,它将覆盖这里的任何重命名。" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "全部启用" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "有新的 $1 版本可用" @@ -776,7 +1013,7 @@ msgstr "从不" msgid "Visit website" msgstr "访问网站" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "设置" @@ -788,228 +1025,6 @@ msgstr "已禁用公共服务器列表" msgid "Try reenabling public serverlist and check your internet connection." msgstr "请尝试重新启用公共服务器列表并检查您的网络连接。" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "浏览" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "编辑" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "选择目录" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "选择文件" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "设置" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(没有关于此设置的信息)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "2D 噪声" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "空白" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "八音" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "补偿" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "持续性" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "比例" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "x 点差" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "y 点差" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "z 点差" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "绝对值" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "默认值" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "缓解" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(子游戏需要支持阴影才能生效)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(子游戏需要支持阴影才能生效)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(子游戏需要支持阴影才能生效)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(使用系统语言)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "辅助功能" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "聊天" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "Clear键" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "控制" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "禁用" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "启用" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "通用" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "移动" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "恢复默认设置" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "恢复默认设置 ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "搜索" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "显示高级设置" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "显示高级名称" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "客户端 Mods" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "内容:子游戏" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "内容:模组" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "启用" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "已禁用镜头更新" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(子游戏需要支持阴影才能生效)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "自定义" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "动态阴影" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "高" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "低" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "中" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "极高" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "极低" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "关于" @@ -1030,10 +1045,6 @@ msgstr "核心开发者" msgid "Core Team" msgstr "核心团队" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "Irrlicht 渲染设备:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "打开用户数据目录" @@ -1143,7 +1154,7 @@ msgstr "Luanti 不自带任何子游戏。" msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." -msgstr "" +msgstr "Luanti 是一方游戏创作平台,可让你游玩各类游戏。" #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1181,10 +1192,22 @@ msgstr "启动游戏" msgid "You need to install a game before you can create a world." msgstr "您需要先安装一个子游戏才能创建新的世界。" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "移除收藏" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "地址" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "客户端" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "创造模式" @@ -1198,6 +1221,11 @@ msgstr "伤害 / PvP" msgid "Favorites" msgstr "我的收藏" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "子游戏" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "不兼容的服务器" @@ -1210,10 +1238,28 @@ msgstr "加入游戏" msgid "Login" msgstr "登录" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "生产线程数" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "专用服务器步骤" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "ping值" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "公开服务器" @@ -1298,23 +1344,6 @@ msgstr "" "\n" "查看 debug.txt 以获得详细信息。" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- 模式: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- 公共服务器: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- 玩家对战: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- 服务器名称: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "序列化发生了错误:" @@ -1324,6 +1353,11 @@ msgstr "序列化发生了错误:" msgid "Access denied. Reason: %s" msgstr "访问被拒绝。原因:%s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "调试信息已显示" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "自动前进已禁用" @@ -1344,6 +1378,10 @@ msgstr "已为当前方块描边" msgid "Block bounds shown for nearby blocks" msgstr "已为周围方块描边" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "已禁用镜头更新" @@ -1356,10 +1394,6 @@ msgstr "已启用镜头更新" msgid "Can't show block bounds (disabled by game or mod)" msgstr "无法显示方块边界(已被子游戏或者 Mod 禁用)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "更改密码" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "电影模式已禁用" @@ -1388,39 +1422,6 @@ msgstr "连接出错(超时?)" msgid "Connection failed for unknown reason" msgstr "连接失败,原因不明" -#: src/client/game.cpp -msgid "Continue" -msgstr "继续" - -#: src/client/game.cpp -#, fuzzy -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"控制指南:\n" -"菜单不可见时:\n" -"- 长安: 挖/按压/使用\n" -"- 单击: 放置/使用\n" -"- 滑动手指: 环顾四周\n" -"菜单/物品栏可见时:\n" -"- 双击 (界面区域外):\n" -" --> 关闭\n" -"- 点击物品, 然后点击栏位:\n" -" --> 移动一组物品\n" -"- 点击物品并拖动, 然后另一手指点击\n" -" --> 移动一个物品\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1434,31 +1435,15 @@ msgstr "正在建立客户端..." msgid "Creating server..." msgstr "建立服务器...." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "调试信息和性能分析图已隐藏" - #: src/client/game.cpp msgid "Debug info shown" msgstr "调试信息已显示" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "调试信息、性能分析图和线框已隐藏" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "创建客户端出错:%s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "退出至菜单" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "退出至操作系统" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "快速模式已禁用" @@ -1496,18 +1481,6 @@ msgstr "雾气已启用" msgid "Fog enabled by game or mod" msgstr "雾被当前子游戏或 mod 启用" -#: src/client/game.cpp -msgid "Game info:" -msgstr "游戏信息:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "游戏暂停" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "建立服务器" - #: src/client/game.cpp msgid "Item definitions..." msgstr "物品定义..." @@ -1544,14 +1517,6 @@ msgstr "穿墙模式已启用 (注:无 'noclip' 权限)" msgid "Node definitions..." msgstr "方块定义..." -#: src/client/game.cpp -msgid "Off" -msgstr "关" - -#: src/client/game.cpp -msgid "On" -msgstr "开" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "俯仰移动模式已禁用" @@ -1564,38 +1529,22 @@ msgstr "俯仰移动模式已启用" msgid "Profiler graph shown" msgstr "性能分析图已显示" -#: src/client/game.cpp -msgid "Remote server" -msgstr "远程服务器" - #: src/client/game.cpp msgid "Resolving address..." msgstr "正在解析地址..." -#: src/client/game.cpp -msgid "Respawn" -msgstr "重生" - #: src/client/game.cpp msgid "Shutting down..." msgstr "关闭中..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "单人游戏" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "音量" - #: src/client/game.cpp msgid "Sound muted" msgstr "已静音" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "声音系统已禁用" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "此编译版本不支持声音系统" @@ -1667,18 +1616,117 @@ msgstr "视野范围已改变至 %d,但是被子游戏或 Mod 限制为 %d" msgid "Volume changed to %d%%" msgstr "音量改到%d1%%2" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "着色器已启用,但是驱动程序不支持 GLSL。" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "线框已显示" -#: src/client/game.cpp -msgid "You died" -msgstr "您已死亡" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "缩放被当前子游戏或 mod 禁用" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- 模式: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- 公共服务器: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- 玩家对战: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- 服务器名称: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "更改密码" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "继续" + +#: src/client/game_formspec.cpp +#, fuzzy +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"控制指南:\n" +"菜单不可见时:\n" +"- 长安: 挖/按压/使用\n" +"- 单击: 放置/使用\n" +"- 滑动手指: 环顾四周\n" +"菜单/物品栏可见时:\n" +"- 双击 (界面区域外):\n" +" --> 关闭\n" +"- 点击物品, 然后点击栏位:\n" +" --> 移动一组物品\n" +"- 点击物品并拖动, 然后另一手指点击\n" +" --> 移动一个物品\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "退出至菜单" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "退出至操作系统" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "游戏信息:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "游戏暂停" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "建立服务器" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "关" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "开" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "远程服务器" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "重生" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "音量" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "您已死亡" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "无法聊天:可能原因:被游戏或mod禁用" @@ -2006,7 +2054,7 @@ msgstr "无法编译“%s”着色器。" #: src/client/shader.cpp #, fuzzy -msgid "Shaders are enabled but GLSL is not supported by the driver." +msgid "GLSL is not supported by the driver" msgstr "着色器已启用,但是驱动程序不支持 GLSL。" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2054,7 +2102,7 @@ msgstr "自动向前" msgid "Automatic jumping" msgstr "自动跳跃" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2066,7 +2114,7 @@ msgstr "向后" msgid "Block bounds" msgstr "地图块边界" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "改变相机" @@ -2090,7 +2138,7 @@ msgstr "减小音量" msgid "Double tap \"jump\" to toggle fly" msgstr "连按两次“跳”启用/禁用飞行模式" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "丢弃" @@ -2106,11 +2154,11 @@ msgstr "增加可视范围" msgid "Inc. volume" msgstr "增大音量" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "物品栏" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "跳" @@ -2142,7 +2190,7 @@ msgstr "下一个" msgid "Prev. item" msgstr "上一个物品" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "选择范围" @@ -2154,7 +2202,7 @@ msgstr "向右" msgid "Screenshot" msgstr "截图" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "潜行" @@ -2162,15 +2210,15 @@ msgstr "潜行" msgid "Toggle HUD" msgstr "启用/禁用HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "启用/禁用聊天记录" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "启用/禁用快速模式" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "启用/禁用飞行模式" @@ -2178,11 +2226,11 @@ msgstr "启用/禁用飞行模式" msgid "Toggle fog" msgstr "启用/禁用雾" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "启用/禁用小地图" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "启用/禁用穿墙模式" @@ -2190,7 +2238,7 @@ msgstr "启用/禁用穿墙模式" msgid "Toggle pitchmove" msgstr "启用/禁用仰角移动模式" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "缩放" @@ -2226,7 +2274,7 @@ msgstr "旧密码" msgid "Passwords do not match!" msgstr "密码不匹配!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "退出" @@ -2239,16 +2287,47 @@ msgstr "静音" msgid "Sound Volume: %d%%" msgstr "音量:%d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Add button" +msgstr "中键" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "完成!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "远程服务器" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Joystick" msgstr "摇杆 ID" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp msgid "Overflow menu" -msgstr "" +msgstr "溢出菜单" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreenlayout.cpp #, fuzzy msgid "Toggle debug" msgstr "启用/禁用雾" @@ -2257,15 +2336,15 @@ msgstr "启用/禁用雾" msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." -msgstr "" +msgstr "另一个客户端消耗此名称连接。如果您的客户端意外关闭,请一分钟后重试。" #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" +msgstr "不允许使用空密码。请设置密码并重试。" #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "内部服务器错误" #: src/network/clientpackethandler.cpp #, fuzzy @@ -2307,25 +2386,25 @@ msgstr "服务器正在关闭" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "服务器遇到内部错误。您将被断开连接。" #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "服务器正在单人游戏模式下运行。您无法连接。" #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "用户过多" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "未知断开连接原因。" #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." -msgstr "" +msgstr "您的客户端发送了服务器未预期的内容。请尝试重新连接或更新您的客户端。" #: src/network/clientpackethandler.cpp msgid "" @@ -2463,6 +2542,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "确定每个地图块的地窖数量的3D噪声。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2471,8 +2551,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D 支持。\n" "目前已支持:\n" @@ -2536,10 +2615,6 @@ msgstr "活动方块范围" msgid "Active object send range" msgstr "活动目标发送范围" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "挖方块时添加粒子。" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "调整检测到的显示密度,用来缩放 UI 元素。" @@ -2568,9 +2643,20 @@ msgid "Advanced" msgstr "高级" #: src/settings_translation_file.cpp -msgid "Allows liquids to be translucent." +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." msgstr "" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "使用 3D 云彩,而不是看起来是平面的。" + +#: src/settings_translation_file.cpp +msgid "Allows liquids to be translucent." +msgstr "允许液体呈现半透明效果。" + #: src/settings_translation_file.cpp msgid "" "Alters the light curve by applying 'gamma correction' to it.\n" @@ -2619,11 +2705,11 @@ msgstr "抗锯齿方法" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "反作弊标志" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "反作弊移动容忍度" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2647,10 +2733,15 @@ msgid "" "With OpenGL ES, dithering only works if the shader supports high\n" "floating-point precision and it may have a higher performance impact." msgstr "" +"应用抖动以减少颜色带状伪影。\n" +"抖动会显著增加无损压缩的截图的大小,并且如果显示器或操作系统进行额外的抖动," +"或颜色通道没有量化到 8 位,则会造成错误工作。\n" +"在 OpenGL ES 中,抖动仅在着色器支持高浮点精度时有效,并且可能会产生更高的性能" +"影响。" #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "对节点应用高光阴影。" #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2963,14 +3054,14 @@ msgstr "云半径" msgid "Clouds" msgstr "云彩" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "云是客户端效果。" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "主菜单显示云彩" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "彩色雾" @@ -2984,6 +3075,8 @@ msgid "" "Comma-separated list of AL and ALC extensions that should not be used.\n" "Useful for testing. See al_extensions.[h,cpp] for details." msgstr "" +"不应使用的 AL 和 ALC 扩展的逗号分隔列表。\n" +"对测试很有用。请参阅 al_extensions.[h,cpp] 获取详细信息。" #: src/settings_translation_file.cpp #, fuzzy @@ -2994,7 +3087,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "逗号分隔用于在仓库中隐藏内容的标签列表。\n" "\"nonfree\"可用于隐藏根据自由软件基金会\n" @@ -3159,6 +3252,14 @@ msgstr "调试日志级别" msgid "Debugging" msgstr "调试" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "专用服务器步骤" @@ -3325,18 +3426,10 @@ msgstr "" "当np_biome超过该值时将产生沙漠。\n" "当‘snowbiomes’启用时,该项将被忽略。" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "去同步块动画" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "开发者选项" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "挖掘粒子效果" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "禁止使用空密码" @@ -3367,6 +3460,14 @@ msgstr "双击“跳跃”键飞行" msgid "Double-tapping the jump key toggles fly mode." msgstr "连按两次“跳跃”键启用/禁用飞行模式。" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "转储地图生成器调试信息。" @@ -3452,9 +3553,10 @@ msgstr "" "模拟人眼的行为。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "启用彩色阴影。\n" "在半透明节点上投射彩色阴影。会消耗很多的资源。" @@ -3517,7 +3619,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "在内容标签上启用可用更新指示器" #: src/settings_translation_file.cpp msgid "" @@ -3539,10 +3641,10 @@ msgstr "" "例如:0是不摇动;1.0正常摇动;2.0双倍。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "允许/禁止运行 IPv6 服务器。\n" "如果设置了 bind_address 则本项被忽略。\n" @@ -3564,16 +3666,9 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "启用物品清单动画。" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "启用翻转网状物facedir的缓存。" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." -msgstr "" +msgstr "在 OpenGL 驱动程序中启用调试和错误检查。" #: src/settings_translation_file.cpp #, fuzzy @@ -3582,7 +3677,7 @@ msgstr "后期处理" #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." -msgstr "" +msgstr "启用后处理管道。" #: src/settings_translation_file.cpp msgid "" @@ -3591,6 +3686,8 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"启用触摸屏控制,允许您通过触摸屏玩游戏。\n" +"“自动”意味着触摸屏控件将根据上次使用的输入方法自动启用和禁用。" #: src/settings_translation_file.cpp msgid "" @@ -3896,10 +3993,6 @@ msgstr "GUI缩放" msgid "GUI scaling filter" msgstr "GUI缩放过滤器" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "GUI缩放过滤器 txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "游戏手柄" @@ -4144,6 +4237,8 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"如果启用并且您安装了 ContentDB 包,Luanti 可能会在打开主菜单时联系 ContentDB " +"检查包更新。" #: src/settings_translation_file.cpp msgid "" @@ -4154,14 +4249,6 @@ msgstr "" "如果启用,“Aux1”键将代替潜行键的向下攀爬和\n" "下降。" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"如果启用,帐户注册与 UI 中的登录是分开的。\n" -"如果禁用,新帐户将在登录时自动注册。" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4184,6 +4271,16 @@ msgid "" "empty password." msgstr "如果启用,玩家将无法在没有密码的情况下加入或修改密码为空密码。" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"如果启用,帐户注册与 UI 中的登录是分开的。\n" +"如果禁用,新帐户将在登录时自动注册。" + #: src/settings_translation_file.cpp msgid "" "If enabled, the server will perform map block occlusion culling based on\n" @@ -4297,10 +4394,6 @@ msgstr "注册时计数实体的方法。" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "保存世界重要变化的时间间隔,以秒为单位。" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "一天中向客户端发送时间的间隔,以秒为单位。" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "物品清单物品动画" @@ -4945,6 +5038,8 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"低级网络代码中每个发送步骤发送的最大数据包数量。\n" +"您通常不需要更改此设置,但繁忙的服务器可能会受益于更高的数量。" #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5002,10 +5097,6 @@ msgstr "交互式请求(例如服务器列表获取)可能需要的最长时 msgid "Maximum users" msgstr "最大用户数" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "Mesh 缓存" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "今日消息" @@ -5039,6 +5130,10 @@ msgstr "每个地图块的随机大型洞穴数的上限。" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "每个地图块的随机大型洞穴数的下限。" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "Mip 贴图" @@ -5133,9 +5228,10 @@ msgstr "" "- v7悬空岛(默认禁用)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "玩家名称。\n" @@ -5173,7 +5269,7 @@ msgstr "方块高亮" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "节点高光" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5405,7 +5501,7 @@ msgstr "最低协议版本" #: src/settings_translation_file.cpp msgid "Punch gesture" -msgstr "" +msgstr "打击手势" #: src/settings_translation_file.cpp msgid "" @@ -5418,7 +5514,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." -msgstr "" +msgstr "当块范围 HUD 功能设置为接近块时使用的半径。" #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5646,17 +5742,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5767,7 +5865,7 @@ msgid "" "Server anticheat configuration.\n" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." -msgstr "" +msgstr "服务器反作弊配置。标志是正数。取消选中标志以禁用相应的反作弊模块。" #: src/settings_translation_file.cpp msgid "Server description" @@ -5869,7 +5967,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Set to true to enable volumetric lighting effect (a.k.a. \"Godrays\")." -msgstr "" +msgstr "设置为true以启用体积光效(即“神光”)。" #: src/settings_translation_file.cpp msgid "Set to true to enable waving leaves." @@ -5909,16 +6007,6 @@ msgstr "" msgid "Shader path" msgstr "着色器路径" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "着色器" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "阴影过滤质量" @@ -5985,7 +6073,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +msgstr "在阳光下观看树叶时模拟半透明效果。" #: src/settings_translation_file.cpp msgid "" @@ -6101,11 +6189,11 @@ msgstr "" "请注意,mod或游戏可能会为某些(或所有)项目明确设置堆栈。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "把完整地更新一次阴影贴图这项任务分配给多少帧去完成。\n" "较高的值可能会使阴影滞后,较低的值\n" @@ -6282,7 +6370,7 @@ msgstr "" msgid "" "The delay in milliseconds after which a touch interaction is considered a " "long tap." -msgstr "" +msgstr "触碰交互后认为是长按的延迟(以毫秒为单位)。" #: src/settings_translation_file.cpp msgid "" @@ -6301,6 +6389,15 @@ msgid "" "Known from the classic Luanti mobile controls.\n" "Combat is more or less impossible." msgstr "" +"击打玩家/实体的手势。\n" +"这可以被子游戏和 Mod 覆盖。\n" +"\n" +"* 短按\n" +"易于使用,并且在其它不可说的游戏中广为人知。\n" +"\n" +"* 长按\n" +"来自经典的Luanti移动控制。\n" +"战斗或多或少是不可能的。" #: src/settings_translation_file.cpp msgid "The identifier of the joystick to use" @@ -6447,7 +6544,7 @@ msgstr "定义tunnels的最初2个3D噪音。" #: src/settings_translation_file.cpp msgid "Threshold for long taps" -msgstr "" +msgstr "长按的阈值" #: src/settings_translation_file.cpp msgid "" @@ -6461,10 +6558,6 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "一天中开始一个新世界的时间,以毫小时为单位(0-23999)。" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "发送间隔时间" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "速度时间" @@ -6488,6 +6581,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"动作作弊检测器的容差。\n" +"如果玩家体验到卡顿移动,请增加值。" #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6527,6 +6622,11 @@ msgstr "半透明液体" msgid "Transparency Sorting Distance" msgstr "透明度排序距离" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "透明度排序距离" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "树木噪声" @@ -6584,12 +6684,16 @@ msgid "Undersampling" msgstr "欠采样" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "欠采样类似于使用较低的屏幕分辨率,但是它适用\n" "仅限于游戏世界,保持GUI完整。\n" @@ -6616,16 +6720,15 @@ msgstr "地窖的Y值上限。" msgid "Upper Y limit of floatlands." msgstr "悬空岛的Y值上限。" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "使用 3D 云彩,而不是看起来是平面的。" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "主菜单背景使用云动画。" #: src/settings_translation_file.cpp -msgid "Use anisotropic filtering when looking at textures from an angle." +#, fuzzy +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "缩放材质时使用三线过滤。" #: src/settings_translation_file.cpp @@ -6666,7 +6769,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "使用平滑云阴影。" #: src/settings_translation_file.cpp msgid "" @@ -6783,7 +6886,7 @@ msgstr "音量" #: src/settings_translation_file.cpp msgid "Volume multiplier when the window is unfocused." -msgstr "" +msgstr "窗口失去焦点时的音量倍增器。" #: src/settings_translation_file.cpp msgid "" @@ -6871,13 +6974,15 @@ msgstr "网页链接颜色" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "启用时,会模拟液体反射。" #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"启用时,GUI优化为在触摸屏上更易于使用。\n" +"是否默认启用取决于您的硬件外形尺寸。" #: src/settings_translation_file.cpp msgid "" @@ -6890,25 +6995,14 @@ msgstr "" "硬件(例如,库存中材质的渲染到纹理)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"当gui_scaling_filter_txr2img为 true 时,复制这些图像\n" -"从硬件到软件进行扩展。 当 false 时,回退\n" -"到旧的缩放方法,对于不\n" -"正确支持从硬件下载纹理。" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6929,10 +7023,6 @@ msgstr "" "无论默认情况下应显示名称标签背景.\n" "模组都可能仍然设置一个背景." -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "方块材质动画是否应按地图块同步,否则取消同步。" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6958,9 +7048,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "是否让雾出现在可视范围末端。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -7146,6 +7236,9 @@ msgstr "cURL 并发限制" #~ "留空则启动一个本地服务器。\n" #~ "注意,主菜单的地址栏将会覆盖这里的设置。" +#~ msgid "Adds particles when digging a node." +#~ msgstr "挖方块时添加粒子。" + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7266,6 +7359,9 @@ msgstr "cURL 并发限制" #~ msgid "Clean transparent textures" #~ msgstr "干净透明材质" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "云是客户端效果。" + #~ msgid "Command key" #~ msgstr "命令键" @@ -7359,9 +7455,15 @@ msgstr "cURL 并发限制" #~ msgid "Darkness sharpness" #~ msgstr "地图生成器平面湖坡度" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "调试信息和性能分析图已隐藏" + #~ msgid "Debug info toggle key" #~ msgstr "调试信息启用/禁用键" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "调试信息、性能分析图和线框已隐藏" + #~ msgid "Dec. volume key" #~ msgstr "音量减小键" @@ -7415,9 +7517,15 @@ msgstr "cURL 并发限制" #~ msgid "Del. Favorite" #~ msgstr "删除收藏项" +#~ msgid "Desynchronize block animation" +#~ msgstr "去同步块动画" + #~ msgid "Dig key" #~ msgstr "挖掘键" +#~ msgid "Digging particles" +#~ msgstr "挖掘粒子效果" + #~ msgid "Disable anticheat" #~ msgstr "禁用反作弊" @@ -7442,6 +7550,10 @@ msgstr "cURL 并发限制" #~ msgid "Dynamic shadows:" #~ msgstr "动态阴影:" +#, fuzzy +#~ msgid "Enable" +#~ msgstr "启用" + #~ msgid "Enable VBO" #~ msgstr "启用 VBO" @@ -7475,6 +7587,12 @@ msgstr "cURL 并发限制" #~ "否则将自动生成法线。\n" #~ "需要启用着色器。" +#, fuzzy +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "启用翻转网状物facedir的缓存。" + #~ msgid "Enables filmic tone mapping" #~ msgstr "启用电影基调映射" @@ -7523,9 +7641,6 @@ msgstr "cURL 并发限制" #~ "实验性选项,设为大于 0 的数字时可能导致\n" #~ "块之间出现可见空间。" -#~ msgid "FPS in pause menu" -#~ msgstr "暂停菜单 FPS" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7602,8 +7717,8 @@ msgstr "cURL 并发限制" #~ msgid "Full screen BPP" #~ msgstr "全屏 BPP" -#~ msgid "Game" -#~ msgstr "子游戏" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "GUI缩放过滤器 txr2img" #~ msgid "Gamma" #~ msgstr "伽马" @@ -7763,658 +7878,664 @@ msgstr "cURL 并发限制" #~ msgid "Instrumentation" #~ msgstr "计数器" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "一天中向客户端发送时间的间隔,以秒为单位。" + #~ msgid "Invalid gamespec." #~ msgstr "非法游戏信息。" #~ msgid "Inventory key" #~ msgstr "物品清单键" +#~ msgid "Irrlicht device:" +#~ msgstr "Irrlicht 渲染设备:" + #~ msgid "Jump key" #~ msgstr "跳跃键" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "视野缩小键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "音量减小键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "挖掘键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "丢弃所选物品键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "视野扩大键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "音量增大键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "跳跃键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "快速模式快速移动键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "后退键。\n" #~ "在按下时也会取消自动前进。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "前进键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "左方向键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "右方向键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "静音键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "打开聊天窗口输入命令键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "打开聊天窗口输入本地命令键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "打开聊天窗口键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "打开物品清单键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "放置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第11个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第12个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第13个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第14个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第15个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第16个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第17个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第18个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第19个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第20个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第21个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第22个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第23个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第24个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第25个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第26个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第27个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第28个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第29个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第30个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第31个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第32个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第8个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第5个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第1个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第4个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏下一个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第9个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏上一个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第2个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第7个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第6个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第10个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "选择快捷栏第3个位置键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "下蹲键。\n" #~ "若aux1_descends禁用,也可用于向下攀爬、在水中向下游。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "第一人称第三人称镜头切换键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "截屏键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用自动前进键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用电影模式键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用小地图键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用快速移动键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用飞行键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用穿墙模式键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用俯仰移动模式键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用相机更新键。仅用于开发。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用聊天显示键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用调试信息键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用雾显示键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用HUD显示键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用大型聊天控制台显示键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用性能分析图显示键。仅用于开发。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用无限视野键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "启用/禁用缩放(如有可能)键。\n" -#~ "见http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "见http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8482,6 +8603,9 @@ msgstr "cURL 并发限制" #~ msgid "Menus" #~ msgstr "菜单" +#~ msgid "Mesh cache" +#~ msgstr "Mesh 缓存" + #~ msgid "Minimap" #~ msgstr "小地图" @@ -8693,6 +8817,9 @@ msgstr "cURL 并发限制" #~ "较低的值意味着阴影和贴图更新更快,但会消耗更多资源。\n" #~ "最小值 0.001 秒 最大值 0.2 秒" +#~ msgid "Shaders" +#~ msgstr "着色器" + #~ msgid "Shaders (experimental)" #~ msgstr "着色器(实验性)" @@ -8709,6 +8836,15 @@ msgstr "cURL 并发限制" #~ "性能。\n" #~ "仅用于OpenGL视频后端。" +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "着色器是渲染的基本部分,能够启用高级视觉效果。" + +#, fuzzy +#~ msgid "Shaders are disabled." +#~ msgstr "已禁用镜头更新" + #, fuzzy #~ msgid "Shadow limit" #~ msgstr "地图块限制" @@ -8739,6 +8875,9 @@ msgstr "cURL 并发限制" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "让旋转摄影机时较流畅。设为 0 以停用。" +#~ msgid "Sound system is disabled" +#~ msgstr "声音系统已禁用" + #~ msgid "Special" #~ msgstr "特殊" @@ -8779,6 +8918,12 @@ msgstr "cURL 并发限制" #~ msgid "This font will be used for certain languages." #~ msgstr "用于特定语言的字体。" +#~ msgid "This is not a recommended configuration." +#~ msgstr "不推荐使用该配置。" + +#~ msgid "Time send interval" +#~ msgstr "发送间隔时间" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "启用着色器需要使用OpenGL驱动。" @@ -8849,6 +8994,21 @@ msgstr "cURL 并发限制" #~ msgid "Waving water" #~ msgstr "摇动水" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "当gui_scaling_filter_txr2img为 true 时,复制这些图像\n" +#~ "从硬件到软件进行扩展。 当 false 时,回退\n" +#~ "到旧的缩放方法,对于不\n" +#~ "正确支持从硬件下载纹理。" + +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "方块材质动画是否应按地图块同步,否则取消同步。" + #~ msgid "X" #~ msgstr "X" diff --git a/po/zh_TW/luanti.po b/po/zh_TW/luanti.po index 0cf2409c6..264a0e3eb 100644 --- a/po/zh_TW/luanti.po +++ b/po/zh_TW/luanti.po @@ -2,17 +2,17 @@ msgid "" msgstr "" "Project-Id-Version: Chinese (Traditional) (Minetest)\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-28 19:57+0100\n" -"PO-Revision-Date: 2024-08-20 10:09+0000\n" -"Last-Translator: hugoalh \n" -"Language-Team: Chinese (Traditional) \n" +"POT-Creation-Date: 2025-02-09 13:23+0100\n" +"PO-Revision-Date: 2025-01-16 13:00+0000\n" +"Last-Translator: reimu105 \n" +"Language-Team: Chinese (Traditional Han script) \n" "Language: zh_TW\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"X-Generator: Weblate 5.7\n" +"X-Generator: Weblate 5.10-dev\n" #: builtin/client/chatcommands.lua msgid "Clear the out chat queue" @@ -75,6 +75,246 @@ msgstr "使用「.help 」來取得更多資訊,或使用「.help all」 msgid "[all | ] [-t]" msgstr "[all | <指令>] [-t]" +#: builtin/common/settings/components.lua +msgid "Browse" +msgstr "瀏覽" + +#: builtin/common/settings/components.lua +msgid "Edit" +msgstr "編輯" + +#: builtin/common/settings/components.lua +msgid "Select directory" +msgstr "選擇目錄" + +#: builtin/common/settings/components.lua +msgid "Select file" +msgstr "選擇檔案" + +#: builtin/common/settings/components.lua +msgid "Set" +msgstr "設定" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "(No description of setting given)" +msgstr "(未提供設定描述)" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "2D Noise" +msgstr "二維雜訊值" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/content/dlg_install.lua +#: builtin/mainmenu/content/dlg_overwrite.lua +#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua +#: builtin/mainmenu/dlg_delete_content.lua +#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua +#: builtin/mainmenu/dlg_rename_modpack.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/guiOpenURL.cpp src/gui/guiPasswordChange.cpp +msgid "Cancel" +msgstr "取消" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Lacunarity" +msgstr "空隙" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Octaves" +msgstr "八音" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Offset" +msgstr "補償" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Persistence" +msgstr "持續性" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_config_world.lua src/gui/guiKeyChangeMenu.cpp +msgid "Save" +msgstr "儲存" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: src/settings_translation_file.cpp +msgid "Scale" +msgstr "規模" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +#: builtin/mainmenu/dlg_create_world.lua +msgid "Seed" +msgstr "種子碼" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "X spread" +msgstr "X 點差" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Y spread" +msgstr "Y 點差" + +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "Z spread" +msgstr "Z 點差" + +#. ~ "absvalue" is a noise parameter flag. +#. It is short for "absolute value". +#. It can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "absvalue" +msgstr "絕對值" + +#. ~ "defaults" is a noise parameter flag. +#. It describes the default processing options +#. for noise settings in the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "defaults" +msgstr "預設值" + +#. ~ "eased" is a noise parameter flag. +#. It is used to make the map smoother and +#. can be enabled in noise settings in +#. the settings menu. +#: builtin/common/settings/dlg_change_mapgen_flags.lua +msgid "eased" +msgstr "緩解 (eased)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable automatic exposure as well)" +msgstr "(遊戲也需要啟用自動曝光)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable bloom as well)" +msgstr "(遊戲還需要啟用陰影)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(The game will need to enable volumetric lighting as well)" +msgstr "(遊戲還需要啟用陰影)" + +#: builtin/common/settings/dlg_settings.lua +msgid "(Use system language)" +msgstr "(使用系統語言)" + +#: builtin/common/settings/dlg_settings.lua +msgid "Accessibility" +msgstr "無障礙" + +#: builtin/common/settings/dlg_settings.lua +msgid "Auto" +msgstr "自動" + +#: builtin/common/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp +#: src/gui/touchscreenlayout.cpp src/settings_translation_file.cpp +msgid "Chat" +msgstr "聊天" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Clear" +msgstr "清除" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "Controls" +msgstr "控制" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/common/settings/shadows_component.lua +msgid "Disabled" +msgstr "已停用" + +#: builtin/common/settings/dlg_settings.lua +msgid "Enabled" +msgstr "已啟用" + +#: builtin/common/settings/dlg_settings.lua src/settings_translation_file.cpp +msgid "General" +msgstr "通用" + +#: builtin/common/settings/dlg_settings.lua +msgid "Movement" +msgstr "移動" + +#: builtin/common/settings/dlg_settings.lua +#: builtin/mainmenu/content/dlg_contentdb.lua +msgid "No results" +msgstr "無結果" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default" +msgstr "還原至預設值" + +#: builtin/common/settings/dlg_settings.lua +msgid "Reset setting to default ($1)" +msgstr "將設定重設為預設值 ($1)" + +#: builtin/common/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua +msgid "Search" +msgstr "搜尋" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show advanced settings" +msgstr "顯示進階設定" + +#: builtin/common/settings/dlg_settings.lua +msgid "Show technical names" +msgstr "顯示技術名稱" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "Touchscreen layout" +msgstr "觸控螢幕" + +#: builtin/common/settings/dlg_settings.lua +#, fuzzy +msgid "pause_menu" +msgstr "在暫停選單中的 FPS" + +#: builtin/common/settings/settingtypes.lua +msgid "Client Mods" +msgstr "客戶端模組" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Games" +msgstr "內容:遊戲" + +#: builtin/common/settings/settingtypes.lua +msgid "Content: Mods" +msgstr "內容:模組" + +#: builtin/common/settings/shadows_component.lua +msgid "(The game will need to enable shadows as well)" +msgstr "(遊戲還需要啟用陰影)" + +#: builtin/common/settings/shadows_component.lua +msgid "Custom" +msgstr "自定" + +#: builtin/common/settings/shadows_component.lua +#: src/settings_translation_file.cpp +msgid "Dynamic shadows" +msgstr "動態陰影" + +#: builtin/common/settings/shadows_component.lua +msgid "High" +msgstr "高" + +#: builtin/common/settings/shadows_component.lua +msgid "Low" +msgstr "低" + +#: builtin/common/settings/shadows_component.lua +msgid "Medium" +msgstr "中" + +#: builtin/common/settings/shadows_component.lua +msgid "Very High" +msgstr "超高" + +#: builtin/common/settings/shadows_component.lua +msgid "Very Low" +msgstr "很低" + #: builtin/fstk/ui.lua msgid "" msgstr "<沒有可用的>" @@ -155,16 +395,14 @@ msgstr "正在下載 $1..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "All" -msgstr "" +msgstr "全部" #: builtin/mainmenu/content/dlg_contentdb.lua #: builtin/mainmenu/content/dlg_package.lua -#: builtin/mainmenu/settings/dlg_settings.lua msgid "Back" msgstr "返回" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "ContentDB is not available when Luanti was compiled without cURL" msgstr "在沒有 cURL 的情況下編譯 Minetest 時,ContentDB 不可用" @@ -174,7 +412,7 @@ msgstr "正在下載..." #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Featured" -msgstr "" +msgstr "特性" #: builtin/mainmenu/content/dlg_contentdb.lua msgid "Games" @@ -196,11 +434,6 @@ msgstr "模組" msgid "No packages could be retrieved" msgstr "無法取得套件" -#: builtin/mainmenu/content/dlg_contentdb.lua -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "No results" -msgstr "無結果" - #: builtin/mainmenu/content/dlg_contentdb.lua msgid "No updates" msgstr "無更新" @@ -210,7 +443,6 @@ msgid "Queued" msgstr "已排程" #: builtin/mainmenu/content/dlg_contentdb.lua -#, fuzzy msgid "Texture Packs" msgstr "材質包" @@ -246,27 +478,14 @@ msgstr "已安裝" msgid "Base Game:" msgstr "主遊戲:" -#: builtin/mainmenu/content/dlg_install.lua -#: builtin/mainmenu/content/dlg_overwrite.lua -#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/dlg_delete_content.lua -#: builtin/mainmenu/dlg_delete_world.lua builtin/mainmenu/dlg_register.lua -#: builtin/mainmenu/dlg_rename_modpack.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp src/gui/guiOpenURL.cpp -#: src/gui/guiPasswordChange.cpp -msgid "Cancel" -msgstr "取消" - #: builtin/mainmenu/content/dlg_install.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua msgid "Dependencies:" msgstr "相依元件:" #: builtin/mainmenu/content/dlg_install.lua -#, fuzzy msgid "Error getting dependencies for package $1" -msgstr "獲取套件的相依元件時發生錯誤" +msgstr "取得軟體包 $1 的依賴項時出錯" #: builtin/mainmenu/content/dlg_install.lua msgid "Install" @@ -301,44 +520,40 @@ msgid "Overwrite" msgstr "覆蓋" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "ContentDB page" msgstr "ContentDB網址" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Description" msgstr "伺服器描述" #: builtin/mainmenu/content/dlg_package.lua msgid "Donate" -msgstr "" +msgstr "捐贈" #: builtin/mainmenu/content/dlg_package.lua msgid "Forum Topic" -msgstr "" +msgstr "論壇主題" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Information" -msgstr "資訊:" +msgstr "資訊" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Install [$1]" msgstr "安裝 $1" #: builtin/mainmenu/content/dlg_package.lua msgid "Issue Tracker" -msgstr "" +msgstr "問題追蹤器" #: builtin/mainmenu/content/dlg_package.lua msgid "Source" -msgstr "" +msgstr "原始碼" #: builtin/mainmenu/content/dlg_package.lua msgid "Translate" -msgstr "" +msgstr "翻譯" #: builtin/mainmenu/content/dlg_package.lua builtin/mainmenu/tab_content.lua msgid "Uninstall" @@ -349,13 +564,12 @@ msgid "Update" msgstr "更新" #: builtin/mainmenu/content/dlg_package.lua -#, fuzzy msgid "Website" -msgstr "造訪網站" +msgstr "網站" #: builtin/mainmenu/content/dlg_package.lua msgid "by $1 — $2 downloads — +$3 / $4 / -$5" -msgstr "" +msgstr "按 $1 — $2 下載 — +$3 / $4 / -$5" #: builtin/mainmenu/content/pkgmgr.lua msgid "$1 (Enabled)" @@ -385,6 +599,12 @@ msgstr "無法將 $1 安裝為 $2" msgid "Unable to install a $1 as a texture pack" msgstr "無法將 $1 安裝為材質包" +#: builtin/mainmenu/dlg_clients_list.lua +msgid "" +"This is the list of clients connected to\n" +"$1" +msgstr "" + #: builtin/mainmenu/dlg_config_world.lua msgid "(Enabled, has error)" msgstr "(已啓用,有錯誤)" @@ -448,12 +668,6 @@ msgstr "沒有可選相依元件" msgid "Optional dependencies:" msgstr "可選相依元件:" -#: builtin/mainmenu/dlg_config_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/gui/guiKeyChangeMenu.cpp -msgid "Save" -msgstr "儲存" - #: builtin/mainmenu/dlg_config_world.lua msgid "World:" msgstr "世界:" @@ -604,11 +818,6 @@ msgstr "河流" msgid "Sea level rivers" msgstr "生成在海平面的河流" -#: builtin/mainmenu/dlg_create_world.lua -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Seed" -msgstr "種子碼" - #: builtin/mainmenu/dlg_create_world.lua msgid "Smooth transition between biomes" msgstr "生態域之間的平穩過渡" @@ -711,13 +920,12 @@ msgid "Dismiss" msgstr "忽略" #: builtin/mainmenu/dlg_reinstall_mtg.lua -#, fuzzy msgid "" "For a long time, Luanti shipped with a default game called \"Minetest " "Game\". Since version 5.8.0, Luanti ships without a default game." msgstr "" -"長期以來,Minetest 引擎附帶了一個名為「Minetest Game」的預設遊戲。 自 " -"Minetest 5.8.0 起,Minetest 不再提供預設遊戲。" +"長期以來,Luanti 都附帶一款名為「Minetest Game」的預設遊戲。自 5.8.0 版本以" +"來,Luanti 不再提供預設遊戲。" #: builtin/mainmenu/dlg_reinstall_mtg.lua msgid "" @@ -748,6 +956,23 @@ msgid "" "override any renaming here." msgstr "此模組包有在其 modpack.conf 提供明確的名稱,會覆蓋此處的任何重新命名。" +#: builtin/mainmenu/dlg_server_list_mods.lua +#, fuzzy +msgid "Expand all" +msgstr "全部啟用" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "Group by prefix" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses a game called $2 and the following mods:" +msgstr "" + +#: builtin/mainmenu/dlg_server_list_mods.lua +msgid "The $1 server uses the following mods:" +msgstr "" + #: builtin/mainmenu/dlg_version_info.lua msgid "A new $1 version is available" msgstr "一個新的 $1 版本可用" @@ -775,7 +1000,7 @@ msgstr "永不" msgid "Visit website" msgstr "造訪網站" -#: builtin/mainmenu/init.lua +#: builtin/mainmenu/init.lua src/client/game_formspec.cpp msgid "Settings" msgstr "設定" @@ -787,228 +1012,6 @@ msgstr "已停用公開伺服器列表" msgid "Try reenabling public serverlist and check your internet connection." msgstr "請嘗試重新啟用公共伺服器清單並檢查您的網際網路連線。" -#: builtin/mainmenu/settings/components.lua -msgid "Browse" -msgstr "瀏覽" - -#: builtin/mainmenu/settings/components.lua -msgid "Edit" -msgstr "編輯" - -#: builtin/mainmenu/settings/components.lua -msgid "Select directory" -msgstr "選擇目錄" - -#: builtin/mainmenu/settings/components.lua -msgid "Select file" -msgstr "選擇檔案" - -#: builtin/mainmenu/settings/components.lua -msgid "Set" -msgstr "設定" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "(No description of setting given)" -msgstr "(未提供設定描述)" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "2D Noise" -msgstr "二維雜訊值" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Lacunarity" -msgstr "空隙" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Octaves" -msgstr "八音" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Offset" -msgstr "補償" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Persistence" -msgstr "持續性" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -#: src/settings_translation_file.cpp -msgid "Scale" -msgstr "規模" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "X spread" -msgstr "X 點差" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Y spread" -msgstr "Y 點差" - -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "Z spread" -msgstr "Z 點差" - -#. ~ "absvalue" is a noise parameter flag. -#. It is short for "absolute value". -#. It can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "absvalue" -msgstr "絕對值" - -#. ~ "defaults" is a noise parameter flag. -#. It describes the default processing options -#. for noise settings in the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "defaults" -msgstr "預設值" - -#. ~ "eased" is a noise parameter flag. -#. It is used to make the map smoother and -#. can be enabled in noise settings in -#. the settings menu. -#: builtin/mainmenu/settings/dlg_change_mapgen_flags.lua -msgid "eased" -msgstr "緩解 (eased)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable automatic exposure as well)" -msgstr "(遊戲還需要啟用陰影)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable bloom as well)" -msgstr "(遊戲還需要啟用陰影)" - -#: builtin/mainmenu/settings/dlg_settings.lua -#, fuzzy -msgid "(The game will need to enable volumetric lighting as well)" -msgstr "(遊戲還需要啟用陰影)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "(Use system language)" -msgstr "(使用系統語言)" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Accessibility" -msgstr "無障礙" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Auto" -msgstr "" - -#: builtin/mainmenu/settings/dlg_settings.lua src/gui/guiKeyChangeMenu.cpp -#: src/gui/touchcontrols.cpp src/settings_translation_file.cpp -msgid "Chat" -msgstr "聊天" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Clear" -msgstr "清除" - -#: builtin/mainmenu/settings/dlg_settings.lua src/client/game.cpp -#: src/settings_translation_file.cpp -msgid "Controls" -msgstr "控制" - -#: builtin/mainmenu/settings/dlg_settings.lua -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Disabled" -msgstr "已停用" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Enabled" -msgstr "已啟用" - -#: builtin/mainmenu/settings/dlg_settings.lua src/settings_translation_file.cpp -msgid "General" -msgstr "通用" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Movement" -msgstr "移動" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default" -msgstr "還原至預設值" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Reset setting to default ($1)" -msgstr "將設定重設為預設值 ($1)" - -#: builtin/mainmenu/settings/dlg_settings.lua builtin/mainmenu/tab_online.lua -msgid "Search" -msgstr "搜尋" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show advanced settings" -msgstr "顯示進階設定" - -#: builtin/mainmenu/settings/dlg_settings.lua -msgid "Show technical names" -msgstr "顯示技術名稱" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Client Mods" -msgstr "客戶端模組" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Games" -msgstr "內容:遊戲" - -#: builtin/mainmenu/settings/settingtypes.lua -msgid "Content: Mods" -msgstr "內容:模組" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Enable" -msgstr "已啟用" - -#: builtin/mainmenu/settings/shader_warning_component.lua -#, fuzzy -msgid "Shaders are disabled." -msgstr "已停用相機更新" - -#: builtin/mainmenu/settings/shader_warning_component.lua -msgid "This is not a recommended configuration." -msgstr "" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "(The game will need to enable shadows as well)" -msgstr "(遊戲還需要啟用陰影)" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Custom" -msgstr "自定" - -#: builtin/mainmenu/settings/shadows_component.lua -#: src/settings_translation_file.cpp -msgid "Dynamic shadows" -msgstr "動態陰影" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "High" -msgstr "高" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Low" -msgstr "低" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Medium" -msgstr "中" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very High" -msgstr "超高" - -#: builtin/mainmenu/settings/shadows_component.lua -msgid "Very Low" -msgstr "很低" - #: builtin/mainmenu/tab_about.lua msgid "About" msgstr "關於" @@ -1029,10 +1032,6 @@ msgstr "核心開發者" msgid "Core Team" msgstr "核心團隊" -#: builtin/mainmenu/tab_about.lua -msgid "Irrlicht device:" -msgstr "照明設備:" - #: builtin/mainmenu/tab_about.lua msgid "Open User Data Directory" msgstr "打開用戶資料目錄" @@ -1134,16 +1133,14 @@ msgid "Install games from ContentDB" msgstr "從 ContentDB 安裝遊戲" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "Luanti doesn't come with a game by default." -msgstr "預設不再安裝 Minetest 遊戲。" +msgstr "Luanti 預設不附遊戲。" #: builtin/mainmenu/tab_local.lua -#, fuzzy msgid "" "Luanti is a game-creation platform that allows you to play many different " "games." -msgstr "Minetest 是一個遊戲創建平台,可以讓你遊玩許多不同的遊戲。" +msgstr "Luanti 是一個遊戲創作平台,可以讓您玩許多不同的遊戲。" #: builtin/mainmenu/tab_local.lua msgid "New" @@ -1181,10 +1178,22 @@ msgstr "開始遊戲" msgid "You need to install a game before you can create a world." msgstr "您需要先安裝遊戲才能安裝模組。" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Add favorite" +msgstr "移除收藏" + #: builtin/mainmenu/tab_online.lua msgid "Address" msgstr "地址" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "" +"Clients:\n" +"$1" +msgstr "用戶端" + #: builtin/mainmenu/tab_online.lua msgid "Creative mode" msgstr "創造模式" @@ -1198,6 +1207,11 @@ msgstr "傷害/PvP" msgid "Favorites" msgstr "收藏" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Game: $1" +msgstr "遊戲" + #: builtin/mainmenu/tab_online.lua msgid "Incompatible Servers" msgstr "不相容的伺服器" @@ -1210,10 +1224,28 @@ msgstr "加入遊戲" msgid "Login" msgstr "登入" +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Number of mods: $1" +msgstr "出現的執行緒數" + +#: builtin/mainmenu/tab_online.lua +#, fuzzy +msgid "Open server website" +msgstr "專用伺服器步驟" + #: builtin/mainmenu/tab_online.lua msgid "Ping" msgstr "Ping" +#: builtin/mainmenu/tab_online.lua +msgid "" +"Possible filters\n" +"game:\n" +"mod:\n" +"player:" +msgstr "" + #: builtin/mainmenu/tab_online.lua msgid "Public Servers" msgstr "公開伺服器" @@ -1298,23 +1330,6 @@ msgstr "" "\n" "檢視 debug.txt 以取得更多資訊。" -#: src/client/game.cpp -msgid "- Mode: " -msgstr "- 模式: " - -#: src/client/game.cpp -msgid "- Public: " -msgstr "- 公開: " - -#. ~ PvP = Player versus Player -#: src/client/game.cpp -msgid "- PvP: " -msgstr "- PvP: " - -#: src/client/game.cpp -msgid "- Server Name: " -msgstr "- 伺服器名稱: " - #: src/client/game.cpp msgid "A serialization error occurred:" msgstr "序列化時發生錯誤:" @@ -1324,6 +1339,11 @@ msgstr "序列化時發生錯誤:" msgid "Access denied. Reason: %s" msgstr "存取被拒絕。原因︰%s" +#: src/client/game.cpp +#, fuzzy +msgid "All debug info hidden" +msgstr "已顯示除錯資訊" + #: src/client/game.cpp msgid "Automatic forward disabled" msgstr "已停用自動前進" @@ -1344,6 +1364,10 @@ msgstr "區塊邊界顯示目前區塊" msgid "Block bounds shown for nearby blocks" msgstr "區塊邊界顯示鄰接區塊" +#: src/client/game.cpp +msgid "Bounding boxes shown" +msgstr "" + #: src/client/game.cpp msgid "Camera update disabled" msgstr "已停用相機更新" @@ -1356,10 +1380,6 @@ msgstr "已啟用相機更新" msgid "Can't show block bounds (disabled by game or mod)" msgstr "無法顯示區塊邊界(被遊戲或模組停用)" -#: src/client/game.cpp -msgid "Change Password" -msgstr "變更密碼" - #: src/client/game.cpp msgid "Cinematic mode disabled" msgstr "電影模式已停用" @@ -1388,38 +1408,6 @@ msgstr "連線錯誤(逾時?)" msgid "Connection failed for unknown reason" msgstr "連線失敗,原因不明" -#: src/client/game.cpp -msgid "Continue" -msgstr "繼續" - -#: src/client/game.cpp -msgid "" -"Controls:\n" -"No menu open:\n" -"- slide finger: look around\n" -"- tap: place/punch/use (default)\n" -"- long tap: dig/use (default)\n" -"Menu/inventory open:\n" -"- double tap (outside):\n" -" --> close\n" -"- touch stack, touch slot:\n" -" --> move stack\n" -"- touch&drag, tap 2nd finger\n" -" --> place single item to slot\n" -msgstr "" -"控制:\n" -"沒有開啟的選單:\n" -"- 滑動手指:環顧四周\n" -"- 點擊:放置/打擊/使用(預設)\n" -"- 長按:挖掘/使用(預設)\n" -"開啟的選單/物品欄:\n" -"- 點擊兩次(外面):\n" -" --> 關閉\n" -"- 碰觸堆疊,碰觸欄位:\n" -" --> 移動堆疊\n" -"- 碰觸並拖曳,以第二隻手指點擊\n" -" --> 放置單一物品至欄位\n" - #: src/client/game.cpp #, c-format msgid "Couldn't resolve address: %s" @@ -1433,31 +1421,15 @@ msgstr "正在建立用戶端..." msgid "Creating server..." msgstr "正在建立伺服器..." -#: src/client/game.cpp -msgid "Debug info and profiler graph hidden" -msgstr "已隱藏除錯資訊及分析圖" - #: src/client/game.cpp msgid "Debug info shown" msgstr "已顯示除錯資訊" -#: src/client/game.cpp -msgid "Debug info, profiler graph, and wireframe hidden" -msgstr "已隱藏除錯資訊、分析圖及線框" - #: src/client/game.cpp #, c-format msgid "Error creating client: %s" msgstr "建立用戶端時發生錯誤:%s" -#: src/client/game.cpp -msgid "Exit to Menu" -msgstr "離開,回到選單" - -#: src/client/game.cpp -msgid "Exit to OS" -msgstr "離開,回到作業系統" - #: src/client/game.cpp msgid "Fast mode disabled" msgstr "快速模式已停用" @@ -1494,18 +1466,6 @@ msgstr "已啟用霧氣" msgid "Fog enabled by game or mod" msgstr "霧已由遊戲或模組啟用" -#: src/client/game.cpp -msgid "Game info:" -msgstr "遊戲資訊:" - -#: src/client/game.cpp -msgid "Game paused" -msgstr "遊戲暫停" - -#: src/client/game.cpp -msgid "Hosting server" -msgstr "正在主持伺服器" - #: src/client/game.cpp msgid "Item definitions..." msgstr "定義物品..." @@ -1542,14 +1502,6 @@ msgstr "穿牆模式已啟用(註:沒有「noclip」權限)" msgid "Node definitions..." msgstr "節點定義..." -#: src/client/game.cpp -msgid "Off" -msgstr "關閉" - -#: src/client/game.cpp -msgid "On" -msgstr "開啟" - #: src/client/game.cpp msgid "Pitch move mode disabled" msgstr "俯仰移動模式已停用" @@ -1562,38 +1514,22 @@ msgstr "俯仰移動模式已啟用" msgid "Profiler graph shown" msgstr "已顯示分析圖" -#: src/client/game.cpp -msgid "Remote server" -msgstr "遠端伺服器" - #: src/client/game.cpp msgid "Resolving address..." msgstr "正在解析地址……" -#: src/client/game.cpp -msgid "Respawn" -msgstr "重生" - #: src/client/game.cpp msgid "Shutting down..." msgstr "正在關閉..." -#: src/client/game.cpp +#: src/client/game.cpp src/client/game_formspec.cpp msgid "Singleplayer" msgstr "單人遊戲" -#: src/client/game.cpp -msgid "Sound Volume" -msgstr "音量" - #: src/client/game.cpp msgid "Sound muted" msgstr "已靜音" -#: src/client/game.cpp -msgid "Sound system is disabled" -msgstr "聲音系統已被禁用" - #: src/client/game.cpp msgid "Sound system is not supported on this build" msgstr "此編譯版本不支持聲音系統" @@ -1665,18 +1601,116 @@ msgstr "觀看範圍改為 %d,但被遊戲或模組限制為 %d" msgid "Volume changed to %d%%" msgstr "音量已調整為 %d%%" +#: src/client/game.cpp +#, fuzzy +msgid "Wireframe not supported by video driver" +msgstr "著色器已啟用,但是驅動程式不支援 GLSL。" + #: src/client/game.cpp msgid "Wireframe shown" msgstr "已顯示線框" -#: src/client/game.cpp -msgid "You died" -msgstr "您已死亡" - #: src/client/game.cpp msgid "Zoom currently disabled by game or mod" msgstr "遠近調整目前已被遊戲或模組停用" +#: src/client/game_formspec.cpp +msgid "- Mode: " +msgstr "- 模式: " + +#: src/client/game_formspec.cpp +msgid "- Public: " +msgstr "- 公開: " + +#. ~ PvP = Player versus Player +#: src/client/game_formspec.cpp +msgid "- PvP: " +msgstr "- PvP: " + +#: src/client/game_formspec.cpp +msgid "- Server Name: " +msgstr "- 伺服器名稱: " + +#: src/client/game_formspec.cpp +msgid "Change Password" +msgstr "變更密碼" + +#: src/client/game_formspec.cpp +msgid "Continue" +msgstr "繼續" + +#: src/client/game_formspec.cpp +msgid "" +"Controls:\n" +"No menu open:\n" +"- slide finger: look around\n" +"- tap: place/punch/use (default)\n" +"- long tap: dig/use (default)\n" +"Menu/inventory open:\n" +"- double tap (outside):\n" +" --> close\n" +"- touch stack, touch slot:\n" +" --> move stack\n" +"- touch&drag, tap 2nd finger\n" +" --> place single item to slot\n" +msgstr "" +"控制:\n" +"沒有開啟的選單:\n" +"- 滑動手指:環顧四周\n" +"- 點擊:放置/打擊/使用(預設)\n" +"- 長按:挖掘/使用(預設)\n" +"開啟的選單/物品欄:\n" +"- 點擊兩次(外面):\n" +" --> 關閉\n" +"- 碰觸堆疊,碰觸欄位:\n" +" --> 移動堆疊\n" +"- 碰觸並拖曳,以第二隻手指點擊\n" +" --> 放置單一物品至欄位\n" + +#: src/client/game_formspec.cpp +msgid "Exit to Menu" +msgstr "離開,回到選單" + +#: src/client/game_formspec.cpp +msgid "Exit to OS" +msgstr "離開,回到作業系統" + +#: src/client/game_formspec.cpp +msgid "Game info:" +msgstr "遊戲資訊:" + +#: src/client/game_formspec.cpp +msgid "Game paused" +msgstr "遊戲暫停" + +#: src/client/game_formspec.cpp +msgid "Hosting server" +msgstr "正在主持伺服器" + +#: src/client/game_formspec.cpp +msgid "Off" +msgstr "關閉" + +#: src/client/game_formspec.cpp +msgid "On" +msgstr "開啟" + +#: src/client/game_formspec.cpp +msgid "Remote server" +msgstr "遠端伺服器" + +#: src/client/game_formspec.cpp +msgid "Respawn" +msgstr "重生" + +#: src/client/game_formspec.cpp +msgid "Sound Volume" +msgstr "音量" + +#: src/client/game_formspec.cpp +msgid "You died" +msgstr "您已死亡" + #: src/client/gameui.cpp msgid "Chat currently disabled by game or mod" msgstr "聊天目前已被遊戲或模組停用" @@ -1716,9 +1750,8 @@ msgstr "退格鍵" #. ~ Usually paired with the Pause key #: src/client/keycode.cpp -#, fuzzy msgid "Break Key" -msgstr "潛行按鍵" +msgstr "取消鍵" #: src/client/keycode.cpp msgid "Caps Lock" @@ -1908,9 +1941,8 @@ msgid "Print" msgstr "列印" #: src/client/keycode.cpp -#, fuzzy msgid "Return Key" -msgstr "Return" +msgstr "返回鍵" #: src/client/keycode.cpp msgid "Right Arrow" @@ -1978,9 +2010,8 @@ msgid "X Button 2" msgstr "X 按鈕 2" #: src/client/keycode.cpp -#, fuzzy msgid "Zoom Key" -msgstr "遠近調整" +msgstr "縮放鍵" #: src/client/minimap.cpp msgid "Minimap hidden" @@ -2006,7 +2037,8 @@ msgid "Failed to compile the \"%s\" shader." msgstr "無法編譯「%s」著色器。" #: src/client/shader.cpp -msgid "Shaders are enabled but GLSL is not supported by the driver." +#, fuzzy +msgid "GLSL is not supported by the driver" msgstr "著色器已啟用,但是驅動程式不支援 GLSL。" #. ~ Error when a mod is missing dependencies. Ex: "Mod Title is missing: mod1, mod2, mod3" @@ -2054,7 +2086,7 @@ msgstr "自動前進" msgid "Automatic jumping" msgstr "自動跳躍" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Aux1" msgstr "Aux1" @@ -2066,7 +2098,7 @@ msgstr "後退" msgid "Block bounds" msgstr "區塊邊界" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Change camera" msgstr "變更相機" @@ -2090,7 +2122,7 @@ msgstr "降低音量" msgid "Double tap \"jump\" to toggle fly" msgstr "輕擊兩次「跳躍」以切換成飛行" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Drop" msgstr "丟棄" @@ -2106,11 +2138,11 @@ msgstr "提高視野" msgid "Inc. volume" msgstr "提高音量" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Inventory" msgstr "物品欄" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Jump" msgstr "跳躍" @@ -2142,7 +2174,7 @@ msgstr "下一個物品" msgid "Prev. item" msgstr "上一個物品" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Range select" msgstr "選擇範圍" @@ -2154,7 +2186,7 @@ msgstr "右" msgid "Screenshot" msgstr "螢幕擷取" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Sneak" msgstr "潛行" @@ -2162,15 +2194,15 @@ msgstr "潛行" msgid "Toggle HUD" msgstr "切換 HUD" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle chat log" msgstr "切換聊天記錄" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fast" msgstr "切換快速模式" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle fly" msgstr "切換飛行模式" @@ -2178,11 +2210,11 @@ msgstr "切換飛行模式" msgid "Toggle fog" msgstr "切換霧氣" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle minimap" msgstr "切換迷你地圖" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Toggle noclip" msgstr "切換穿牆模式" @@ -2190,7 +2222,7 @@ msgstr "切換穿牆模式" msgid "Toggle pitchmove" msgstr "切換 Pitch 移動模式" -#: src/gui/guiKeyChangeMenu.cpp src/gui/touchcontrols.cpp +#: src/gui/guiKeyChangeMenu.cpp src/gui/touchscreenlayout.cpp msgid "Zoom" msgstr "遠近調整" @@ -2226,7 +2258,7 @@ msgstr "舊密碼" msgid "Passwords do not match!" msgstr "密碼不符合!" -#: src/gui/guiVolumeChange.cpp src/gui/touchcontrols.cpp +#: src/gui/guiVolumeChange.cpp src/gui/touchscreenlayout.cpp msgid "Exit" msgstr "離開" @@ -2239,38 +2271,66 @@ msgstr "已靜音" msgid "Sound Volume: %d%%" msgstr "音量:%d%%" -#: src/gui/touchcontrols.cpp +#: src/gui/touchscreeneditor.cpp #, fuzzy -msgid "Joystick" -msgstr "搖桿 ID" +msgid "Add button" +msgstr "中鍵" -#: src/gui/touchcontrols.cpp -msgid "Overflow menu" +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Done" +msgstr "完成!" + +#: src/gui/touchscreeneditor.cpp +#, fuzzy +msgid "Remove" +msgstr "遠端伺服器" + +#: src/gui/touchscreeneditor.cpp +msgid "Reset" msgstr "" -#: src/gui/touchcontrols.cpp -#, fuzzy +#: src/gui/touchscreeneditor.cpp +msgid "Start dragging a button to add. Tap outside to cancel." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap a button to select it. Drag a button to move it." +msgstr "" + +#: src/gui/touchscreeneditor.cpp +msgid "Tap outside to deselect." +msgstr "" + +#: src/gui/touchscreenlayout.cpp +msgid "Joystick" +msgstr "搖桿" + +#: src/gui/touchscreenlayout.cpp +msgid "Overflow menu" +msgstr "溢出選單" + +#: src/gui/touchscreenlayout.cpp msgid "Toggle debug" -msgstr "切換霧氣" +msgstr "切換偵錯" #: src/network/clientpackethandler.cpp msgid "" "Another client is connected with this name. If your client closed " "unexpectedly, try again in a minute." -msgstr "" +msgstr "另一個用戶端已與該名稱連線。 如果您的客戶端意外關閉,請稍後再試。" #: src/network/clientpackethandler.cpp msgid "Empty passwords are disallowed. Set a password and try again." -msgstr "" +msgstr "不允許使用空密碼。 設定密碼並重試。" #: src/network/clientpackethandler.cpp msgid "Internal server error" -msgstr "" +msgstr "伺服器內部錯誤" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Invalid password" -msgstr "舊密碼" +msgstr "密碼無效" #. ~ DO NOT TRANSLATE THIS LITERALLY! #. This is a special string which needs to contain the translation's @@ -2291,46 +2351,46 @@ msgstr "名字已被佔用。 請選擇其他名稱" #: src/network/clientpackethandler.cpp msgid "Player name contains disallowed characters" -msgstr "" +msgstr "玩家名稱包含不允許的字符" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Player name not allowed" -msgstr "玩家名稱太長。" +msgstr "玩家名稱不被接受" #: src/network/clientpackethandler.cpp -#, fuzzy msgid "Server shutting down" -msgstr "正在關閉..." +msgstr "正在關閉" #: src/network/clientpackethandler.cpp msgid "" "The server has experienced an internal error. You will now be disconnected." -msgstr "" +msgstr "伺服器遇到內部錯誤。 您現在將斷開連線。" #: src/network/clientpackethandler.cpp msgid "The server is running in singleplayer mode. You cannot connect." -msgstr "" +msgstr "伺服器正在單人模式下運作。 您無法連線。" #: src/network/clientpackethandler.cpp msgid "Too many users" -msgstr "" +msgstr "用戶太多" #: src/network/clientpackethandler.cpp msgid "Unknown disconnect reason." -msgstr "" +msgstr "未知的斷開原因。" #: src/network/clientpackethandler.cpp msgid "" "Your client sent something the server didn't expect. Try reconnecting or " "updating your client." -msgstr "" +msgstr "您的客戶端發送了伺服器意想不到的內容。 嘗試重新連線或更新您的客戶端。" #: src/network/clientpackethandler.cpp msgid "" "Your client's version is not supported.\n" "Please contact the server administrator." msgstr "" +"伺服器不支援這個客戶端版本。\n" +"請聯絡管理員。" #: src/server.cpp #, c-format @@ -2460,6 +2520,7 @@ msgid "3D noise that determines number of dungeons per mapchunk." msgstr "決定每個地圖區塊中地城數量的 3D 雜訊值。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "3D support.\n" "Currently supported:\n" @@ -2468,8 +2529,7 @@ msgid "" "- interlaced: odd/even line based polarization screen support.\n" "- topbottom: split screen top/bottom.\n" "- sidebyside: split screen side by side.\n" -"- crossview: Cross-eyed 3d\n" -"Note that the interlaced mode requires shaders to be enabled." +"- crossview: Cross-eyed 3d" msgstr "" "3D 支援。\n" "目前已支援:\n" @@ -2533,10 +2593,6 @@ msgstr "活動區塊範圍" msgid "Active object send range" msgstr "活動目標傳送範圍" -#: src/settings_translation_file.cpp -msgid "Adds particles when digging a node." -msgstr "當挖掘節點時加入一些粒子。" - #: src/settings_translation_file.cpp msgid "Adjust the detected display density, used for scaling UI elements." msgstr "調整偵測到的顯示密度,用來縮放 UI 元件。" @@ -2550,11 +2606,11 @@ msgid "" "Value = 2.0 (can be higher depending on 'mgv7_np_floatland', always test\n" "to be sure) creates a solid floatland layer." msgstr "" -"調整浮空島層的密度。\n" -"增加數值以增加密度。可以是正值或負值。\n" -"值 = 0.0:50% 的體積是浮空島。\n" -"值 = 2.0(可以更高,取決於「mgv7_np_floatland」,總是進行測試以確定)建立一個" -"堅固的浮空島層。" +"調整懸空島層的密度。\n" +"增加值,就增加密度。可以是正值或負值。\n" +"值等於 0.0, 容積的 50% 是懸空島。\n" +"值等於 2.0,(值可以更高,取決於“mgv7_np_floatland”,但一定要測試確定)\n" +"建立一個密實的懸空島層。" #: src/settings_translation_file.cpp msgid "Admin name" @@ -2564,6 +2620,17 @@ msgstr "管理員名稱" msgid "Advanced" msgstr "進階" +#: src/settings_translation_file.cpp +msgid "" +"All mesh buffers with less than this number of vertices will be merged\n" +"during map rendering. This improves rendering performance." +msgstr "" + +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Allow clouds to look 3D instead of flat." +msgstr "使用 3D 立體而非扁平的雲朵外觀。" + #: src/settings_translation_file.cpp msgid "Allows liquids to be translucent." msgstr "允許液體呈半透明狀。" @@ -2616,11 +2683,11 @@ msgstr "反鋸齒" #: src/settings_translation_file.cpp msgid "Anticheat flags" -msgstr "" +msgstr "反作弊標誌" #: src/settings_translation_file.cpp msgid "Anticheat movement tolerance" -msgstr "" +msgstr "反作弊動作容忍度" #: src/settings_translation_file.cpp msgid "Append item name" @@ -2644,10 +2711,17 @@ msgid "" "With OpenGL ES, dithering only works if the shader supports high\n" "floating-point precision and it may have a higher performance impact." msgstr "" +"應用抖動來減少色帶偽影。\n" +"抖動顯著增加了無損壓縮的大小\n" +"螢幕截圖,如果顯示器或作業系統出現問題,則無法正常運作\n" +"執行額外的抖動或顏色通道未量化\n" +"至 8 位元。\n" +"對於 OpenGL ES,抖動僅在著色器支援高\n" +"浮點精度,它可能會對性能產生更高的影響。" #: src/settings_translation_file.cpp msgid "Apply specular shading to nodes." -msgstr "" +msgstr "將鏡面著色應用於節點。" #: src/settings_translation_file.cpp msgid "Arm inertia" @@ -2666,7 +2740,6 @@ msgid "Ask to reconnect after crash" msgstr "詢問是否在當機後重新連線" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will aggressively optimize which blocks are sent " "to\n" @@ -2678,17 +2751,15 @@ msgid "" "optimization.\n" "Stated in MapBlocks (16 nodes)." msgstr "" -"在這個距離上,伺服器將積極優化發送到哪些區塊\n" +"在這個距離下,伺服器將積極優化將哪些區塊發送到\n" "客戶。\n" -"小值可能會大大提高效能,但會犧牲可見的效能\n" -"渲染故障(某些方塊不會在水下和洞穴中渲染,\n" -"以及有時在陸地上)。\n" -"將其設為大於 max_block_send_distance 的值會停用此功能\n" +"較小的值可能會大大提高效能,但代價是可見的\n" +"渲染故障(洞穴中的某些區塊可能無法正確渲染)。\n" +"將其設為大於 max_block_send_distance 的值將停用此功能\n" "最佳化.\n" -"以地圖塊(16 個節點)表示。" +"在 MapBlocks (16 個節點) 中說明。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "At this distance the server will perform a simpler and cheaper occlusion " "check.\n" @@ -2698,13 +2769,10 @@ msgid "" "This is especially useful for very large viewing range (upwards of 500).\n" "Stated in MapBlocks (16 nodes)." msgstr "" -"在這個距離上,伺服器將積極優化發送到哪些區塊\n" -"客戶。\n" +"在這個距離上,伺服器將積極優化發送到哪些區塊客戶。\n" "小值可能會大大提高效能,但會犧牲可見的效能\n" -"渲染故障(某些方塊不會在水下和洞穴中渲染,\n" -"以及有時在陸地上)。\n" -"將其設為大於 max_block_send_distance 的值會停用此功能\n" -"最佳化.\n" +"渲染故障(某些方塊不會在水下和洞穴中渲染,以及有時在陸地上)。\n" +"將其設為大於 max_block_send_distance 的值會停用此功能最佳化.\n" "以地圖塊(16 個節點)表示。" #: src/settings_translation_file.cpp @@ -2768,14 +2836,12 @@ msgid "Biome noise" msgstr "生物雜訊" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block bounds HUD radius" -msgstr "區塊邊界" +msgstr "區塊邊界HUD半徑" #: src/settings_translation_file.cpp -#, fuzzy msgid "Block cull optimize distance" -msgstr "區塊傳送最佳化距離" +msgstr "區塊剔除優化距離" #: src/settings_translation_file.cpp msgid "Block send optimize distance" @@ -2959,14 +3025,14 @@ msgstr "雲朵範圍" msgid "Clouds" msgstr "雲朵" -#: src/settings_translation_file.cpp -msgid "Clouds are a client-side effect." -msgstr "雲朵是用戶端的特效。" - #: src/settings_translation_file.cpp msgid "Clouds in menu" msgstr "選單中的雲朵" +#: src/settings_translation_file.cpp +msgid "Color depth for post-processing texture" +msgstr "" + #: src/settings_translation_file.cpp msgid "Colored fog" msgstr "彩色迷霧" @@ -2992,7 +3058,7 @@ msgid "" "as defined by the Free Software Foundation.\n" "You can also specify content ratings.\n" "These flags are independent from Luanti versions,\n" -"so see a full list at https://content.minetest.net/help/content_flags/" +"so see a full list at https://content.luanti.org/help/content_flags/" msgstr "" "逗號分隔用於在倉庫中隱藏內容的標籤清單。\n" "\"nonfree\"可用於隱藏根據自由軟體基金會\n" @@ -3157,6 +3223,14 @@ msgstr "除錯記錄等級" msgid "Debugging" msgstr "调试" +#: src/settings_translation_file.cpp +msgid "" +"Decide the color depth of the texture used for the post-processing " +"pipeline.\n" +"Reducing this can improve performance, but some effects (e.g. debanding)\n" +"require more than 8 bits to work." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dedicated server step" msgstr "專用伺服器步驟" @@ -3200,7 +3274,6 @@ msgstr "" "但也使用更多的資源。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Define the oldest clients allowed to connect.\n" "Older clients are compatible in the sense that they will not crash when " @@ -3326,18 +3399,10 @@ msgstr "" "當 np_biome 超過此值時,會產生沙漠。\n" "當啟用新的生物群系統'snowbiomes'時,這個將會被忽略。" -#: src/settings_translation_file.cpp -msgid "Desynchronize block animation" -msgstr "異步化方塊動畫" - #: src/settings_translation_file.cpp msgid "Developer Options" msgstr "開發者選項" -#: src/settings_translation_file.cpp -msgid "Digging particles" -msgstr "挖掘粒子" - #: src/settings_translation_file.cpp msgid "Disallow empty passwords" msgstr "不允許空密碼" @@ -3347,14 +3412,14 @@ msgid "Display Density Scaling Factor" msgstr "顯示密度縮放因子" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Distance in nodes at which transparency depth sorting is enabled.\n" "Use this to limit the performance impact of transparency depth sorting.\n" "Set to 0 to disable it entirely." msgstr "" -"啟用透明度深度排序的節點距離\n" -"使用它來限制透明度深度排序對效能的影響" +"啟用透明度深度排序的節點距離。\n" +"使用它來限制透明度深度排序對效能的影響。\n" +"設定為 0 以完全停用它。" #: src/settings_translation_file.cpp msgid "Domain name of server, to be displayed in the serverlist." @@ -3368,6 +3433,14 @@ msgstr "輕擊兩次跳躍以飛行" msgid "Double-tapping the jump key toggles fly mode." msgstr "輕擊兩次跳躍鍵以切換成飛行模式。" +#: src/settings_translation_file.cpp +msgid "" +"Draw transparency sorted triangles grouped by their mesh buffers.\n" +"This breaks transparency sorting between mesh buffers, but avoids " +"situations\n" +"where transparency sorting would be very slow otherwise." +msgstr "" + #: src/settings_translation_file.cpp msgid "Dump the mapgen debug information." msgstr "轉儲地圖生成器調試資訊。" @@ -3385,7 +3458,6 @@ msgid "Dungeon noise" msgstr "地城雜訊" #: src/settings_translation_file.cpp -#, fuzzy msgid "Effects" msgstr "圖形效果" @@ -3402,9 +3474,8 @@ msgid "Enable Bloom Debug" msgstr "啟用泛光調試" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable Debanding" -msgstr "啟用傷害" +msgstr "啟用解頻" #: src/settings_translation_file.cpp msgid "" @@ -3452,9 +3523,10 @@ msgstr "" "模擬人眼的行為。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Enable colored shadows.\n" -"On true translucent nodes cast colored shadows. This is expensive." +"Enable colored shadows for transculent nodes.\n" +"This is expensive." msgstr "" "啟用彩色陰影。\n" "在真正的半透明節點上投射彩色陰影。 這很貴。" @@ -3492,11 +3564,8 @@ msgid "Enable random user input (only used for testing)." msgstr "啟用隨機使用者輸入(僅供測試使用)。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enable smooth lighting with simple ambient occlusion." -msgstr "" -"啟用包含簡易環境光遮蔽的平滑光。\n" -"停用以取得速度或不同的外觀。" +msgstr "啟用簡單的環境光遮蔽來實現平滑的照明。" #: src/settings_translation_file.cpp msgid "Enable split login/register" @@ -3516,7 +3585,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Enable updates available indicator on content tab" -msgstr "" +msgstr "在內容標籤上啟用可用更新指示器" #: src/settings_translation_file.cpp msgid "" @@ -3538,10 +3607,10 @@ msgstr "" "舉例來說:設為 0 就不會有視野晃動;1.0 是一般情況;2.0 為雙倍。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Enable/disable running an IPv6 server.\n" -"Ignored if bind_address is set.\n" -"Needs enable_ipv6 to be enabled." +"Ignored if bind_address is set." msgstr "" "啟用/停用執行 IPv6 伺服器。\n" "當 bind_address 被設定時將會被忽略。\n" @@ -3563,21 +3632,13 @@ msgstr "" msgid "Enables animation of inventory items." msgstr "啟用物品欄物品動畫。" -#: src/settings_translation_file.cpp -#, fuzzy -msgid "" -"Enables caching of facedir rotated meshes.\n" -"This is only effective with shaders disabled." -msgstr "啟用面旋轉方向的網格快取。" - #: src/settings_translation_file.cpp msgid "Enables debug and error-checking in the OpenGL driver." msgstr "啟用在 OpenGL 驅動程式中偵錯和錯誤檢查。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Enables smooth scrolling." -msgstr "啟用後製處理" +msgstr "實現平滑滾動。" #: src/settings_translation_file.cpp msgid "Enables the post processing pipeline." @@ -3590,6 +3651,9 @@ msgid "" "\"auto\" means that the touchscreen controls will be enabled and disabled\n" "automatically depending on the last used input method." msgstr "" +"啟用觸控螢幕控制,讓您可以使用觸控螢幕玩遊戲。\n" +"“auto”表示將啟用和停用觸控螢幕控件\n" +"自動根據上次使用的輸入法。" #: src/settings_translation_file.cpp msgid "" @@ -3897,10 +3961,6 @@ msgstr "圖形使用者介面縮放比例" msgid "GUI scaling filter" msgstr "圖形使用者介面縮放過濾器" -#: src/settings_translation_file.cpp -msgid "GUI scaling filter txr2img" -msgstr "圖形使用者介面縮放比例過濾器 txr2img" - #: src/settings_translation_file.cpp msgid "Gamepads" msgstr "遊戲手把" @@ -4147,6 +4207,8 @@ msgid "" "ContentDB to\n" "check for package updates when opening the mainmenu." msgstr "" +"如果啟用並且您安裝了 ContentDB 軟體包,Luanti 可能會聯絡 ContentDB 以\n" +"開啟主選單時檢查軟體包更新。" #: src/settings_translation_file.cpp msgid "" @@ -4157,14 +4219,6 @@ msgstr "" "如果啟用,「Aux1」鍵將取代潛行鍵的向下攀爬和\n" "下降。" -#: src/settings_translation_file.cpp -msgid "" -"If enabled, account registration is separate from login in the UI.\n" -"If disabled, new accounts will be registered automatically when logging in." -msgstr "" -"連線到伺服器時啟用註冊確認。\n" -"如果停用,會自動註冊新的帳號。" - #: src/settings_translation_file.cpp msgid "" "If enabled, actions are recorded for rollback.\n" @@ -4190,6 +4244,15 @@ msgstr "如果啟用,玩家在沒有密碼的情況下無法加入或將密碼 #: src/settings_translation_file.cpp #, fuzzy msgid "" +"If enabled, server account registration is separate from login in the UI.\n" +"If disabled, connecting to a server will automatically register a new " +"account." +msgstr "" +"連線到伺服器時啟用註冊確認。\n" +"如果停用,會自動註冊新的帳號。" + +#: src/settings_translation_file.cpp +msgid "" "If enabled, the server will perform map block occlusion culling based on\n" "on the eye position of the player. This can reduce the number of blocks\n" "sent to the client by 50-80%. Clients will no longer receive most\n" @@ -4275,7 +4338,6 @@ msgid "Instrument chat commands on registration." msgstr "分析登錄的聊天指令。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Instrument global callback functions on registration.\n" "(anything you pass to a core.register_*() function)" @@ -4301,10 +4363,6 @@ msgstr "分析登錄的實體方法。" msgid "Interval of saving important changes in the world, stated in seconds." msgstr "儲存世界中的重要變更的間隔,以秒計。" -#: src/settings_translation_file.cpp -msgid "Interval of sending time of day to clients, stated in seconds." -msgstr "向客戶端發送一天中的時間間隔,以秒為單位。" - #: src/settings_translation_file.cpp msgid "Inventory items animations" msgstr "物品欄物品動畫" @@ -4480,7 +4538,6 @@ msgid "Leaves style" msgstr "樹葉樣式" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Leaves style:\n" "- Fancy: all faces visible\n" @@ -4493,7 +4550,6 @@ msgstr "" "- 不透明:停用透明度" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Length of a server tick (the interval at which everything is generally " "updated),\n" @@ -4502,9 +4558,11 @@ msgid "" "This is a lower bound, i.e. server steps may not be shorter than this, but\n" "they are often longer." msgstr "" -"伺服器週期的長度(通常會更新所有內容的時間間隔),\n" +"伺服器時鐘週期(通常會更新所有內容的間隔),\n" "以秒為單位。\n" -"不適用於從用戶端選單託管的工作階段。" +"不適用於從客戶端選單託管的會話。\n" +"這是一個下限,即伺服器步驟可能不會比這更短,但是\n" +"它們通常更長。" #: src/settings_translation_file.cpp msgid "Length of liquid waves." @@ -4616,9 +4674,8 @@ msgid "Liquid queue purge time" msgstr "液體佇列清除時間" #: src/settings_translation_file.cpp -#, fuzzy msgid "Liquid reflections" -msgstr "液體流動性" +msgstr "液體反射" #: src/settings_translation_file.cpp msgid "Liquid sinking" @@ -4722,7 +4779,6 @@ msgid "Map generation attributes specific to Mapgen v5." msgstr "Mapgen v5 特有的地圖生成屬性。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Map generation attributes specific to Mapgen v6.\n" "The 'snowbiomes' flag enables the new 5 biome system.\n" @@ -4732,9 +4788,10 @@ msgid "" "will appear instead." msgstr "" "Mapgen v6 特有的地圖生成屬性。\n" -"「雪生物群落」標誌啟用新的 5 個生物群落系統。\n" -"當「雪生物群落」標誌啟用時,叢林會自動啟用並且\n" -"'jungles' 標誌被忽略。" +"「snowbiomes」標誌啟用了新的 5 個生物群系系統。\n" +"當啟用「雪地生物群系」標誌時,叢林將自動啟用,並且\n" +"‘叢林’標誌被忽略。\n" +"「寺廟」標誌禁止生成沙漠寺廟。此時將出現普通地牢。" #: src/settings_translation_file.cpp msgid "" @@ -4777,14 +4834,12 @@ msgid "Mapblock unload timeout" msgstr "地圖區塊卸除逾時" #: src/settings_translation_file.cpp -#, fuzzy msgid "Mapgen Carpathian" -msgstr "地圖產生器分形" +msgstr "地圖生成器Carpathian" #: src/settings_translation_file.cpp -#, fuzzy msgid "Mapgen Carpathian specific flags" -msgstr "Mapgen flat 特別旗標" +msgstr "地圖產生器Carpathian標籤" #: src/settings_translation_file.cpp msgid "Mapgen Flat" @@ -4799,13 +4854,12 @@ msgid "Mapgen Fractal" msgstr "地圖產生器分形" #: src/settings_translation_file.cpp -#, fuzzy msgid "Mapgen Fractal specific flags" -msgstr "Mapgen flat 特別旗標" +msgstr "地圖產生器Fractal標籤" #: src/settings_translation_file.cpp msgid "Mapgen V5" -msgstr "Mapgen V5" +msgstr "地圖產生器 v5" #: src/settings_translation_file.cpp msgid "Mapgen V5 specific flags" @@ -4813,7 +4867,7 @@ msgstr "Mapgen V5 特別旗標" #: src/settings_translation_file.cpp msgid "Mapgen V6" -msgstr "Mapgen V6" +msgstr "地圖產生器 v6" #: src/settings_translation_file.cpp msgid "Mapgen V6 specific flags" @@ -4821,7 +4875,7 @@ msgstr "Mapgen V6 特別旗標" #: src/settings_translation_file.cpp msgid "Mapgen V7" -msgstr "Mapgen V7" +msgstr "地圖產生器 v7" #: src/settings_translation_file.cpp msgid "Mapgen V7 specific flags" @@ -4832,9 +4886,8 @@ msgid "Mapgen Valleys" msgstr "Mapgen 山谷" #: src/settings_translation_file.cpp -#, fuzzy msgid "Mapgen Valleys specific flags" -msgstr "Mapgen flat 特別旗標" +msgstr "地圖產生器Valleys標籤" #: src/settings_translation_file.cpp msgid "Mapgen debug" @@ -4923,13 +4976,12 @@ msgstr "" "此限制是針對每個玩家強制執行的。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Maximum number of blocks to be queued that are to be loaded from file.\n" "This limit is enforced per player." msgstr "" -"可被放進佇列內等待從檔案載入的最大區塊數。\n" -"將其設定留空則會自動選擇適當的值。" +"排隊並從文件加載的最大區塊數。\n" +"此限制針對每個玩家強制執行。" #: src/settings_translation_file.cpp msgid "" @@ -4955,6 +5007,8 @@ msgid "" "You generally don't need to change this, however busy servers may benefit " "from a higher number." msgstr "" +"低階網路程式碼中每個發送步驟發送的最大資料包數。\n" +"您通常不需要更改此值,但是繁忙的伺服器可能會受益於更高的數字。" #: src/settings_translation_file.cpp msgid "Maximum number of players that can be connected simultaneously." @@ -5012,10 +5066,6 @@ msgstr "交互請求(例如伺服器清單取得)可能花費的最長時間 msgid "Maximum users" msgstr "最多使用者" -#: src/settings_translation_file.cpp -msgid "Mesh cache" -msgstr "網狀快取" - #: src/settings_translation_file.cpp msgid "Message of the day" msgstr "每日訊息" @@ -5048,6 +5098,10 @@ msgstr "每個地圖區塊的大型洞穴隨機數量的最小限制。" msgid "Minimum limit of random number of small caves per mapchunk." msgstr "每個地圖區塊的小洞穴隨機數量的最小限制。" +#: src/settings_translation_file.cpp +msgid "Minimum vertex count for mesh buffers" +msgstr "" + #: src/settings_translation_file.cpp msgid "Mipmapping" msgstr "映射貼圖" @@ -5069,9 +5123,8 @@ msgid "Mod channels" msgstr "模組頻道" #: src/settings_translation_file.cpp -#, fuzzy msgid "Modifies the size of the HUD elements." -msgstr "修改 hudbar 元素的大小。" +msgstr "修改HUD元素的大小。" #: src/settings_translation_file.cpp msgid "Monospace font path" @@ -5098,9 +5151,8 @@ msgid "Mountain variation noise" msgstr "山變異 雜訊" #: src/settings_translation_file.cpp -#, fuzzy msgid "Mountain zero level" -msgstr "山雜訊" +msgstr "山起點高度" #: src/settings_translation_file.cpp msgid "Mouse sensitivity" @@ -5143,9 +5195,10 @@ msgstr "" "- v7 的可選浮動區域(預設為停用)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Name of the player.\n" -"When running a server, clients connecting with this name are admins.\n" +"When running a server, a client connecting with this name is admin.\n" "When starting from the main menu, this is overridden." msgstr "" "玩家名稱。\n" @@ -5183,7 +5236,7 @@ msgstr "突顯節點" #: src/settings_translation_file.cpp msgid "Node specular" -msgstr "" +msgstr "節點鏡面反射" #: src/settings_translation_file.cpp msgid "NodeTimer interval" @@ -5222,7 +5275,6 @@ msgstr "" "'on_generate'。 對於許多用戶來說,最佳設定可能是“1”。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of extra blocks that can be loaded by /clearobjects at once.\n" "This is a trade-off between SQLite transaction overhead and\n" @@ -5237,7 +5289,6 @@ msgid "Number of messages a player may send per 10 seconds." msgstr "玩家每 10 秒能傳送的訊息量。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Number of threads to use for mesh generation.\n" "Value of 0 (default) will let Luanti autodetect the number of available " @@ -5251,7 +5302,6 @@ msgid "Occlusion Culler" msgstr "剔除閉塞" #: src/settings_translation_file.cpp -#, fuzzy msgid "Occlusion Culling" msgstr "伺服器端遮擋剔除" @@ -5274,7 +5324,6 @@ msgid "OpenGL debug" msgstr "OpenGL 偵錯" #: src/settings_translation_file.cpp -#, fuzzy msgid "Optimize GUI for touchscreens" msgstr "使用十字準線觸控螢幕" @@ -5283,9 +5332,8 @@ msgid "Optional override for chat weblink color." msgstr "聊天網站連結顏色的可選覆蓋。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Other Effects" -msgstr "圖形效果" +msgstr "其他效果" #: src/settings_translation_file.cpp msgid "" @@ -5351,7 +5399,6 @@ msgid "Player transfer distance" msgstr "玩家傳送距離" #: src/settings_translation_file.cpp -#, fuzzy msgid "Poisson filtering" msgstr "雙線性過濾器" @@ -5395,17 +5442,16 @@ msgid "Prometheus listener address" msgstr "Prometheus 監聽器位址" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Prometheus listener address.\n" "If Luanti is compiled with ENABLE_PROMETHEUS option enabled,\n" "enable metrics listener for Prometheus on that address.\n" "Metrics can be fetched on http://127.0.0.1:30000/metrics" msgstr "" -"Prometheus 監聽器地址。\n" -"如果Minetest在編輯時啓用了ENABLE_PROMETHEUS選項,\n" -"在該地址上為 Prometheus 啓用指標偵聽器。\n" -"可以從 http://127.0.0.1:30000/metrics 獲取指標" +"Prometheus 監聽器位址。\n" +"如果 Luanti 在編譯時啟用了 ENABLE_PROMETHEUS 選項,\n" +"在該位址上啟用 Prometheus 的指標監聽器。\n" +"指標可從http://127.0.0.1:30000/metrics" #: src/settings_translation_file.cpp msgid "Proportion of large caves that contain liquid." @@ -5430,7 +5476,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Radius to use when the block bounds HUD feature is set to near blocks." -msgstr "" +msgstr "當區塊邊界 HUD 功能設定為靠近區塊時使用的半徑。" #: src/settings_translation_file.cpp msgid "Raises terrain to make valleys around the rivers." @@ -5657,17 +5703,19 @@ msgid "" "* None - No antialiasing (default)\n" "\n" "* FSAA - Hardware-provided full-screen antialiasing\n" -"(incompatible with Post Processing and Undersampling)\n" "A.K.A multi-sample antialiasing (MSAA)\n" "Smoothens out block edges but does not affect the insides of textures.\n" -"A restart is required to change this option.\n" "\n" -"* FXAA - Fast approximate antialiasing (requires shaders)\n" +"If Post Processing is disabled, changing FSAA requires a restart.\n" +"Also, if Post Processing is disabled, FSAA will not work together with\n" +"undersampling or a non-default \"3d_mode\" setting.\n" +"\n" +"* FXAA - Fast approximate antialiasing\n" "Applies a post-processing filter to detect and smoothen high-contrast " "edges.\n" "Provides balance between speed and image quality.\n" "\n" -"* SSAA - Super-sampling antialiasing (requires shaders)\n" +"* SSAA - Super-sampling antialiasing\n" "Renders higher-resolution image of the scene, then scales down to reduce\n" "the aliasing effects. This is the slowest and the most accurate method." msgstr "" @@ -5675,7 +5723,8 @@ msgstr "" "\n" "* 無 - 無抗鋸齒(預設)\n" "\n" -"* FSAA - 硬體提供的全螢幕抗鋸齒(與著色器不相容)\n" +"* FSAA - 硬體提供的全螢幕抗鋸齒\n" +"(與著色器不相容)\n" "又稱多樣本抗鋸齒 (MSAA)\n" "平滑塊邊緣,但不影響紋理的內部。\n" "需要重新啟動才能變更此選項。\n" @@ -5701,7 +5750,6 @@ msgid "Selection box width" msgstr "寬度選取框" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Selects one of 18 fractal types.\n" "1 = 4D \"Roundy\" Mandelbrot set.\n" @@ -5723,36 +5771,35 @@ msgid "" "17 = 4D \"Mandelbulb\" Mandelbrot set.\n" "18 = 4D \"Mandelbulb\" Julia set." msgstr "" -"從 9 種公式裡選取 18 種碎形。\n" -"1 = 4D \"Roundy\" mandelbrot set.\n" -"2 = 4D \"Roundy\" julia set.\n" -"3 = 4D \"Squarry\" mandelbrot set.\n" -"4 = 4D \"Squarry\" julia set.\n" -"5 = 4D \"Mandy Cousin\" mandelbrot set.\n" -"6 = 4D \"Mandy Cousin\" julia set.\n" -"7 = 4D \"Variation\" mandelbrot set.\n" -"8 = 4D \"Variation\" julia set.\n" -"9 = 3D \"Mandelbrot/Mandelbar\" mandelbrot set.\n" -"10 = 3D \"Mandelbrot/Mandelbar\" julia set.\n" -"11 = 3D \"Christmas Tree\" mandelbrot set.\n" -"12 = 3D \"Christmas Tree\" julia set.\n" -"13 = 3D \"Mandelbulb\" mandelbrot set.\n" -"14 = 3D \"Mandelbulb\" julia set.\n" -"15 = 3D \"Cosine Mandelbulb\" mandelbrot set.\n" -"16 = 3D \"Cosine Mandelbulb\" julia set.\n" -"17 = 4D \"Mandelbulb\" mandelbrot set.\n" -"18 = 4D \"Mandelbulb\" julia set." +"從 9 種公式選取 18 種分形。\n" +"1 = 4D \"Roundy\" 曼德布羅特集.\n" +"2 = 4D \"Roundy\" 朱利亞集.\n" +"3 = 4D \"Squarry\" 曼德布羅特集.\n" +"4 = 4D \"Squarry\" 朱利亞集.\n" +"5 = 4D \"Mandy Cousin\" 曼德布羅特集.\n" +"6 = 4D \"Mandy Cousin\" 朱利亞集.\n" +"7 = 4D \"Variation\" 曼德布羅特集.\n" +"8 = 4D \"Variation\" 朱利亞集.\n" +"9 = 3D \"Mandelbrot/Mandelbar\" 曼德布羅特集.\n" +"10 = 3D \"Mandelbrot/Mandelbar\" 朱利亞集.\n" +"11 = 3D \"Christmas Tree\" 曼德布羅特集合.\n" +"12 = 3D \"Christmas Tree\" 朱利亞集.\n" +"13 = 3D \"Mandelbulb\" 曼德布羅特集.\n" +"14 = 3D \"Mandelbulb\" 朱利亞集.\n" +"15 = 3D \"Cosine Mandelbulb\" 曼德布羅特集.\n" +"16 = 3D \"Cosine Mandelbulb\" 朱利亞集.\n" +"17 = 4D \"Mandelbulb\" 曼德布羅特集.\n" +"18 = 4D \"Mandelbulb\" 朱利亞集." #: src/settings_translation_file.cpp msgid "" "Send names of online players to the serverlist. If disabled only the player " "count is revealed." -msgstr "" +msgstr "將線上玩家的名字傳送到伺服器清單。如果停用,則僅顯示玩家計數。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Send player names to the server list" -msgstr "公佈至此伺服器清單。" +msgstr "將玩家名稱傳送到伺服器列表" #: src/settings_translation_file.cpp msgid "Server" @@ -5780,6 +5827,8 @@ msgid "" "Flags are positive. Uncheck the flag to disable corresponding anticheat " "module." msgstr "" +"伺服器反作弊配置。\n" +"標誌為正。取消選取該標誌可停用對應的反作弊模組。" #: src/settings_translation_file.cpp msgid "Server description" @@ -5920,16 +5969,6 @@ msgstr "" msgid "Shader path" msgstr "著色器路徑" -#: src/settings_translation_file.cpp -msgid "Shaders" -msgstr "著色器" - -#: src/settings_translation_file.cpp -msgid "" -"Shaders are a fundamental part of rendering and enable advanced visual " -"effects." -msgstr "" - #: src/settings_translation_file.cpp msgid "Shadow filter quality" msgstr "陰影濾鏡質量" @@ -5996,7 +6035,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Simulate translucency when looking at foliage in the sunlight." -msgstr "" +msgstr "模擬在陽光下觀察樹葉時的半透明度。" #: src/settings_translation_file.cpp msgid "" @@ -6047,17 +6086,15 @@ msgid "Smooth lighting" msgstr "平滑光" #: src/settings_translation_file.cpp -#, fuzzy msgid "Smooth scrolling" -msgstr "平滑光" +msgstr "平滑滾動" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Smooths rotation of camera when in cinematic mode, 0 to disable. Enter " "cinematic mode by using the key set in Controls." msgstr "" -"在電影模式下平滑相機的旋轉,0 表示停用。 使用“更改鍵”中設定的鍵進入電影模式。" +"在電影模式下平滑相機的旋轉,0 為停用。使用控制中設定的按鍵進入電影模式。" #: src/settings_translation_file.cpp msgid "" @@ -6074,9 +6111,8 @@ msgid "Sneaking speed, in nodes per second." msgstr "潛行速度,以方塊每秒為單位。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Soft clouds" -msgstr "3D 雲朵" +msgstr "柔軟的雲" #: src/settings_translation_file.cpp msgid "Soft shadow radius" @@ -6087,9 +6123,8 @@ msgid "Sound" msgstr "聲音" #: src/settings_translation_file.cpp -#, fuzzy msgid "Sound Extensions Blacklist" -msgstr "ContentDB 旗標黑名單列表" +msgstr "聲音擴展黑名單" #: src/settings_translation_file.cpp msgid "" @@ -6113,11 +6148,11 @@ msgstr "" "請注意,模組或遊戲可能會明確為某些(或所有)項目設定堆疊。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Spread a complete update of shadow map over given number of frames.\n" +"Spread a complete update of the shadow map over a given number of frames.\n" "Higher values might make shadows laggy, lower values\n" -"will consume more resources.\n" -"Minimum value: 1; maximum value: 16" +"will consume more resources." msgstr "" "在給定數量的幀上傳播陰影貼圖的完整更新。\n" "較高的值可能會使陰影滯後,較低的值\n" @@ -6313,16 +6348,24 @@ msgid "" "Known from the classic Luanti mobile controls.\n" "Combat is more or less impossible." msgstr "" +"玩家的打擊/實體手勢。\n" +"這可以被遊戲和模組覆蓋。\n" +"\n" +"* 短接\n" +"易於使用,並且比其他不願透露姓名的遊戲更出名。\n" +"\n" +"*長按\n" +"以經典的 Luanti 行動控製而聞名。\n" +"戰鬥幾乎是不可能的。" #: src/settings_translation_file.cpp msgid "The identifier of the joystick to use" msgstr "要使用的搖桿的識別碼" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The length in pixels after which a touch interaction is considered movement." -msgstr "觸控螢幕互動開始所需的長度(以像素為單位)。" +msgstr "觸控互動被視為移動的長度(以像素為單位)。" #: src/settings_translation_file.cpp msgid "" @@ -6337,13 +6380,12 @@ msgstr "" "預設值為 1.0(1/2 節點)。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The minimum time in seconds it takes between digging nodes when holding\n" "the dig button." msgstr "" -"按住時重複放置節點之間所花費的時間(以秒為單位)\n" -"地點按鈕。" +"持有挖礦節點之間所需的最短時間(秒)\n" +"挖掘按鈕。" #: src/settings_translation_file.cpp msgid "The network interface that the server listens on." @@ -6374,16 +6416,14 @@ msgstr "" "這應該與 active_object_send_range_blocks 一起配置。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "The rendering back-end.\n" "Note: A restart is required after changing this!\n" "OpenGL is the default for desktop, and OGLES2 for Android." msgstr "" "渲染後端。\n" -"注意:修改後需要重啟!\n" -"OpenGL 是桌面的預設設置,Android 的預設設定是 OGLES2。\n" -"OpenGL 和 OGLES2(實驗性)支援著色器。" +"注意:更改後需要重新啟動!\n" +"OpenGL 是桌面的預設設置,OGLES2 是 Android 的預設設定。" #: src/settings_translation_file.cpp msgid "" @@ -6473,18 +6513,13 @@ msgstr "" msgid "Time of day when a new world is started, in millihours (0-23999)." msgstr "一天中開始新世界的時間,以毫秒為單位 (0-23999)。" -#: src/settings_translation_file.cpp -msgid "Time send interval" -msgstr "時間傳送間隔" - #: src/settings_translation_file.cpp msgid "Time speed" msgstr "時間速度" #: src/settings_translation_file.cpp -#, fuzzy msgid "Timeout for client to remove unused map data from memory, in seconds." -msgstr "用戶端從記憶體移除未使用的地圖資料的逾時時間。" +msgstr "客戶端從記憶體中刪除未使用的地圖資料的逾時時間(以秒為單位)。" #: src/settings_translation_file.cpp msgid "" @@ -6501,6 +6536,8 @@ msgid "" "Tolerance of movement cheat detector.\n" "Increase the value if players experience stuttery movement." msgstr "" +"運作作弊偵測器的容忍度。\n" +"如果玩家遇到動作不順暢的情況,請增加該數值。" #: src/settings_translation_file.cpp msgid "Tooltip delay" @@ -6511,9 +6548,8 @@ msgid "Touchscreen" msgstr "觸控螢幕" #: src/settings_translation_file.cpp -#, fuzzy msgid "Touchscreen controls" -msgstr "海灘雜訊閾值" +msgstr "觸控螢幕控制" #: src/settings_translation_file.cpp msgid "Touchscreen sensitivity" @@ -6528,9 +6564,8 @@ msgid "Tradeoffs for performance" msgstr "性能的權衡" #: src/settings_translation_file.cpp -#, fuzzy msgid "Translucent foliage" -msgstr "半透明液體" +msgstr "半透明的樹葉" #: src/settings_translation_file.cpp msgid "Translucent liquids" @@ -6540,6 +6575,11 @@ msgstr "半透明液體" msgid "Transparency Sorting Distance" msgstr "透明分選距離" +#: src/settings_translation_file.cpp +#, fuzzy +msgid "Transparency Sorting Group by Buffers" +msgstr "透明分選距離" + #: src/settings_translation_file.cpp msgid "Trees noise" msgstr "樹林雜訊" @@ -6579,14 +6619,13 @@ msgstr "" "僅當出現效能問題時才應變更此設定。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "URL to JSON file which provides information about the newest Luanti " "release.\n" "If this is empty the engine will never check for updates." msgstr "" -"JSON 檔案的網址,提供有關最新 Minetest 版本的資訊\n" -"如果這是空的,引擎將永遠不會檢查更新。" +"提供有關最新 Luanti 版本資訊的 JSON 檔案的 URL。\n" +"如果此處為空,引擎將永遠不會檢查更新。" #: src/settings_translation_file.cpp msgid "URL to the server list displayed in the Multiplayer Tab." @@ -6597,12 +6636,16 @@ msgid "Undersampling" msgstr "欠取樣" #: src/settings_translation_file.cpp +#, fuzzy msgid "" "Undersampling is similar to using a lower screen resolution, but it applies\n" "to the game world only, keeping the GUI intact.\n" "It should give a significant performance boost at the cost of less detailed " "image.\n" -"Higher values result in a less detailed image." +"Higher values result in a less detailed image.\n" +"Note: Undersampling is currently not supported if the \"3d_mode\" setting is " +"set\n" +"to a non-default value." msgstr "" "欠採樣與使用較低的螢幕解析度類似,但它適用\n" "僅適用於遊戲世界,保持 GUI 完整。\n" @@ -6629,23 +6672,20 @@ msgstr "地下城的 Y 值上限。" msgid "Upper Y limit of floatlands." msgstr "懸空島的 Y 上限。" -#: src/settings_translation_file.cpp -msgid "Use 3D cloud look instead of flat." -msgstr "使用 3D 立體而非扁平的雲朵外觀。" - #: src/settings_translation_file.cpp msgid "Use a cloud animation for the main menu background." msgstr "在主選單的背景使用雲朵動畫。" #: src/settings_translation_file.cpp #, fuzzy -msgid "Use anisotropic filtering when looking at textures from an angle." +msgid "" +"Use anisotropic filtering when looking at textures from an angle.\n" +"This provides a significant improvement when used together with mipmapping." msgstr "當從某個角度觀看時啟用各向異性過濾。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Use bilinear filtering when scaling textures." -msgstr "當縮放材質時使用三線性過濾。" +msgstr "縮放紋理時使用雙線性過濾。" #: src/settings_translation_file.cpp msgid "Use crosshair for touch screen" @@ -6681,7 +6721,7 @@ msgstr "" #: src/settings_translation_file.cpp msgid "Use smooth cloud shading." -msgstr "" +msgstr "使用平滑的雲陰影。" #: src/settings_translation_file.cpp msgid "" @@ -6694,14 +6734,13 @@ msgstr "" "被應用。" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Use virtual joystick to trigger \"Aux1\" button.\n" "If enabled, virtual joystick will also tap \"Aux1\" button when out of main " "circle." msgstr "" -"(Android) 使用虛擬搖桿觸發 \"Aux1\" 按鍵。\n" -"如果啟用,虛擬搖桿在離開主圓圈時也會觸發 \"Aux1\" 按鍵。" +"使用虛擬操縱桿觸發“Aux1”按鈕。\n" +"如果啟用,虛擬操縱桿在離開主圈時也會點選「Aux1」按鈕。" #: src/settings_translation_file.cpp msgid "User Interfaces" @@ -6720,9 +6759,8 @@ msgid "Valley fill" msgstr "山谷填充" #: src/settings_translation_file.cpp -#, fuzzy msgid "Valley profile" -msgstr "山谷分析" +msgstr "山谷概況" #: src/settings_translation_file.cpp msgid "Valley slope" @@ -6811,14 +6849,12 @@ msgstr "" "需要啟用音響系統。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volume when unfocused" -msgstr "遊戲暫停時最高 FPS" +msgstr "不聚焦時的音量" #: src/settings_translation_file.cpp -#, fuzzy msgid "Volumetric lighting" -msgstr "平滑光" +msgstr "體積照明" #: src/settings_translation_file.cpp msgid "" @@ -6867,14 +6903,12 @@ msgid "Waving liquids" msgstr "波動的液體" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids wave height" -msgstr "波動的水高度" +msgstr "波浪液體波高" #: src/settings_translation_file.cpp -#, fuzzy msgid "Waving liquids wave speed" -msgstr "波動的水速度" +msgstr "波動液體波速" #: src/settings_translation_file.cpp msgid "Waving liquids wavelength" @@ -6890,13 +6924,15 @@ msgstr "網路連結顏色" #: src/settings_translation_file.cpp msgid "When enabled, liquid reflections are simulated." -msgstr "" +msgstr "啟用後,將模擬液體反射。" #: src/settings_translation_file.cpp msgid "" "When enabled, the GUI is optimized to be more usable on touchscreens.\n" "Whether this is enabled by default depends on your hardware form-factor." msgstr "" +"啟用後,GUI 經過最佳化,在觸控螢幕上更可用。\n" +"預設是否啟用取決於您的硬體外形尺寸。" #: src/settings_translation_file.cpp msgid "" @@ -6909,25 +6945,14 @@ msgstr "" "硬體(例如在物品欄中節點的繪圖至材質)。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"When gui_scaling_filter_txr2img is true, copy those images\n" -"from hardware to software for scaling. When false, fall back\n" -"to the old scaling method, for video drivers that don't\n" -"properly support downloading textures back from hardware." -msgstr "" -"當 gui_scaling_filter_txr2img 被設定為真,複製這些圖片\n" -"從硬體到軟體以供縮放。當為假時,退回\n" -"至舊的縮放方法,供從硬體下載材質回\n" -"來軟體支援不佳的顯示卡驅動程式使用。" - -#: src/settings_translation_file.cpp -msgid "" -"When using bilinear/trilinear/anisotropic filters, low-resolution textures\n" -"can be blurred, so automatically upscale them with nearest-neighbor\n" -"interpolation to preserve crisp pixels. This sets the minimum texture size\n" -"for the upscaled textures; higher values look sharper, but require more\n" -"memory. Powers of 2 are recommended. This setting is ONLY applied if\n" -"bilinear/trilinear/anisotropic filtering is enabled.\n" +"When using bilinear/trilinear filtering, low-resolution textures\n" +"can be blurred, so this option automatically upscales them to preserve\n" +"crisp pixels. This defines the minimum texture size for the upscaled " +"textures;\n" +"higher values look sharper, but require more memory.\n" +"This setting is ONLY applied if any of the mentioned filters are enabled.\n" "This is also used as the base node texture size for world-aligned\n" "texture autoscaling." msgstr "" @@ -6948,10 +6973,6 @@ msgstr "" "預設是否應顯示名稱標籤背景。\n" "模組可能仍會設定背景。" -#: src/settings_translation_file.cpp -msgid "Whether node texture animations should be desynchronized per mapblock." -msgstr "是否每個地圖區塊的節點材質動畫可以不同步。" - #: src/settings_translation_file.cpp msgid "" "Whether players are shown to clients without any range limit.\n" @@ -6977,9 +6998,9 @@ msgid "Whether to fog out the end of the visible area." msgstr "是否將可視區域外模糊。" #: src/settings_translation_file.cpp +#, fuzzy msgid "" -"Whether to mute sounds. You can unmute sounds at any time, unless the\n" -"sound system is disabled (enable_sound=false).\n" +"Whether to mute sounds. You can unmute sounds at any time.\n" "In-game, you can toggle the mute state with the mute key or by using the\n" "pause menu." msgstr "" @@ -6994,12 +7015,10 @@ msgid "" msgstr "是否顯示用戶端除錯資訊(與按下 F5 有同樣的效果)。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Width component of the initial window size." -msgstr "初始視窗大小的寬度元素。" +msgstr "初始視窗大小的寬度元件。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Width of the selection box lines around nodes." msgstr "選取框在節點周邊的選取框線。" @@ -7008,14 +7027,13 @@ msgid "Window maximized" msgstr "視窗最大化" #: src/settings_translation_file.cpp -#, fuzzy msgid "" "Windows systems only: Start Luanti with the command line window in the " "background.\n" "Contains the same information as the file debug.txt (default name)." msgstr "" -"僅 Windows 系統:以在背景的命令列視窗啟動 Minetest。\n" -"包含與 debug.txt(預設名稱)檔案相同的的資訊。" +"僅限 Windows 系統:在背景使用命令列視窗啟動 Luanti。\n" +"包含與檔案 debug.txt(預設名稱)相同的資訊。" #: src/settings_translation_file.cpp msgid "" @@ -7060,9 +7078,8 @@ msgid "" msgstr "Y 山體密度梯度為0級。 用於垂直移動山脈。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Y of upper limit of large caves." -msgstr "大型偽隨機洞穴的 Y 上限。" +msgstr "大型隨機洞穴的Y軸最大值." #: src/settings_translation_file.cpp msgid "Y-distance over which caverns expand to full size." @@ -7089,12 +7106,10 @@ msgid "Y-level of cavern upper limit." msgstr "洞穴上限的 Y 高度。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Y-level of higher terrain that creates cliffs." -msgstr "較低地形與湖底的 Y 高度。" +msgstr "形成懸崖的更高地形的Y座標。" #: src/settings_translation_file.cpp -#, fuzzy msgid "Y-level of lower terrain and seabed." msgstr "較低地形與湖底的 Y 高度。" @@ -7167,6 +7182,9 @@ msgstr "cURL 並行限制" #~ "把這個留空以啟動本機伺服器。\n" #~ "注意在主選單中的地址欄會覆寫這個設定。" +#~ msgid "Adds particles when digging a node." +#~ msgstr "當挖掘節點時加入一些粒子。" + #~ msgid "" #~ "Adjust dpi configuration to your screen (non X11/Android only) e.g. for " #~ "4k screens." @@ -7263,6 +7281,9 @@ msgstr "cURL 並行限制" #~ msgid "Clean transparent textures" #~ msgstr "清除透明材質" +#~ msgid "Clouds are a client-side effect." +#~ msgstr "雲朵是用戶端的特效。" + #~ msgid "Command key" #~ msgstr "指令按鍵" @@ -7356,9 +7377,15 @@ msgstr "cURL 並行限制" #~ msgid "Darkness sharpness" #~ msgstr "湖泊坡度" +#~ msgid "Debug info and profiler graph hidden" +#~ msgstr "已隱藏除錯資訊及分析圖" + #~ msgid "Debug info toggle key" #~ msgstr "除錯資訊切換按鍵" +#~ msgid "Debug info, profiler graph, and wireframe hidden" +#~ msgstr "已隱藏除錯資訊、分析圖及線框" + #~ msgid "Dec. volume key" #~ msgstr "音量減少鍵" @@ -7412,9 +7439,15 @@ msgstr "cURL 並行限制" #~ msgid "Del. Favorite" #~ msgstr "刪除收藏" +#~ msgid "Desynchronize block animation" +#~ msgstr "異步化方塊動畫" + #~ msgid "Dig key" #~ msgstr "挖掘鍵" +#~ msgid "Digging particles" +#~ msgstr "挖掘粒子" + #~ msgid "Disable anticheat" #~ msgstr "停用反作弊" @@ -7439,6 +7472,9 @@ msgstr "cURL 並行限制" #~ msgid "Dynamic shadows:" #~ msgstr "動態陰影:" +#~ msgid "Enable" +#~ msgstr "啟用" + #~ msgid "Enable VBO" #~ msgstr "啟用 VBO" @@ -7471,6 +7507,13 @@ msgstr "cURL 並行限制" #~ "或是自動生成。\n" #~ "必須啟用著色器。" +#~ msgid "" +#~ "Enables caching of facedir rotated meshes.\n" +#~ "This is only effective with shaders disabled." +#~ msgstr "" +#~ "啟用 facedir 旋轉網格的快取。\n" +#~ "這僅在禁用著色器時才有效。" + #~ msgid "Enables filmic tone mapping" #~ msgstr "啟用電影色調映射" @@ -7506,9 +7549,6 @@ msgstr "cURL 並行限制" #~ "實驗性選項,當設定到大於零的值時\n" #~ "也許會造成在方塊間有視覺空隙。" -#~ msgid "FPS in pause menu" -#~ msgstr "在暫停選單中的 FPS" - #~ msgid "FSAA" #~ msgstr "FSAA" @@ -7584,8 +7624,8 @@ msgstr "cURL 並行限制" #~ msgid "Full screen BPP" #~ msgstr "全螢幕 BPP" -#~ msgid "Game" -#~ msgstr "遊戲" +#~ msgid "GUI scaling filter txr2img" +#~ msgstr "圖形使用者介面縮放比例過濾器 txr2img" #~ msgid "Gamma" #~ msgstr "Gamma" @@ -7740,661 +7780,667 @@ msgstr "cURL 並行限制" #~ msgid "Instrumentation" #~ msgstr "儀表" +#~ msgid "Interval of sending time of day to clients, stated in seconds." +#~ msgstr "向客戶端發送一天中的時間間隔,以秒為單位。" + #~ msgid "Invalid gamespec." #~ msgstr "遊戲規格無效。" #~ msgid "Inventory key" #~ msgstr "物品欄按鍵" +#~ msgid "Irrlicht device:" +#~ msgstr "照明設備:" + #~ msgid "Jump key" #~ msgstr "跳躍鍵" #~ msgid "" #~ "Key for decreasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "降低視野範圍的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for decreasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "降低音量的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for digging.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "跳躍的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for dropping the currently selected item.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "丟棄目前選定物品的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the viewing range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "增加視野範圍的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for increasing the volume.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "增加音量的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for jumping.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "跳躍的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving fast in fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "在快速模式中快速移動的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for moving the player backward.\n" #~ "Will also disable autoforward, when active.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "將玩家往後方移動的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player forward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "將玩家往前方移動的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player left.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "將玩家往左方移動的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for moving the player right.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "將玩家往右方移動的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for muting the game.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "遊戲靜音的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "開啟對話視窗以供輸入指令的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window to type local commands.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "開啟對話視窗以供輸入本機指令的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the chat window.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "開啟對話視窗的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for opening the inventory.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "開啟物品欄的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for placing.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "跳躍的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 11th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 11 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 12th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 12 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 13th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 13 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 14th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 14 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 15th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 15 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 16th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 16 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 17th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 17 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 18th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 18 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 19th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 19 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 20th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 20 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 21st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 21 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 22nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 22 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 23rd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 23 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 24th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 24 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 25th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 25 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 26th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 26 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 27th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 27 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 28th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 28 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 29th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 29 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 30th hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 30 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 31st hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 31 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the 32nd hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 32 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the eighth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 8 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fifth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 5 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the first hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 1 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the fourth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 4 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the next item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "在快捷列選取下一個物品的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the ninth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 9 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the previous item in the hotbar.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "在快捷列選取上一個物品的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the second hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 2 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the seventh hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 7 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the sixth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 6 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the tenth hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 10 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for selecting the third hotbar slot.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "選取快捷列中第 3 個槽的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for sneaking.\n" #~ "Also used for climbing down and descending in water if aux1_descends is " #~ "disabled.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "潛行的按鍵。\n" #~ "若 aux1_ 降低停用時,也會用於向下攀爬與在水中下潛。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for switching between first- and third-person camera.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "用來切換第一與第三人稱視角的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for taking screenshots.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "拍攝螢幕截圖的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #, fuzzy #~ msgid "" #~ "Key for toggling autoforward.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換自動奔跑的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling cinematic mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換電影模式的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling display of minimap.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示迷你地圖的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling fast mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換快速模式的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling flying.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換飛行的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling noclip mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換穿牆模式的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling pitch move mode.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換 Pitch Move 模式的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the camera update. Only used for development\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換視角更新的按鍵。僅對開發有用。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of chat.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "用來切換聊天顯示的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of debug info.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示除錯資訊的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of fog.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示霧氣的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the HUD.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示 HUD 的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the large chat console.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示大聊天終端機的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling the display of the profiler. Used for development.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換顯示輪廓的按鍵。對開發有用。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key for toggling unlimited view range.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "切換無限視野的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Key to use view zoom when possible.\n" -#~ "See http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "See http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgstr "" #~ "當可能時用來縮放的按鍵。\n" -#~ "請見 http://irrlicht.sourceforge.net/docu/namespaceirr." -#~ "html#a54da2a0e231901735e3da1b0edf72eb3" +#~ "請見 http://irrlicht.sourceforge.net/docu/" +#~ "namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3" #~ msgid "" #~ "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" @@ -8465,6 +8511,9 @@ msgstr "cURL 並行限制" #~ msgid "Menus" #~ msgstr "選單" +#~ msgid "Mesh cache" +#~ msgstr "網狀快取" + #~ msgid "Minimap" #~ msgstr "迷你地圖" @@ -8654,6 +8703,9 @@ msgstr "cURL 並行限制" #~ msgid "Server / Singleplayer" #~ msgstr "伺服器/單人遊戲" +#~ msgid "Shaders" +#~ msgstr "著色器" + #~ msgid "Shaders (experimental)" #~ msgstr "著色器(實驗性)" @@ -8668,6 +8720,14 @@ msgstr "cURL 並行限制" #~ "著色器允許實現高級視覺效果,\n" #~ "並可能提高某些顯示卡的性能。" +#~ msgid "" +#~ "Shaders are a fundamental part of rendering and enable advanced visual " +#~ "effects." +#~ msgstr "著色器是渲染的基本部分,可實現高級視覺效果。" + +#~ msgid "Shaders are disabled." +#~ msgstr "已停用相機更新。" + #~ msgid "Shadow limit" #~ msgstr "陰影限制" @@ -8698,6 +8758,9 @@ msgstr "cURL 並行限制" #~ msgid "Smooths rotation of camera. 0 to disable." #~ msgstr "讓旋轉攝影機時較流暢。設為 0 以停用。" +#~ msgid "Sound system is disabled" +#~ msgstr "聲音系統已被禁用" + #~ msgid "Special" #~ msgstr "特殊" @@ -8739,6 +8802,12 @@ msgstr "cURL 並行限制" #~ msgid "This font will be used for certain languages." #~ msgstr "這個字型將會被用於特定的語言。" +#~ msgid "This is not a recommended configuration." +#~ msgstr "不建議使用該配置。" + +#~ msgid "Time send interval" +#~ msgstr "時間傳送間隔" + #~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgstr "要啟用著色器,必須使用 OpenGL 驅動程式。" @@ -8822,6 +8891,17 @@ msgstr "cURL 並行限制" #~ msgid "Waving water" #~ msgstr "波動的水" +#~ msgid "" +#~ "When gui_scaling_filter_txr2img is true, copy those images\n" +#~ "from hardware to software for scaling. When false, fall back\n" +#~ "to the old scaling method, for video drivers that don't\n" +#~ "properly support downloading textures back from hardware." +#~ msgstr "" +#~ "當 gui_scaling_filter_txr2img 被設定為真,複製這些圖片\n" +#~ "從硬體到軟體以供縮放。當為假時,退回\n" +#~ "至舊的縮放方法,供從硬體下載材質回\n" +#~ "來軟體支援不佳的顯示卡驅動程式使用。" + #, fuzzy #~ msgid "" #~ "Whether FreeType fonts are used, requires FreeType support to be compiled " @@ -8829,6 +8909,10 @@ msgstr "cURL 並行限制" #~ "If disabled, bitmap and XML vectors fonts are used instead." #~ msgstr "是否使用 freetype 字型,需要將 freetype 支援編譯進來。" +#~ msgid "" +#~ "Whether node texture animations should be desynchronized per mapblock." +#~ msgstr "是否每個地圖區塊的節點材質動畫可以不同步。" + #~ msgid "Whether to allow players to damage and kill each other." #~ msgstr "是否允許玩家傷害並殺害其他人。" diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e5ae5abf4..77ab5342a 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -374,6 +374,19 @@ if(ENABLE_SPATIAL) endif(SPATIAL_LIBRARY AND SPATIAL_INCLUDE_DIR) endif(ENABLE_SPATIAL) +option(ENABLE_OPENSSL "Use OpenSSL's libcrypto for faster SHA implementations" TRUE) +set(USE_OPENSSL FALSE) + +if(ENABLE_OPENSSL) + find_package(OpenSSL 3.0) + if(OPENSSL_FOUND) + set(USE_OPENSSL TRUE) + message(STATUS "OpenSSL's libcrypto SHA enabled.") + else() + message(STATUS "OpenSSL not found!") + endif() +endif(ENABLE_OPENSSL) + find_package(ZLIB REQUIRED) find_package(Zstd REQUIRED) @@ -385,12 +398,11 @@ endif() # Haiku endian support if(HAIKU) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_BSD_SOURCE") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_BSD_SOURCE") + add_compile_definitions(_BSD_SOURCE) endif() # Use cmake_config.h -add_definitions(-DUSE_CMAKE_CONFIG_H) +add_compile_definitions(USE_CMAKE_CONFIG_H) set(THREADS_PREFER_PTHREAD_FLAG ON) find_package(Threads REQUIRED) @@ -399,15 +411,19 @@ set(PLATFORM_LIBS ${PLATFORM_LIBS} Threads::Threads) if(WIN32) # Windows if(MSVC) # MSVC Specifics - set(PLATFORM_LIBS dbghelp.lib ${PLATFORM_LIBS}) + list(APPEND PLATFORM_LIBS dbghelp.lib) # Surpress some useless warnings - add_definitions ( /D "_CRT_SECURE_NO_DEPRECATE" /W1 ) - # Get M_PI to work - add_definitions(/D "_USE_MATH_DEFINES") - # Don't define min/max macros in minwindef.h - add_definitions(/D "NOMINMAX") + add_compile_options(/W1) + add_compile_definitions( + # Suppress some useless warnings + _CRT_SECURE_NO_DEPRECATE + # Get M_PI to work + _USE_MATH_DEFINES + # Don't define min/max macros in minwindef.h + NOMINMAX + ) endif() - set(PLATFORM_LIBS ws2_32.lib version.lib shlwapi.lib winmm.lib ${PLATFORM_LIBS}) + list(APPEND PLATFORM_LIBS ws2_32.lib version.lib shlwapi.lib winmm.lib) set(EXTRA_DLL "" CACHE FILEPATH "Optional paths to additional DLLs that should be packaged") @@ -434,28 +450,28 @@ if(WIN32) endif() else() # Unix probably - set(PLATFORM_LIBS ${PLATFORM_LIBS} ${CMAKE_DL_LIBS}) + list(APPEND PLATFORM_LIBS ${CMAKE_DL_LIBS}) if(APPLE) - set(PLATFORM_LIBS "-framework CoreFoundation" ${PLATFORM_LIBS}) + list(APPEND PLATFORM_LIBS "-framework CoreFoundation") else() check_library_exists(rt clock_gettime "" HAVE_LIBRT) if (HAVE_LIBRT) - set(PLATFORM_LIBS -lrt ${PLATFORM_LIBS}) + list(APPEND PLATFORM_LIBS -lrt) endif(HAVE_LIBRT) endif(APPLE) find_library(ICONV_LIBRARY iconv) mark_as_advanced(ICONV_LIBRARY) if (ICONV_LIBRARY) - set(PLATFORM_LIBS ${PLATFORM_LIBS} ${ICONV_LIBRARY}) + list(APPEND PLATFORM_LIBS ${ICONV_LIBRARY}) endif() if (HAIKU) - set(PLATFORM_LIBS ${PLATFORM_LIBS} network) + list(APPEND PLATFORM_LIBS network) endif() if (ANDROID) - set(PLATFORM_LIBS ${PLATFORM_LIBS} android log) + list(APPEND PLATFORM_LIBS android log) endif() endif() @@ -469,7 +485,7 @@ if(NOT CMAKE_CXX_COMPILER_ID STREQUAL "MSVC") check_c_source_compiles("int main(){}" HAVE_LINK_ATOMIC) set(CMAKE_REQUIRED_LIBRARIES "") if(HAVE_LINK_ATOMIC) - set(PLATFORM_LIBS ${PLATFORM_LIBS} "-latomic") + list(APPEND PLATFORM_LIBS "-latomic") endif() endif() @@ -696,7 +712,6 @@ set(independent_SRCS hud.cpp inventory.cpp itemstackmetadata.cpp - lighting.cpp log.cpp metadata.cpp modchannels.cpp @@ -767,21 +782,21 @@ set(common_SRCS ) if(ANDROID) - set(common_SRCS ${common_SRCS} porting_android.cpp) + list(APPEND common_SRCS porting_android.cpp) endif() if(BUILD_UNITTESTS) add_subdirectory(unittest) - set(common_SRCS ${common_SRCS} ${UNITTEST_SRCS}) + list(APPEND common_SRCS ${UNITTEST_SRCS}) endif() if(BUILD_BENCHMARKS) add_subdirectory(benchmark) - set(common_SRCS ${common_SRCS} ${BENCHMARK_SRCS}) + list(APPEND common_SRCS ${BENCHMARK_SRCS}) endif() if(BUILD_UNITTESTS OR BUILD_BENCHMARKS) - set(common_SRCS ${common_SRCS} catch.cpp) + list(APPEND common_SRCS catch.cpp) endif() # This gives us the icon and file version information @@ -815,7 +830,7 @@ if (BUILD_CLIENT) add_subdirectory(irrlicht_changes) endif(BUILD_CLIENT) -set(client_SRCS +list(APPEND client_SRCS ${FMclient_SRCS} ${client_SRCS} @@ -827,11 +842,11 @@ set(client_SRCS ) if(BUILD_UNITTESTS) - set(client_SRCS ${client_SRCS} ${UNITTEST_CLIENT_SRCS}) + list(APPEND client_SRCS ${UNITTEST_CLIENT_SRCS}) endif() if(BUILD_BENCHMARKS) - set(client_SRCS ${client_SRCS} ${BENCHMARK_CLIENT_SRCS}) + list(APPEND client_SRCS ${BENCHMARK_CLIENT_SRCS}) endif() # Server sources @@ -907,6 +922,9 @@ add_dependencies(EngineCommon GenerateVersion) target_link_libraries(EngineCommon sha256 ) +if(USE_OPENSSL) + target_link_libraries(EngineCommon OpenSSL::Crypto) +endif() get_target_property( IRRLICHT_INCLUDES IrrlichtMt::IrrlichtMt INTERFACE_INCLUDE_DIRECTORIES) target_include_directories(EngineCommon PRIVATE ${IRRLICHT_INCLUDES}) @@ -1052,6 +1070,9 @@ if(BUILD_CLIENT) if (USE_SPATIAL) target_link_libraries(${PROJECT_NAME} ${SPATIAL_LIBRARY}) endif() + if (USE_OPENSSL) + target_link_libraries(${PROJECT_NAME} OpenSSL::Crypto) + endif() if(BUILD_UNITTESTS OR BUILD_BENCHMARKS) target_link_libraries(${PROJECT_NAME} Catch2::Catch2) endif() @@ -1134,6 +1155,9 @@ if(BUILD_SERVER) if (USE_SPATIAL) target_link_libraries(${PROJECT_NAME}server ${SPATIAL_LIBRARY}) endif() + if (USE_OPENSSL) + target_link_libraries(${PROJECT_NAME}server OpenSSL::Crypto) + endif() if(USE_CURL) target_link_libraries( ${PROJECT_NAME}server @@ -1215,7 +1239,7 @@ endif() if(MSVC) # Visual Studio - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /D _WIN32_WINNT=0x0601 /D WIN32_LEAN_AND_MEAN /D _CRT_SECURE_NO_WARNINGS") + add_compile_definitions(_WIN32_WINNT=0x0601 WIN32_LEAN_AND_MEAN _CRT_SECURE_NO_WARNINGS) # EHa enables SEH exceptions (used for catching segfaults) set(CMAKE_CXX_FLAGS_RELEASE "/EHa /Ox /MD /GS- /Zi /fp:fast /D NDEBUG /D _HAS_ITERATOR_DEBUGGING=0") if(CMAKE_SIZEOF_VOID_P EQUAL 4) @@ -1242,12 +1266,12 @@ if(MSVC) # Flags that cannot be shared between cl and clang-cl # https://clang.llvm.org/docs/UsersManual.html#clang-cl if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fuse-ld=lld") + add_compile_options(-fuse-ld=lld) # Disable pragma-pack warning set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -Wno-pragma-pack") else() - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") + add_compile_options(/MP) set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /TP /FD /GL") set(CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG") endif() @@ -1265,7 +1289,7 @@ else() if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU") set(OTHER_FLAGS "${OTHER_FLAGS} -mthreads") endif() - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_WIN32_WINNT=0x0601 -DWIN32_LEAN_AND_MEAN") + add_compile_definitions(_WIN32_WINNT=0x0601 WIN32_LEAN_AND_MEAN) endif() # Use a safe subset of flags to speed up math calculations: @@ -1455,7 +1479,7 @@ elseif (USE_GETTEXT) COMMENT "mo-update [${LOCALE}]: Creating mo file." ) - set(MO_FILES ${MO_FILES} ${MO_FILE_PATH}) + list(APPEND MO_FILES ${MO_FILE_PATH}) endforeach() add_custom_target(translations ALL COMMENT "mo update" DEPENDS ${MO_FILES}) diff --git a/src/activeobjectmgr.h b/src/activeobjectmgr.h index d58fee4d6..48d4c359d 100644 --- a/src/activeobjectmgr.h +++ b/src/activeobjectmgr.h @@ -5,7 +5,6 @@ #pragma once #include -#include "debug.h" #include "util/container.h" #include "irrlichttypes.h" #include "util/basic_macros.h" diff --git a/src/benchmark/CMakeLists.txt b/src/benchmark/CMakeLists.txt index f79fcf1ef..e8150848a 100644 --- a/src/benchmark/CMakeLists.txt +++ b/src/benchmark/CMakeLists.txt @@ -5,6 +5,7 @@ set (BENCHMARK_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_serialize.cpp ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_mapblock.cpp ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_mapmodify.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/benchmark_sha.cpp PARENT_SCOPE) set (BENCHMARK_CLIENT_SRCS diff --git a/src/benchmark/benchmark_sha.cpp b/src/benchmark/benchmark_sha.cpp new file mode 100644 index 000000000..616606f55 --- /dev/null +++ b/src/benchmark/benchmark_sha.cpp @@ -0,0 +1,23 @@ +// SPDX-FileCopyrightText: 2024 Luanti Contributors +// +// SPDX-License-Identifier: LGPL-2.1-or-later + +#include "catch.h" +#include "util/hashing.h" +#include + +TEST_CASE("benchmark_sha") +{ + std::string input; + input.resize(100000); + + BENCHMARK("sha1_input100000", i) { + input[0] = (char)i; + return hashing::sha1(input); + }; + + BENCHMARK("sha256_input100000", i) { + input[0] = (char)i; + return hashing::sha256(input); + }; +} diff --git a/src/chat.h b/src/chat.h index 603e5ad5e..3303eb794 100644 --- a/src/chat.h +++ b/src/chat.h @@ -113,7 +113,8 @@ public: void resize(u32 scrollback); -protected: + // Get the current scroll position + s32 getScrollPosition() const { return m_scroll; } s32 getTopScrollPos() const; s32 getBottomScrollPos() const; diff --git a/src/chat_interface.h b/src/chat_interface.h index 1276c3a23..6ee1451db 100644 --- a/src/chat_interface.h +++ b/src/chat_interface.h @@ -4,10 +4,9 @@ #pragma once -#include "util/container.h" -#include -#include #include "irrlichttypes.h" +#include "util/container.h" // MutexedQueue +#include enum ChatEventType { CET_CHAT, diff --git a/src/client/CMakeLists.txt b/src/client/CMakeLists.txt index d8c416738..af44b06a3 100644 --- a/src/client/CMakeLists.txt +++ b/src/client/CMakeLists.txt @@ -1,7 +1,7 @@ set(sound_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/sound.cpp) if(USE_SOUND) - set(sound_SRCS ${sound_SRCS} + list(APPEND sound_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/sound/al_extensions.cpp ${CMAKE_CURRENT_SOURCE_DIR}/sound/al_helpers.cpp ${CMAKE_CURRENT_SOURCE_DIR}/sound/ogg_file.cpp @@ -55,6 +55,7 @@ set(client_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/fontengine.cpp ${CMAKE_CURRENT_SOURCE_DIR}/game.cpp ${CMAKE_CURRENT_SOURCE_DIR}/gameui.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/game_formspec.cpp ${CMAKE_CURRENT_SOURCE_DIR}/guiscalingfilter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/hud.cpp ${CMAKE_CURRENT_SOURCE_DIR}/imagefilters.cpp diff --git a/src/client/activeobjectmgr.cpp b/src/client/activeobjectmgr.cpp index 94f583bc0..b9938ce61 100644 --- a/src/client/activeobjectmgr.cpp +++ b/src/client/activeobjectmgr.cpp @@ -101,7 +101,7 @@ std::vector ActiveObjectMgr::getActiveSelectableObje if (!obj) continue; - aabb3f selection_box; + aabb3f selection_box{{0.0f, 0.0f, 0.0f}}; if (!obj->getSelectionBox(&selection_box)) continue; diff --git a/src/client/camera.cpp b/src/client/camera.cpp index 7a8af6801..9a0352a28 100644 --- a/src/client/camera.cpp +++ b/src/client/camera.cpp @@ -27,15 +27,18 @@ #include #include -#include "log_types.h" -#include "game.h" // CameraModes +static constexpr f32 CAMERA_OFFSET_STEP = 1000; -#define CAMERA_OFFSET_STEP 1000 #define WIELDMESH_OFFSET_X 55.0f #define WIELDMESH_OFFSET_Y -35.0f #define WIELDMESH_AMPLITUDE_X 7.0f #define WIELDMESH_AMPLITUDE_Y 10.0f +static const char *setting_names[] = { + "fall_bobbing_amount", "view_bobbing_amount", "fov", "arm_inertia", + "show_nametag_backgrounds", +}; + Camera::Camera(MapDrawControl &draw_control, Client *client, RenderingEngine *rendering_engine): m_draw_control(draw_control), m_client(client), @@ -57,11 +60,21 @@ Camera::Camera(MapDrawControl &draw_control, Client *client, RenderingEngine *re m_wieldnode->setItem(ItemStack(), m_client); m_wieldnode->drop(); // m_wieldmgr grabbed it - /* TODO: Add a callback function so these can be updated when a setting - * changes. At this point in time it doesn't matter (e.g. /set - * is documented to change server settings only) - * - * TODO: Local caching of settings is not optimal and should at some stage + m_nametags.clear(); + + readSettings(); + for (auto name : setting_names) + g_settings->registerChangedCallback(name, settingChangedCallback, this); +} + +void Camera::settingChangedCallback(const std::string &name, void *data) +{ + static_cast(data)->readSettings(); +} + +void Camera::readSettings() +{ + /* TODO: Local caching of settings is not optimal and should at some stage * be updated to use a global settings object for getting thse values * (as opposed to the this local caching). This can be addressed in * a later release. @@ -78,12 +91,12 @@ Camera::Camera(MapDrawControl &draw_control, Client *client, RenderingEngine *re // as a zoom FOV and load world beyond the set server limits. m_cache_fov = g_settings->getFloat("fov", 45.0f, 160.0f); m_arm_inertia = g_settings->getBool("arm_inertia"); - m_nametags.clear(); m_show_nametag_backgrounds = g_settings->getBool("show_nametag_backgrounds"); } Camera::~Camera() { + g_settings->deregisterAllChangedCallbacks(this); m_wieldmgr->drop(); } @@ -291,6 +304,20 @@ void Camera::addArmInertia(f32 player_yaw) } } +void Camera::updateOffset() +{ + v3f cp = m_camera_position / BS; + + // Update offset if too far away from the center of the map + m_camera_offset = v3s16( + floorf(cp.X / CAMERA_OFFSET_STEP) * CAMERA_OFFSET_STEP, + floorf(cp.Y / CAMERA_OFFSET_STEP) * CAMERA_OFFSET_STEP, + floorf(cp.Z / CAMERA_OFFSET_STEP) * CAMERA_OFFSET_STEP + ); + + // No need to update m_cameranode as that will be done before the next render. +} + void Camera::update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio) { // Get player position @@ -376,6 +403,7 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio) m_headnode->updateAbsolutePosition(); } + // Compute relative camera position and target v3f rel_cam_pos = v3f(0,0,0); v3f rel_cam_target = v3f(0,0,1); @@ -407,12 +435,11 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio) v3f abs_cam_up = m_headnode->getAbsoluteTransformation() .rotateAndScaleVect(rel_cam_up); - // Separate camera position for calculation - v3f my_cp = m_camera_position; - // Reposition the camera for third person view if (m_camera_mode > CAMERA_MODE_FIRST) { + v3f my_cp = m_camera_position; + if (m_camera_mode == CAMERA_MODE_THIRD_FRONT) m_camera_direction *= -1; @@ -444,27 +471,19 @@ void Camera::update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio) // If node blocks camera position don't move y to heigh if (abort && my_cp.Y > player_position.Y+BS*2) my_cp.Y = player_position.Y+BS*2; + + // update the camera position in third-person mode to render blocks behind player + // and correctly apply liquid post FX. + m_camera_position = my_cp; } - // Update offset if too far away from the center of the map - m_camera_offset.X += CAMERA_OFFSET_STEP* - (((s16)(my_cp.X/BS) - m_camera_offset.X)/CAMERA_OFFSET_STEP); - m_camera_offset.Y += CAMERA_OFFSET_STEP* - (((s16)(my_cp.Y/BS) - m_camera_offset.Y)/CAMERA_OFFSET_STEP); - m_camera_offset.Z += CAMERA_OFFSET_STEP* - (((s16)(my_cp.Z/BS) - m_camera_offset.Z)/CAMERA_OFFSET_STEP); - // Set camera node transformation - m_cameranode->setPosition(my_cp-intToFloat(m_camera_offset, BS)); - m_cameranode->updateAbsolutePosition(); + m_cameranode->setPosition(m_camera_position - intToFloat(m_camera_offset, BS)); m_cameranode->setUpVector(abs_cam_up); - // *100.0 helps in large map coordinates - m_cameranode->setTarget(my_cp-intToFloat(m_camera_offset, BS) + 100 * m_camera_direction); - - // update the camera position in third-person mode to render blocks behind player - // and correctly apply liquid post FX. - if (m_camera_mode != CAMERA_MODE_FIRST) - m_camera_position = my_cp; + m_cameranode->updateAbsolutePosition(); + // *100 helps in large map coordinates + m_cameranode->setTarget(m_camera_position - intToFloat(m_camera_offset, BS) + + 100 * m_camera_direction); /* * Apply server-sent FOV, instantaneous or smooth transition. diff --git a/src/client/camera.h b/src/client/camera.h index a6d7909af..db9f03a99 100644 --- a/src/client/camera.h +++ b/src/client/camera.h @@ -48,7 +48,7 @@ struct Nametag return bgcolor.value(); else if (!use_fallback) return video::SColor(0, 0, 0, 0); - else if (textcolor.getLuminance() > 186) + else if (textcolor.getBrightness() > 186) // Dark background for light text return video::SColor(50, 50, 50, 50); else @@ -70,6 +70,9 @@ public: Camera(MapDrawControl &draw_control, Client *client, RenderingEngine *rendering_engine); ~Camera(); + static void settingChangedCallback(const std::string &name, void *data); + void readSettings(); + // Get camera scene node. // It has the eye transformation, pitch and view bobbing applied. inline scene::ICameraSceneNode* getCameraNode() const @@ -147,6 +150,9 @@ public: // Update the camera from the local player's position. void update(LocalPlayer* player, f32 frametime, f32 tool_reload_ratio); + // Adjust the camera offset when needed + void updateOffset(); + // Update render distance void updateViewingRange(); diff --git a/src/client/client.cpp b/src/client/client.cpp index 84eb10eea..6a25fe197 100644 --- a/src/client/client.cpp +++ b/src/client/client.cpp @@ -20,6 +20,7 @@ along with Freeminer. If not, see . */ #include "client/fm_farmesh.h" +#include "client/fm_far_container.h" #include #include @@ -31,15 +32,13 @@ along with Freeminer. If not, see . #include #include #include "client.h" -#include "client/fm_far_container.h" -#include "irr_v3d.h" +#include "client/fontengine.h" #include "network/clientopcodes.h" #include "network/connection.h" #include "network/networkpacket.h" #include "network/networkprotocol.h" #include "threading/mutex_auto_lock.h" #include "client/clientevent.h" -#include "client/gameui.h" #include "client/renderingengine.h" #include "client/sound.h" #include "client/texturepaths.h" @@ -63,6 +62,7 @@ along with Freeminer. If not, see . #include "profiler.h" #include "shader.h" #include "gettext.h" +#include "gettime.h" #include "clientdynamicinfo.h" #include "clientmap.h" #include "clientmedia.h" @@ -135,7 +135,6 @@ Client::Client( ISoundManager *sound, MtEventManager *event, RenderingEngine *rendering_engine, - GameUI *game_ui, ELoginRegister allow_login_or_register ): far_container{this}, @@ -162,7 +161,6 @@ Client::Client( m_chosen_auth_mech(AUTH_MECHANISM_NONE), m_media_downloader(new ClientMediaDownloader()), m_state(LC_Created), - m_game_ui(game_ui), m_modchannel_mgr(new ModChannelMgr()) { // Add local player @@ -440,6 +438,9 @@ Client::~Client() for (auto &csp : m_sounds_client_to_server) m_sound->freeId(csp.first); m_sounds_client_to_server.clear(); + + // Go back to our mainmenu fonts + g_fontengine->clearMediaFonts(); } void Client::connect(const Address &address, const std::string &address_name, @@ -674,8 +675,11 @@ void Client::step(float dtime) std::vector minimap_mapblocks; bool do_mapper_update = true; + ClientMap &map = m_env.getClientMap(); + /* - MapSector *sector = m_env.getMap().emergeSector(v2s16(r.p.X, r.p.Z)); + MapSector *sector = map.emergeSector(v2s16(r.p.X, r.p.Z)); + MapBlock *block = sector->getBlockNoCreateNoEx(r.p.Y); // The block in question is not visible (perhaps it is culled at the server), // create a blank block just to hold the chunk's mesh. @@ -684,19 +688,23 @@ void Client::step(float dtime) block = sector->createBlankBlock(r.p.Y); */ - MapBlock *block = m_env.getMap().getBlockNoCreateNoEx(r.p); + MapBlock *block = map.getBlockNoCreateNoEx(r.p); if (!block && r.mesh) - block = m_env.getMap().createBlankBlock(r.p).get(); + block = map.createBlankBlock(r.p).get(); if (block) { + const auto old_mesh = block->getLodMesh(r.mesh->lod_step); + if (!old_mesh) { + ++m_new_meshes; + } // Delete the old mesh + if (old_mesh) + map.invalidateMapBlockMesh(old_mesh.get()); + /* delete block->mesh; block->mesh = nullptr; */ - if (!block->getLodMesh(r.mesh->lod_step)) { - ++m_new_meshes; - } block->setLodMesh(r.mesh); block->solid_sides = r.solid_sides; @@ -711,9 +719,9 @@ void Client::step(float dtime) if (r.mesh->getMesh(l)->getMeshBufferCount() != 0) is_empty = false; - if (is_empty) + if (is_empty) { delete r.mesh; - else { + } else { // Replace with the new mesh block->mesh = r.mesh; */ @@ -911,7 +919,7 @@ bool Client::loadMedia(const std::string &data, const std::string &filename, std::string name; const char *image_ext[] = { - ".png", ".jpg", ".bmp", ".tga", + ".png", ".jpg", ".tga", NULL }; name = removeStringEnd(filename, image_ext); @@ -982,6 +990,13 @@ bool Client::loadMedia(const std::string &data, const std::string &filename, return true; } + const char *font_ext[] = {".ttf", ".woff", NULL}; + name = removeStringEnd(filename, font_ext); + if (!name.empty()) { + g_fontengine->setMediaFont(name, data); + return true; + } + errorstream << "Client: Don't know how to load file \"" << filename << "\"" << std::endl; return false; @@ -1395,7 +1410,7 @@ void Client::sendInit(const std::string &playerName) { NetworkPacket pkt(TOSERVER_INIT, 1 + 2 + 2 + (1 + playerName.size())); - pkt << (u8) SER_FMT_VER_HIGHEST_READ << (u16) 0; + pkt << SER_FMT_VER_HIGHEST_READ << (u16) 0 /* unused */; pkt << CLIENT_PROTOCOL_VERSION_MIN << LATEST_PROTOCOL_VERSION; pkt << playerName; @@ -2070,11 +2085,6 @@ void Client::addUpdateMeshTaskForNode(v3s16 nodepos, bool ack_to_server, bool ur addUpdateMeshTask(blockpos + v3s16(0, 0, -1), false, urgent); } -void Client::updateCameraOffset(v3s16 camera_offset) -{ - m_mesh_update_manager->m_camera_offset = camera_offset; -} - ClientEvent *Client::getClientEvent() { FATAL_ERROR_IF(m_client_event_queue.empty(), diff --git a/src/client/client.h b/src/client/client.h index b04161b78..c61c32c13 100644 --- a/src/client/client.h +++ b/src/client/client.h @@ -113,7 +113,6 @@ private: }; class ClientScripting; -class GameUI; class WorldMerger; class FarMesh; @@ -177,7 +176,6 @@ public: ISoundManager *sound, MtEventManager *event, RenderingEngine *rendering_engine, - GameUI *game_ui, ELoginRegister allow_login_or_register ); @@ -363,8 +361,6 @@ public: void addUpdateMeshTaskWithEdge(v3pos_t blockpos, bool ack_to_server=false, bool urgent=false); void addUpdateMeshTaskForNode(v3s16 nodepos, bool ack_to_server=false, bool urgent=false); - void updateCameraOffset(v3s16 camera_offset); - bool hasClientEvents() const { return !m_client_event_queue.empty(); } // Get event from queue. If queue is empty, it triggers an assertion failure. ClientEvent * getClientEvent(); @@ -639,8 +635,6 @@ private: // own state LocalClientState m_state; - GameUI *m_game_ui; - // Used for saving server map to disk client-side MapDatabase *m_localdb = nullptr; IntervalLimiter m_localdb_save_interval; diff --git a/src/client/clientenvironment.cpp b/src/client/clientenvironment.cpp index 614913a56..cf887b64e 100644 --- a/src/client/clientenvironment.cpp +++ b/src/client/clientenvironment.cpp @@ -101,7 +101,6 @@ void ClientEnvironment::step(f32 dtime, double uptime, unsigned int max_cycle_ms /* Maximum position increment */ - //f32 position_max_increment = 0.05*BS; f32 position_max_increment = 0.1*BS; // Maximum time increment (for collision detection etc) @@ -208,12 +207,11 @@ void ClientEnvironment::step(f32 dtime, double uptime, unsigned int max_cycle_ms } /* - Move the lplayer. + Move the local player. This also does collision detection. */ - lplayer->move(dtime_part, this, position_max_increment, - &player_collisions); + lplayer->move(dtime_part, this, &player_collisions); ++loopcount; if (porting::getTimeMs() >= lend_ms) { @@ -486,8 +484,8 @@ void ClientEnvironment::getSelectedActiveObjects( const v3f line_vector = shootline_on_map.getVector(); for (const auto &allObject : allObjects) { - auto obj = allObject.obj; - aabb3f selection_box; + ClientActiveObject *obj = allObject.obj.get(); + aabb3f selection_box{{0.0f, 0.0f, 0.0f}}; if (!obj->getSelectionBox(&selection_box)) continue; @@ -495,7 +493,7 @@ void ClientEnvironment::getSelectedActiveObjects( v3f current_normal, current_raw_normal; const v3f rel_pos = shootline_on_map.start - obj->getPosition(); bool collision; - GenericCAO* gcao = dynamic_cast(obj.get()); + GenericCAO* gcao = dynamic_cast(obj); if (gcao != nullptr && gcao->getProperties().rotate_selectionbox) { gcao->getSceneNode()->updateAbsolutePosition(); const v3f deg = obj->getSceneNode()->getAbsoluteTransformation().getRotationDegrees(); diff --git a/src/client/clientevent.h b/src/client/clientevent.h index 297124b30..f21b8220f 100644 --- a/src/client/clientevent.h +++ b/src/client/clientevent.h @@ -22,7 +22,8 @@ enum ClientEventType : u8 CE_PLAYER_FORCE_MOVE, CE_DEATHSCREEN_LEGACY, CE_SHOW_FORMSPEC, - CE_SHOW_LOCAL_FORMSPEC, + CE_SHOW_CSM_FORMSPEC, + CE_SHOW_PAUSE_MENU_FORMSPEC, CE_SPAWN_PARTICLE, CE_ADD_PARTICLESPAWNER, CE_DELETE_PARTICLESPAWNER, diff --git a/src/client/clientlauncher.cpp b/src/client/clientlauncher.cpp index 43fe65e29..6bb4a6cd6 100644 --- a/src/client/clientlauncher.cpp +++ b/src/client/clientlauncher.cpp @@ -94,8 +94,7 @@ bool ClientLauncher::run(GameStartData &start_data, const Settings &cmd_args) init_args(start_data, cmd_args); #if USE_SOUND - if (g_settings->getBool("enable_sound")) - g_sound_manager_singleton = createSoundManagerSingleton(); + g_sound_manager_singleton = createSoundManagerSingleton(); #endif if (!init_engine()) @@ -334,24 +333,29 @@ void ClientLauncher::init_input() else input = new RealInputHandler(receiver); - if (g_settings->getBool("enable_joysticks")) { - irr::core::array infos; - std::vector joystick_infos; + if (g_settings->getBool("enable_joysticks")) + init_joysticks(); +} - // Make sure this is called maximum once per - // irrlicht device, otherwise it will give you - // multiple events for the same joystick. - if (m_rendering_engine->get_raw_device()->activateJoysticks(infos)) { - infostream << "Joystick support enabled" << std::endl; - joystick_infos.reserve(infos.size()); - for (u32 i = 0; i < infos.size(); i++) { - joystick_infos.push_back(infos[i]); - } - input->joystick.onJoystickConnect(joystick_infos); - } else { - errorstream << "Could not activate joystick support." << std::endl; - } +void ClientLauncher::init_joysticks() +{ + irr::core::array infos; + std::vector joystick_infos; + + // Make sure this is called maximum once per + // irrlicht device, otherwise it will give you + // multiple events for the same joystick. + if (!m_rendering_engine->get_raw_device()->activateJoysticks(infos)) { + errorstream << "Could not activate joystick support." << std::endl; + return; } + + infostream << "Joystick support enabled" << std::endl; + joystick_infos.reserve(infos.size()); + for (u32 i = 0; i < infos.size(); i++) { + joystick_infos.push_back(infos[i]); + } + input->joystick.onJoystickConnect(joystick_infos); } void ClientLauncher::setting_changed_callback(const std::string &name, void *data) diff --git a/src/client/clientlauncher.h b/src/client/clientlauncher.h index 0c28fff28..340dce2d0 100644 --- a/src/client/clientlauncher.h +++ b/src/client/clientlauncher.h @@ -31,6 +31,7 @@ private: void init_args(GameStartData &start_data, const Settings &cmd_args); bool init_engine(); void init_input(); + void init_joysticks(); static void setting_changed_callback(const std::string &name, void *data); void config_guienv(); diff --git a/src/client/clientmap.cpp b/src/client/clientmap.cpp index acbcfb05d..a11a2029a 100644 --- a/src/client/clientmap.cpp +++ b/src/client/clientmap.cpp @@ -4,8 +4,6 @@ #include "fm_far_calc.h" -#include "fm_far_calc.h" - #include "clientmap.h" #include "client.h" #include "client/mesh.h" @@ -26,25 +24,27 @@ #include namespace { - // A helper struct + // data structure that groups block meshes by material struct MeshBufListMaps { - struct MaterialHash - { - size_t operator()(const video::SMaterial &m) const noexcept - { - // Only hash first texture. Simple and fast. - return std::hash{}(m.TextureLayers[0].Texture); - } - }; + // first = block pos + using MeshBuf = std::pair; - using MeshBufListMap = std::unordered_map< - video::SMaterial, - std::vector>, - MaterialHash>; + using MeshBufList = std::vector; + + using MeshBufListMap = std::unordered_map; std::array maps; + bool empty() const + { + for (auto &map : maps) { + if (!map.empty()) + return false; + } + return true; + } + void clear() { for (auto &map : maps) @@ -61,7 +61,74 @@ namespace { auto &bufs = map[m]; // default constructs if non-existent bufs.emplace_back(position, buf); } + + void addFromBlock(v3s16 block_pos, MapBlockMesh *block_mesh, + video::IVideoDriver *driver); }; + + // reference to a mesh buffer used when rendering the map. + struct DrawDescriptor { + v3f m_pos; // world translation + bool m_reuse_material:1; + bool m_use_partial_buffer:1; + union { + scene::IMeshBuffer *m_buffer; + const PartialMeshBuffer *m_partial_buffer; + }; + + DrawDescriptor(v3f pos, scene::IMeshBuffer *buffer, bool reuse_material = true) : + m_pos(pos), m_reuse_material(reuse_material), m_use_partial_buffer(false), + m_buffer(buffer) + {} + + DrawDescriptor(v3f pos, const PartialMeshBuffer *buffer) : + m_pos(pos), m_reuse_material(false), m_use_partial_buffer(true), + m_partial_buffer(buffer) + {} + + video::SMaterial &getMaterial(); + /// @return number of vertices drawn + u32 draw(video::IVideoDriver* driver); + }; + + using DrawDescriptorList = std::vector; + + /// @brief Append vertices to a mesh buffer + /// @note does not update bounding box! + void appendToMeshBuffer(scene::SMeshBuffer *dst, const scene::IMeshBuffer *src, v3f translate) + { + const size_t vcount = dst->Vertices->Data.size(); + const size_t icount = dst->Indices->Data.size(); + + assert(src->getVertexType() == video::EVT_STANDARD); + const auto vptr = static_cast(src->getVertices()); + dst->Vertices->Data.insert(dst->Vertices->Data.end(), + vptr, vptr + src->getVertexCount()); + // apply translation + for (size_t j = vcount; j < dst->Vertices->Data.size(); j++) + dst->Vertices->Data[j].Pos += translate; + + const auto iptr = src->getIndices(); + dst->Indices->Data.insert(dst->Indices->Data.end(), + iptr, iptr + src->getIndexCount()); + // fixup indices + if (vcount != 0) { + for (size_t j = icount; j < dst->Indices->Data.size(); j++) + dst->Indices->Data[j] += vcount; + } + } + + template + inline T subtract_or_zero(T a, T b) { + return b >= a ? T(0) : (a - b); + } +} + +void CachedMeshBuffer::drop() +{ + for (auto *it : buf) + it->drop(); + buf.clear(); } void MapDrawControl::fm_init() @@ -87,6 +154,7 @@ static const std::string ClientMap_settings[] = { "trilinear_filter", "bilinear_filter", "anisotropic_filter", + "transparency_sorting_group_by_buffers", "transparency_sorting_distance", "occlusion_culler", "enable_raytraced_culling", @@ -116,8 +184,7 @@ ClientMap::ClientMap( * the class is whith a name ;) Name property cames from ISceneNode base class. */ Name = "ClientMap"; - m_box = aabb3f(-BS*1000000,-BS*1000000,-BS*1000000, - BS*1000000,BS*1000000,BS*1000000); + setAutomaticCulling(scene::EAC_OFF); for (const auto &name : ClientMap_settings) g_settings->registerChangedCallback(name, on_settings_changed, this); @@ -133,6 +200,9 @@ void ClientMap::onSettingChanged(std::string_view name, bool all) m_cache_bilinear_filter = g_settings->getBool("bilinear_filter"); if (all || name == "anisotropic_filter") m_cache_anistropic_filter = g_settings->getBool("anisotropic_filter"); + if (all || name == "transparency_sorting_group_by_buffers") + m_cache_transparency_sorting_group_by_buffers = + g_settings->getBool("transparency_sorting_group_by_buffers"); if (all || name == "transparency_sorting_distance") m_cache_transparency_sorting_distance = g_settings->getU16("transparency_sorting_distance"); if (all || name == "occlusion_culler") @@ -144,12 +214,15 @@ void ClientMap::onSettingChanged(std::string_view name, bool all) ClientMap::~ClientMap() { g_settings->deregisterAllChangedCallbacks(this); + + for (auto &it : m_dynamic_buffers) + it.second.drop(); } void ClientMap::updateCamera(v3f pos, v3f dir, f32 fov, v3s16 offset, video::SColor light_color) { - //v3s16 previous_node = floatToInt(m_camera_position, BS) + m_camera_offset; - v3pos_t previous_node = m_camera_position_node; + v3s16 previous_camera_offset = m_camera_offset; + v3s16 previous_node = floatToInt(m_camera_position, BS) + m_camera_offset; v3s16 previous_block = getContainerPos(previous_node, MAP_BLOCKSIZE); m_camera_position = pos; @@ -169,6 +242,13 @@ void ClientMap::updateCamera(v3f pos, v3f dir, f32 fov, v3s16 offset, video::SCo // reorder transparent meshes when camera crosses node boundary if (previous_node != current_node) m_needs_update_transparent_meshes = true; + + // drop merged mesh cache when camera offset changes + if (previous_camera_offset != m_camera_offset) { + for (auto &it : m_dynamic_buffers) + it.second.drop(); + m_dynamic_buffers.clear(); + } } /* @@ -331,7 +411,7 @@ void ClientMap::updateDrawList(float dtime, unsigned int max_cycle_ms) } const v3s16 camera_block = getContainerPos(cam_pos_nodes, MAP_BLOCKSIZE); - m_drawlist = drawlist_map(MapBlockComparer(camera_block)); + m_drawlist = drawlist_map{MapBlockComparer(camera_block)}; auto is_frustum_culled = m_client->getCamera()->getFrustumCuller(); @@ -1129,6 +1209,160 @@ void ClientMap::updateDrawListFm(float dtime, unsigned int max_cycle_ms) } +void MeshBufListMaps::addFromBlock(v3s16 block_pos, MapBlockMesh *block_mesh, + video::IVideoDriver *driver) +{ + for (int layer = 0; layer < MAX_TILE_LAYERS; layer++) { + scene::IMesh *mesh = block_mesh->getMesh(layer); + assert(mesh); + + u32 c = mesh->getMeshBufferCount(); + for (u32 i = 0; i < c; i++) { + scene::IMeshBuffer *buf = mesh->getMeshBuffer(i); + + auto &material = buf->getMaterial(); + auto *rnd = driver->getMaterialRenderer(material.MaterialType); + bool transparent = rnd && rnd->isTransparent(); + if (!transparent) + add(buf, block_pos, layer); + } + } +} + +/** + * Copy a list of mesh buffers into the draw order, while potentially + * merging some. + * @param src buffer list + * @param dst draw order + * @param get_world_pos returns translation for a buffer + * @param dynamic_buffers cache structure for merged buffers + * @return number of buffers that were merged + */ +template +static u32 transformBuffersToDrawOrder( + const MeshBufListMaps::MeshBufList &src, DrawDescriptorList &draw_order, + F get_world_pos, CachedMeshBuffers &dynamic_buffers) +{ + /** + * This is a tradeoff between time spent merging buffers and time spent + * due to excess drawcalls. + * Testing has shown that the ideal value is in the low hundreds, as extra + * CPU work quickly eats up the benefits (though alleviated by a cache). + * In MTG landscape scenes this was found to save around 20-40% of drawcalls. + * + * NOTE: if you attempt to test this with quicktune, it won't give you valid + * results since HW buffers stick around and Irrlicht handles large amounts + * inefficiently. + */ + const u32 target_min_vertices = g_settings->getU32("mesh_buffer_min_vertices"); + + const auto draw_order_pre = draw_order.size(); + auto *driver = RenderingEngine::get_video_driver(); + + // check if we can even merge anything + u32 can_merge = 0; + u32 total_vtx = 0, total_idx = 0; + for (auto &pair : src) { + if (pair.second->getVertexCount() < target_min_vertices) { + can_merge++; + total_vtx += pair.second->getVertexCount(); + total_idx += pair.second->getIndexCount(); + } + } + + // iterate in reverse to get closest blocks first + std::vector> to_merge; + for (auto it = src.rbegin(); it != src.rend(); ++it) { + v3f translate = get_world_pos(it->first); + auto *buf = it->second; + if (can_merge < 2 || buf->getVertexCount() >= target_min_vertices) { + draw_order.emplace_back(translate, buf); + continue; + } + to_merge.emplace_back(translate, buf); + } + + /* + * Tracking buffers, their contents and modifications would be quite complicated + * so we opt for something simple here: We identify buffers by their location + * in memory. + * This imposes the following assumptions: + * - buffers don't move in memory + * - vertex and index data is immutable + * - we know when to invalidate (invalidateMapBlockMesh does this) + */ + std::sort(to_merge.begin(), to_merge.end(), [] (const auto &l, const auto &r) { + return static_cast(l.second) < static_cast(r.second); + }); + // cache key is a string of sorted raw pointers + std::string key; + key.reserve(sizeof(void*) * to_merge.size()); + for (auto &it : to_merge) + key.append(reinterpret_cast(&it.second), sizeof(void*)); + + // try to take from cache + auto it2 = dynamic_buffers.find(key); + if (it2 != dynamic_buffers.end()) { + g_profiler->avg("CM::transformBuffersToDO: cache hit rate", 1); + const auto &use_mat = to_merge.front().second->getMaterial(); + assert(!it2->second.buf.empty()); + for (auto *buf : it2->second.buf) { + // material is not part of the cache key, so make sure it still matches + buf->getMaterial() = use_mat; + draw_order.emplace_back(v3f(0), buf); + } + it2->second.age = 0; + } else if (!key.empty()) { + g_profiler->avg("CM::transformBuffersToDO: cache hit rate", 0); + // merge and save to cache + auto &put_buffers = dynamic_buffers[key]; + scene::SMeshBuffer *tmp = nullptr; + const auto &finish_buf = [&] () { + if (tmp) { + draw_order.emplace_back(v3f(0), tmp); + total_vtx = subtract_or_zero(total_vtx, tmp->getVertexCount()); + total_idx = subtract_or_zero(total_idx, tmp->getIndexCount()); + + // Upload buffer here explicitly to give the driver some + // extra time to get it ready before drawing. + tmp->setHardwareMappingHint(scene::EHM_STREAM); + driver->updateHardwareBuffer(tmp->getVertexBuffer()); + driver->updateHardwareBuffer(tmp->getIndexBuffer()); + } + tmp = nullptr; + }; + + for (auto &it : to_merge) { + v3f translate = it.first; + auto *buf = it.second; + + bool new_buffer = false; + if (!tmp) + new_buffer = true; + else if (tmp->getVertexCount() + buf->getVertexCount() > U16_MAX) + new_buffer = true; + if (new_buffer) { + finish_buf(); + tmp = new scene::SMeshBuffer(); + put_buffers.buf.push_back(tmp); + assert(tmp->getPrimitiveType() == buf->getPrimitiveType()); + tmp->Material = buf->getMaterial(); + // preallocate approximately + tmp->Vertices->Data.reserve(MYMIN(U16_MAX, total_vtx)); + tmp->Indices->Data.reserve(total_idx); + } + appendToMeshBuffer(tmp, buf, translate); + } + finish_buf(); + assert(!put_buffers.buf.empty()); + } + + // first call needs to set the material + if (draw_order.size() > draw_order_pre) + draw_order[draw_order_pre].m_reuse_material = false; + + return can_merge < 2 ? 0 : can_merge; +} void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) { @@ -1138,19 +1372,13 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) ZoneScoped; - bool is_transparent_pass = pass == scene::ESNRP_TRANSPARENT; + const bool is_transparent_pass = pass == scene::ESNRP_TRANSPARENT; std::string prefix; if (pass == scene::ESNRP_SOLID) prefix = "renderMap(SOLID): "; else - prefix = "renderMap(TRANSPARENT): "; - - /* - This is called two times per frame, reset on the non-transparent one - */ - if (pass == scene::ESNRP_SOLID) - m_last_drawn_sectors.clear(); + prefix = "renderMap(TRANS): "; /* Get animation parameters @@ -1161,16 +1389,16 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) const v3f camera_position = m_camera_position; - /* - Get all blocks and draw all visible ones - */ + const auto mesh_grid = m_client->getMeshGrid(); + // Gets world position from block map position + const auto get_block_wpos = [&] (v3s16 pos) -> v3f { + return intToFloat(mesh_grid.getMeshPos(pos) * MAP_BLOCKSIZE - m_camera_offset, BS); + }; - u32 vertex_count = 0; - u32 drawcall_count = 0; + u32 merged_count = 0; // For limiting number of mesh animations per frame u32 mesh_animate_count = 0; - //u32 mesh_animate_count_far = 0; /* Update transparent meshes @@ -1179,21 +1407,20 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) updateTransparentMeshBuffers(); /* - Draw the selected MapBlocks + Collect everything we need to draw */ + TimeTaker tt_collect(""); MeshBufListMaps grouped_buffers; - std::vector draw_order; - video::SMaterial previous_material; + DrawDescriptorList draw_order; auto is_frustum_culled = m_client->getCamera()->getFrustumCuller(); - const MeshGrid mesh_grid = m_client->getMeshGrid(); + //const MeshGrid mesh_grid = m_client->getMeshGrid(); draw_order.reserve(m_drawlist.size()); for (auto &i : m_drawlist) { - v3s16 block_pos = i.first; + const v3s16 block_pos = i.first; auto block = i.second; - //int mesh_step = getFarmeshStep(m_control, getNodeBlockPos(cam_pos_nodes), block->getPos()); int mesh_step = getLodStep( m_control, getNodeBlockPos(m_camera_position_node), block->getPos(), speedf); @@ -1251,50 +1478,28 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) // In transparent pass, the mesh will give us // the partial buffers in the correct order for (auto &buffer : block_mesh->getTransparentBuffers()) - draw_order.emplace_back(block_pos, &buffer); - } - else { - // otherwise, group buffers across meshes - // using MeshBufListMaps - for (int layer = 0; layer < MAX_TILE_LAYERS; layer++) { - scene::IMesh *mesh = block_mesh->getMesh(layer); - assert(mesh); - - u32 c = mesh->getMeshBufferCount(); - for (u32 i = 0; i < c; i++) { - scene::IMeshBuffer *buf = mesh->getMeshBuffer(i); - - video::SMaterial& material = buf->getMaterial(); - video::IMaterialRenderer* rnd = - driver->getMaterialRenderer(material.MaterialType); - bool transparent = (rnd && rnd->isTransparent()); - if (!transparent) { - if (buf->getVertexCount() == 0) - errorstream << "Block [" << analyze_block(block.get()) - << "] contains an empty meshbuf" << std::endl; - - grouped_buffers.add(buf, block_pos, layer); - } - } - } + draw_order.emplace_back(get_block_wpos(block_pos), &buffer); + } else { + // Otherwise, group them + grouped_buffers.addFromBlock(block_pos, block_mesh.get(), driver); } } - // Capture draw order for all solid meshes + assert(!is_transparent_pass || grouped_buffers.empty()); for (auto &map : grouped_buffers.maps) { for (auto &list : map) { - // iterate in reverse to draw closest blocks first - for (auto it = list.second.rbegin(); it != list.second.rend(); ++it) { - draw_order.emplace_back(it->first, it->second, it != list.second.rbegin()); - } + merged_count += transformBuffersToDrawOrder( + list.second, draw_order, get_block_wpos, m_dynamic_buffers); } } - TimeTaker draw("Drawing mesh buffers"); - draw.start(); + g_profiler->avg(prefix + "collecting [ms]", tt_collect.stop(true)); + + TimeTaker tt_draw(""); core::matrix4 m; // Model matrix - v3f offset = intToFloat(m_camera_offset, BS); + u32 vertex_count = 0; + u32 drawcall_count = 0; u32 material_swaps = 0; // Render all mesh buffers in order @@ -1330,18 +1535,31 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) material.TextureLayers[ShadowRenderer::TEXTURE_LAYER_SHADOW].Texture = nullptr; } - v3f block_wpos = intToFloat(mesh_grid.getMeshPos(descriptor.m_pos) * MAP_BLOCKSIZE, BS); - m.setTranslation(block_wpos - offset); - + m.setTranslation(descriptor.m_pos); driver->setTransform(video::ETS_WORLD, m); + vertex_count += descriptor.draw(driver); } - g_profiler->avg(prefix + "draw meshes [ms]", draw.stop(true)); + g_profiler->avg(prefix + "draw meshes [ms]", tt_draw.stop(true)); - // Log only on solid pass because values are the same if (pass == scene::ESNRP_SOLID) { g_profiler->avg("renderMap(): animated meshes [#]", mesh_animate_count); + g_profiler->avg(prefix + "merged buffers [#]", merged_count); + + u32 cached_count = 0; + for (auto it = m_dynamic_buffers.begin(); it != m_dynamic_buffers.end(); ) { + // prune aggressively since every new/changed block or camera + // rotation can have big effects + if (++it->second.age > 1) { + it->second.drop(); + it = m_dynamic_buffers.erase(it); + } else { + cached_count += it->second.buf.size(); + it++; + } + } + g_profiler->avg(prefix + "merged buffers in cache [#]", cached_count); } if (pass == scene::ESNRP_TRANSPARENT) { @@ -1356,6 +1574,51 @@ void ClientMap::renderMap(video::IVideoDriver* driver, s32 pass) m_far_blocks_delete.clear(); } +void ClientMap::invalidateMapBlockMesh(MapBlockMesh *mesh) +{ + // find all buffers for this block + MeshBufListMaps tmp; + tmp.addFromBlock(v3s16(), mesh, getSceneManager()->getVideoDriver()); + + std::vector to_delete; + void *maxp = 0; + for (auto &it : tmp.maps) { + for (auto &it2 : it) { + for (auto &it3 : it2.second) { + void *const p = it3.second; // explicit downcast + to_delete.push_back(p); + maxp = std::max(maxp, p); + } + } + } + if (to_delete.empty()) + return; + + // we know which buffers were used to produce a merged buffer + // so go through the cache and drop any entries that match + const auto &match_any = [&] (const std::string &key) { + assert(key.size() % sizeof(void*) == 0); + void *v; + for (size_t off = 0; off < key.size(); off += sizeof(void*)) { + // no alignment guarantee so *(void**)&key[off] is not allowed! + memcpy(&v, &key[off], sizeof(void*)); + if (v > maxp) // early exit, since it's sorted + break; + if (CONTAINS(to_delete, v)) + return true; + } + return false; + }; + for (auto it = m_dynamic_buffers.begin(); it != m_dynamic_buffers.end(); ) { + if (match_any(it->first)) { + it->second.drop(); + it = m_dynamic_buffers.erase(it); + } else { + it++; + } + } +} + static bool getVisibleBrightness(Map *map, const v3f &p0, v3f dir, float step, float step_multiplier, float start_distance, float end_distance, const NodeDefManager *ndef, u32 daylight_factor, float sunlight_min_d, @@ -1566,12 +1829,14 @@ void ClientMap::renderMapShadows(video::IVideoDriver *driver, else prefix = "renderMap(SHADOW SOLID): "; - u32 drawcall_count = 0; - u32 vertex_count = 0; + const auto mesh_grid = m_client->getMeshGrid(); + // Gets world position from block map position + const auto get_block_wpos = [&] (v3s16 pos) -> v3f { + return intToFloat(mesh_grid.getMeshPos(pos) * MAP_BLOCKSIZE - m_camera_offset, BS); + }; MeshBufListMaps grouped_buffers; - std::vector draw_order; - + DrawDescriptorList draw_order; std::size_t count = 0; std::size_t meshes_per_frame = m_drawlist_shadow.size() / total_frames + 1; @@ -1583,7 +1848,6 @@ void ClientMap::renderMapShadows(video::IVideoDriver *driver, return; } - const MeshGrid mesh_grid = m_client->getMeshGrid(); for (const auto &i : m_drawlist_shadow) { // only process specific part of the list & break early ++count; @@ -1614,55 +1878,25 @@ void ClientMap::renderMapShadows(video::IVideoDriver *driver, // In transparent pass, the mesh will give us // the partial buffers in the correct order for (auto &buffer : mapBlockMesh->getTransparentBuffers()) - draw_order.emplace_back(block_pos, &buffer); - } - else { - // otherwise, group buffers across meshes - // using MeshBufListMaps -/* - MapBlockMesh *mapBlockMesh = block->mesh; - assert(mapBlockMesh); -*/ - - for (int layer = 0; layer < MAX_TILE_LAYERS; layer++) { - scene::IMesh *mesh = mapBlockMesh->getMesh(layer); - assert(mesh); - - u32 c = mesh->getMeshBufferCount(); - for (u32 i = 0; i < c; i++) { - scene::IMeshBuffer *buf = mesh->getMeshBuffer(i); - - video::SMaterial &mat = buf->getMaterial(); - auto rnd = driver->getMaterialRenderer(mat.MaterialType); - bool transparent = rnd && rnd->isTransparent(); - if (!transparent) - grouped_buffers.add(buf, block_pos, layer); - } - } + draw_order.emplace_back(get_block_wpos(block_pos), &buffer); + } else { + // Otherwise, group them + grouped_buffers.addFromBlock(block_pos, mapBlockMesh.get(), driver); } } - u32 buffer_count = 0; - for (auto &map : grouped_buffers.maps) - for (auto &list : map) - buffer_count += list.second.size(); - - draw_order.reserve(draw_order.size() + buffer_count); - - // Capture draw order for all solid meshes for (auto &map : grouped_buffers.maps) { for (auto &list : map) { - // iterate in reverse to draw closest blocks first - for (auto it = list.second.rbegin(); it != list.second.rend(); ++it) - draw_order.emplace_back(it->first, it->second, it != list.second.rbegin()); + transformBuffersToDrawOrder( + list.second, draw_order, get_block_wpos, m_dynamic_buffers); } } - TimeTaker draw("Drawing shadow mesh buffers"); - draw.start(); + TimeTaker draw(""); core::matrix4 m; // Model matrix - v3f offset = intToFloat(m_camera_offset, BS); + u32 drawcall_count = 0; + u32 vertex_count = 0; u32 material_swaps = 0; // Render all mesh buffers in order @@ -1702,8 +1936,7 @@ void ClientMap::renderMapShadows(video::IVideoDriver *driver, ++material_swaps; } - v3f block_wpos = intToFloat(mesh_grid.getMeshPos(descriptor.m_pos) * MAP_BLOCKSIZE, BS); - m.setTranslation(block_wpos - offset); + m.setTranslation(descriptor.m_pos); driver->setTransform(video::ETS_WORLD, m); vertex_count += descriptor.draw(driver); @@ -1713,6 +1946,7 @@ void ClientMap::renderMapShadows(video::IVideoDriver *driver, video::SMaterial clean; clean.BlendOperation = video::EBO_ADD; driver->setMaterial(clean); // reset material to defaults + // FIXME: why is this here? driver->draw3DLine(v3f(), v3f(), video::SColor(0)); g_profiler->avg(prefix + "draw meshes [ms]", draw.stop(true)); @@ -1853,7 +2087,8 @@ void ClientMap::updateTransparentMeshBuffers() } if (do_sort_block) { - blockmesh->updateTransparentBuffers(m_camera_position, block->getPos()); + blockmesh->updateTransparentBuffers(m_camera_position, block->getPos(), + m_cache_transparency_sorting_group_by_buffers); ++sorted_blocks; } else { blockmesh->consolidateTransparentBuffers(); @@ -1867,12 +2102,12 @@ void ClientMap::updateTransparentMeshBuffers() m_needs_update_transparent_meshes = false; } -video::SMaterial &ClientMap::DrawDescriptor::getMaterial() +video::SMaterial &DrawDescriptor::getMaterial() { return (m_use_partial_buffer ? m_partial_buffer->getBuffer() : m_buffer)->getMaterial(); } -u32 ClientMap::DrawDescriptor::draw(video::IVideoDriver* driver) +u32 DrawDescriptor::draw(video::IVideoDriver* driver) { if (m_use_partial_buffer) { m_partial_buffer->draw(driver); diff --git a/src/client/clientmap.h b/src/client/clientmap.h index aef795df3..68c4aa881 100644 --- a/src/client/clientmap.h +++ b/src/client/clientmap.h @@ -68,6 +68,16 @@ namespace irr::video class IVideoDriver; } +struct CachedMeshBuffer { + std::vector buf; + u8 age = 0; + + void drop(); +}; + +using CachedMeshBuffers = std::unordered_map; + + /* ClientMap @@ -128,6 +138,8 @@ public: void renderPostFx(CameraMode cam_mode); + void invalidateMapBlockMesh(MapBlockMesh *mesh); + // For debug printing void PrintInfo(std::ostream &out) override; @@ -148,7 +160,6 @@ private: // update the vertex order in transparent mesh buffers void updateTransparentMeshBuffers(); - // Orders blocks by distance to the camera class MapBlockComparer { @@ -166,30 +177,6 @@ private: v3s16 m_camera_block; }; - - // reference to a mesh buffer used when rendering the map. - struct DrawDescriptor { - v3s16 m_pos; - union { - scene::IMeshBuffer *m_buffer; - const PartialMeshBuffer *m_partial_buffer; - }; - bool m_reuse_material:1; - bool m_use_partial_buffer:1; - - DrawDescriptor(v3s16 pos, scene::IMeshBuffer *buffer, bool reuse_material) : - m_pos(pos), m_buffer(buffer), m_reuse_material(reuse_material), m_use_partial_buffer(false) - {} - - DrawDescriptor(v3s16 pos, const PartialMeshBuffer *buffer) : - m_pos(pos), m_partial_buffer(buffer), m_reuse_material(false), m_use_partial_buffer(true) - {} - - video::SMaterial &getMaterial(); - /// @return index count - u32 draw(video::IVideoDriver* driver); - }; - Client *m_client; RenderingEngine *m_rendering_engine; @@ -227,12 +214,12 @@ private: std::map m_drawlist_shadow; */ bool m_needs_update_drawlist; - - std::set m_last_drawn_sectors; + CachedMeshBuffers m_dynamic_buffers; bool m_cache_trilinear_filter; bool m_cache_bilinear_filter; bool m_cache_anistropic_filter; + bool m_cache_transparency_sorting_group_by_buffers; u16 m_cache_transparency_sorting_distance; bool m_loops_occlusion_culler; diff --git a/src/client/clientmedia.cpp b/src/client/clientmedia.cpp index d5d3db421..13b921526 100644 --- a/src/client/clientmedia.cpp +++ b/src/client/clientmedia.cpp @@ -13,7 +13,7 @@ #include "settings.h" #include "util/hex.h" #include "util/serialize.h" -#include "util/sha1.h" +#include "util/hashing.h" #include "util/string.h" #include @@ -543,12 +543,7 @@ bool IClientMediaDownloader::checkAndLoad( std::string sha1_hex = hex_encode(sha1); // Compute actual checksum of data - std::string data_sha1; - { - class SHA1 ctx; - ctx.addBytes(data); - data_sha1 = ctx.getDigest(); - } + std::string data_sha1 = hashing::sha1(data); // Check that received file matches announced checksum if (data_sha1 != sha1) { diff --git a/src/client/clouds.cpp b/src/client/clouds.cpp index ef8ee37bc..7b74f1cb5 100644 --- a/src/client/clouds.cpp +++ b/src/client/clouds.cpp @@ -34,16 +34,13 @@ Clouds::Clouds(scene::ISceneManager* mgr, IShaderSource *ssrc, m_seed(seed) { assert(ssrc); - m_enable_shaders = g_settings->getBool("enable_shaders"); m_material.BackfaceCulling = true; m_material.FogEnable = true; m_material.AntiAliasing = video::EAAM_SIMPLE; - if (m_enable_shaders) { - auto sid = ssrc->getShader("cloud_shader", TILE_MATERIAL_ALPHA); + { + auto sid = ssrc->getShaderRaw("cloud_shader", true); m_material.MaterialType = ssrc->getShaderInfo(sid).material; - } else { - m_material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; } m_params = SkyboxDefaults::getCloudDefaults(); @@ -129,15 +126,11 @@ void Clouds::updateMesh() // Colors with primitive shading - video::SColorf c_top_f(m_color); - video::SColorf c_side_1_f(m_color); - video::SColorf c_side_2_f(m_color); - video::SColorf c_bottom_f(m_color); - if (m_enable_shaders) { - // shader mixes the base color, set via ColorParam - c_top_f = c_side_1_f = c_side_2_f = c_bottom_f = video::SColorf(1.0f, 1.0f, 1.0f, 1.0f); - } - video::SColorf shadow = m_params.color_shadow; + video::SColorf c_top_f(1, 1, 1, 1); + video::SColorf c_side_1_f(1, 1, 1, 1); + video::SColorf c_side_2_f(1, 1, 1, 1); + video::SColorf c_bottom_f(1, 1, 1, 1); + const video::SColorf shadow = m_params.color_shadow; c_side_1_f.r *= shadow.r * 0.25f + 0.75f; c_side_1_f.g *= shadow.g * 0.25f + 0.75f; @@ -402,8 +395,7 @@ void Clouds::render() } m_material.BackfaceCulling = is3D(); - if (m_enable_shaders) - m_material.ColorParam = m_color.toSColor(); + m_material.ColorParam = m_color.toSColor(); driver->setTransform(video::ETS_WORLD, AbsoluteTransformation); driver->setMaterial(m_material); @@ -475,8 +467,8 @@ void Clouds::readSettings() // chosen to avoid exactly that. // refer to vertex_count in updateMesh() m_enable_3d = g_settings->getBool("enable_3d_clouds"); - const u16 maximum = m_enable_3d ? 62 : 25; - m_cloud_radius_i = rangelim(g_settings->getU16("cloud_radius"), 1, maximum); + const u16 maximum = !m_enable_3d ? 62 : 25; + m_cloud_radius_i = rangelim(g_settings->getU16("cloud_radius"), 8, maximum); invalidateMesh(); } diff --git a/src/client/clouds.h b/src/client/clouds.h index 0df51c2a6..07dd9e716 100644 --- a/src/client/clouds.h +++ b/src/client/clouds.h @@ -164,7 +164,7 @@ private: // Was the mesh ever generated? bool m_mesh_valid = false; - aabb3f m_box; + aabb3f m_box{{0.0f, 0.0f, 0.0f}}; v2f m_origin; u16 m_cloud_radius_i; u32 m_seed; @@ -173,7 +173,7 @@ private: v3s16 m_camera_offset; bool m_camera_inside_cloud = false; - bool m_enable_shaders, m_enable_3d; + bool m_enable_3d; video::SColorf m_color = video::SColorf(1.0f, 1.0f, 1.0f, 1.0f); public: CloudParams m_params; diff --git a/src/client/content_cao.cpp b/src/client/content_cao.cpp index 154c6736c..c48836d33 100644 --- a/src/client/content_cao.cpp +++ b/src/client/content_cao.cpp @@ -33,6 +33,9 @@ #include "client/shader.h" #include "client/minimap.h" #include +#include +#include +#include class Settings; struct ToolCapabilities; @@ -350,8 +353,6 @@ bool GenericCAO::collideWithObjects() const void GenericCAO::initialize(const std::string &data) { processInitData(data); - - m_enable_shaders = g_settings->getBool("enable_shaders"); } void GenericCAO::processInitData(const std::string &data) @@ -606,7 +607,7 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) m_material_type_param = 0.5f; // May cut off alpha < 128 depending on m_material_type - if (m_enable_shaders) { + { IShaderSource *shader_source = m_client->getShaderSource(); MaterialType material_type; @@ -619,13 +620,6 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) u32 shader_id = shader_source->getShader("object_shader", material_type, NDT_NORMAL); m_material_type = shader_source->getShaderInfo(shader_id).material; - } else { - if (m_prop.use_texture_alpha) { - m_material_type = video::EMT_TRANSPARENT_ALPHA_CHANNEL; - m_material_type_param = 1.0f / 256.f; // minimal alpha for texture rendering - } else { - m_material_type = video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF; - } } auto grabMatrixNode = [this] { @@ -668,66 +662,46 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) } } else if (m_prop.visual == "upright_sprite") { grabMatrixNode(); - scene::SMesh *mesh = new scene::SMesh(); - double dx = BS * m_prop.visual_size.X / 2; - double dy = BS * m_prop.visual_size.Y / 2; + auto mesh = make_irr(); + f32 dx = BS * m_prop.visual_size.X / 2; + f32 dy = BS * m_prop.visual_size.Y / 2; video::SColor c(0xFFFFFFFF); - { // Front - scene::IMeshBuffer *buf = new scene::SMeshBuffer(); - video::S3DVertex vertices[4] = { - video::S3DVertex(-dx, -dy, 0, 0,0,1, c, 1,1), - video::S3DVertex( dx, -dy, 0, 0,0,1, c, 0,1), - video::S3DVertex( dx, dy, 0, 0,0,1, c, 0,0), - video::S3DVertex(-dx, dy, 0, 0,0,1, c, 1,0), - }; - if (m_is_player) { - // Move minimal Y position to 0 (feet position) - for (video::S3DVertex &vertex : vertices) - vertex.Pos.Y += dy; + video::S3DVertex vertices[4] = { + video::S3DVertex(-dx, -dy, 0, 0,0,1, c, 1,1), + video::S3DVertex( dx, -dy, 0, 0,0,1, c, 0,1), + video::S3DVertex( dx, dy, 0, 0,0,1, c, 0,0), + video::S3DVertex(-dx, dy, 0, 0,0,1, c, 1,0), + }; + if (m_is_player) { + // Move minimal Y position to 0 (feet position) + for (auto &vertex : vertices) + vertex.Pos.Y += dy; + } + const u16 indices[] = {0,1,2,2,3,0}; + + for (int face : {0, 1}) { + auto buf = make_irr(); + // Front (0) or Back (1) + if (face == 1) { + for (auto &v : vertices) + v.Normal *= -1; + for (int i : {0, 2}) + std::swap(vertices[i].Pos, vertices[i+1].Pos); } - u16 indices[] = {0,1,2,2,3,0}; buf->append(vertices, 4, indices, 6); // Set material setMaterial(buf->getMaterial()); - if (m_enable_shaders) { - buf->getMaterial().ColorParam = c; - } + buf->getMaterial().ColorParam = c; // Add to mesh - mesh->addMeshBuffer(buf); - buf->drop(); + mesh->addMeshBuffer(buf.get()); } - { // Back - scene::IMeshBuffer *buf = new scene::SMeshBuffer(); - video::S3DVertex vertices[4] = { - video::S3DVertex( dx,-dy, 0, 0,0,-1, c, 1,1), - video::S3DVertex(-dx,-dy, 0, 0,0,-1, c, 0,1), - video::S3DVertex(-dx, dy, 0, 0,0,-1, c, 0,0), - video::S3DVertex( dx, dy, 0, 0,0,-1, c, 1,0), - }; - if (m_is_player) { - // Move minimal Y position to 0 (feet position) - for (video::S3DVertex &vertex : vertices) - vertex.Pos.Y += dy; - } - u16 indices[] = {0,1,2,2,3,0}; - buf->append(vertices, 4, indices, 6); - // Set material - setMaterial(buf->getMaterial()); - if (m_enable_shaders) { - buf->getMaterial().ColorParam = c; - } - - // Add to mesh - mesh->addMeshBuffer(buf); - buf->drop(); - } - m_meshnode = m_smgr->addMeshSceneNode(mesh, m_matrixnode); + mesh->recalculateBoundingBox(); + m_meshnode = m_smgr->addMeshSceneNode(mesh.get(), m_matrixnode); m_meshnode->grab(); - mesh->drop(); } else if (m_prop.visual == "cube") { grabMatrixNode(); scene::IMesh *mesh = createCubeMesh(v3f(BS,BS,BS)); @@ -744,8 +718,7 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) }); } else if (m_prop.visual == "mesh") { grabMatrixNode(); - // can't cache mesh if shaders disabled, since we modify vertices - scene::IAnimatedMesh *mesh = m_client->getMesh(m_prop.mesh, m_enable_shaders); + scene::IAnimatedMesh *mesh = m_client->getMesh(m_prop.mesh, true); if (mesh) { if (!checkMeshNormals(mesh)) { infostream << "GenericCAO: recalculating normals for mesh " @@ -805,7 +778,7 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) /* Set VBO hint */ // wieldmesh sets its own hint, no need to handle it - if (m_enable_shaders && (m_meshnode || m_animated_meshnode)) { + if (m_meshnode || m_animated_meshnode) { // sprite uses vertex animation if (m_meshnode && m_prop.visual != "upright_sprite") m_meshnode->getMesh()->setHardwareMappingHint(scene::EHM_STATIC); @@ -903,10 +876,7 @@ void GenericCAO::updateLight(u32 day_night_ratio) // Encode light into color, adding a small boost // based on the entity glow. - if (m_enable_shaders) - light = encode_light(light_at_pos, m_prop.glow); - else - final_color_blend(&light, light_at_pos, day_night_ratio); + light = encode_light(light_at_pos, m_prop.glow); if (light != m_last_light) { m_last_light = light; @@ -922,22 +892,11 @@ void GenericCAO::setNodeLight(const video::SColor &light_color) return; } - if (m_enable_shaders) { + { auto *node = getSceneNode(); if (!node) return; setColorParam(node, light_color); - } else { - // TODO refactor vertex colors to be separate from the other vertex attributes - // instead of mutating meshes / buffers for everyone via setMeshColor. - // (Note: There are a couple more places here where setMeshColor is used.) - if (m_meshnode) { - setMeshColor(m_meshnode->getMesh(), light_color); - } else if (m_animated_meshnode) { - setMeshColor(m_animated_meshnode->getMesh(), light_color); - } else if (m_spritenode) { - m_spritenode->setColor(light_color); - } } } @@ -1153,11 +1112,10 @@ void GenericCAO::step(float dtime, ClientEnvironment *env) box.MinEdge *= BS; box.MaxEdge *= BS; collisionMoveResult moveresult; - f32 pos_max_d = BS*0.125; // Distance per iteration v3f p_pos = m_position; v3f p_velocity = m_velocity; moveresult = collisionMoveSimple(env,env->getGameDef(), - pos_max_d, box, m_prop.stepheight, dtime, + box, m_prop.stepheight, dtime, &p_pos, &p_velocity, m_acceleration, this, m_prop.collideWithObjects); // Apply results @@ -1474,8 +1432,8 @@ void GenericCAO::updateTextures(std::string mod) }); } // Set mesh color (only if lighting is disabled) - if (!m_prop.colors.empty() && m_prop.glow < 0) - setMeshColor(mesh, m_prop.colors[0]); + if (m_prop.glow < 0) + setMeshColor(mesh, {255, 255, 255, 255}); } } // Prevent showing the player after changing texture @@ -1529,34 +1487,6 @@ void GenericCAO::updateBones(f32 dtime) bone->setScale(props.getScale(bone->getScale())); } - // search through bones to find mistakenly rotated bones due to bug in Irrlicht - for (u32 i = 0; i < m_animated_meshnode->getJointCount(); ++i) { - scene::IBoneSceneNode *bone = m_animated_meshnode->getJointNode(i); - if (!bone) - continue; - - //If bone is manually positioned there is no need to perform the bug check - bool skip = false; - for (auto &it : m_bone_override) { - if (it.first == bone->getName()) { - skip = true; - break; - } - } - if (skip) - continue; - - // Workaround for Irrlicht bug - // We check each bone to see if it has been rotated ~180deg from its expected position due to a bug in Irricht - // when using EJUOR_CONTROL joint control. If the bug is detected we update the bone to the proper position - // and update the bones transformation. - v3f bone_rot = bone->getRelativeTransformation().getRotationDegrees(); - float offset = fabsf(bone_rot.X - bone->getRotation().X); - if (offset > 179.9f && offset < 180.1f) { - bone->setRotation(bone_rot); - bone->updateAbsolutePosition(); - } - } // The following is needed for set_bone_pos to propagate to // attached objects correctly. // Irrlicht ought to do this, but doesn't when using EJUOR_CONTROL. @@ -1719,15 +1649,12 @@ void GenericCAO::processMessage(const std::string &data) //float update_interval = readF32(is); m_update_interval = readF32(is); - // Place us a bit higher if we're physical, to not sink into - // the ground due to sucky collision detection... - if(m_prop.physical) - m_position += v3f(0,0.002,0); - + // fm: if (porting::getTimeMs() > m_position_recd + 1000) do_interpolate = false; m_position_recd = porting::getTimeMs(); + // === if(getParent() != NULL) // Just in case return; diff --git a/src/client/content_cao.h b/src/client/content_cao.h index fa6c5981d..08e4dba2e 100644 --- a/src/client/content_cao.h +++ b/src/client/content_cao.h @@ -4,16 +4,23 @@ #pragma once -#include -#include -#include "irrlichttypes_extrabloated.h" -#include "clientobject.h" +#include "EMaterialTypes.h" +#include "IDummyTransformationSceneNode.h" +#include "irrlichttypes.h" + #include "object_properties.h" -#include "itemgroup.h" +#include "clientobject.h" #include "constants.h" +#include "itemgroup.h" #include +#include #include +namespace irr::scene { + class IMeshSceneNode; + class IBillboardSceneNode; +} + class Camera; class Client; struct Nametag; @@ -117,8 +124,6 @@ private: // Material video::E_MATERIAL_TYPE m_material_type; f32 m_material_type_param; - // Settings - bool m_enable_shaders = false; bool visualExpiryRequired(const ObjectProperties &newprops) const; diff --git a/src/client/content_cso.cpp b/src/client/content_cso.cpp index ac455d9eb..ce3f91527 100644 --- a/src/client/content_cso.cpp +++ b/src/client/content_cso.cpp @@ -39,7 +39,7 @@ public: MapNode n = env->getMap().getNode(floatToInt(pos, BS), &pos_ok); light = pos_ok ? decode_light(n.getLightBlend(env->getDayNightRatio(), env->getGameDef()->ndef()->getLightingFlags(n))) - : 64; + : 64; video::SColor color(255,light,light,light); m_spritenode->setColor(color); } diff --git a/src/client/content_mapblock.cpp b/src/client/content_mapblock.cpp index 7e32d81b5..5f2581618 100644 --- a/src/client/content_mapblock.cpp +++ b/src/client/content_mapblock.cpp @@ -13,11 +13,12 @@ #include "nodedef.h" #include "client/tile.h" #include "mesh.h" -#include #include "client/meshgen/collector.h" #include "client/renderingengine.h" #include "client.h" #include "noise.h" +#include +#include // Distance of light extrapolation (for oversized nodes) // After this distance, it gives up and considers light level constant @@ -60,53 +61,47 @@ static const auto &quad_indices = quad_indices_02; const std::string MapblockMeshGenerator::raillike_groupname = "connect_to_raillike"; -MapblockMeshGenerator::MapblockMeshGenerator(MeshMakeData *input, MeshCollector *output, - scene::IMeshManipulator *mm): +MapblockMeshGenerator::MapblockMeshGenerator(MeshMakeData *input, MeshCollector *output): data(input), collector(output), - nodedef(data->nodedef), - meshmanip(mm), - blockpos_nodes(data->m_blockpos * MAP_BLOCKSIZE), - enable_mesh_cache(g_settings->getBool("enable_mesh_cache") && - !data->m_smooth_lighting), // Mesh cache is not supported with smooth lighting - smooth_liquids(g_settings->getBool("enable_water_reflections")) + nodedef(data->m_nodedef), + blockpos_nodes(data->m_blockpos * MAP_BLOCKSIZE) { } -void MapblockMeshGenerator::useTile(int index, u8 set_flags, u8 reset_flags, bool special) +void MapblockMeshGenerator::useTile(TileSpec *tile_ret, int index, u8 set_flags, + u8 reset_flags, bool special) { if (special) - getSpecialTile(index, &cur_node.tile, cur_node.p == data->m_crack_pos_relative); + getSpecialTile(index, tile_ret, cur_node.p == data->m_crack_pos_relative); else - getTile(index, &cur_node.tile); - if (!data->m_smooth_lighting) - cur_node.color = encode_light(cur_node.light, cur_node.f->light_source); + getTile(index, tile_ret); - for (auto &layer : cur_node.tile.layers) { + for (auto &layer : tile_ret->layers) { layer.material_flags |= set_flags; layer.material_flags &= ~reset_flags; } } // Returns a tile, ready for use, non-rotated. -void MapblockMeshGenerator::getTile(int index, TileSpec *tile) +void MapblockMeshGenerator::getTile(int index, TileSpec *tile_ret) { - getNodeTileN(cur_node.n, cur_node.p, index, data, *tile); + getNodeTileN(cur_node.n, cur_node.p, index, data, *tile_ret); } // Returns a tile, ready for use, rotated according to the node facedir. -void MapblockMeshGenerator::getTile(v3s16 direction, TileSpec *tile) +void MapblockMeshGenerator::getTile(v3s16 direction, TileSpec *tile_ret) { - getNodeTile(cur_node.n, cur_node.p, direction, data, *tile); + getNodeTile(cur_node.n, cur_node.p, direction, data, *tile_ret); } // Returns a special tile, ready for use, non-rotated. -void MapblockMeshGenerator::getSpecialTile(int index, TileSpec *tile, bool apply_crack) +void MapblockMeshGenerator::getSpecialTile(int index, TileSpec *tile_ret, bool apply_crack) { - *tile = cur_node.f->special_tiles[index]; + *tile_ret = cur_node.f->special_tiles[index]; TileLayer *top_layer = nullptr; - for (auto &layernum : tile->layers) { + for (auto &layernum : tile_ret->layers) { TileLayer *layer = &layernum; if (layer->texture_id == 0) continue; @@ -119,7 +114,7 @@ void MapblockMeshGenerator::getSpecialTile(int index, TileSpec *tile, bool apply top_layer->material_flags |= MATERIAL_FLAG_CRACK; } -void MapblockMeshGenerator::drawQuad(v3f *coords, const v3s16 &normal, +void MapblockMeshGenerator::drawQuad(const TileSpec &tile, v3f *coords, const v3s16 &normal, float vertical_tiling) { const v2f tcoords[4] = {v2f(0.0, 0.0), v2f(1.0, 0.0), @@ -133,15 +128,17 @@ void MapblockMeshGenerator::drawQuad(v3f *coords, const v3s16 &normal, if (data->m_smooth_lighting) vertices[j].Color = blendLightColor(coords[j]); else - vertices[j].Color = cur_node.color; + vertices[j].Color = cur_node.lcolor; if (shade_face) applyFacesShading(vertices[j].Color, normal2); vertices[j].TCoords = tcoords[j]; } - collector->append(cur_node.tile, vertices, 4, quad_indices, 6); + collector->append(tile, vertices, 4, quad_indices, 6); } -static std::array setupCuboidVertices(const aabb3f &box, const f32 *txc, TileSpec *tiles, int tilecount) { +static std::array setupCuboidVertices(const aabb3f &box, + const f32 *txc, const TileSpec *tiles, int tilecount) +{ v3f min = box.MinEdge; v3f max = box.MaxEdge; @@ -223,7 +220,7 @@ enum class QuadDiagonal { // and to choose diagonal to split the quad at. template void MapblockMeshGenerator::drawCuboid(const aabb3f &box, - TileSpec *tiles, int tilecount, const f32 *txc, u8 mask, Fn &&face_lighter) + const TileSpec *tiles, int tilecount, const f32 *txc, u8 mask, Fn &&face_lighter) { assert(tilecount >= 1 && tilecount <= 6); // pre-condition @@ -243,16 +240,16 @@ void MapblockMeshGenerator::drawCuboid(const aabb3f &box, void MapblockMeshGenerator::getSmoothLightFrame() { for (int k = 0; k < 8; ++k) - cur_node.frame.sunlight[k] = false; + cur_node.lframe.sunlight[k] = false; for (int k = 0; k < 8; ++k) { LightPair light(getSmoothLightTransparent(blockpos_nodes + cur_node.p, light_dirs[k], data)); - cur_node.frame.lightsDay[k] = light.lightDay; - cur_node.frame.lightsNight[k] = light.lightNight; + cur_node.lframe.lightsDay[k] = light.lightDay; + cur_node.lframe.lightsNight[k] = light.lightNight; // If there is direct sunlight and no ambient occlusion at some corner, // mark the vertical edge (top and bottom corners) containing it. if (light.lightDay == 255) { - cur_node.frame.sunlight[k] = true; - cur_node.frame.sunlight[k ^ 2] = true; + cur_node.lframe.sunlight[k] = true; + cur_node.lframe.sunlight[k ^ 2] = true; } } } @@ -275,9 +272,9 @@ LightInfo MapblockMeshGenerator::blendLight(const v3f &vertex_pos) f32 dy = (k & 2) ? y : 1 - y; f32 dz = (k & 1) ? z : 1 - z; // Use direct sunlight (255), if any; use daylight otherwise. - f32 light_boosted = cur_node.frame.sunlight[k] ? 255 : cur_node.frame.lightsDay[k]; - lightDay += dx * dy * dz * cur_node.frame.lightsDay[k]; - lightNight += dx * dy * dz * cur_node.frame.lightsNight[k]; + f32 light_boosted = cur_node.lframe.sunlight[k] ? 255 : cur_node.lframe.lightsDay[k]; + lightDay += dx * dy * dz * cur_node.lframe.lightsDay[k]; + lightNight += dx * dy * dz * cur_node.lframe.lightsNight[k]; lightBoosted += dx * dy * dz * light_boosted; } return LightInfo{lightDay, lightNight, lightBoosted}; @@ -285,7 +282,6 @@ LightInfo MapblockMeshGenerator::blendLight(const v3f &vertex_pos) // Calculates vertex color to be used in mapblock mesh // vertex_pos - vertex position in the node (coordinates are clamped to [0.0, 1.0] or so) -// tile_color - node's tile color video::SColor MapblockMeshGenerator::blendLightColor(const v3f &vertex_pos) { LightInfo light = blendLight(vertex_pos); @@ -328,8 +324,14 @@ static inline int lightDiff(LightPair a, LightPair b) return abs(a.lightDay - b.lightDay) + abs(a.lightNight - b.lightNight); } -void MapblockMeshGenerator::drawAutoLightedCuboid(aabb3f box, const f32 *txc, - TileSpec *tiles, int tile_count, u8 mask) +void MapblockMeshGenerator::drawAutoLightedCuboid(aabb3f box, const TileSpec &tile, + const f32 *txc, u8 mask) +{ + drawAutoLightedCuboid(box, &tile, 1, txc, mask); +} + +void MapblockMeshGenerator::drawAutoLightedCuboid(aabb3f box, + const TileSpec *tiles, int tile_count, const f32 *txc, u8 mask) { bool scale = std::fabs(cur_node.f->visual_scale - 1.0f) > 1e-3f; f32 texture_coord_buf[24]; @@ -353,10 +355,6 @@ void MapblockMeshGenerator::drawAutoLightedCuboid(aabb3f box, const f32 *txc, generateCuboidTextureCoords(box, texture_coord_buf); txc = texture_coord_buf; } - if (!tiles) { - tiles = &cur_node.tile; - tile_count = 1; - } if (data->m_smooth_lighting) { LightInfo lights[8]; for (int j = 0; j < 8; ++j) { @@ -382,7 +380,7 @@ void MapblockMeshGenerator::drawAutoLightedCuboid(aabb3f box, const f32 *txc, }); } else { drawCuboid(box, tiles, tile_count, txc, mask, [&] (int face, video::S3DVertex vertices[4]) { - video::SColor color = encode_light(cur_node.light, cur_node.f->light_source); + video::SColor color = cur_node.lcolor; if (!cur_node.f->light_source) applyFacesShading(color, vertices[0].Normal); for (int j = 0; j < 4; j++) { @@ -561,19 +559,20 @@ void MapblockMeshGenerator::prepareLiquidNodeDrawing() if (data->m_smooth_lighting) return; // don't need to pre-compute anything in this case + auto light = LightPair(getInteriorLight(cur_node.n, 0, nodedef)); if (cur_node.f->light_source != 0) { // If this liquid emits light and doesn't contain light, draw // it at what it emits, for an increased effect u8 e = decode_light(cur_node.f->light_source); - cur_node.light = LightPair(std::max(e, cur_node.light.lightDay), - std::max(e, cur_node.light.lightNight)); + light = LightPair(std::max(e, light.lightDay), + std::max(e, light.lightNight)); } else if (nodedef->getLightingFlags(ntop).has_light) { // Otherwise, use the light of the node on top if possible - cur_node.light = LightPair(getInteriorLight(ntop, 0, nodedef)); + light = LightPair(getInteriorLight(ntop, 0, nodedef)); } - cur_liquid.color_top = encode_light(cur_node.light, cur_node.f->light_source); - cur_node.color = encode_light(cur_node.light, cur_node.f->light_source); + cur_liquid.color_top = encode_light(light, cur_node.f->light_source); + cur_node.lcolor = encode_light(light, cur_node.f->light_source); } void MapblockMeshGenerator::getLiquidNeighborhood() @@ -716,10 +715,18 @@ void MapblockMeshGenerator::drawLiquidSides() v += 0.5f - cur_liquid.corner_levels[base.Z][base.X]; } + video::SColor color; if (data->m_smooth_lighting) - cur_node.color = blendLightColor(pos); + color = blendLightColor(pos); + else + color = cur_node.lcolor; + pos += cur_node.origin; - vertices[j] = video::S3DVertex(pos.X, pos.Y, pos.Z, face.dir.X, face.dir.Y, face.dir.Z, cur_node.color, vertex.u, v); + + vertices[j] = video::S3DVertex(pos.X, pos.Y, pos.Z, + face.dir.X, face.dir.Y, face.dir.Z, + color, + vertex.u, v); }; collector->append(cur_liquid.tile, vertices, 4, quad_indices, 6); } @@ -743,7 +750,7 @@ void MapblockMeshGenerator::drawLiquidTop() int u = corner_resolve[i][0]; int w = corner_resolve[i][1]; - if (smooth_liquids) { + if (data->m_enable_water_reflections) { int x = vertices[i].Pos.X > 0; int z = vertices[i].Pos.Z > 0; @@ -795,7 +802,7 @@ void MapblockMeshGenerator::drawLiquidTop() vertex.TCoords += tcoord_translate; - if (!smooth_liquids) { + if (!data->m_enable_water_reflections) { vertex.Normal = v3f(dx, 1., dz).normalize(); } } @@ -837,7 +844,8 @@ void MapblockMeshGenerator::drawLiquidNode() void MapblockMeshGenerator::drawGlasslikeNode() { - useTile(0, 0, 0); + TileSpec tile; + useTile(&tile, 0, 0, 0); for (int face = 0; face < 6; face++) { // Check this neighbor @@ -871,7 +879,7 @@ void MapblockMeshGenerator::drawGlasslikeNode() vertex.rotateXZBy(-90); break; } } - drawQuad(vertices, dir); + drawQuad(tile, vertices, dir); } } @@ -881,9 +889,6 @@ void MapblockMeshGenerator::drawGlasslikeFramedNode() for (int face = 0; face < 6; face++) getTile(g_6dirs[face], &tiles[face]); - if (!data->m_smooth_lighting) - cur_node.color = encode_light(cur_node.light, cur_node.f->light_source); - TileSpec glass_tiles[6]; for (auto &glass_tile : glass_tiles) glass_tile = tiles[4]; @@ -955,7 +960,6 @@ void MapblockMeshGenerator::drawGlasslikeFramedNode() {0, 1, 8}, {0, 4, 16}, {3, 4, 17}, {3, 1, 9}, }; - cur_node.tile = tiles[1]; for (int edge = 0; edge < FRAMED_EDGE_COUNT; edge++) { bool edge_invisible; if (nb[nb_triplet[edge][2]]) @@ -964,14 +968,13 @@ void MapblockMeshGenerator::drawGlasslikeFramedNode() edge_invisible = nb[nb_triplet[edge][0]] ^ nb[nb_triplet[edge][1]]; if (edge_invisible) continue; - drawAutoLightedCuboid(frame_edges[edge]); + drawAutoLightedCuboid(frame_edges[edge], tiles[1]); } for (int face = 0; face < 6; face++) { if (nb[face]) continue; - cur_node.tile = glass_tiles[face]; // Face at Z- v3f vertices[4] = { v3f(-a, a, -g), @@ -997,7 +1000,7 @@ void MapblockMeshGenerator::drawGlasslikeFramedNode() } } v3s16 dir = g_6dirs[face]; - drawQuad(vertices, dir); + drawQuad(glass_tiles[face], vertices, dir); } // Optionally render internal liquid level defined by param2 @@ -1007,13 +1010,18 @@ void MapblockMeshGenerator::drawGlasslikeFramedNode() // Internal liquid level has param2 range 0 .. 63, // convert it to -0.5 .. 0.5 float vlev = (param2 / 63.0f) * 2.0f - 1.0f; - getSpecialTile(0, &cur_node.tile); - drawAutoLightedCuboid(aabb3f(-(nb[5] ? g : b), - -(nb[4] ? g : b), - -(nb[3] ? g : b), - (nb[2] ? g : b), - (nb[1] ? g : b) * vlev, - (nb[0] ? g : b))); + TileSpec tile; + getSpecialTile(0, &tile); + drawAutoLightedCuboid( + aabb3f( + -(nb[5] ? g : b), + -(nb[4] ? g : b), + -(nb[3] ? g : b), + (nb[2] ? g : b), + (nb[1] ? g : b) * vlev, + (nb[0] ? g : b) + ), + tile); } } @@ -1028,7 +1036,8 @@ void MapblockMeshGenerator::drawTorchlikeNode() case DWM_S2: tileindex = 0; break; // floor, but rotated default: tileindex = 2; // side (or invalid, shouldn't happen) } - useTile(tileindex, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); + TileSpec tile; + useTile(&tile, tileindex, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); float size = BS / 2 * cur_node.f->visual_scale; v3f vertices[4] = { @@ -1075,13 +1084,14 @@ void MapblockMeshGenerator::drawTorchlikeNode() break; } } - drawQuad(vertices); + drawQuad(tile, vertices); } void MapblockMeshGenerator::drawSignlikeNode() { u8 wall = cur_node.n.getWallMounted(nodedef); - useTile(0, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); + TileSpec tile; + useTile(&tile, 0, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); static const float offset = BS / 16; float size = BS / 2 * cur_node.f->visual_scale; // Wall at X+ of node @@ -1112,13 +1122,13 @@ void MapblockMeshGenerator::drawSignlikeNode() vertex.rotateXYBy(-90); vertex.rotateXZBy(-90); break; } } - drawQuad(vertices); + drawQuad(tile, vertices); } -void MapblockMeshGenerator::drawPlantlikeQuad(float rotation, float quad_offset, - bool offset_top_only) +void MapblockMeshGenerator::drawPlantlikeQuad(const TileSpec &tile, + float rotation, float quad_offset, bool offset_top_only) { - const f32 scale = cur_node.scale; + const f32 scale = cur_plant.scale; v3f vertices[4] = { v3f(-scale, -BS / 2 + 2.0 * scale * cur_plant.plant_height, 0), v3f( scale, -BS / 2 + 2.0 * scale * cur_plant.plant_height, 0), @@ -1168,14 +1178,14 @@ void MapblockMeshGenerator::drawPlantlikeQuad(float rotation, float quad_offset, } } - drawQuad(vertices, v3s16(0, 0, 0), cur_plant.plant_height); + drawQuad(tile, vertices, v3s16(0, 0, 0), cur_plant.plant_height); } -void MapblockMeshGenerator::drawPlantlike(bool is_rooted) +void MapblockMeshGenerator::drawPlantlike(const TileSpec &tile, bool is_rooted) { cur_plant.draw_style = PLANT_STYLE_CROSS; - cur_node.scale = BS / 2 * cur_node.f->visual_scale; cur_plant.offset = v3f(0, 0, 0); + cur_plant.scale = BS / 2 * cur_node.f->visual_scale; cur_plant.rotate_degree = 0.0f; cur_plant.random_offset_Y = false; cur_plant.face_num = 0; @@ -1185,7 +1195,7 @@ void MapblockMeshGenerator::drawPlantlike(bool is_rooted) case CPT2_MESHOPTIONS: cur_plant.draw_style = PlantlikeStyle(cur_node.n.param2 & MO_MASK_STYLE); if (cur_node.n.param2 & MO_BIT_SCALE_SQRT2) - cur_node.scale *= 1.41421; + cur_plant.scale *= 1.41421; if (cur_node.n.param2 & MO_BIT_RANDOM_OFFSET) { PseudoRandom rng(cur_node.p.X << 8 | cur_node.p.Z | cur_node.p.Y << 16); cur_plant.offset.X = BS * ((rng.next() % 16 / 16.0) * 0.29 - 0.145); @@ -1226,63 +1236,66 @@ void MapblockMeshGenerator::drawPlantlike(bool is_rooted) switch (cur_plant.draw_style) { case PLANT_STYLE_CROSS: - drawPlantlikeQuad(46); - drawPlantlikeQuad(-44); + drawPlantlikeQuad(tile, 46); + drawPlantlikeQuad(tile, -44); break; case PLANT_STYLE_CROSS2: - drawPlantlikeQuad(91); - drawPlantlikeQuad(1); + drawPlantlikeQuad(tile, 91); + drawPlantlikeQuad(tile, 1); break; case PLANT_STYLE_STAR: - drawPlantlikeQuad(121); - drawPlantlikeQuad(241); - drawPlantlikeQuad(1); + drawPlantlikeQuad(tile, 121); + drawPlantlikeQuad(tile, 241); + drawPlantlikeQuad(tile, 1); break; case PLANT_STYLE_HASH: - drawPlantlikeQuad( 1, BS / 4); - drawPlantlikeQuad( 91, BS / 4); - drawPlantlikeQuad(181, BS / 4); - drawPlantlikeQuad(271, BS / 4); + drawPlantlikeQuad(tile, 1, BS / 4); + drawPlantlikeQuad(tile, 91, BS / 4); + drawPlantlikeQuad(tile, 181, BS / 4); + drawPlantlikeQuad(tile, 271, BS / 4); break; case PLANT_STYLE_HASH2: - drawPlantlikeQuad( 1, -BS / 2, true); - drawPlantlikeQuad( 91, -BS / 2, true); - drawPlantlikeQuad(181, -BS / 2, true); - drawPlantlikeQuad(271, -BS / 2, true); + drawPlantlikeQuad(tile, 1, -BS / 2, true); + drawPlantlikeQuad(tile, 91, -BS / 2, true); + drawPlantlikeQuad(tile, 181, -BS / 2, true); + drawPlantlikeQuad(tile, 271, -BS / 2, true); break; } } void MapblockMeshGenerator::drawPlantlikeNode() { - useTile(); - drawPlantlike(); + TileSpec tile; + useTile(&tile); + drawPlantlike(tile); } void MapblockMeshGenerator::drawPlantlikeRootedNode() { drawSolidNode(); - useTile(0, MATERIAL_FLAG_CRACK_OVERLAY, 0, true); + TileSpec tile; + useTile(&tile, 0, MATERIAL_FLAG_CRACK_OVERLAY, 0, true); cur_node.origin += v3f(0.0, BS, 0.0); cur_node.p.Y++; if (data->m_smooth_lighting) { getSmoothLightFrame(); } else { MapNode ntop = data->m_vmanip.getNodeNoEx(blockpos_nodes + cur_node.p); - cur_node.light = LightPair(getInteriorLight(ntop, 0, nodedef)); + auto light = LightPair(getInteriorLight(ntop, 0, nodedef)); + cur_node.lcolor = encode_light(light, cur_node.f->light_source); } - drawPlantlike(true); + drawPlantlike(tile, true); cur_node.p.Y--; } -void MapblockMeshGenerator::drawFirelikeQuad(float rotation, float opening_angle, - float offset_h, float offset_v) +void MapblockMeshGenerator::drawFirelikeQuad(const TileSpec &tile, float rotation, + float opening_angle, float offset_h, float offset_v) { - const f32 scale = cur_node.scale; + const f32 scale = BS / 2 * cur_node.f->visual_scale; v3f vertices[4] = { v3f(-scale, -BS / 2 + scale * 2, 0), v3f( scale, -BS / 2 + scale * 2, 0), @@ -1296,13 +1309,13 @@ void MapblockMeshGenerator::drawFirelikeQuad(float rotation, float opening_angle vertex.rotateXZBy(rotation); vertex.Y += offset_v; } - drawQuad(vertices); + drawQuad(tile, vertices); } void MapblockMeshGenerator::drawFirelikeNode() { - useTile(); - cur_node.scale = BS / 2 * cur_node.f->visual_scale; + TileSpec tile; + useTile(&tile); // Check for adjacent nodes bool neighbors = false; @@ -1321,41 +1334,41 @@ void MapblockMeshGenerator::drawFirelikeNode() bool drawBottomFire = neighbor[D6D_YP]; if (drawBasicFire || neighbor[D6D_ZP]) - drawFirelikeQuad(0, -10, 0.4 * BS); + drawFirelikeQuad(tile, 0, -10, 0.4 * BS); else if (drawBottomFire) - drawFirelikeQuad(0, 70, 0.47 * BS, 0.484 * BS); + drawFirelikeQuad(tile, 0, 70, 0.47 * BS, 0.484 * BS); if (drawBasicFire || neighbor[D6D_XN]) - drawFirelikeQuad(90, -10, 0.4 * BS); + drawFirelikeQuad(tile, 90, -10, 0.4 * BS); else if (drawBottomFire) - drawFirelikeQuad(90, 70, 0.47 * BS, 0.484 * BS); + drawFirelikeQuad(tile, 90, 70, 0.47 * BS, 0.484 * BS); if (drawBasicFire || neighbor[D6D_ZN]) - drawFirelikeQuad(180, -10, 0.4 * BS); + drawFirelikeQuad(tile, 180, -10, 0.4 * BS); else if (drawBottomFire) - drawFirelikeQuad(180, 70, 0.47 * BS, 0.484 * BS); + drawFirelikeQuad(tile, 180, 70, 0.47 * BS, 0.484 * BS); if (drawBasicFire || neighbor[D6D_XP]) - drawFirelikeQuad(270, -10, 0.4 * BS); + drawFirelikeQuad(tile, 270, -10, 0.4 * BS); else if (drawBottomFire) - drawFirelikeQuad(270, 70, 0.47 * BS, 0.484 * BS); + drawFirelikeQuad(tile, 270, 70, 0.47 * BS, 0.484 * BS); if (drawBasicFire) { - drawFirelikeQuad(45, 0, 0.0); - drawFirelikeQuad(-45, 0, 0.0); + drawFirelikeQuad(tile, 45, 0, 0.0); + drawFirelikeQuad(tile, -45, 0, 0.0); } } void MapblockMeshGenerator::drawFencelikeNode() { - useTile(0, 0, 0); - TileSpec tile_nocrack = cur_node.tile; + TileSpec tile_nocrack; + useTile(&tile_nocrack, 0, 0, 0); for (auto &layer : tile_nocrack.layers) layer.material_flags &= ~MATERIAL_FLAG_CRACK; // Put wood the right way around in the posts - TileSpec tile_rot = cur_node.tile; + TileSpec tile_rot = tile_nocrack; tile_rot.rotation = TileRotation::R90; static const f32 post_rad = BS / 8; @@ -1373,10 +1386,7 @@ void MapblockMeshGenerator::drawFencelikeNode() 0.500, 0.000, 0.750, 1.000, 0.750, 0.000, 1.000, 1.000, }; - cur_node.tile = tile_rot; - drawAutoLightedCuboid(post, postuv); - - cur_node.tile = tile_nocrack; + drawAutoLightedCuboid(post, tile_rot, postuv); // Now a section of fence, +X, if there's a post there v3s16 p2 = cur_node.p; @@ -1396,8 +1406,8 @@ void MapblockMeshGenerator::drawFencelikeNode() 0.000, 0.500, 1.000, 0.625, 0.000, 0.875, 1.000, 1.000, }; - drawAutoLightedCuboid(bar_x1, xrailuv); - drawAutoLightedCuboid(bar_x2, xrailuv); + drawAutoLightedCuboid(bar_x1, tile_nocrack, xrailuv); + drawAutoLightedCuboid(bar_x2, tile_nocrack, xrailuv); } // Now a section of fence, +Z, if there's a post there @@ -1418,8 +1428,8 @@ void MapblockMeshGenerator::drawFencelikeNode() 0.3750, 0.3750, 0.5000, 0.5000, 0.6250, 0.6250, 0.7500, 0.7500, }; - drawAutoLightedCuboid(bar_z1, zrailuv); - drawAutoLightedCuboid(bar_z2, zrailuv); + drawAutoLightedCuboid(bar_z1, tile_nocrack, zrailuv); + drawAutoLightedCuboid(bar_z2, tile_nocrack, zrailuv); } } @@ -1501,7 +1511,8 @@ void MapblockMeshGenerator::drawRaillikeNode() angle = rail_kinds[code].angle; } - useTile(tile_index, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); + TileSpec tile; + useTile(&tile, tile_index, MATERIAL_FLAG_CRACK_OVERLAY, MATERIAL_FLAG_BACKFACE_CULLING); static const float offset = BS / 64; static const float size = BS / 2; @@ -1515,7 +1526,7 @@ void MapblockMeshGenerator::drawRaillikeNode() if (angle) for (v3f &vertex : vertices) vertex.rotateXZBy(angle); - drawQuad(vertices); + drawQuad(tile, vertices); } namespace { @@ -1547,7 +1558,7 @@ void MapblockMeshGenerator::drawAllfacesNode() getTile(nodebox_tile_dirs[face], &tiles[face]); if (data->m_smooth_lighting) getSmoothLightFrame(); - drawAutoLightedCuboid(box, nullptr, tiles, 6); + drawAutoLightedCuboid(box, tiles, 6); } void MapblockMeshGenerator::drawNodeboxNode() @@ -1654,7 +1665,7 @@ void MapblockMeshGenerator::drawNodeboxNode() for (auto &box : boxes) { u8 mask = getNodeBoxMask(box, solid_neighbors, sametype_neighbors); - drawAutoLightedCuboid(box, nullptr, tiles, 6, mask); + drawAutoLightedCuboid(box, tiles, 6, nullptr, mask); } } @@ -1662,7 +1673,6 @@ void MapblockMeshGenerator::drawMeshNode() { u8 facedir = 0; scene::IMesh* mesh; - bool private_mesh; // as a grab/drop pair is not thread-safe int degrotate = 0; if (cur_node.f->param_type_2 == CPT2_FACEDIR || @@ -1673,61 +1683,64 @@ void MapblockMeshGenerator::drawMeshNode() } else if (cur_node.f->param_type_2 == CPT2_WALLMOUNTED || cur_node.f->param_type_2 == CPT2_COLORED_WALLMOUNTED) { // Convert wallmounted to 6dfacedir. - // When cache enabled, it is already converted. facedir = cur_node.n.getWallMounted(nodedef); - if (!enable_mesh_cache) - facedir = wallmounted_to_facedir[facedir]; + facedir = wallmounted_to_facedir[facedir]; } else if (cur_node.f->param_type_2 == CPT2_DEGROTATE || cur_node.f->param_type_2 == CPT2_COLORED_DEGROTATE) { degrotate = cur_node.n.getDegRotate(nodedef); } - if (!data->m_smooth_lighting && cur_node.f->mesh_ptr[facedir] && !degrotate) { - // use cached meshes - private_mesh = false; - mesh = cur_node.f->mesh_ptr[facedir]; - } else if (cur_node.f->mesh_ptr[0]) { - // no cache, clone and rotate mesh - private_mesh = true; - mesh = cloneMesh(cur_node.f->mesh_ptr[0]); + if (cur_node.f->mesh_ptr) { + // clone and rotate mesh + mesh = cloneMesh(cur_node.f->mesh_ptr); + bool modified = true; if (facedir) rotateMeshBy6dFacedir(mesh, facedir); else if (degrotate) rotateMeshXZby(mesh, 1.5f * degrotate); - recalculateBoundingBox(mesh); - meshmanip->recalculateNormals(mesh, true, false); - } else + else + modified = false; + if (modified) { + recalculateBoundingBox(mesh); + } + } else { + warningstream << "drawMeshNode(): missing mesh" << std::endl; return; + } - int mesh_buffer_count = mesh->getMeshBufferCount(); - for (int j = 0; j < mesh_buffer_count; j++) { + for (u32 j = 0; j < mesh->getMeshBufferCount(); j++) { // Only up to 6 tiles are supported - const auto tile = mesh->getTextureSlot(j); - useTile(MYMIN(tile, 5)); + const u32 tile_idx = mesh->getTextureSlot(j); + TileSpec tile; + useTile(&tile, MYMIN(tile_idx, 5)); + scene::IMeshBuffer *buf = mesh->getMeshBuffer(j); video::S3DVertex *vertices = (video::S3DVertex *)buf->getVertices(); - int vertex_count = buf->getVertexCount(); + u32 vertex_count = buf->getVertexCount(); + // Mesh is always private here. So the lighting is applied to each + // vertex right here. if (data->m_smooth_lighting) { - // Mesh is always private here. So the lighting is applied to each - // vertex right here. - for (int k = 0; k < vertex_count; k++) { + for (u32 k = 0; k < vertex_count; k++) { video::S3DVertex &vertex = vertices[k]; vertex.Color = blendLightColor(vertex.Pos, vertex.Normal); vertex.Pos += cur_node.origin; } - collector->append(cur_node.tile, vertices, vertex_count, - buf->getIndices(), buf->getIndexCount()); } else { - // Don't modify the mesh, it may not be private here. - // Instead, let the collector process colors, etc. - collector->append(cur_node.tile, vertices, vertex_count, - buf->getIndices(), buf->getIndexCount(), cur_node.origin, - cur_node.color, cur_node.f->light_source); + bool is_light_source = cur_node.f->light_source != 0; + for (u32 k = 0; k < vertex_count; k++) { + video::S3DVertex &vertex = vertices[k]; + video::SColor color = cur_node.lcolor; + if (!is_light_source) + applyFacesShading(color, vertex.Normal); + vertex.Color = color; + vertex.Pos += cur_node.origin; + } } + collector->append(tile, vertices, vertex_count, + buf->getIndices(), buf->getIndexCount()); } - if (private_mesh) - mesh->drop(); + mesh->drop(); } // also called when the drawtype is known but should have been pre-converted @@ -1758,10 +1771,12 @@ void MapblockMeshGenerator::drawNode() } cur_node.origin = intToFloat(cur_node.p, BS); - if (data->m_smooth_lighting) + if (data->m_smooth_lighting) { getSmoothLightFrame(); - else - cur_node.light = LightPair(getInteriorLight(cur_node.n, 0, nodedef)); + } else { + auto light = LightPair(getInteriorLight(cur_node.n, 0, nodedef)); + cur_node.lcolor = encode_light(light, cur_node.f->light_source); + } switch (cur_node.f->drawtype) { case NDT_FLOWINGLIQUID: drawLiquidNode(); break; case NDT_GLASSLIKE: drawGlasslikeNode(); break; @@ -1795,12 +1810,3 @@ void MapblockMeshGenerator::generate() drawNode(); } } - -void MapblockMeshGenerator::renderSingle(content_t node, u8 param2) -{ - cur_node.pf = - cur_node.p = {0, 0, 0}; - cur_node.n = MapNode(node, 0xff, param2); - cur_node.f = &nodedef->get(cur_node.n); - drawNode(); -} diff --git a/src/client/content_mapblock.h b/src/client/content_mapblock.h index d9a8e1f25..a815b3e1d 100644 --- a/src/client/content_mapblock.h +++ b/src/client/content_mapblock.h @@ -5,7 +5,6 @@ #pragma once #include "nodedef.h" -#include struct MeshMakeData; struct MeshCollector; @@ -46,37 +45,28 @@ struct LightFrame { class MapblockMeshGenerator { public: - MapblockMeshGenerator(MeshMakeData *input, MeshCollector *output, - scene::IMeshManipulator *mm); + MapblockMeshGenerator(MeshMakeData *input, MeshCollector *output); void generate(); - void renderSingle(content_t node, u8 param2 = 0x00); private: MeshMakeData *const data; MeshCollector *const collector; const NodeDefManager *const nodedef; - scene::IMeshManipulator *const meshmanip; const v3s16 blockpos_nodes; -// options - const bool enable_mesh_cache; - // current node struct { v3pos_t pf; v3pos_t pr; - v3s16 p; - v3f origin; + v3s16 p; // relative to blockpos_nodes + v3f origin; // p in BS space MapNode n; const ContentFeatures *f; - LightPair light; - LightFrame frame; - video::SColor color; - TileSpec tile; - f32 scale; + LightFrame lframe; // smooth lighting + video::SColor lcolor; // unsmooth lighting } cur_node; // lighting @@ -85,21 +75,23 @@ private: video::SColor blendLightColor(const v3f &vertex_pos); video::SColor blendLightColor(const v3f &vertex_pos, const v3f &vertex_normal); - void useTile(int index = 0, u8 set_flags = MATERIAL_FLAG_CRACK_OVERLAY, + void useTile(TileSpec *tile_ret, int index = 0, u8 set_flags = MATERIAL_FLAG_CRACK_OVERLAY, u8 reset_flags = 0, bool special = false); - void getTile(int index, TileSpec *tile); - void getTile(v3s16 direction, TileSpec *tile); - void getSpecialTile(int index, TileSpec *tile, bool apply_crack = false); + void getTile(int index, TileSpec *tile_ret); + void getTile(v3s16 direction, TileSpec *tile_ret); + void getSpecialTile(int index, TileSpec *tile_ret, bool apply_crack = false); // face drawing - void drawQuad(v3f *vertices, const v3s16 &normal = v3s16(0, 0, 0), + void drawQuad(const TileSpec &tile, v3f *vertices, const v3s16 &normal = v3s16(0, 0, 0), float vertical_tiling = 1.0); // cuboid drawing! template - void drawCuboid(const aabb3f &box, TileSpec *tiles, int tilecount, const f32 *txc, u8 mask, Fn &&face_lighter); + void drawCuboid(const aabb3f &box, const TileSpec *tiles, int tilecount, + const f32 *txc, u8 mask, Fn &&face_lighter); void generateCuboidTextureCoords(aabb3f const &box, f32 *coords); - void drawAutoLightedCuboid(aabb3f box, f32 const *txc = nullptr, TileSpec *tiles = nullptr, int tile_count = 0, u8 mask = 0); + void drawAutoLightedCuboid(aabb3f box, const TileSpec &tile, f32 const *txc = nullptr, u8 mask = 0); + void drawAutoLightedCuboid(aabb3f box, const TileSpec *tiles, int tile_count, f32 const *txc = nullptr, u8 mask = 0); u8 getNodeBoxMask(aabb3f box, u8 solid_neighbors, u8 sametype_neighbors) const; // liquid-specific @@ -122,7 +114,6 @@ private: f32 corner_levels[2][2]; }; LiquidData cur_liquid; - bool smooth_liquids = false; void prepareLiquidNodeDrawing(); void getLiquidNeighborhood(); @@ -145,6 +136,7 @@ private: struct PlantlikeData { PlantlikeStyle draw_style; v3f offset; + float scale; float rotate_degree; bool random_offset_Y; int face_num; @@ -152,12 +144,12 @@ private: }; PlantlikeData cur_plant; - void drawPlantlikeQuad(float rotation, float quad_offset = 0, + void drawPlantlikeQuad(const TileSpec &tile, float rotation, float quad_offset = 0, bool offset_top_only = false); - void drawPlantlike(bool is_rooted = false); + void drawPlantlike(const TileSpec &tile, bool is_rooted = false); // firelike-specific - void drawFirelikeQuad(float rotation, float opening_angle, + void drawFirelikeQuad(const TileSpec &tile, float rotation, float opening_angle, float offset_h, float offset_v = 0.0); // drawtypes diff --git a/src/client/fm_client.cpp b/src/client/fm_client.cpp index d077e31fa..847f553f9 100644 --- a/src/client/fm_client.cpp +++ b/src/client/fm_client.cpp @@ -170,19 +170,14 @@ void Client::createFarMesh(MapBlockPtr &block) if (bool cmp = false; block->creating_far_mesh.compare_exchange_weak(cmp, true)) { const auto &m_client = this; const auto &blockpos_actual = block->getPos(); - const auto &m_camera_offset = m_camera->getOffset(); + //const auto &m_camera_offset = m_camera->getOffset(); const auto &step = block->far_step; -#if FARMESH_SHADOWS - static const auto m_cache_enable_shaders = g_settings->getBool("enable_shaders"); -#else - static const auto m_cache_enable_shaders = false; -#endif MeshMakeData mdat(m_client->getNodeDefManager(), - MAP_BLOCKSIZE * m_client->getMeshGrid().cell_size, m_cache_enable_shaders, + MAP_BLOCKSIZE * m_client->getMeshGrid().cell_size, m_mesh_grid, 0, step, &m_client->far_container); mdat.m_blockpos = blockpos_actual; const auto mbmsh = - std::make_shared(m_client, &mdat, m_camera_offset); + std::make_shared(m_client, &mdat); block->setFarMesh(mbmsh, step); block->creating_far_mesh = false; } diff --git a/src/client/fontengine.cpp b/src/client/fontengine.cpp index f05c9ead3..beb3acd50 100644 --- a/src/client/fontengine.cpp +++ b/src/client/fontengine.cpp @@ -3,18 +3,18 @@ // Copyright (C) 2010-2014 sapier #include "fontengine.h" -#include + #include "client/renderingengine.h" -#include "config.h" -#include "porting.h" -#include "filesys.h" -#include "gettext.h" #include "settings.h" #include "irrlicht_changes/CGUITTFont.h" #include "util/numeric.h" // rangelim #include #include +#include +#include +#include + /** reference to access font engine, has to be initialized by main */ FontEngine *g_fontengine = nullptr; @@ -35,7 +35,6 @@ static const char *settings[] = { "dpi_change_notifier", "display_density_factor", "gui_scaling", }; -/******************************************************************************/ FontEngine::FontEngine(gui::IGUIEnvironment* env) : m_env(env) { @@ -53,16 +52,14 @@ FontEngine::FontEngine(gui::IGUIEnvironment* env) : g_settings->registerChangedCallback(name, font_setting_changed, this); } -/******************************************************************************/ FontEngine::~FontEngine() { g_settings->deregisterAllChangedCallbacks(this); - cleanCache(); + clearCache(); } -/******************************************************************************/ -void FontEngine::cleanCache() +void FontEngine::clearCache() { RecursiveMutexAutoLock l(m_font_mutex); @@ -78,7 +75,6 @@ void FontEngine::cleanCache() } } -/******************************************************************************/ irr::gui::IGUIFont *FontEngine::getFont(FontSpec spec) { return getFont(spec, false); @@ -120,7 +116,6 @@ irr::gui::IGUIFont *FontEngine::getFont(FontSpec spec, bool may_fail) return font; } -/******************************************************************************/ unsigned int FontEngine::getTextHeight(const FontSpec &spec) { gui::IGUIFont *font = getFont(spec); @@ -128,7 +123,6 @@ unsigned int FontEngine::getTextHeight(const FontSpec &spec) return font->getDimension(L"Some unimportant example String").Height; } -/******************************************************************************/ unsigned int FontEngine::getTextWidth(const std::wstring &text, const FontSpec &spec) { gui::IGUIFont *font = getFont(spec); @@ -142,10 +136,9 @@ unsigned int FontEngine::getLineHeight(const FontSpec &spec) gui::IGUIFont *font = getFont(spec); return font->getDimension(L"Some unimportant example String").Height - + font->getKerningHeight(); + + font->getKerning(L'S').Y; } -/******************************************************************************/ unsigned int FontEngine::getDefaultFontSize() { return m_default_size[m_currentMode]; @@ -159,7 +152,6 @@ unsigned int FontEngine::getFontSize(FontMode mode) return m_default_size[mode]; } -/******************************************************************************/ void FontEngine::readSettings() { m_default_size[FM_Standard] = rangelim(g_settings->getU16("font_size"), 5, 72); @@ -169,12 +161,9 @@ void FontEngine::readSettings() m_default_bold = g_settings->getBool("font_bold"); m_default_italic = g_settings->getBool("font_italic"); - cleanCache(); - updateFontCache(); - updateSkin(); + refresh(); } -/******************************************************************************/ void FontEngine::updateSkin() { gui::IGUIFont *font = getFont(); @@ -183,15 +172,50 @@ void FontEngine::updateSkin() m_env->getSkin()->setFont(font); } -/******************************************************************************/ -void FontEngine::updateFontCache() +void FontEngine::updateCache() { /* the only font to be initialized is default one, * all others are re-initialized on demand */ getFont(FONT_SIZE_UNSPECIFIED, FM_Unspecified); } -/******************************************************************************/ +void FontEngine::refresh() { + clearCache(); + updateCache(); + updateSkin(); +} + +void FontEngine::setMediaFont(const std::string &name, const std::string &data) +{ + static std::unordered_set valid_names { + "regular", "bold", "italic", "bold_italic", + "mono", "mono_bold", "mono_italic", "mono_bold_italic", + }; + if (!valid_names.count(name)) { + warningstream << "Ignoring unrecognized media font: " << name << std::endl; + return; + } + + constexpr char TTF_MAGIC[5] = {0, 1, 0, 0, 0}; + if (data.size() < 5 || (memcmp(data.data(), "wOFF", 4) && + memcmp(data.data(), TTF_MAGIC, 5))) { + warningstream << "Rejecting media font with unrecognized magic" << std::endl; + return; + } + + std::string copy = data; + irr_ptr face(gui::SGUITTFace::createFace(std::move(copy))); + m_media_faces.emplace(name, face); + refresh(); +} + +void FontEngine::clearMediaFonts() +{ + RecursiveMutexAutoLock l(m_font_mutex); + m_media_faces.clear(); + refresh(); +} + gui::IGUIFont *FontEngine::initFont(const FontSpec &spec) { assert(spec.mode != FM_Unspecified); @@ -232,28 +256,55 @@ gui::IGUIFont *FontEngine::initFont(const FontSpec &spec) else path_setting = setting_prefix + "font_path" + setting_suffix; - std::string fallback_settings[] = { - g_settings->get(path_setting), - Settings::getLayer(SL_DEFAULTS)->get(path_setting) - }; + std::string media_name = spec.mode == FM_Mono + ? "mono" + setting_suffix + : (setting_suffix.empty() ? "" : setting_suffix.substr(1)); + if (media_name.empty()) + media_name = "regular"; - for (const std::string &font_path : fallback_settings) { - gui::CGUITTFont *font = gui::CGUITTFont::createTTFont(m_env, - font_path.c_str(), size, true, true, font_shadow, + auto createFont = [&](gui::SGUITTFace *face) -> gui::CGUITTFont* { + auto *font = gui::CGUITTFont::createTTFont(m_env, + face, size, true, true, font_shadow, font_shadow_alpha); - if (!font) { - errorstream << "FontEngine: Cannot load '" << font_path << - "'. Trying to fall back to another path." << std::endl; - continue; - } + if (!font) + return nullptr; if (spec.mode != _FM_Fallback) { FontSpec spec2(spec); spec2.mode = _FM_Fallback; font->setFallback(getFont(spec2, true)); } + return font; + }; + + auto it = m_media_faces.find(media_name); + if (it != m_media_faces.end()) { + auto *face = it->second.get(); + if (auto *font = createFont(face)) + return font; + errorstream << "FontEngine: Cannot load media font '" << media_name << + "'. Falling back to client settings." << std::endl; + } + + std::string fallback_settings[] = { + g_settings->get(path_setting), + Settings::getLayer(SL_DEFAULTS)->get(path_setting) + }; + for (const std::string &font_path : fallback_settings) { + infostream << "Creating new font: " << font_path.c_str() + << " " << size << "pt" << std::endl; + + // Grab the face. + if (auto *face = irr::gui::SGUITTFace::loadFace(font_path)) { + auto *font = createFont(face); + face->drop(); + return font; + } + + errorstream << "FontEngine: Cannot load '" << font_path << + "'. Trying to fall back to another path." << std::endl; } return nullptr; } diff --git a/src/client/fontengine.h b/src/client/fontengine.h index c346f5f8b..70713034f 100644 --- a/src/client/fontengine.h +++ b/src/client/fontengine.h @@ -5,6 +5,9 @@ #pragma once #include +#include +#include "irr_ptr.h" +#include "irrlicht_changes/CGUITTFont.h" #include "util/basic_macros.h" #include "irrlichttypes.h" #include "irrString.h" // utf8_to_wide @@ -66,7 +69,7 @@ public: /** get text height for a specific font */ unsigned int getTextHeight(const FontSpec &spec); - /** get text width if a text for a specific font */ + /** get text width of a text for a specific font */ unsigned int getTextHeight( unsigned int font_size=FONT_SIZE_UNSPECIFIED, FontMode mode=FM_Unspecified) @@ -77,7 +80,7 @@ public: unsigned int getTextWidth(const std::wstring &text, const FontSpec &spec); - /** get text width if a text for a specific font */ + /** get text width of a text for a specific font */ unsigned int getTextWidth(const std::wstring& text, unsigned int font_size=FONT_SIZE_UNSPECIFIED, FontMode mode=FM_Unspecified) @@ -118,11 +121,15 @@ public: /** update internal parameters from settings */ void readSettings(); + void setMediaFont(const std::string &name, const std::string &data); + + void clearMediaFonts(); + private: irr::gui::IGUIFont *getFont(FontSpec spec, bool may_fail); /** update content of font cache in case of a setting change made it invalid */ - void updateFontCache(); + void updateCache(); /** initialize a new TTF font */ gui::IGUIFont *initFont(const FontSpec &spec); @@ -130,8 +137,10 @@ private: /** update current minetest skin with font changes */ void updateSkin(); - /** clean cache */ - void cleanCache(); + void clearCache(); + + /** refresh after fonts have been changed */ + void refresh(); /** pointer to irrlicht gui environment */ gui::IGUIEnvironment* m_env = nullptr; @@ -142,6 +151,9 @@ private: /** internal storage for caching fonts of different size */ std::map m_font_cache[FM_MaxMode << 2]; + /** media-provided faces, indexed by filename (without extension) */ + std::unordered_map> m_media_faces; + /** default font size to use */ unsigned int m_default_size[FM_MaxMode]; diff --git a/src/client/game.cpp b/src/client/game.cpp index 719bee6c1..3851f671c 100644 --- a/src/client/game.cpp +++ b/src/client/game.cpp @@ -11,6 +11,7 @@ #include "client.h" #include "client/clientevent.h" #include "client/gameui.h" +#include "client/game_formspec.h" #include "client/inputhandler.h" #include "client/texturepaths.h" #include "client/keys.h" @@ -32,11 +33,7 @@ #include "gameparams.h" #include "gettext.h" #include "gui/guiChatConsole.h" -#include "gui/guiFormSpecMenu.h" -#include "gui/guiKeyChangeMenu.h" -#include "gui/guiPasswordChange.h" -#include "gui/guiOpenURL.h" -#include "gui/guiVolumeChange.h" +#include "texturesource.h" #include "gui/mainmenumanager.h" #include "gui/profilergraph.h" #include "minimap.h" @@ -70,178 +67,13 @@ #include "util/numeric.h" #include #include +#include "gui/guiTable.h" #if USE_SOUND #include "client/sound/sound_openal.h" #endif -/* - Text input system -*/ - -struct TextDestNodeMetadata : public TextDest -{ - TextDestNodeMetadata(v3s16 p, Client *client) - { - m_p = p; - m_client = client; - } - // This is deprecated I guess? -celeron55 - void gotText(const std::wstring &text) - { - std::string ntext = wide_to_utf8(text); - infostream << "Submitting 'text' field of node at (" << m_p.X << "," - << m_p.Y << "," << m_p.Z << "): " << ntext << std::endl; - StringMap fields; - fields["text"] = ntext; - m_client->sendNodemetaFields(m_p, "", fields); - } - void gotText(const StringMap &fields) - { - m_client->sendNodemetaFields(m_p, "", fields); - } - - v3s16 m_p; - Client *m_client; -}; - -struct TextDestPlayerInventory : public TextDest -{ - TextDestPlayerInventory(Client *client) - { - m_client = client; - m_formname.clear(); - } - TextDestPlayerInventory(Client *client, const std::string &formname) - { - m_client = client; - m_formname = formname; - } - void gotText(const StringMap &fields) - { - m_client->sendInventoryFields(m_formname, fields); - } - - Client *m_client; -}; - -struct LocalFormspecHandler : public TextDest -{ - LocalFormspecHandler(const std::string &formname) - { - m_formname = formname; - } - - LocalFormspecHandler(const std::string &formname, Client *client): - m_client(client) - { - m_formname = formname; - } - - void gotText(const StringMap &fields) - { - if (m_formname == "MT_PAUSE_MENU") { - if (fields.find("btn_sound") != fields.end()) { - g_gamecallback->changeVolume(); - return; - } - - if (fields.find("btn_key_config") != fields.end()) { - g_gamecallback->keyConfig(); - return; - } - - if (fields.find("btn_exit_menu") != fields.end()) { - g_gamecallback->disconnect(); - return; - } - - if (fields.find("btn_exit_os") != fields.end()) { - g_gamecallback->exitToOS(); -#ifndef __ANDROID__ - RenderingEngine::get_raw_device()->closeDevice(); - RenderingEngine::get_raw_device()->run(); -#endif - return; - } - - if (fields.find("btn_change_password") != fields.end()) { - g_gamecallback->changePassword(); - return; - } - - return; - } - - if (m_formname == "MT_DEATH_SCREEN") { - assert(m_client != nullptr); - - if (fields.find("quit") != fields.end()) - m_client->sendRespawnLegacy(); - - return; - } - - if (m_client->modsLoaded()) - m_client->getScript()->on_formspec_input(m_formname, fields); - } - - Client *m_client = nullptr; -}; - -/* Form update callback */ - -class NodeMetadataFormSource: public IFormSource -{ -public: - NodeMetadataFormSource(ClientMap *map, v3s16 p): - m_map(map), - m_p(p) - { - } - const std::string &getForm() const - { - static const std::string empty_string = ""; - NodeMetadata *meta = m_map->getNodeMetadata(m_p); - - if (!meta) - return empty_string; - - return meta->getString("formspec"); - } - - virtual std::string resolveText(const std::string &str) - { - NodeMetadata *meta = m_map->getNodeMetadata(m_p); - - if (!meta) - return str; - - return meta->resolveString(str); - } - - ClientMap *m_map; - v3s16 m_p; -}; - -class PlayerInventoryFormSource: public IFormSource -{ -public: - PlayerInventoryFormSource(Client *client): - m_client(client) - { - } - - const std::string &getForm() const - { - LocalPlayer *player = m_client->getEnv().getLocalPlayer(); - return player->inventory_formspec; - } - - Client *m_client; -}; - class NodeDugEvent : public MtEvent { public: @@ -634,13 +466,13 @@ public: } }; -#define SIZE_TAG "size[11,5.5,true]" // Fixed size (ignored in touchscreen mode) - /**************************************************************************** ****************************************************************************/ const static float object_hit_delay = 0.2; +const static u16 bbox_debug_flag = scene::EDS_BBOX_ALL; + /* The reason the following structs are not anonymous structs within the * class is that they are not used by the majority of member functions and * many functions that do require objects of thse types do not modify them @@ -752,7 +584,6 @@ protected: void updateInteractTimers(f32 dtime); bool checkConnection(); - bool handleCallbacks(); void processQueues(); void updateProfilers(const RunStats &stats, const FpsControl &draw_times, f32 dtime); void updateDebugState(); @@ -766,8 +597,6 @@ protected: bool shouldShowTouchControls(); void dropSelectedItem(bool single_item = false); - void dropSelectedStack(); - void openInventory(); void openConsole(float scale, const wchar_t *line=NULL); void toggleFreeMove(); void toggleFreeMoveAlt(); @@ -775,8 +604,6 @@ protected: void toggleFast(); void toggleNoClip(); void toggleCinematic(); - void enableCinematic(); - void disableCinematic(); void toggleBlockBounds(); void toggleAutoforward(); @@ -797,6 +624,7 @@ protected: void updatePauseState(); void step(f32 dtime); void processClientEvents(CameraOrientation *cam); + void updateCameraOffset(); void updateCamera(f32 dtime); void updateSound(f32 dtime); void processPlayerInteraction(f32 dtime, bool show_hud); @@ -870,10 +698,16 @@ protected: private: struct Flags { bool disable_camera_update = false; + /// 0 = no debug text active, see toggleDebug() for the rest + int debug_state = 0; }; // fm: + void enableCinematic(); + void disableCinematic(); + void dropSelectedStack(); + GUITable *playerlist {}; video::SColor console_bg {}; bool m_cinematic {}; @@ -882,10 +716,6 @@ private: // ==: - - void showDeathFormspecLegacy(); - void showPauseMenu(); - void pauseAnimation(); void resumeAnimation(); @@ -895,7 +725,8 @@ private: void handleClientEvent_PlayerForceMove(ClientEvent *event, CameraOrientation *cam); void handleClientEvent_DeathscreenLegacy(ClientEvent *event, CameraOrientation *cam); void handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation *cam); - void handleClientEvent_ShowLocalFormSpec(ClientEvent *event, CameraOrientation *cam); + void handleClientEvent_ShowCSMFormSpec(ClientEvent *event, CameraOrientation *cam); + void handleClientEvent_ShowPauseMenuFormSpec(ClientEvent *event, CameraOrientation *cam); void handleClientEvent_HandleParticleEvent(ClientEvent *event, CameraOrientation *cam); void handleClientEvent_HudAdd(ClientEvent *event, CameraOrientation *cam); @@ -950,6 +781,7 @@ private: irr_ptr sky; Hud *hud = nullptr; Minimap *mapper = nullptr; + GameFormSpec m_game_formspec; // Map server hud ids to client hud ids std::unordered_map m_hud_server_to_client; @@ -986,11 +818,8 @@ private: * (as opposed to the this local caching). This can be addressed in * a later release. */ - bool m_cache_disable_escape_sequences; bool m_cache_doubletap_jump; - bool m_cache_enable_clouds; bool m_cache_enable_joysticks; - bool m_cache_enable_particles; bool m_cache_enable_fog; bool m_cache_enable_noclip; bool m_cache_enable_free_move; @@ -1000,6 +829,7 @@ private: f32 m_repeat_dig_time; f32 m_cache_cam_smoothing; + bool m_enable_relative_mode = false; bool m_invert_mouse; bool m_enable_hotbar_mouse_wheel; bool m_invert_hotbar_mouse_wheel; @@ -1032,16 +862,10 @@ Game::Game() : { g_settings->registerChangedCallback("chat_log_level", &settingChangedCallback, this); - g_settings->registerChangedCallback("disable_escape_sequences", - &settingChangedCallback, this); g_settings->registerChangedCallback("doubletap_jump", &settingChangedCallback, this); - g_settings->registerChangedCallback("enable_clouds", - &settingChangedCallback, this); g_settings->registerChangedCallback("enable_joysticks", &settingChangedCallback, this); - g_settings->registerChangedCallback("enable_particles", - &settingChangedCallback, this); g_settings->registerChangedCallback("enable_fog", &settingChangedCallback, this); g_settings->registerChangedCallback("mouse_sensitivity", @@ -1072,6 +896,8 @@ Game::Game() : &settingChangedCallback, this); g_settings->registerChangedCallback("pause_on_lost_focus", &settingChangedCallback, this); + g_settings->registerChangedCallback("touch_use_crosshair", + &settingChangedCallback, this); readSettings(); } @@ -1139,6 +965,10 @@ bool Game::startup(bool *kill, runData.time_from_last_punch = 10.0; m_game_ui->initFlags(); + if (g_settings->getBool("show_debug")) { + m_flags.debug_state = 1; + m_game_ui->m_flags.show_minimal_debug = true; + } // freeminer: //runData.update_draw_list_timer = 5; @@ -1151,7 +981,14 @@ bool Game::startup(bool *kill, m_first_loop_after_window_activation = true; - m_touch_use_crosshair = g_settings->getBool("touch_use_crosshair"); + // In principle we could always enable relative mouse mode, but it causes weird + // bugs on some setups (e.g. #14932), so we enable it only when it's required. + // That is: on Wayland or Android, because it does not support mouse repositioning +#ifdef __ANDROID__ + m_enable_relative_mode = true; +#else + m_enable_relative_mode = device->isUsingWayland(); +#endif g_client_translations->clear(); @@ -1165,6 +1002,8 @@ bool Game::startup(bool *kill, m_rendering_engine->initialize(client, hud); + m_game_formspec.init(client, m_rendering_engine, input); + return true; } @@ -1255,7 +1094,7 @@ void Game::run() if (!checkConnection()) break; - if (!handleCallbacks()) + if (!m_game_formspec.handleCallbacks()) break; processQueues(); @@ -1263,6 +1102,12 @@ void Game::run() m_game_ui->clearInfoText(); updateProfilers(stats, draw_times, dtime); + + // Update camera offset once before doing anything. + // In contrast to other updates the latency of this doesn't matter, + // since it's invisible to the user. But it needs to be consistent. + updateCameraOffset(); + processUserInput(dtime); // Update camera before player movement to avoid camera lag of one frame updateCameraDirection(&cam_view_target, dtime); @@ -1280,6 +1125,7 @@ void Game::run() processClientEvents(&cam_view_target); updateDebugState(); + // Update camera here so it is in-sync with CAO position updateCamera(dtime); updateSound(dtime); processPlayerInteraction(dtime, m_game_ui->m_flags.show_hud); @@ -1287,7 +1133,7 @@ void Game::run() updateProfilerGraphs(&graph); if (m_does_lost_focus_pause_game && !device->isWindowFocused() && !isMenuActive()) { - showPauseMenu(); + m_game_formspec.showPauseMenu(); } } catch(const std::exception &e) { @@ -1310,10 +1156,6 @@ void Game::shutdown() g_profiler->print(actionstream); } - auto formspec = m_game_ui->getFormspecGUI(); - if (formspec) - formspec->quitMenu(); - // Clear text when exiting. m_game_ui->clearText(); @@ -1332,12 +1174,9 @@ void Game::shutdown() /* cleanup menus */ while (g_menumgr.menuCount() > 0) { - g_menumgr.m_stack.front()->setVisible(false); - g_menumgr.deletingMenu(g_menumgr.m_stack.front()); + g_menumgr.deleteFront(); } - m_game_ui->deleteFormspec(); - chat_backend->addMessage(L"", L"# Disconnected."); chat_backend->addMessage(L"", L""); @@ -1423,7 +1262,7 @@ bool Game::init( bool Game::initSound() { #if USE_SOUND - if (g_settings->getBool("enable_sound") && g_sound_manager_singleton.get()) { + if (g_sound_manager_singleton.get()) { infostream << "Attempting to use OpenAL audio" << std::endl; sound_manager = createOpenALSoundManager(g_sound_manager_singleton.get(), std::make_unique()); @@ -1602,8 +1441,7 @@ bool Game::createClient(const GameStartData &start_data) /* Clouds */ - if (m_cache_enable_clouds) - clouds = make_irr(smgr, shader_src, -1, rand()); + clouds = make_irr(smgr, shader_src, -1, myrand()); /* Skybox */ @@ -1702,7 +1540,7 @@ bool Game::initGui() if(!g_settings->get("console_color").empty()) { - v3f console_color = g_settings->getV3F("console_color"); + v3f console_color = g_settings->getV3F("console_color").value(); console_bg = video::SColor(g_settings->getU16("console_alpha"), console_color.X, console_color.Y, console_color.Z); } @@ -1797,7 +1635,7 @@ bool Game::connectToServer(const GameStartData &start_data, start_data.password, *draw_control, texture_src, shader_src, itemdef_manager, nodedef_manager, sound_manager.get(), eventmgr, - m_rendering_engine, m_game_ui.get(), + m_rendering_engine, start_data.allow_login_or_register); } catch (const BaseException &e) { *error_message = fmtgettext("Error creating client: %s", e.what()); @@ -2050,49 +1888,6 @@ inline bool Game::checkConnection() return true; } - -/* returns false if game should exit, otherwise true - */ -inline bool Game::handleCallbacks() -{ - if (g_gamecallback->disconnect_requested) { - g_gamecallback->disconnect_requested = false; - return false; - } - - if (g_gamecallback->changepassword_requested) { - (void)make_irr(guienv, guiroot, -1, - &g_menumgr, client, texture_src); - g_gamecallback->changepassword_requested = false; - } - - if (g_gamecallback->changevolume_requested) { - (void)make_irr(guienv, guiroot, -1, - &g_menumgr, texture_src); - g_gamecallback->changevolume_requested = false; - } - - if (g_gamecallback->keyconfig_requested) { - (void)make_irr(guienv, guiroot, -1, - &g_menumgr, texture_src); - g_gamecallback->keyconfig_requested = false; - } - - if (!g_gamecallback->show_open_url_dialog.empty()) { - (void)make_irr(guienv, guiroot, -1, - &g_menumgr, texture_src, g_gamecallback->show_open_url_dialog); - g_gamecallback->show_open_url_dialog.clear(); - } - - if (g_gamecallback->keyconfig_changed) { - input->keycache.populate(); // update the cache with new settings - g_gamecallback->keyconfig_changed = false; - } - - return true; -} - - void Game::processQueues() { if (!runData.headless_optimize) @@ -2120,11 +1915,9 @@ void Game::updateDebugState() hud->disableBlockBounds(); if (!has_debug) { draw_control->show_wireframe = false; + smgr->setGlobalDebugData(0, bbox_debug_flag); m_flags.disable_camera_update = false; - auto formspec = m_game_ui->getFormspecGUI(); - if (formspec) { - formspec->setDebugView(false); - } + m_game_formspec.disableDebugView(); } // noclip @@ -2166,8 +1959,8 @@ void Game::updateProfilers(const RunStats &stats, const FpsControl &draw_times, if (stats2.Drawcalls > 0) g_profiler->avg("Irr: primitives per drawcall", stats2.PrimitivesDrawn / float(stats2.Drawcalls)); - g_profiler->avg("Irr: buffers uploaded", stats2.HWBuffersUploaded); - g_profiler->avg("Irr: buffers uploaded (bytes)", stats2.HWBuffersUploadedSize); + g_profiler->avg("Irr: HW buffers uploaded", stats2.HWBuffersUploaded); + g_profiler->avg("Irr: HW buffers active", stats2.HWBuffersActive); } void Game::updateStats(RunStats *stats, const FpsControl &draw_times, @@ -2271,7 +2064,9 @@ void Game::processUserInput(f32 dtime) m_game_focused = true; } - if (!guienv->hasFocus(gui_chat_console.get()) && gui_chat_console->isOpen()) { + if (!guienv->hasFocus(gui_chat_console.get()) && gui_chat_console->isOpen() + && !gui_chat_console->isMyChild(guienv->getFocus())) + { gui_chat_console->closeConsoleAtOnce(); } @@ -2279,10 +2074,7 @@ void Game::processUserInput(f32 dtime) input->step(dtime); #ifdef __ANDROID__ - auto formspec = m_game_ui->getFormspecGUI(); - if (formspec) - formspec->getAndroidUIInput(); - else + if (!m_game_formspec.handleAndroidUIInput()) handleAndroidChatInput(); #endif @@ -2318,13 +2110,13 @@ void Game::processKeyInput() if (g_settings->getBool("continuous_forward")) toggleAutoforward(); } else if (wasKeyDown(KeyType::INVENTORY)) { - openInventory(); + m_game_formspec.showPlayerInventory(); } else if (input->cancelPressed()) { #ifdef __ANDROID__ m_android_chat_open = false; #endif if (!gui_chat_console->isOpenInhibited()) { - showPauseMenu(); + m_game_formspec.showPauseMenu(); } } else if (wasKeyDown(KeyType::CHAT)) { openConsole(0.1, L""); @@ -2349,34 +2141,22 @@ void Game::processKeyInput() toggleNoClip(); #if USE_SOUND } else if (wasKeyDown(KeyType::MUTE)) { - if (g_settings->getBool("enable_sound")) { - bool new_mute_sound = !g_settings->getBool("mute_sound"); - g_settings->setBool("mute_sound", new_mute_sound); - if (new_mute_sound) - m_game_ui->showTranslatedStatusText("Sound muted"); - else - m_game_ui->showTranslatedStatusText("Sound unmuted"); - } else { - m_game_ui->showTranslatedStatusText("Sound system is disabled"); - } + bool new_mute_sound = !g_settings->getBool("mute_sound"); + g_settings->setBool("mute_sound", new_mute_sound); + if (new_mute_sound) + m_game_ui->showTranslatedStatusText("Sound muted"); + else + m_game_ui->showTranslatedStatusText("Sound unmuted"); } else if (wasKeyDown(KeyType::INC_VOLUME)) { - if (g_settings->getBool("enable_sound")) { - float new_volume = g_settings->getFloat("sound_volume", 0.0f, 0.9f) + 0.1f; - g_settings->setFloat("sound_volume", new_volume); - std::wstring msg = fwgettext("Volume changed to %d%%", myround(new_volume * 100)); - m_game_ui->showStatusText(msg); - } else { - m_game_ui->showTranslatedStatusText("Sound system is disabled"); - } + float new_volume = g_settings->getFloat("sound_volume", 0.0f, 0.9f) + 0.1f; + g_settings->setFloat("sound_volume", new_volume); + std::wstring msg = fwgettext("Volume changed to %d%%", myround(new_volume * 100)); + m_game_ui->showStatusText(msg); } else if (wasKeyDown(KeyType::DEC_VOLUME)) { - if (g_settings->getBool("enable_sound")) { - float new_volume = g_settings->getFloat("sound_volume", 0.1f, 1.0f) - 0.1f; - g_settings->setFloat("sound_volume", new_volume); - std::wstring msg = fwgettext("Volume changed to %d%%", myround(new_volume * 100)); - m_game_ui->showStatusText(msg); - } else { - m_game_ui->showTranslatedStatusText("Sound system is disabled"); - } + float new_volume = g_settings->getFloat("sound_volume", 0.1f, 1.0f) - 0.1f; + g_settings->setFloat("sound_volume", new_volume); + std::wstring msg = fwgettext("Volume changed to %d%%", myround(new_volume * 100)); + m_game_ui->showStatusText(msg); #else } else if (wasKeyDown(KeyType::MUTE) || wasKeyDown(KeyType::INC_VOLUME) || wasKeyDown(KeyType::DEC_VOLUME)) { @@ -2573,55 +2353,6 @@ void Game::dropSelectedItem(bool single_item) client->inventoryAction(a); } -/* -void Game::dropSelectedStack() -{ - IDropAction *a = new IDropAction(); - a->count = 0; - a->from_inv.setCurrentPlayer(); - a->from_list = "main"; - a->from_i = client->getPlayerItem(); - client->inventoryAction(a); -} -*/ - -void Game::openInventory() -{ - /* - * Don't permit to open inventory is CAO or player doesn't exists. - * This prevent showing an empty inventory at player load - */ - - LocalPlayer *player = client->getEnv().getLocalPlayer(); - if (!player) - return; - - infostream << "Game: Launching inventory" << std::endl; - - PlayerInventoryFormSource *fs_src = new PlayerInventoryFormSource(client); - - InventoryLocation inventoryloc; - inventoryloc.setCurrentPlayer(); - - if (client->modsLoaded() && client->getScript()->on_inventory_open(fs_src->m_client->getInventory(inventoryloc))) { - delete fs_src; - return; - } - - if (fs_src->getForm().empty()) { - delete fs_src; - return; - } - - TextDest *txt_dst = new TextDestPlayerInventory(client); - auto *&formspec = m_game_ui->updateFormspec(""); - GUIFormSpecMenu::create(formspec, client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), - sound_manager.get()); - - formspec->setFormSpec(fs_src->getForm(), inventoryloc); -} - void Game::openConsole(float scale, const wchar_t *line) { assert(scale > 0.0f && scale <= 1.0f); @@ -2895,45 +2626,44 @@ void Game::toggleDebug() LocalPlayer *player = client->getEnv().getLocalPlayer(); bool has_debug = client->checkPrivilege("debug"); bool has_basic_debug = has_debug || (player->hud_flags & HUD_FLAG_BASIC_DEBUG); + // Initial: No debug info // 1x toggle: Debug text // 2x toggle: Debug text with profiler graph // 3x toggle: Debug text and wireframe (needs "debug" priv) - // Next toggle: Back to initial + // 4x toggle: Debug text and bbox (needs "debug" priv) // // The debug text can be in 2 modes: minimal and basic. // * Minimal: Only technical client info that not gameplay-relevant // * Basic: Info that might give gameplay advantage, e.g. pos, angle // Basic mode is used when player has the debug HUD flag set, // otherwise the Minimal mode is used. - if (!m_game_ui->m_flags.show_minimal_debug) { - m_game_ui->m_flags.show_minimal_debug = true; - if (has_basic_debug) - m_game_ui->m_flags.show_basic_debug = true; - m_game_ui->m_flags.show_profiler_graph = false; - draw_control->show_wireframe = false; + + auto &state = m_flags.debug_state; + state = (state + 1) % 5; + if (state >= 3 && !has_debug) + state = 0; + + m_game_ui->m_flags.show_minimal_debug = state > 0; + m_game_ui->m_flags.show_basic_debug = state > 0 && has_basic_debug; + m_game_ui->m_flags.show_profiler_graph = state == 2; + draw_control->show_wireframe = state == 3; + smgr->setGlobalDebugData(state == 4 ? bbox_debug_flag : 0, + state == 4 ? 0 : bbox_debug_flag); + + if (state == 1) { m_game_ui->showTranslatedStatusText("Debug info shown"); - } else if (!m_game_ui->m_flags.show_profiler_graph && !draw_control->show_wireframe) { - if (has_basic_debug) - m_game_ui->m_flags.show_basic_debug = true; - m_game_ui->m_flags.show_profiler_graph = true; + } else if (state == 2) { m_game_ui->showTranslatedStatusText("Profiler graph shown"); - } else if (!draw_control->show_wireframe && client->checkPrivilege("debug")) { - if (has_basic_debug) - m_game_ui->m_flags.show_basic_debug = true; - m_game_ui->m_flags.show_profiler_graph = false; - draw_control->show_wireframe = true; - m_game_ui->showTranslatedStatusText("Wireframe shown"); + } else if (state == 3) { + if (driver->getDriverType() == video::EDT_OGLES2) + m_game_ui->showTranslatedStatusText("Wireframe not supported by video driver"); + else + m_game_ui->showTranslatedStatusText("Wireframe shown"); + } else if (state == 4) { + m_game_ui->showTranslatedStatusText("Bounding boxes shown"); } else { - m_game_ui->m_flags.show_minimal_debug = false; - m_game_ui->m_flags.show_basic_debug = false; - m_game_ui->m_flags.show_profiler_graph = false; - draw_control->show_wireframe = false; - if (has_debug) { - m_game_ui->showTranslatedStatusText("Debug info, profiler graph, and wireframe hidden"); - } else { - m_game_ui->showTranslatedStatusText("Debug info and profiler graph hidden"); - } + m_game_ui->showTranslatedStatusText("All debug info hidden"); } } @@ -3055,8 +2785,10 @@ void Game::updateCameraDirection(CameraOrientation *cam, float dtime) Since Minetest has its own code to synthesize mouse events from touch events, this results in duplicated input. To avoid that, we don't enable relative mouse mode if we're in touchscreen mode. */ - if (cur_control) - cur_control->setRelativeMode(!g_touchcontrols && !isMenuActive()); + if (cur_control) { + cur_control->setRelativeMode(m_enable_relative_mode && + !g_touchcontrols && !isMenuActive()); + } if ((device->isWindowActive() && device->isWindowFocused() && !isMenuActive()) || input->isRandom()) { @@ -3277,7 +3009,8 @@ const ClientEventHandler Game::clientEventHandler[CLIENTEVENT_MAX] = { {&Game::handleClientEvent_PlayerForceMove}, {&Game::handleClientEvent_DeathscreenLegacy}, {&Game::handleClientEvent_ShowFormSpec}, - {&Game::handleClientEvent_ShowLocalFormSpec}, + {&Game::handleClientEvent_ShowCSMFormSpec}, + {&Game::handleClientEvent_ShowPauseMenuFormSpec}, {&Game::handleClientEvent_HandleParticleEvent}, {&Game::handleClientEvent_HandleParticleEvent}, {&Game::handleClientEvent_HandleParticleEvent}, @@ -3339,12 +3072,12 @@ void Game::handleClientEvent_DeathscreenLegacy(ClientEvent *event, CameraOrienta return; } - showDeathFormspecLegacy(); + m_game_formspec.showDeathFormspecLegacy(); } void Game::handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation *cam) { - + // fm: if (event->show_formspec.formname && *event->show_formspec.formname == "__builtin:death" && g_settings->getBool("respawn_auto")) { @@ -3359,36 +3092,28 @@ void Game::handleClientEvent_ShowFormSpec(ClientEvent *event, CameraOrientation delete event->show_formspec.formname; return; } + // === - if (event->show_formspec.formspec->empty()) { - auto formspec = m_game_ui->getFormspecGUI(); - if (formspec && (event->show_formspec.formname->empty() - || *(event->show_formspec.formname) == m_game_ui->getFormspecName())) { - formspec->quitMenu(); - } - } else { - FormspecFormSource *fs_src = - new FormspecFormSource(*(event->show_formspec.formspec)); - TextDestPlayerInventory *txt_dst = - new TextDestPlayerInventory(client, *(event->show_formspec.formname)); - - auto *&formspec = m_game_ui->updateFormspec(*(event->show_formspec.formname)); - GUIFormSpecMenu::create(formspec, client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), - sound_manager.get()); - } + m_game_formspec.showFormSpec(*event->show_formspec.formspec, + *event->show_formspec.formname); delete event->show_formspec.formspec; delete event->show_formspec.formname; } -void Game::handleClientEvent_ShowLocalFormSpec(ClientEvent *event, CameraOrientation *cam) +void Game::handleClientEvent_ShowCSMFormSpec(ClientEvent *event, CameraOrientation *cam) { - FormspecFormSource *fs_src = new FormspecFormSource(*event->show_formspec.formspec); - LocalFormspecHandler *txt_dst = - new LocalFormspecHandler(*event->show_formspec.formname, client); - GUIFormSpecMenu::create(m_game_ui->getFormspecGUI(), client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), sound_manager.get()); + m_game_formspec.showCSMFormSpec(*event->show_formspec.formspec, + *event->show_formspec.formname); + + delete event->show_formspec.formspec; + delete event->show_formspec.formname; +} + +void Game::handleClientEvent_ShowPauseMenuFormSpec(ClientEvent *event, CameraOrientation *cam) +{ + m_game_formspec.showPauseMenuFormSpec(*event->show_formspec.formspec, + *event->show_formspec.formname); delete event->show_formspec.formspec; delete event->show_formspec.formname; @@ -3616,9 +3341,6 @@ void Game::handleClientEvent_OverrideDayNigthRatio(ClientEvent *event, void Game::handleClientEvent_CloudParams(ClientEvent *event, CameraOrientation *cam) { - if (!clouds) - return; - clouds->setDensity(event->cloud_params.density); clouds->setColorBright(video::SColor(event->cloud_params.color_bright)); clouds->setColorAmbient(video::SColor(event->cloud_params.color_ambient)); @@ -3655,10 +3377,7 @@ void Game::updateChat(f32 dtime) std::vector entries = m_chat_log_buf.take(); for (const auto& entry : entries) { std::string line; - if (!m_cache_disable_escape_sequences) { - line.append(color_for(entry.level)); - } - line.append(entry.combined); + line.append(color_for(entry.level)).append(entry.combined); chat_backend->addMessage(L"", utf8_to_wide(line)); } @@ -3684,7 +3403,8 @@ void Game::updateChat(f32 dtime) void Game::updateCamera(f32 dtime) { - LocalPlayer *player = client->getEnv().getLocalPlayer(); + ClientEnvironment &env = client->getEnv(); + LocalPlayer *player = env.getLocalPlayer(); /* For interaction purposes, get info about the held item @@ -3701,8 +3421,6 @@ void Game::updateCamera(f32 dtime) ToolCapabilities playeritem_toolcap = playeritem.getToolCapabilities(itemdef_manager); - v3s16 old_camera_offset = camera->getOffset(); - if (wasKeyPressed(KeyType::CAMERA_MODE)) { GenericCAO *playercao = player->getCAO(); @@ -3723,34 +3441,47 @@ void Game::updateCamera(f32 dtime) float full_punch_interval = playeritem_toolcap.full_punch_interval; float tool_reload_ratio = runData.time_from_last_punch / full_punch_interval; - tool_reload_ratio = MYMIN(tool_reload_ratio, 1.0); + tool_reload_ratio = std::min(tool_reload_ratio, 1.0f); camera->update(player, dtime, tool_reload_ratio); camera->step(dtime); - f32 camera_fov = camera->getFovMax(); - v3s16 camera_offset = camera->getOffset(); - - m_camera_offset_changed = (camera_offset != old_camera_offset); - if (!m_flags.disable_camera_update) { - v3f camera_position = camera->getPosition(); - v3f camera_direction = camera->getDirection(); - - client->getEnv().getClientMap().updateCamera(camera_position, - camera_direction, camera_fov, camera_offset, player->light_color); - - if (m_camera_offset_changed) { - client->updateCameraOffset(camera_offset); - client->getEnv().updateCameraOffset(camera_offset); - - if (clouds) - clouds->updateCameraOffset(camera_offset); - if (sky) - sky->camera_offset = camera_offset; - } + client->getEnv().getClientMap().updateCamera(camera->getPosition(), + camera->getDirection(), camera->getFovMax(), camera->getOffset(), + player->light_color); } } +void Game::updateCameraOffset() +{ + ClientEnvironment &env = client->getEnv(); + + v3s16 old_camera_offset = camera->getOffset(); + + camera->updateOffset(); + + v3s16 camera_offset = camera->getOffset(); + + m_camera_offset_changed = camera_offset != old_camera_offset; + if (!m_camera_offset_changed) + return; + + if (!m_flags.disable_camera_update) { + auto *shadow = RenderingEngine::get_shadow_renderer(); + if (shadow) + shadow->getDirectionalLight().updateCameraOffset(camera); + + env.getClientMap().updateCamera(camera->getPosition(), + camera->getDirection(), camera->getFovMax(), camera_offset, + env.getLocalPlayer()->light_color); + + env.updateCameraOffset(camera_offset); + clouds->updateCameraOffset(camera_offset); + + if (sky) + sky->camera_offset = camera_offset; +} +} void Game::updateSound(f32 dtime) { @@ -3984,7 +3715,7 @@ PointedThing Game::updatePointedThing( hud->pointing_at_object = true; runData.selected_object = client->getEnv().getActiveObjectPtr(result.object_id); - aabb3f selection_box; + aabb3f selection_box{{0.0f, 0.0f, 0.0f}}; if (show_entity_selectionbox && runData.selected_object->doShowSelectionBox() && runData.selected_object->getSelectionBox(&selection_box)) { v3f pos = runData.selected_object->getPosition(); @@ -4145,21 +3876,7 @@ bool Game::nodePlacement(const ItemDefinition &selected_def, if (nodedef_manager->get(map.getNode(nodepos)).rightclickable) client->interact(INTERACT_PLACE, pointed); - infostream << "Launching custom inventory view" << std::endl; - - InventoryLocation inventoryloc; - inventoryloc.setNodeMeta(nodepos); - - NodeMetadataFormSource *fs_src = new NodeMetadataFormSource( - &client->getEnv().getClientMap(), nodepos); - TextDest *txt_dst = new TextDestNodeMetadata(nodepos, client); - - auto *&formspec = m_game_ui->updateFormspec(""); - GUIFormSpecMenu::create(formspec, client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), - sound_manager.get()); - - formspec->setFormSpec(meta->getString("formspec"), inventoryloc); + m_game_formspec.showNodeFormspec(meta->getString("formspec"), nodepos); return false; } @@ -4443,10 +4160,8 @@ void Game::handleDigging(const PointedThing &pointed, const v3s16 &nodepos, } else { runData.dig_time_complete = params.time; - if (m_cache_enable_particles) { - client->getParticleManager()->addNodeParticle(client, - player, nodepos, n, features); - } + client->getParticleManager()->addNodeParticle(client, + player, nodepos, n, features); } if (!runData.digging) { @@ -4531,11 +4246,8 @@ void Game::handleDigging(const PointedThing &pointed, const v3s16 &nodepos, client->interact(INTERACT_DIGGING_COMPLETED, pointed); - if (m_cache_enable_particles) { - client->getParticleManager()->addDiggingParticles(client, - player, nodepos, n, features); - } - + client->getParticleManager()->addDiggingParticles(client, + player, nodepos, n, features); // Send event to trigger sound client->getEventManager()->put(new NodeDugEvent(nodepos, n)); @@ -4640,8 +4352,8 @@ void Game::updateFrame(ProfilerGraph *graph, RunStats *stats, f32 dtime, float old_brightness = sky->getBrightness(); direct_brightness = client->getEnv().getClientMap() .getBackgroundBrightness(MYMIN(runData.fog_range * 1.2, 60 * BS), - daynight_ratio, (int)(old_brightness * 255.5), &sunlight_seen) - / 255.0; + daynight_ratio, (int)(old_brightness * 255.5), &sunlight_seen) + / 255.0; } float time_of_day_smooth = runData.time_of_day_smooth; @@ -4672,8 +4384,7 @@ void Game::updateFrame(ProfilerGraph *graph, RunStats *stats, f32 dtime, /* Update clouds */ - if (clouds) - updateClouds(dtime); + updateClouds(dtime); thread_local static const auto farmesh_range = g_settings->getS32("farmesh"); if (client->farmesh) { @@ -4800,34 +4511,7 @@ void Game::updateFrame(ProfilerGraph *graph, RunStats *stats, f32 dtime, m_game_ui->update(*stats, client, draw_control, cam, runData.pointed_old, gui_chat_console.get(), dtime); - /* - make sure menu is on top - 1. Delete formspec menu reference if menu was removed - 2. Else, make sure formspec menu is on top - */ - auto formspec = m_game_ui->getFormspecGUI(); - do { // breakable. only runs for one iteration - if (!formspec) - break; - - if (formspec->getReferenceCount() == 1) { - // See GUIFormSpecMenu::create what refcnt = 1 means - m_game_ui->deleteFormspec(); - break; - } - - auto &loc = formspec->getFormspecLocation(); - if (loc.type == InventoryLocation::NODEMETA) { - NodeMetadata *meta = client->getEnv().getClientMap().getNodeMetadata(loc.p); - if (!meta || meta->getString("formspec").empty()) { - formspec->quitMenu(); - break; - } - } - - if (isMenuActive()) - guiroot->bringToFront(formspec); - } while (false); + m_game_formspec.update(); /* ==================== Drawing begins ==================== @@ -4918,11 +4602,10 @@ void Game::updateShadows() v3f light = is_day ? sky->getSunDirection() : sky->getMoonDirection(); v3f sun_pos = light * offset_constant; - shadow->getDirectionalLight().setDirection(sun_pos); shadow->setTimeOfDay(in_timeofday); - shadow->getDirectionalLight().update_frustum(camera, client, m_camera_offset_changed); + shadow->getDirectionalLight().updateFrustum(camera, client); } void Game::drawScene(ProfilerGraph *graph, RunStats *stats) @@ -5031,7 +4714,13 @@ void Game::settingChangedCallback(const std::string &setting_name, void *data) void Game::readSettings() { - + + // fm: + m_cinematic = g_settings->getBool("cinematic"); + if (draw_control) { + draw_control->enable_fog = m_cache_enable_fog; + } + // === LogLevel chat_log_level = Logger::stringToLevel(g_settings->get("chat_log_level")); if (chat_log_level == LL_MAX) { @@ -5040,13 +4729,8 @@ void Game::readSettings() } m_chat_log_buf.setLogLevel(chat_log_level); - m_cinematic = g_settings->getBool("cinematic"); - - m_cache_disable_escape_sequences = g_settings->getBool("disable_escape_sequences"); m_cache_doubletap_jump = g_settings->getBool("doubletap_jump"); - m_cache_enable_clouds = g_settings->getBool("enable_clouds"); m_cache_enable_joysticks = g_settings->getBool("enable_joysticks"); - m_cache_enable_particles = g_settings->getBool("enable_particles"); m_cache_enable_fog = g_settings->getBool("enable_fog"); m_cache_mouse_sensitivity = g_settings->getFloat("mouse_sensitivity", 0.001f, 10.0f); m_cache_joystick_frustum_sensitivity = std::max(g_settings->getFloat("joystick_frustum_sensitivity"), 0.001f); @@ -5071,147 +4755,9 @@ void Game::readSettings() m_does_lost_focus_pause_game = g_settings->getBool("pause_on_lost_focus"); - if (draw_control) { - draw_control->enable_fog = m_cache_enable_fog; - } -} - -/****************************************************************************/ -/**************************************************************************** - Shutdown / cleanup - ****************************************************************************/ -/****************************************************************************/ - -void Game::showDeathFormspecLegacy() -{ - static std::string formspec_str = - std::string("formspec_version[1]") + - SIZE_TAG - "bgcolor[#320000b4;true]" - "label[4.85,1.35;" + gettext("You died") + "]" - "button_exit[4,3;3,0.5;btn_respawn;" + gettext("Respawn") + "]" - ; - - /* Create menu */ - /* Note: FormspecFormSource and LocalFormspecHandler * - * are deleted by guiFormSpecMenu */ - FormspecFormSource *fs_src = new FormspecFormSource(formspec_str); - LocalFormspecHandler *txt_dst = new LocalFormspecHandler("MT_DEATH_SCREEN", client); - - auto *&formspec = m_game_ui->getFormspecGUI(); - GUIFormSpecMenu::create(formspec, client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), - sound_manager.get()); - formspec->setFocus("btn_respawn"); -} - -#define GET_KEY_NAME(KEY) gettext(getKeySetting(#KEY).name()) -void Game::showPauseMenu() -{ - std::string control_text; - - if (g_touchcontrols) { - control_text = strgettext("Controls:\n" - "No menu open:\n" - "- slide finger: look around\n" - "- tap: place/punch/use (default)\n" - "- long tap: dig/use (default)\n" - "Menu/inventory open:\n" - "- double tap (outside):\n" - " --> close\n" - "- touch stack, touch slot:\n" - " --> move stack\n" - "- touch&drag, tap 2nd finger\n" - " --> place single item to slot\n" - ); - } - - float ypos = simple_singleplayer_mode ? 0.7f : 0.1f; - std::ostringstream os; - - os << "formspec_version[1]" << SIZE_TAG - << "button_exit[4," << (ypos++) << ";3,0.5;btn_continue;" - << strgettext("Continue") << "]"; - - if (!simple_singleplayer_mode) { - os << "button_exit[4," << (ypos++) << ";3,0.5;btn_change_password;" - << strgettext("Change Password") << "]"; - } else { - os << "field[4.95,0;5,1.5;;" << strgettext("Game paused") << ";]"; - } - -#ifndef __ANDROID__ -#if USE_SOUND - if (g_settings->getBool("enable_sound")) { - os << "button_exit[4," << (ypos++) << ";3,0.5;btn_sound;" - << strgettext("Sound Volume") << "]"; - } -#endif - os << "button_exit[4," << (ypos++) << ";3,0.5;btn_key_config;" - << strgettext("Controls") << "]"; -#endif - os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_menu;" - << strgettext("Exit to Menu") << "]"; - os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_os;" - << strgettext("Exit to OS") << "]"; - if (!control_text.empty()) { - os << "textarea[7.5,0.25;3.9,6.25;;" << control_text << ";]"; - } - os << "textarea[0.4,0.25;3.9,6.25;;" << PROJECT_NAME_C " " VERSION_STRING "\n" - << "\n" - << strgettext("Game info:") << "\n"; - const std::string &address = client->getAddressName(); - os << strgettext("- Mode: "); - if (!simple_singleplayer_mode) { - if (address.empty()) - os << strgettext("Hosting server"); - else - os << strgettext("Remote server"); - } else { - os << strgettext("Singleplayer"); - } - if (!g_settings->get("remote_proto").empty()) { - os << "\n" << strgettext("- Proto: ") << g_settings->get("remote_proto") << "\n"; - } - - os << "\n"; - if (simple_singleplayer_mode || address.empty()) { - static const std::string on = strgettext("On"); - static const std::string off = strgettext("Off"); - // Note: Status of enable_damage and creative_mode settings is intentionally - // NOT shown here because the game might roll its own damage system and/or do - // a per-player Creative Mode, in which case writing it here would mislead. - bool damage = g_settings->getBool("enable_damage"); - const std::string &announced = g_settings->getBool("server_announce") ? on : off; - if (!simple_singleplayer_mode) { - if (damage) { - const std::string &pvp = g_settings->getBool("enable_pvp") ? on : off; - //~ PvP = Player versus Player - os << strgettext("- PvP: ") << pvp << "\n"; - } - os << strgettext("- Public: ") << announced << "\n"; - std::string server_name = g_settings->get("server_name"); - str_formspec_escape(server_name); - if (announced == on && !server_name.empty()) - os << strgettext("- Server Name: ") << server_name; - - } - } - os << ";]"; - - /* Create menu */ - /* Note: FormspecFormSource and LocalFormspecHandler * - * are deleted by guiFormSpecMenu */ - FormspecFormSource *fs_src = new FormspecFormSource(os.str()); - LocalFormspecHandler *txt_dst = new LocalFormspecHandler("MT_PAUSE_MENU"); - - auto *&formspec = m_game_ui->getFormspecGUI(); - GUIFormSpecMenu::create(formspec, client, m_rendering_engine->get_gui_env(), - &input->joystick, fs_src, txt_dst, client->getFormspecPrepend(), - sound_manager.get()); - formspec->setFocus("btn_continue"); - // game will be paused in next step, if in singleplayer (see m_is_paused) - formspec->doPause = true; + m_touch_use_crosshair = g_settings->getBool("touch_use_crosshair"); + if (g_touchcontrols) + g_touchcontrols->setUseCrosshair(!isTouchCrosshairDisabled()); } /****************************************************************************/ diff --git a/src/client/game_formspec.cpp b/src/client/game_formspec.cpp new file mode 100644 index 000000000..05c3267b4 --- /dev/null +++ b/src/client/game_formspec.cpp @@ -0,0 +1,579 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2010-2013 celeron55, Perttu Ahola + +#include "game_formspec.h" + +#include "gettext.h" +#include "nodemetadata.h" +#include "renderingengine.h" +#include "client.h" +#include "scripting_client.h" +#include "cpp_api/s_client_common.h" +#include "clientmap.h" +#include "gui/guiFormSpecMenu.h" +#include "gui/mainmenumanager.h" +#include "gui/touchcontrols.h" +#include "gui/touchscreeneditor.h" +#include "gui/guiPasswordChange.h" +#include "gui/guiKeyChangeMenu.h" +#include "gui/guiPasswordChange.h" +#include "gui/guiOpenURL.h" +#include "gui/guiVolumeChange.h" + +/* + Text input system +*/ + +struct TextDestNodeMetadata : public TextDest +{ + TextDestNodeMetadata(v3s16 p, Client *client) + { + m_p = p; + m_client = client; + } + // This is deprecated I guess? -celeron55 + void gotText(const std::wstring &text) + { + std::string ntext = wide_to_utf8(text); + infostream << "Submitting 'text' field of node at (" << m_p.X << "," + << m_p.Y << "," << m_p.Z << "): " << ntext << std::endl; + StringMap fields; + fields["text"] = ntext; + m_client->sendNodemetaFields(m_p, "", fields); + } + void gotText(const StringMap &fields) + { + m_client->sendNodemetaFields(m_p, "", fields); + } + + v3s16 m_p; + Client *m_client; +}; + +struct TextDestPlayerInventory : public TextDest +{ + TextDestPlayerInventory(Client *client) + { + m_client = client; + m_formname.clear(); + } + TextDestPlayerInventory(Client *client, const std::string &formname) + { + m_client = client; + m_formname = formname; + } + void gotText(const StringMap &fields) + { + m_client->sendInventoryFields(m_formname, fields); + } + + Client *m_client; +}; + +struct LocalScriptingFormspecHandler : public TextDest +{ + LocalScriptingFormspecHandler(const std::string &formname, ScriptApiClientCommon *script) + { + m_formname = formname; + m_script = script; + } + + void gotText(const StringMap &fields) + { + m_script->on_formspec_input(m_formname, fields); + } + + ScriptApiClientCommon *m_script = nullptr; +}; + +struct HardcodedPauseFormspecHandler : public TextDest +{ + HardcodedPauseFormspecHandler() + { + m_formname = "MT_PAUSE_MENU"; + } + + void gotText(const StringMap &fields) + { + if (fields.find("btn_settings") != fields.end()) { + g_gamecallback->openSettings(); + return; + } + + if (fields.find("btn_sound") != fields.end()) { + g_gamecallback->changeVolume(); + return; + } + + if (fields.find("btn_exit_menu") != fields.end()) { + g_gamecallback->disconnect(); + return; + } + + if (fields.find("btn_exit_os") != fields.end()) { + g_gamecallback->exitToOS(); +#ifndef __ANDROID__ + RenderingEngine::get_raw_device()->closeDevice(); + RenderingEngine::get_raw_device()->run(); +#endif + return; + } + + if (fields.find("btn_change_password") != fields.end()) { + g_gamecallback->changePassword(); + return; + } + } +}; + +struct LegacyDeathFormspecHandler : public TextDest +{ + LegacyDeathFormspecHandler(Client *client) + { + m_formname = "MT_DEATH_SCREEN"; + m_client = client; + } + + void gotText(const StringMap &fields) + { + if (fields.find("quit") != fields.end()) + m_client->sendRespawnLegacy(); + } + + Client *m_client = nullptr; +}; + +/* Form update callback */ + +class NodeMetadataFormSource: public IFormSource +{ +public: + NodeMetadataFormSource(ClientMap *map, v3s16 p): + m_map(map), + m_p(p) + { + } + const std::string &getForm() const + { + static const std::string empty_string = ""; + NodeMetadata *meta = m_map->getNodeMetadata(m_p); + + if (!meta) + return empty_string; + + return meta->getString("formspec"); + } + + virtual std::string resolveText(const std::string &str) + { + NodeMetadata *meta = m_map->getNodeMetadata(m_p); + + if (!meta) + return str; + + return meta->resolveString(str); + } + + ClientMap *m_map; + v3s16 m_p; +}; + +class PlayerInventoryFormSource: public IFormSource +{ +public: + PlayerInventoryFormSource(Client *client): + m_client(client) + { + } + + const std::string &getForm() const + { + LocalPlayer *player = m_client->getEnv().getLocalPlayer(); + return player->inventory_formspec; + } + + Client *m_client; +}; + + +//// GameFormSpec + +void GameFormSpec::init(Client *client, RenderingEngine *rendering_engine, InputHandler *input) +{ + m_client = client; + m_rendering_engine = rendering_engine; + m_input = input; + m_pause_script = std::make_unique(client); + m_pause_script->loadBuiltin(); +} + +void GameFormSpec::deleteFormspec() +{ + if (m_formspec) { + m_formspec->drop(); + m_formspec = nullptr; + } + m_formname.clear(); +} + +GameFormSpec::~GameFormSpec() { + if (m_formspec) + m_formspec->quitMenu(); + this->deleteFormspec(); +} + +bool GameFormSpec::handleEmptyFormspec(const std::string &formspec, const std::string &formname) +{ + if (formspec.empty()) { + if (m_formspec && (formname.empty() || formname == m_formname)) { + m_formspec->quitMenu(); + } + return true; + } + return false; +} + +void GameFormSpec::showFormSpec(const std::string &formspec, const std::string &formname) +{ + if (handleEmptyFormspec(formspec, formname)) + return; + + FormspecFormSource *fs_src = + new FormspecFormSource(formspec); + TextDestPlayerInventory *txt_dst = + new TextDestPlayerInventory(m_client, formname); + + m_formname = formname; + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); +} + +void GameFormSpec::showCSMFormSpec(const std::string &formspec, const std::string &formname) +{ + if (handleEmptyFormspec(formspec, formname)) + return; + + FormspecFormSource *fs_src = new FormspecFormSource(formspec); + LocalScriptingFormspecHandler *txt_dst = + new LocalScriptingFormspecHandler(formname, m_client->getScript()); + + m_formname = formname; + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); +} + +void GameFormSpec::showPauseMenuFormSpec(const std::string &formspec, const std::string &formname) +{ + // The pause menu env is a trusted context like the mainmenu env and provides + // the in-game settings formspec. + // Neither CSM nor the server must be allowed to mess with it. + + if (handleEmptyFormspec(formspec, formname)) + return; + + FormspecFormSource *fs_src = new FormspecFormSource(formspec); + LocalScriptingFormspecHandler *txt_dst = + new LocalScriptingFormspecHandler(formname, m_pause_script.get()); + + m_formname = formname; + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + // Ignore formspec prepend. + &m_input->joystick, fs_src, txt_dst, "", + m_client->getSoundManager()); + + m_formspec->doPause = true; +} + +void GameFormSpec::showNodeFormspec(const std::string &formspec, const v3s16 &nodepos) +{ + infostream << "Launching custom inventory view" << std::endl; + + InventoryLocation inventoryloc; + inventoryloc.setNodeMeta(nodepos); + + NodeMetadataFormSource *fs_src = new NodeMetadataFormSource( + &m_client->getEnv().getClientMap(), nodepos); + TextDest *txt_dst = new TextDestNodeMetadata(nodepos, m_client); + + m_formname = ""; + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); + + m_formspec->setFormSpec(formspec, inventoryloc); +} + +void GameFormSpec::showPlayerInventory() +{ + /* + * Don't permit to open inventory is CAO or player doesn't exists. + * This prevent showing an empty inventory at player load + */ + + LocalPlayer *player = m_client->getEnv().getLocalPlayer(); + if (!player) // || !player->getCAO()) + return; + + infostream << "Game: Launching inventory" << std::endl; + + PlayerInventoryFormSource *fs_src = new PlayerInventoryFormSource(m_client); + + InventoryLocation inventoryloc; + inventoryloc.setCurrentPlayer(); + + if (m_client->modsLoaded() && m_client->getScript()->on_inventory_open(m_client->getInventory(inventoryloc))) { + delete fs_src; + return; + } + + if (fs_src->getForm().empty()) { + delete fs_src; + return; + } + + TextDest *txt_dst = new TextDestPlayerInventory(m_client); + m_formname = ""; + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); + + m_formspec->setFormSpec(fs_src->getForm(), inventoryloc); +} + +#define SIZE_TAG "size[11,5.5,true]" // Fixed size (ignored in touchscreen mode) + +void GameFormSpec::showPauseMenu() +{ + std::string control_text; + + if (g_touchcontrols) { + control_text = strgettext("Controls:\n" + "No menu open:\n" + "- slide finger: look around\n" + "- tap: place/punch/use (default)\n" + "- long tap: dig/use (default)\n" + "Menu/inventory open:\n" + "- double tap (outside):\n" + " --> close\n" + "- touch stack, touch slot:\n" + " --> move stack\n" + "- touch&drag, tap 2nd finger\n" + " --> place single item to slot\n" + ); + } + + auto simple_singleplayer_mode = m_client->m_simple_singleplayer_mode; + + float ypos = simple_singleplayer_mode ? 0.7f : 0.1f; + std::ostringstream os; + + os << "formspec_version[1]" << SIZE_TAG + << "button_exit[4," << (ypos++) << ";3,0.5;btn_continue;" + << strgettext("Continue") << "]"; + + if (!simple_singleplayer_mode) { + os << "button[4," << (ypos++) << ";3,0.5;btn_change_password;" + << strgettext("Change Password") << "]"; + } else { + os << "field[4.95,0;5,1.5;;" << strgettext("Game paused") << ";]"; + } + + os << "button[4," << (ypos++) << ";3,0.5;btn_settings;" + << strgettext("Settings") << "]"; + +#ifndef __ANDROID__ +#if USE_SOUND + os << "button[4," << (ypos++) << ";3,0.5;btn_sound;" + << strgettext("Sound Volume") << "]"; +#endif +#endif + + os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_menu;" + << strgettext("Exit to Menu") << "]"; + os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_os;" + << strgettext("Exit to OS") << "]"; + if (!control_text.empty()) { + os << "textarea[7.5,0.25;3.9,6.25;;" << control_text << ";]"; + } + os << "textarea[0.4,0.25;3.9,6.25;;" << PROJECT_NAME_C " " VERSION_STRING "\n" + << "\n" + << strgettext("Game info:") << "\n"; + const std::string &address = m_client->getAddressName(); + os << strgettext("- Mode: "); + if (!simple_singleplayer_mode) { + if (address.empty()) + os << strgettext("Hosting server"); + else + os << strgettext("Remote server"); + } else { + os << strgettext("Singleplayer"); + } + + if (!g_settings->get("remote_proto").empty()) { + os << "\n" << strgettext("- Proto: ") << g_settings->get("remote_proto") << "\n"; + } + + os << "\n"; + if (simple_singleplayer_mode || address.empty()) { + static const std::string on = strgettext("On"); + static const std::string off = strgettext("Off"); + // Note: Status of enable_damage and creative_mode settings is intentionally + // NOT shown here because the game might roll its own damage system and/or do + // a per-player Creative Mode, in which case writing it here would mislead. + bool damage = g_settings->getBool("enable_damage"); + const std::string &announced = g_settings->getBool("server_announce") ? on : off; + if (!simple_singleplayer_mode) { + if (damage) { + const std::string &pvp = g_settings->getBool("enable_pvp") ? on : off; + //~ PvP = Player versus Player + os << strgettext("- PvP: ") << pvp << "\n"; + } + os << strgettext("- Public: ") << announced << "\n"; + std::string server_name = g_settings->get("server_name"); + str_formspec_escape(server_name); + if (announced == on && !server_name.empty()) + os << strgettext("- Server Name: ") << server_name; + + } + } + os << ";]"; + + /* Create menu */ + /* Note: FormspecFormSource and LocalFormspecHandler * + * are deleted by guiFormSpecMenu */ + FormspecFormSource *fs_src = new FormspecFormSource(os.str()); + HardcodedPauseFormspecHandler *txt_dst = new HardcodedPauseFormspecHandler(); + + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); + m_formspec->setFocus("btn_continue"); + // game will be paused in next step, if in singleplayer (see Game::m_is_paused) + m_formspec->doPause = true; +} + +void GameFormSpec::showDeathFormspecLegacy() +{ + static std::string formspec_str = + std::string("formspec_version[1]") + + SIZE_TAG + "bgcolor[#320000b4;true]" + "label[4.85,1.35;" + gettext("You died") + "]" + "button_exit[4,3;3,0.5;btn_respawn;" + gettext("Respawn") + "]" + ; + + /* Create menu */ + /* Note: FormspecFormSource and LocalFormspecHandler * + * are deleted by guiFormSpecMenu */ + FormspecFormSource *fs_src = new FormspecFormSource(formspec_str); + LegacyDeathFormspecHandler *txt_dst = new LegacyDeathFormspecHandler(m_client); + + GUIFormSpecMenu::create(m_formspec, m_client, m_rendering_engine->get_gui_env(), + &m_input->joystick, fs_src, txt_dst, m_client->getFormspecPrepend(), + m_client->getSoundManager()); + m_formspec->setFocus("btn_respawn"); +} + +void GameFormSpec::update() +{ + /* + make sure menu is on top + 1. Delete formspec menu reference if menu was removed + 2. Else, make sure formspec menu is on top + */ + if (!m_formspec) + return; + + if (m_formspec->getReferenceCount() == 1) { + // See GUIFormSpecMenu::create what refcnt = 1 means + this->deleteFormspec(); + return; + } + + auto &loc = m_formspec->getFormspecLocation(); + if (loc.type == InventoryLocation::NODEMETA) { + NodeMetadata *meta = m_client->getEnv().getClientMap().getNodeMetadata(loc.p); + if (!meta || meta->getString("formspec").empty()) { + m_formspec->quitMenu(); + return; + } + } + + if (isMenuActive()) + guiroot->bringToFront(m_formspec); +} + +void GameFormSpec::disableDebugView() +{ + if (m_formspec) { + m_formspec->setDebugView(false); + } +} + +/* returns false if game should exit, otherwise true + */ +bool GameFormSpec::handleCallbacks() +{ + auto texture_src = m_client->getTextureSource(); + + if (g_gamecallback->disconnect_requested) { + g_gamecallback->disconnect_requested = false; + return false; + } + + if (g_gamecallback->settings_requested) { + m_pause_script->open_settings(); + g_gamecallback->settings_requested = false; + } + + if (g_gamecallback->changepassword_requested) { + (void)make_irr(guienv, guiroot, -1, + &g_menumgr, m_client, texture_src); + g_gamecallback->changepassword_requested = false; + } + + if (g_gamecallback->changevolume_requested) { + (void)make_irr(guienv, guiroot, -1, + &g_menumgr, texture_src); + g_gamecallback->changevolume_requested = false; + } + + if (g_gamecallback->keyconfig_requested) { + (void)make_irr(guienv, guiroot, -1, + &g_menumgr, texture_src); + g_gamecallback->keyconfig_requested = false; + } + + if (g_gamecallback->touchscreenlayout_requested) { + (new GUITouchscreenLayout(guienv, guiroot, -1, + &g_menumgr, texture_src))->drop(); + g_gamecallback->touchscreenlayout_requested = false; + } + + if (!g_gamecallback->show_open_url_dialog.empty()) { + (void)make_irr(guienv, guiroot, -1, + &g_menumgr, texture_src, g_gamecallback->show_open_url_dialog); + g_gamecallback->show_open_url_dialog.clear(); + } + + if (g_gamecallback->keyconfig_changed) { + m_input->keycache.populate(); // update the cache with new settings + g_gamecallback->keyconfig_changed = false; + } + + return true; +} + +#ifdef __ANDROID__ +bool GameFormSpec::handleAndroidUIInput() +{ + if (m_formspec) { + m_formspec->getAndroidUIInput(); + return true; + } + return false; +} +#endif diff --git a/src/client/game_formspec.h b/src/client/game_formspec.h new file mode 100644 index 000000000..b38056463 --- /dev/null +++ b/src/client/game_formspec.h @@ -0,0 +1,66 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 cx384 + +#pragma once + +#include +#include +#include "irr_v3d.h" +#include "scripting_pause_menu.h" + +class Client; +class RenderingEngine; +class InputHandler; +class ISoundManager; +class GUIFormSpecMenu; + +/* +This object intend to contain the core fromspec functionality. +It includes: + - methods to show specific formspec menus + - storing the opened fromspec + - handling fromspec related callbacks + */ +struct GameFormSpec +{ + void init(Client *client, RenderingEngine *rendering_engine, InputHandler *input); + + ~GameFormSpec(); + + void showFormSpec(const std::string &formspec, const std::string &formname); + void showCSMFormSpec(const std::string &formspec, const std::string &formname); + // Used by the Lua pause menu environment to show formspecs. + // Currently only used for the in-game settings menu. + void showPauseMenuFormSpec(const std::string &formspec, const std::string &formname); + void showNodeFormspec(const std::string &formspec, const v3s16 &nodepos); + void showPlayerInventory(); + void showDeathFormspecLegacy(); + // Shows the hardcoded "main" pause menu. + void showPauseMenu(); + + void update(); + void disableDebugView(); + + bool handleCallbacks(); + +#ifdef __ANDROID__ + // Returns false if no formspec open + bool handleAndroidUIInput(); +#endif + +private: + Client *m_client; + RenderingEngine *m_rendering_engine; + InputHandler *m_input; + std::unique_ptr m_pause_script; + + // Default: "". If other than "": Empty show_formspec packets will only + // close the formspec when the formname matches + std::string m_formname; + GUIFormSpecMenu *m_formspec = nullptr; + + bool handleEmptyFormspec(const std::string &formspec, const std::string &formname); + + void deleteFormspec(); +}; diff --git a/src/client/gameui.cpp b/src/client/gameui.cpp index 981ccd68f..1158fd88d 100644 --- a/src/client/gameui.cpp +++ b/src/client/gameui.cpp @@ -8,7 +8,6 @@ #include #include "gui/mainmenumanager.h" #include "gui/guiChatConsole.h" -#include "gui/guiFormSpecMenu.h" #include "gui/touchcontrols.h" #include "util/enriched_string.h" #include "util/pointedthing.h" @@ -113,11 +112,11 @@ void GameUI::update(const RunStats &stats, Client *client, MapDrawControl *draw_ os << std::fixed << PROJECT_NAME_C " " << g_version_hash << " | FPS: " << fps - << std::setprecision(0) + << std::setprecision(fps >= 100 ? 1 : 0) << " | drawtime: " << m_drawtime_avg << "ms" << std::setprecision(1) << " | dtime jitter: " - << (stats.dtime_jitter.max_fraction * 100.0) << "%" + << (stats.dtime_jitter.max_fraction * 100.0f) << "%" << std::setprecision(1) << " | view range: " << (draw_control->range_all ? "All" : itos(draw_control->wanted_range)) @@ -229,10 +228,10 @@ void GameUI::update(const RunStats &stats, Client *client, MapDrawControl *draw_ status_y - status_height, status_x + status_width, status_y)); // Fade out - video::SColor final_color = m_statustext_initial_color; - final_color.setAlpha(0); - video::SColor fade_color = m_statustext_initial_color.getInterpolated_quadratic( - m_statustext_initial_color, final_color, m_statustext_time / statustext_time_max); + video::SColor fade_color = m_statustext_initial_color; + f32 d = m_statustext_time / statustext_time_max; + fade_color.setAlpha(static_cast( + fade_color.getAlpha() * (1.0f - d * d))); guitext_status->setOverrideColor(fade_color); guitext_status->enableOverrideColor(true); } @@ -247,8 +246,6 @@ void GameUI::initFlags() g_settings->getBoolNoEx("show_basic_debug", m_flags.show_basic_debug); g_settings->getBoolNoEx("show_profiler_graph", m_flags.show_profiler_graph); - - m_flags.show_minimal_debug = g_settings->getBool("show_debug"); } void GameUI::showTranslatedStatusText(const char *str) @@ -357,17 +354,6 @@ void GameUI::toggleProfiler(bool & profiler_state) } } - -void GameUI::deleteFormspec() -{ - if (m_formspec) { - m_formspec->drop(); - m_formspec = nullptr; - } - - m_formname.clear(); -} - void GameUI::clearText() { if (m_guitext_chat) { diff --git a/src/client/gameui.h b/src/client/gameui.h index 016f3e2ab..44215543d 100644 --- a/src/client/gameui.h +++ b/src/client/gameui.h @@ -15,7 +15,6 @@ using namespace irr; class Client; class EnrichedString; class GUIChatConsole; -class GUIFormSpecMenu; struct MapDrawControl; struct PointedThing; @@ -82,15 +81,6 @@ public: void toggleHud(); void toggleProfiler(bool&); - GUIFormSpecMenu *&updateFormspec(const std::string &formname) - { - m_formname = formname; - return m_formspec; - } - - const std::string &getFormspecName() { return m_formname; } - GUIFormSpecMenu *&getFormspecGUI() { return m_formspec; } - void deleteFormspec(); void clearText(); private: @@ -116,9 +106,4 @@ private: gui::IGUIStaticText *m_guitext_profiler = nullptr; // Profiler text u16 m_profiler_current_page = 0; u16 m_profiler_max_page = 3; - - // Default: "". If other than "": Empty show_formspec packets will only - // close the formspec when the formname matches - std::string m_formname; - GUIFormSpecMenu *m_formspec = nullptr; }; diff --git a/src/client/guiscalingfilter.cpp b/src/client/guiscalingfilter.cpp index 7a7ae1917..5816113a8 100644 --- a/src/client/guiscalingfilter.cpp +++ b/src/client/guiscalingfilter.cpp @@ -95,8 +95,7 @@ video::ITexture *guiScalingResizeCached(video::IVideoDriver *driver, auto it_img = g_imgCache.find(origname); video::IImage *srcimg = (it_img != g_imgCache.end()) ? it_img->second : nullptr; if (!srcimg) { - if (!g_settings->getBool("gui_scaling_filter_txr2img")) - return src; + // Download image from GPU srcimg = driver->createImageFromData(src->getColorFormat(), src->getSize(), src->lock(video::ETLM_READ_ONLY), false); src->unlock(); diff --git a/src/client/hud.cpp b/src/client/hud.cpp index b6ba910ce..4133d69cd 100644 --- a/src/client/hud.cpp +++ b/src/client/hud.cpp @@ -27,6 +27,7 @@ #include "wieldmesh.h" #include "client/renderingengine.h" #include "client/minimap.h" +#include "client/texturesource.h" #include "gui/touchcontrols.h" #include "util/enriched_string.h" #include "irrlicht_changes/CGUITTFont.h" @@ -57,14 +58,14 @@ Hud::Hud(Client *client, LocalPlayer *player, tsrc = client->getTextureSource(); - v3f crosshair_color = g_settings->getV3F("crosshair_color"); + v3f crosshair_color = g_settings->getV3F("crosshair_color").value_or(v3f()); u32 cross_r = rangelim(myround(crosshair_color.X), 0, 255); u32 cross_g = rangelim(myround(crosshair_color.Y), 0, 255); u32 cross_b = rangelim(myround(crosshair_color.Z), 0, 255); u32 cross_a = rangelim(g_settings->getS32("crosshair_alpha"), 0, 255); crosshair_argb = video::SColor(cross_a, cross_r, cross_g, cross_b); - v3f selectionbox_color = g_settings->getV3F("selectionbox_color"); + v3f selectionbox_color = g_settings->getV3F("selectionbox_color").value_or(v3f()); u32 sbox_r = rangelim(myround(selectionbox_color.X), 0, 255); u32 sbox_g = rangelim(myround(selectionbox_color.Y), 0, 255); u32 sbox_b = rangelim(myround(selectionbox_color.Z), 0, 255); @@ -87,15 +88,12 @@ Hud::Hud(Client *client, LocalPlayer *player, } // Initialize m_selection_material - - - if (g_settings->getBool("enable_shaders")) { - IShaderSource *shdrsrc = client->getShaderSource(); - auto shader_id = shdrsrc->getShader( - m_mode == HIGHLIGHT_HALO ? "selection_shader" : "default_shader", TILE_MATERIAL_ALPHA); + IShaderSource *shdrsrc = client->getShaderSource(); + if (m_mode == HIGHLIGHT_HALO) { + auto shader_id = shdrsrc->getShaderRaw("selection_shader", true); m_selection_material.MaterialType = shdrsrc->getShaderInfo(shader_id).material; } else { - m_selection_material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; + m_selection_material.MaterialType = video::EMT_SOLID; } if (m_mode == HIGHLIGHT_BOX) { @@ -109,13 +107,7 @@ Hud::Hud(Client *client, LocalPlayer *player, } // Initialize m_block_bounds_material - if (g_settings->getBool("enable_shaders")) { - IShaderSource *shdrsrc = client->getShaderSource(); - auto shader_id = shdrsrc->getShader("default_shader", TILE_MATERIAL_ALPHA); - m_block_bounds_material.MaterialType = shdrsrc->getShaderInfo(shader_id).material; - } else { - m_block_bounds_material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; - } + m_block_bounds_material.MaterialType = video::EMT_SOLID; m_block_bounds_material.Thickness = rangelim(g_settings->getS16("selectionbox_width"), 1, 5); @@ -885,7 +877,6 @@ void Hud::drawSelectionMesh() { if (m_mode == HIGHLIGHT_NONE || (m_mode == HIGHLIGHT_HALO && !m_selection_mesh)) return; - const video::SMaterial oldmaterial = driver->getMaterial2D(); driver->setMaterial(m_selection_material); const core::matrix4 oldtransform = driver->getTransform(video::ETS_WORLD); @@ -921,7 +912,6 @@ void Hud::drawSelectionMesh() driver->drawMeshBuffer(buf); } } - driver->setMaterial(oldmaterial); driver->setTransform(video::ETS_WORLD, oldtransform); } @@ -946,7 +936,6 @@ void Hud::drawBlockBounds() return; } - video::SMaterial old_material = driver->getMaterial2D(); driver->setMaterial(m_block_bounds_material); u16 mesh_chunk_size = std::max(1, g_settings->getU16("client_mesh_chunk")); @@ -1062,11 +1051,7 @@ void Hud::drawBlockBounds() } } else { - v3s16 block_pos( - floorf((float) pos.X / MAP_BLOCKSIZE), - floorf((float) pos.Y / MAP_BLOCKSIZE), - floorf((float) pos.Z / MAP_BLOCKSIZE) - ); + v3s16 block_pos = getContainerPos(player->getStandingNodePos(), MAP_BLOCKSIZE); v3f cam_offset = intToFloat(client->getCamera()->getOffset(), BS); @@ -1109,10 +1094,7 @@ void Hud::drawBlockBounds() choose_color(block_pos.Y, block_pos.Z) ); } - } - - driver->setMaterial(old_material); } void Hud::updateSelectionMesh(const v3s16 &camera_offset) @@ -1286,6 +1268,7 @@ void drawItemStack( auto &p = imesh->buffer_colors[j]; p.applyOverride(c); + // TODO: could be moved to a shader if (p.needColorize(c)) { buf->setDirty(scene::EBT_VERTEX); if (imesh->needs_shading) diff --git a/src/client/imagefilters.cpp b/src/client/imagefilters.cpp index 6d460f0c4..09a1198ea 100644 --- a/src/client/imagefilters.cpp +++ b/src/client/imagefilters.cpp @@ -148,17 +148,6 @@ static void imageCleanTransparentWithInlining(video::IImage *src, u32 threshold) } } -/* Fill in RGB values for transparent pixels, to correct for odd colors - * appearing at borders when blending. This is because many PNG optimizers - * like to discard RGB values of transparent pixels, but when blending then - * with non-transparent neighbors, their RGB values will show up nonetheless. - * - * This function modifies the original image in-place. - * - * Parameter "threshold" is the alpha level below which pixels are considered - * transparent. Should be 127 when the texture is used with ALPHA_CHANNEL_REF, - * 0 when alpha blending is used. - */ void imageCleanTransparent(video::IImage *src, u32 threshold) { if (src->getColorFormat() == video::ECF_A8R8G8B8) @@ -167,13 +156,109 @@ void imageCleanTransparent(video::IImage *src, u32 threshold) imageCleanTransparentWithInlining(src, threshold); } -/* Scale a region of an image into another image, using nearest-neighbor with - * anti-aliasing; treat pixels as crisp rectangles, but blend them at boundaries - * to prevent non-integer scaling ratio artifacts. Note that this may cause - * some blending at the edges where pixels don't line up perfectly, but this - * filter is designed to produce the most accurate results for both upscaling - * and downscaling. - */ +/**********************************/ + +namespace { + // For more colorspace transformations, see for example + // + + inline float linear_to_srgb_component(float v) + { + if (v > 0.0031308f) + return 1.055f * powf(v, 1.0f / 2.4f) - 0.055f; + return 12.92f * v; + } + inline float srgb_to_linear_component(float v) + { + if (v > 0.04045f) + return powf((v + 0.055f) / 1.055f, 2.4f); + return v / 12.92f; + } + + template + struct LUT8 { + std::array t; + LUT8() { + for (size_t i = 0; i < t.size(); i++) + t[i] = F(i / 255.0f); + } + }; + LUT8 srgb_to_linear_lut; + + v3f srgb_to_linear(const video::SColor col_srgb) + { + v3f col(srgb_to_linear_lut.t[col_srgb.getRed()], + srgb_to_linear_lut.t[col_srgb.getGreen()], + srgb_to_linear_lut.t[col_srgb.getBlue()]); + return col; + } + + video::SColor linear_to_srgb(const v3f col_linear) + { + v3f col; + // we can't LUT this without losing precision, but thankfully we call + // it just once :) + col.X = linear_to_srgb_component(col_linear.X); + col.Y = linear_to_srgb_component(col_linear.Y); + col.Z = linear_to_srgb_component(col_linear.Z); + col *= 255.0f; + col.X = core::clamp(col.X, 0.0f, 255.0f); + col.Y = core::clamp(col.Y, 0.0f, 255.0f); + col.Z = core::clamp(col.Z, 0.0f, 255.0f); + return video::SColor(0xff, myround(col.X), myround(col.Y), + myround(col.Z)); + } +} + +template +static video::SColor imageAverageColorInline(const video::IImage *src) +{ + void *const src_data = src->getData(); + const core::dimension2du dim = src->getDimension(); + + auto get_pixel = [=](u32 x, u32 y) -> video::SColor { + if constexpr (IS_A8R8G8B8) { + return reinterpret_cast(src_data)[y*dim.Width + x]; + } else { + return src->getPixel(x, y); + } + }; + + u32 total = 0; + v3f col_acc; + // limit runtime cost + const u32 stepx = std::max(1U, dim.Width / 16), + stepy = std::max(1U, dim.Height / 16); + for (u32 x = 0; x < dim.Width; x += stepx) { + for (u32 y = 0; y < dim.Height; y += stepy) { + video::SColor c = get_pixel(x, y); + if (c.getAlpha() > 0) { + total++; + col_acc += srgb_to_linear(c); + } + } + } + + video::SColor ret(0, 0, 0, 0); + if (total > 0) { + col_acc /= total; + ret = linear_to_srgb(col_acc); + } + ret.setAlpha(255); + return ret; +} + +video::SColor imageAverageColor(const video::IImage *img) +{ + if (img->getColorFormat() == video::ECF_A8R8G8B8) + return imageAverageColorInline(img); + else + return imageAverageColorInline(img); +} + + +/**********************************/ + void imageScaleNNAA(video::IImage *src, const core::rect &srcrect, video::IImage *dest) { double sx, sy, minsx, maxsx, minsy, maxsy, area, ra, ga, ba, aa, pw, ph, pa; diff --git a/src/client/imagefilters.h b/src/client/imagefilters.h index 606cf8c58..f46f71940 100644 --- a/src/client/imagefilters.h +++ b/src/client/imagefilters.h @@ -6,6 +6,7 @@ #include "irrlichttypes.h" #include +#include namespace irr::video { @@ -26,6 +27,10 @@ namespace irr::video */ void imageCleanTransparent(video::IImage *src, u32 threshold); +/* Returns the gamma-correct average color of the image, with transparent pixels + * ignored. */ +video::SColor imageAverageColor(const video::IImage *img); + /* Scale a region of an image into another image, using nearest-neighbor with * anti-aliasing; treat pixels as crisp rectangles, but blend them at boundaries * to prevent non-integer scaling ratio artifacts. Note that this may cause diff --git a/src/client/imagesource.cpp b/src/client/imagesource.cpp index 0f4e81f97..e2538c372 100644 --- a/src/client/imagesource.cpp +++ b/src/client/imagesource.cpp @@ -31,8 +31,7 @@ void SourceImageCache::insert(const std::string &name, video::IImage *img, bool { assert(img); // Pre-condition // Remove old image - std::map::iterator n; - n = m_images.find(name); + auto n = m_images.find(name); if (n != m_images.end()){ if (n->second) n->second->drop(); @@ -63,8 +62,7 @@ void SourceImageCache::insert(const std::string &name, video::IImage *img, bool video::IImage* SourceImageCache::get(const std::string &name) { - std::map::iterator n; - n = m_images.find(name); + auto n = m_images.find(name); if (n != m_images.end()) return n->second; return nullptr; @@ -73,8 +71,7 @@ video::IImage* SourceImageCache::get(const std::string &name) // Primarily fetches from cache, secondarily tries to read from filesystem video::IImage* SourceImageCache::getOrLoad(const std::string &name) { - std::map::iterator n; - n = m_images.find(name); + auto n = m_images.find(name); if (n != m_images.end()){ n->second->grab(); // Grab for caller return n->second; @@ -166,13 +163,13 @@ static void draw_crack(video::IImage *crack, video::IImage *dst, video::IVideoDriver *driver, u8 tiles = 1); // Brighten image -void brighten(video::IImage *image); +static void brighten(video::IImage *image); // Parse a transform name -u32 parseImageTransform(std::string_view s); +static u32 parseImageTransform(std::string_view s); // Apply transform to image dimension -core::dimension2d imageTransformDimension(u32 transform, core::dimension2d dim); +static core::dimension2du imageTransformDimension(u32 transform, core::dimension2du dim); // Apply transform to image data -void imageTransform(u32 transform, video::IImage *src, video::IImage *dst); +static void imageTransform(u32 transform, video::IImage *src, video::IImage *dst); inline static void applyShadeFactor(video::SColor &color, u32 factor) { @@ -289,7 +286,7 @@ static video::IImage *createInventoryCubeImage( return result; } -static std::string unescape_string(const std::string &str, const char esc = '\\') +static std::string unescape_string(std::string_view str, const char esc = '\\') { std::string out; size_t pos = 0, cpos; @@ -300,7 +297,8 @@ static std::string unescape_string(const std::string &str, const char esc = '\\' out += str.substr(pos); break; } - out += str.substr(pos, cpos - pos) + str[cpos + 1]; + out += str.substr(pos, cpos - pos); + out += str[cpos + 1]; pos = cpos + 2; } return out; @@ -312,7 +310,7 @@ static std::string unescape_string(const std::string &str, const char esc = '\\' Ensure no other references to these images are being held, as one may get dropped and switched with a new image. */ -void upscaleImagesToMatchLargest(video::IImage *& img1, +static void upscaleImagesToMatchLargest(video::IImage *& img1, video::IImage *& img2) { core::dimension2d dim1 = img1->getDimension(); @@ -340,7 +338,7 @@ void upscaleImagesToMatchLargest(video::IImage *& img1, } } -void blitBaseImage(video::IImage* &src, video::IImage* &dst) +static void blitBaseImage(video::IImage* &src, video::IImage* &dst) { //infostream<<"Blitting "< -void blit_with_alpha(video::IImage *src, video::IImage *dst, v2s32 dst_pos, +static void blit_with_alpha(video::IImage *src, video::IImage *dst, v2s32 dst_pos, v2u32 size) { if (dst->getColorFormat() != video::ECF_A8R8G8B8) @@ -427,13 +426,12 @@ void blit_with_alpha(video::IImage *src, video::IImage *dst, v2s32 dst_pos, video::IVideoDriver *driver = RenderingEngine::get_video_driver(); video::IImage *src_converted = driver->createImage(video::ECF_A8R8G8B8, src_dim); - if (!src_converted) - throw BaseException("blit_with_alpha() failed to convert the " - "source image to ECF_A8R8G8B8."); + sanity_check(src_converted != nullptr); src->copyTo(src_converted); src = src_converted; drop_src = true; } + video::SColor *pixels_src = reinterpret_cast(src->getData()); video::SColor *pixels_dst = @@ -453,6 +451,7 @@ void blit_with_alpha(video::IImage *src, video::IImage *dst, v2s32 dst_pos, blit_pixel(pixels_src[i_src++], pixels_dst[i_dst++]); } } + if (drop_src) src->drop(); } @@ -566,7 +565,7 @@ static void apply_hue_saturation(video::IImage *dst, v2u32 dst_pos, v2u32 size, for (u32 x = dst_pos.X; x < dst_pos.X + size.X; x++) { if (colorize) { - f32 lum = dst->getPixel(x, y).getLuminance() / 255.0f; + f32 lum = dst->getPixel(x, y).getBrightness() / 255.0f; if (norm_l < 0) { lum *= norm_l + 1.0f; @@ -726,7 +725,7 @@ static void apply_mask(video::IImage *mask, video::IImage *dst, } } -video::IImage *create_crack_image(video::IImage *crack, s32 frame_index, +static video::IImage *create_crack_image(video::IImage *crack, s32 frame_index, core::dimension2d size, u8 tiles, video::IVideoDriver *driver) { core::dimension2d strip_size = crack->getDimension(); @@ -804,7 +803,7 @@ static void draw_crack(video::IImage *crack, video::IImage *dst, crack_scaled->drop(); } -void brighten(video::IImage *image) +static void brighten(video::IImage *image) { if (image == NULL) return; @@ -822,7 +821,7 @@ void brighten(video::IImage *image) } } -u32 parseImageTransform(std::string_view s) +static u32 parseImageTransform(std::string_view s) { int total_transform = 0; @@ -872,15 +871,15 @@ u32 parseImageTransform(std::string_view s) return total_transform; } -core::dimension2d imageTransformDimension(u32 transform, core::dimension2d dim) +static core::dimension2du imageTransformDimension(u32 transform, core::dimension2du dim) { if (transform % 2 == 0) return dim; - return core::dimension2d(dim.Height, dim.Width); + return core::dimension2du(dim.Height, dim.Width); } -void imageTransform(u32 transform, video::IImage *src, video::IImage *dst) +static void imageTransform(u32 transform, video::IImage *src, video::IImage *dst) { if (src == NULL || dst == NULL) return; @@ -925,48 +924,6 @@ void imageTransform(u32 transform, video::IImage *src, video::IImage *dst) } } -namespace { - // For more colorspace transformations, see for example - // https://github.com/tobspr/GLSL-Color-Spaces/blob/master/ColorSpaces.inc.glsl - - inline float linear_to_srgb_component(float v) - { - if (v > 0.0031308f) - return 1.055f * powf(v, 1.0f / 2.4f) - 0.055f; - return 12.92f * v; - } - inline float srgb_to_linear_component(float v) - { - if (v > 0.04045f) - return powf((v + 0.055f) / 1.055f, 2.4f); - return v / 12.92f; - } - - v3f srgb_to_linear(const video::SColor col_srgb) - { - v3f col(col_srgb.getRed(), col_srgb.getGreen(), col_srgb.getBlue()); - col /= 255.0f; - col.X = srgb_to_linear_component(col.X); - col.Y = srgb_to_linear_component(col.Y); - col.Z = srgb_to_linear_component(col.Z); - return col; - } - - video::SColor linear_to_srgb(const v3f col_linear) - { - v3f col; - col.X = linear_to_srgb_component(col_linear.X); - col.Y = linear_to_srgb_component(col_linear.Y); - col.Z = linear_to_srgb_component(col_linear.Z); - col *= 255.0f; - col.X = core::clamp(col.X, 0.0f, 255.0f); - col.Y = core::clamp(col.Y, 0.0f, 255.0f); - col.Z = core::clamp(col.Z, 0.0f, 255.0f); - return video::SColor(0xff, myround(col.X), myround(col.Y), - myround(col.Z)); - } -} - /////////////////////////// // ImageSource Functions // @@ -1017,18 +974,12 @@ bool ImageSource::generateImagePart(std::string_view part_of_name, std::string part_s(part_of_name); source_image_names.insert(part_s); video::IImage *image = m_sourcecache.getOrLoad(part_s); + if (!image) { // Do not create the dummy texture if (part_of_name.empty()) return true; - // Do not create normalmap dummies - if (str_ends_with(part_of_name, "_normal.png")) { - warningstream << "generateImagePart(): Could not load normal map \"" - << part_of_name << "\"" << std::endl; - return true; - } - errorstream << "generateImagePart(): Could not load image \"" << part_of_name << "\" while building texture; " "Creating a dummy image" << std::endl; @@ -1040,16 +991,15 @@ bool ImageSource::generateImagePart(std::string_view part_of_name, myrand()%256,myrand()%256)); } - // If base image is NULL, load as base. - if (baseimg == NULL) + // load as base or blit + if (!baseimg) { /* Copy it this way to get an alpha channel. Otherwise images with alpha cannot be blitted on images that don't have alpha in the original file. */ - core::dimension2d dim = image->getDimension(); - baseimg = driver->createImage(video::ECF_A8R8G8B8, dim); + baseimg = driver->createImage(video::ECF_A8R8G8B8, image->getDimension()); image->copyTo(baseimg); } // Else blit on base. @@ -1511,10 +1461,18 @@ bool ImageSource::generateImagePart(std::string_view part_of_name, CHECK_BASEIMG(); - // Apply the "clean transparent" filter, if needed + /* Apply the "clean transparent" filter, if necessary + * This is needed since filtering will sample parts of the image + * that are transparent and PNG optimizers often discard the color + * information in those parts. */ if (m_setting_mipmap || m_setting_bilinear_filter || - m_setting_trilinear_filter || m_setting_anisotropic_filter) - imageCleanTransparent(baseimg, 127); + m_setting_trilinear_filter || m_setting_anisotropic_filter) { + /* Note: in theory we should pass either 0 or 127 depending on + * if the texture is used with an ALPHA or ALPHA_REF material, + * however we don't have this information here. + * It doesn't matter in practice. */ + imageCleanTransparent(baseimg, 0); + } /* Upscale textures to user's requested minimum size. This is a trick to make * filters look as good on low-res textures as on high-res ones, by making @@ -1697,14 +1655,17 @@ bool ImageSource::generateImagePart(std::string_view part_of_name, return false; } + // blit or use as base if (baseimg) { blitBaseImage(pngimg, baseimg); - } else { - core::dimension2d dim = pngimg->getDimension(); - baseimg = driver->createImage(video::ECF_A8R8G8B8, dim); + pngimg->drop(); + } else if (pngimg->getColorFormat() != video::ECF_A8R8G8B8) { + baseimg = driver->createImage(video::ECF_A8R8G8B8, pngimg->getDimension()); pngimg->copyTo(baseimg); + pngimg->drop(); + } else { + baseimg = pngimg; } - pngimg->drop(); } /* [hsl:hue:saturation:lightness @@ -1937,32 +1898,7 @@ video::IImage* ImageSource::generateImage(std::string_view name, return baseimg; } -video::SColor ImageSource::getImageAverageColor(const video::IImage &image) +void ImageSource::insertSourceImage(const std::string &name, video::IImage *img, bool prefer_local) { - video::SColor c(0, 0, 0, 0); - u32 total = 0; - v3f col_acc(0, 0, 0); - core::dimension2d dim = image.getDimension(); - u16 step = 1; - if (dim.Width > 16) - step = dim.Width / 16; - for (u16 x = 0; x < dim.Width; x += step) { - for (u16 y = 0; y < dim.Width; y += step) { - c = image.getPixel(x,y); - if (c.getAlpha() > 0) { - total++; - col_acc += srgb_to_linear(c); - } - } - } - if (total > 0) { - col_acc /= total; - c = linear_to_srgb(col_acc); - } - c.setAlpha(255); - return c; -} - -void ImageSource::insertSourceImage(const std::string &name, video::IImage *img, bool prefer_local) { m_sourcecache.insert(name, img, prefer_local); } diff --git a/src/client/imagesource.h b/src/client/imagesource.h index d6b7a4e9b..310dbb7e8 100644 --- a/src/client/imagesource.h +++ b/src/client/imagesource.h @@ -5,7 +5,7 @@ #pragma once #include -#include +#include #include #include @@ -28,7 +28,7 @@ public: // Primarily fetches from cache, secondarily tries to read from filesystem. video::IImage *getOrLoad(const std::string &name); private: - std::map m_images; + std::unordered_map m_images; }; // Generates images using texture modifiers, and caches source images. @@ -45,9 +45,6 @@ struct ImageSource { // Insert a source image into the cache without touching the filesystem. void insertSourceImage(const std::string &name, video::IImage *img, bool prefer_local); - // TODO should probably be moved elsewhere - static video::SColor getImageAverageColor(const video::IImage &image); - private: // Generate image based on a string like "stone.png" or "[crack:1:0". diff --git a/src/client/inputhandler.h b/src/client/inputhandler.h index b34c22d78..542c41bc7 100644 --- a/src/client/inputhandler.h +++ b/src/client/inputhandler.h @@ -5,6 +5,7 @@ #pragma once #include "irrlichttypes.h" +#include "irr_v2d.h" #include "joystick_controller.h" #include #include "keycode.h" diff --git a/src/client/joystick_controller.cpp b/src/client/joystick_controller.cpp index b8d93dcef..854bed925 100644 --- a/src/client/joystick_controller.cpp +++ b/src/client/joystick_controller.cpp @@ -3,7 +3,6 @@ // Copyright (C) 2016 est31, #include "joystick_controller.h" -#include "irrlichttypes_extrabloated.h" #include "keys.h" #include "settings.h" #include "gettime.h" diff --git a/src/client/joystick_controller.h b/src/client/joystick_controller.h index c5302b533..d7bf4230e 100644 --- a/src/client/joystick_controller.h +++ b/src/client/joystick_controller.h @@ -4,7 +4,9 @@ #pragma once -#include "irrlichttypes_extrabloated.h" +#include +#include "irrlichttypes.h" + #include "keys.h" #include #include diff --git a/src/client/localplayer.cpp b/src/client/localplayer.cpp index 174dbbed3..420c5a357 100644 --- a/src/client/localplayer.cpp +++ b/src/client/localplayer.cpp @@ -78,10 +78,8 @@ static aabb3f getNodeBoundingBox(const std::vector &nodeboxes) if (nodeboxes.empty()) return aabb3f(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f); - aabb3f b_max; - - std::vector::const_iterator it = nodeboxes.begin(); - b_max = aabb3f(it->MinEdge, it->MaxEdge); + auto it = nodeboxes.begin(); + aabb3f b_max(it->MinEdge, it->MaxEdge); ++it; for (; it != nodeboxes.end(); ++it) @@ -212,7 +210,7 @@ bool LocalPlayer::updateSneakNode(Map *map, const v3f &position, return true; } -void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d, +void LocalPlayer::move(f32 dtime, Environment *env, std::vector *collision_info) { // Node at feet position, update each ClientEnvironment::step() @@ -221,7 +219,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d, // Temporary option for old move code if (!physics_override.new_move) { - old_move(dtime, env, pos_max_d, collision_info); + old_move(dtime, env, collision_info); return; } @@ -335,17 +333,6 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d, m_speed.Y += 0.3*BS; } - /* - Collision uncertainty radius - Make it a bit larger than the maximum distance of movement - */ - //f32 d = pos_max_d * 1.1; - // A fairly large value in here makes moving smoother - f32 d = 0.15f * BS; - - // This should always apply, otherwise there are glitches - //sanity_check(d > pos_max_d); - // Player object property step height is multiplied by BS in // /src/script/common/c_content.cpp and /src/content_sao.cpp float player_stepheight = (m_cao == nullptr) ? 0.0f : @@ -356,7 +343,7 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d, const v3f initial_speed = m_speed; collisionMoveResult result = collisionMoveSimple(env, m_client, - pos_max_d, m_collisionbox, player_stepheight, dtime, + m_collisionbox, player_stepheight, dtime, &position, &m_speed, accel_f, m_cao); bool could_sneak = control.sneak && !free_move && !in_liquid && @@ -543,12 +530,12 @@ void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d, m_can_jump = m_can_jump && jumpspeed != 0.0f; // Autojump - handleAutojump(dtime, env, result, initial_position, initial_speed, pos_max_d); + handleAutojump(dtime, env, result, initial_position, initial_speed); } -void LocalPlayer::move(f32 dtime, Environment *env, f32 pos_max_d) +void LocalPlayer::move(f32 dtime, Environment *env) { - move(dtime, env, pos_max_d, NULL); + move(dtime, env, nullptr); } void LocalPlayer::applyControl(float dtime, Environment *env) @@ -867,7 +854,7 @@ void LocalPlayer::accelerate(const v3f &target_speed, const f32 max_increase_H, } // Temporary option for old move code -void LocalPlayer::old_move(f32 dtime, Environment *env, f32 pos_max_d, +void LocalPlayer::old_move(f32 dtime, Environment *env, std::vector *collision_info) { Map *map = &env->getMap(); @@ -964,15 +951,6 @@ void LocalPlayer::old_move(f32 dtime, Environment *env, f32 pos_max_d, is_climbing = (nodemgr->get(node.getContent()).climbable || nodemgr->get(node2.getContent()).climbable) && !free_move; - /* - Collision uncertainty radius - Make it a bit larger than the maximum distance of movement - */ - //f32 d = pos_max_d * 1.1; - // A fairly large value in here makes moving smoother - f32 d = 0.15f * BS; - // This should always apply, otherwise there are glitches - sanity_check(d > pos_max_d); // Maximum distance over border for sneaking f32 sneak_max = BS * 0.4f; @@ -1020,7 +998,7 @@ void LocalPlayer::old_move(f32 dtime, Environment *env, f32 pos_max_d, const v3f initial_speed = m_speed; collisionMoveResult result = collisionMoveSimple(env, m_client, - pos_max_d, m_collisionbox, player_stepheight, dtime, + m_collisionbox, player_stepheight, dtime, &position, &m_speed, accel_f, m_cao); // Position was slightly changed; update standing node pos @@ -1204,7 +1182,7 @@ void LocalPlayer::old_move(f32 dtime, Environment *env, f32 pos_max_d, } // Autojump - handleAutojump(dtime, env, result, initial_position, initial_speed, pos_max_d); + handleAutojump(dtime, env, result, initial_position, initial_speed); } float LocalPlayer::getSlipFactor(Environment *env, const v3f &speedH) @@ -1258,8 +1236,7 @@ bool LocalPlayer::canPlaceNode(const v3pos_t& p, const MapNode& n) } void LocalPlayer::handleAutojump(f32 dtime, Environment *env, - const collisionMoveResult &result, const v3f &initial_position, - const v3f &initial_speed, f32 pos_max_d) + const collisionMoveResult &result, v3f initial_position, v3f initial_speed) { PlayerSettings &player_settings = getPlayerSettings(); if (!player_settings.autojump) @@ -1276,7 +1253,7 @@ void LocalPlayer::handleAutojump(f32 dtime, Environment *env, bool horizontal_collision = false; for (const auto &colinfo : result.collisions) { - if (colinfo.type == COLLISION_NODE && colinfo.plane != 1) { + if (colinfo.type == COLLISION_NODE && colinfo.axis != COLLISION_AXIS_Y) { horizontal_collision = true; break; // one is enough } @@ -1315,7 +1292,7 @@ void LocalPlayer::handleAutojump(f32 dtime, Environment *env, v3f jump_speed = initial_speed; // try at peak of jump, zero step height - collisionMoveResult jump_result = collisionMoveSimple(env, m_client, pos_max_d, + collisionMoveResult jump_result = collisionMoveSimple(env, m_client, m_collisionbox, 0.0f, dtime, &jump_pos, &jump_speed, v3f(0.0f), m_cao); // see if we can get a little bit farther horizontally if we had diff --git a/src/client/localplayer.h b/src/client/localplayer.h index b9be5598b..c0ecce738 100644 --- a/src/client/localplayer.h +++ b/src/client/localplayer.h @@ -19,6 +19,7 @@ class GenericCAO; class ClientActiveObject; class ClientEnvironment; class IGameDef; +struct CollisionInfo; struct collisionMoveResult; enum class LocalPlayerAnimation @@ -51,6 +52,9 @@ private: class LocalPlayer : public Player { public: + // fm: + bool canPlaceNode(const v3pos_t& p, const MapNode& node); + // === LocalPlayer(Client *client, const std::string &name); virtual ~LocalPlayer(); @@ -71,15 +75,8 @@ public: f32 gravity = 0; // total downwards acceleration - void move(f32 dtime, Environment *env, f32 pos_max_d); - void move(f32 dtime, Environment *env, f32 pos_max_d, - std::vector *collision_info); - - // fm: - bool canPlaceNode(const v3pos_t& p, const MapNode& node); - - // Temporary option for old move code - void old_move(f32 dtime, Environment *env, f32 pos_max_d, + void move(f32 dtime, Environment *env); + void move(f32 dtime, Environment *env, std::vector *collision_info); void applyControl(float dtime, Environment *env); @@ -190,10 +187,11 @@ private: const f32 max_increase_V, const bool use_pitch); bool updateSneakNode(Map *map, const v3f &position, const v3f &sneak_max); float getSlipFactor(Environment *env, const v3f &speedH); + void old_move(f32 dtime, Environment *env, + std::vector *collision_info); void handleAutojump(f32 dtime, Environment *env, const collisionMoveResult &result, - const v3f &position_before_move, const v3f &speed_before_move, - f32 pos_max_d); + v3f position_before_move, v3f speed_before_move); v3f m_position; v3s16 m_standing_node; diff --git a/src/client/mapblock_mesh.cpp b/src/client/mapblock_mesh.cpp index 72e28a697..c80d57f8b 100644 --- a/src/client/mapblock_mesh.cpp +++ b/src/client/mapblock_mesh.cpp @@ -3,6 +3,7 @@ // Copyright (C) 2010-2013 celeron55, Perttu Ahola #include "mapblock_mesh.h" +#include "CMeshBuffer.h" #include "client.h" #include "client/clientmap.h" #include "mapblock.h" @@ -21,28 +22,30 @@ #include #include #include "client/texturesource.h" +#include +#include +#include /* MeshMakeData */ -MeshMakeData::MeshMakeData(const NodeDefManager *ndef, u16 side_length, bool use_shaders +MeshMakeData::MeshMakeData(const NodeDefManager *ndef, + u16 side_length, MeshGrid mesh_grid , int lod_step, int far_step, NodeContainer *nodecontainer) : - //side_length((MAP_BLOCKSIZE * m_mesh_grid.cell_size) >> lod_step) - side_length(side_length >> lod_step) - , - //side_length(side_length), - nodedef(ndef), - m_use_shaders(use_shaders) - , - m_vmanip{nodecontainer ? *nodecontainer : m_vmanip_store}, - //side_length_data(MAP_BLOCKSIZE * m_mesh_grid.cell_size), - side_length_data{side_length}, - lod_step{lod_step}, - far_step{far_step}, - fscale(1<<(far_step + lod_step)) -{} + m_side_length(side_length >> lod_step), + m_mesh_grid(mesh_grid), + m_nodedef(ndef) + , + m_vmanip{nodecontainer ? *nodecontainer : m_vmanip_store}, + side_length_data{side_length}, + lod_step{lod_step}, + far_step{far_step}, + fscale(1<<(far_step + lod_step)) +{ + assert(m_side_length > 0); +} void MeshMakeData::fillBlockDataBegin(const v3s16 &blockpos) { @@ -51,8 +54,9 @@ void MeshMakeData::fillBlockDataBegin(const v3s16 &blockpos) v3s16 blockpos_nodes = m_blockpos*MAP_BLOCKSIZE; m_vmanip.clear(); + // extra 1 block thick layer around the mesh VoxelArea voxel_area(blockpos_nodes - v3s16(1,1,1) * MAP_BLOCKSIZE, - blockpos_nodes + v3s16(1,1,1) * (side_length_data + MAP_BLOCKSIZE /* extra layer of blocks around the mesh */) - v3s16(1,1,1)); + blockpos_nodes + v3s16(1,1,1) * (side_length_data + MAP_BLOCKSIZE) - v3s16(1,1,1)); m_vmanip.addArea(voxel_area); } @@ -65,17 +69,32 @@ void MeshMakeData::fillBlockData(const v3s16 &bp, MapNode *data) m_vmanip.copyFrom(data, data_area, v3s16(0,0,0), blockpos_nodes, data_size); } +void MeshMakeData::fillSingleNode(MapNode data, MapNode padding) +{ + m_blockpos = {0, 0, 0}; + +/* fmtodo + m_vmanip.clear(); + // area around 0,0,0 so that this positon has neighbors + const s16 sz = 3; + m_vmanip.addArea({v3s16(-sz), v3s16(sz)}); + + u32 count = m_vmanip.m_area.getVolume(); + for (u32 i = 0; i < count; i++) { + m_vmanip.m_data[i] = padding; + m_vmanip.m_flags[i] &= ~VOXELFLAG_NO_DATA; + } +*/ + + m_vmanip.setNodeNoEmerge({0, 0, 0}, data); +} + void MeshMakeData::setCrack(int crack_level, v3s16 crack_pos) { if (crack_level >= 0) m_crack_pos_relative = crack_pos - m_blockpos*MAP_BLOCKSIZE; } -void MeshMakeData::setSmoothLighting(bool smooth_lighting) -{ - m_smooth_lighting = smooth_lighting; -} - /* Light and vertex color functions */ @@ -146,7 +165,7 @@ u16 getFaceLight(MapNode n, MapNode n2, const NodeDefManager *ndef) static u16 getSmoothLightCombined(const v3s16 &p, const std::array &dirs, MeshMakeData *data) { - const NodeDefManager *ndef = data->nodedef; + const NodeDefManager *ndef = data->m_nodedef; u16 ambient_occlusion = 0; u16 light_count = 0; @@ -288,7 +307,8 @@ u16 getSmoothLightTransparent(const v3s16 &p, const v3s16 &corner, MeshMakeData return getSmoothLightCombined(p, dirs, data); } -void get_sunlight_color(video::SColorf *sunlight, u32 daynight_ratio){ +void get_sunlight_color(video::SColorf *sunlight, u32 daynight_ratio) +{ f32 rg = daynight_ratio / 1000.0f - 0.04f; f32 b = (0.98f * daynight_ratio) / 1000.0f + 0.078f; sunlight->r = rg; @@ -342,7 +362,7 @@ void final_color_blend(video::SColor *result, */ void getNodeTileN(MapNode mn, const v3s16 &p, u8 tileindex, MeshMakeData *data, TileSpec &tile) { - const NodeDefManager *ndef = data->nodedef; + const NodeDefManager *ndef = data->m_nodedef; const ContentFeatures &f = ndef->get(mn); tile = f.tiles[tileindex]; bool has_crack = p == data->m_crack_pos_relative; @@ -362,7 +382,7 @@ void getNodeTileN(MapNode mn, const v3s16 &p, u8 tileindex, MeshMakeData *data, */ void getNodeTile(MapNode mn, const v3s16 &p, const v3s16 &dir, MeshMakeData *data, TileSpec &tile) { - const NodeDefManager *ndef = data->nodedef; + const NodeDefManager *ndef = data->m_nodedef; // Direction must be (1,0,0), (-1,0,0), (0,1,0), (0,-1,0), // (0,0,1), (0,0,-1) or (0,0,0) @@ -611,30 +631,31 @@ void PartialMeshBuffer::draw(video::IVideoDriver *driver) const MapBlockMesh */ -MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offset) : +MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data): - far_step{data->far_step}, - lod_step{data->lod_step}, - fscale{data->fscale}, - timestamp{data->timestamp}, + far_step{data->far_step}, + lod_step{data->lod_step}, + fscale{data->fscale}, + timestamp{data->timestamp}, - m_tsrc(client->getTextureSource()), m_shdrsrc(client->getShaderSource()), - m_bounding_sphere_center((fscale * data->side_length * 0.5f - 0.5f) * BS), + m_tsrc(client->getTextureSource()), + m_shdrsrc(client->getShaderSource()), + m_bounding_sphere_center((data->m_side_length * 0.5f - 0.5f) * BS), m_animation_force_timer(0), // force initial animation - m_last_crack(-1), - m_last_daynight_ratio((u32) -1) + m_last_crack(-1) { ZoneScoped; for (auto &m : m_mesh) m = make_irr(); - m_enable_shaders = data->m_use_shaders; - auto mesh_grid = client->getMeshGrid(); + auto mesh_grid = data->m_mesh_grid; v3s16 bp = data->m_blockpos; - // Only generate minimap mapblocks at even coordinates. + // Only generate minimap mapblocks at grid aligned coordinates. + // FIXME: ^ doesn't really make sense. and in practice, bp is always aligned if (fscale<=1) // || !data->block->getMesh()) - if (mesh_grid.isMeshPos(bp) && client->getMinimap()) { + if (mesh_grid.isMeshPos(bp) && data->m_generate_minimap) { + // meshgen area always fits into a grid cell m_minimap_mapblocks.resize(mesh_grid.getCellVolume(), nullptr); v3s16 ofs; @@ -651,28 +672,20 @@ MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offs } } + // algin vertices to mesh grid, not meshgen area v3f offset = intToFloat((data->m_blockpos - mesh_grid.getMeshPos(data->m_blockpos)) * MAP_BLOCKSIZE, BS); + MeshCollector collector(m_bounding_sphere_center, offset); - /* - Add special graphics: - - torches - - flowing water - - fences - - whatever - */ { - MapblockMeshGenerator(data, &collector, - client->getSceneManager()->getMeshManipulator()).generate(); + // Generate everything + MapblockMeshGenerator(data, &collector).generate(); } /* Convert MeshCollector to SMesh */ - const bool desync_animations = g_settings->getBool( - "desynchronize_mapblock_texture_animation"); - m_bounding_radius = std::sqrt(collector.m_bounding_radius_sq); for (int layer = 0; layer < MAX_TILE_LAYERS; layer++) { @@ -710,44 +723,10 @@ MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offs auto &info = m_animation_info[{layer, i}]; info.tile = p.layer; info.frame = 0; - if (desync_animations) { - // Get starting position from noise - info.frame_offset = - 100000 * (2.0 + noise3d( - data->m_blockpos.X, data->m_blockpos.Y, - data->m_blockpos.Z, 0)); - } else { - // Play all synchronized - info.frame_offset = 0; - } // Replace tile texture with the first animation frame p.layer.texture = (*p.layer.frames)[0].texture; } - if (!m_enable_shaders) { - // Extract colors for day-night animation - // Dummy sunlight to handle non-sunlit areas - video::SColorf sunlight; - get_sunlight_color(&sunlight, 0); - - std::map colors; - const u32 vertex_count = p.vertices.size(); - for (u32 j = 0; j < vertex_count; j++) { - video::SColor *vc = &p.vertices[j].Color; - video::SColor copy = *vc; - if (vc->getAlpha() == 0) // No sunlight - no need to animate - final_color_blend(vc, copy, sunlight); // Finalize color - else // Record color to animate - colors[j] = copy; - - // The sunlight ratio has been stored, - // delete alpha (for the final rendering). - vc->setAlpha(255); - } - if (!colors.empty()) - m_daynight_diffs[{layer, i}] = std::move(colors); - } - // Create material video::SMaterial material; material.BackfaceCulling = true; @@ -757,16 +736,24 @@ MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offs tex.MinFilter = video::ETMINF_NEAREST_MIPMAP_NEAREST; tex.MagFilter = video::ETMAGF_NEAREST; }); + /* + * The second layer is for overlays, but uses the same vertex positions + * as the first, which quickly leads to z-fighting. + * To fix this we can offset the polygons in the direction of the camera. + * This only affects the depth buffer and leads to no visual gaps in geometry. + */ + if (layer == 1) { + material.PolygonOffsetSlopeScale = -1; + material.PolygonOffsetDepthBias = -1; + } #if !FARMESH_SHADOWS if (data->far_step <= 0) #endif - if (m_enable_shaders) { + { material.MaterialType = m_shdrsrc->getShaderInfo( p.layer.shader_id).material; p.layer.applyMaterialOptionsWithShaders(material); - } else { - p.layer.applyMaterialOptions(material); } scene::SMeshBuffer *buf = new scene::SMeshBuffer(); @@ -803,13 +790,12 @@ MapBlockMesh::MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offs } } - if (data->lod_step <= 0) - m_bsp_tree.buildTree(&m_transparent_triangles, data->side_length); + if (data->lod_step <= 0) + m_bsp_tree.buildTree(&m_transparent_triangles, data->m_side_length); // Check if animation is required for this mesh m_has_animation = !m_crack_materials.empty() || - !m_daynight_diffs.empty() || !m_animation_info.empty(); } @@ -876,8 +862,8 @@ bool MapBlockMesh::animate(bool faraway, float time, int crack, for (auto &it : m_animation_info) { const TileLayer &tile = it.second.tile; // Figure out current frame - int frameno = (int)(time * 1000 / tile.animation_frame_length_ms - + it.second.frame_offset) % tile.animation_frame_count; + int frameno = (int)(time * 1000 / tile.animation_frame_length_ms) % + tile.animation_frame_count; // If frame doesn't change, skip if (frameno == it.second.frame) continue; @@ -890,30 +876,11 @@ bool MapBlockMesh::animate(bool faraway, float time, int crack, buf->getMaterial().setTexture(0, frame.texture); } - // Day-night transition - if (!m_enable_shaders && (daynight_ratio != m_last_daynight_ratio)) { - video::SColorf day_color; - get_sunlight_color(&day_color, daynight_ratio); - - for (auto &daynight_diff : m_daynight_diffs) { - auto *mesh = m_mesh[daynight_diff.first.first].get(); - mesh->setDirty(scene::EBT_VERTEX); // force reload to VBO - scene::IMeshBuffer *buf = mesh-> - getMeshBuffer(daynight_diff.first.second); - buf->setDirty(irr::scene::EBT_VERTEX); - video::S3DVertex *vertices = (video::S3DVertex *)buf->getVertices(); - if(vertices) - for (const auto &j : daynight_diff.second) - final_color_blend(&(vertices[j.first].Color), j.second, - day_color); - } - m_last_daynight_ratio = daynight_ratio; - } - return true; } -void MapBlockMesh::updateTransparentBuffers(v3f camera_pos, v3s16 block_pos) +void MapBlockMesh::updateTransparentBuffers(v3f camera_pos, v3s16 block_pos, + bool group_by_buffers) { // nothing to do if the entire block is opaque if (m_transparent_triangles.empty()) @@ -929,24 +896,56 @@ void MapBlockMesh::updateTransparentBuffers(v3f camera_pos, v3s16 block_pos) m_transparent_buffers_consolidated = false; m_transparent_buffers.clear(); + std::vector>> ordered_strains; + std::unordered_map strain_idxs; + + if (group_by_buffers) { + // find (reversed) order for strains, by iterating front-to-back + // (if a buffer A has a triangle nearer than all triangles of another + // buffer B, A should be drawn in front of (=after) B) + scene::SMeshBuffer *current_buffer = nullptr; + for (auto it = triangle_refs.rbegin(); it != triangle_refs.rend(); ++it) { + const auto &t = m_transparent_triangles[*it]; + if (current_buffer == t.buffer) + continue; + current_buffer = t.buffer; + auto [_it2, is_new] = + strain_idxs.emplace(current_buffer, ordered_strains.size()); + if (is_new) + ordered_strains.emplace_back(current_buffer, std::vector{}); + } + } + + // find order for triangles, by iterating back-to-front scene::SMeshBuffer *current_buffer = nullptr; - std::vector current_strain; + std::vector *current_strain = nullptr; for (auto i : triangle_refs) { const auto &t = m_transparent_triangles[i]; if (current_buffer != t.buffer) { - if (current_buffer) { - m_transparent_buffers.emplace_back(current_buffer, std::move(current_strain)); - current_strain.clear(); - } current_buffer = t.buffer; + if (group_by_buffers) { + auto it = strain_idxs.find(current_buffer); + assert(it != strain_idxs.end()); + current_strain = &ordered_strains[it->second].second; + } else { + ordered_strains.emplace_back(current_buffer, std::vector{}); + current_strain = &ordered_strains.back().second; + } } - current_strain.push_back(t.p1); - current_strain.push_back(t.p2); - current_strain.push_back(t.p3); + current_strain->push_back(t.p1); + current_strain->push_back(t.p2); + current_strain->push_back(t.p3); } - if (!current_strain.empty()) - m_transparent_buffers.emplace_back(current_buffer, std::move(current_strain)); + m_transparent_buffers.reserve(ordered_strains.size()); + if (group_by_buffers) { + // the order was reversed + for (auto it = ordered_strains.rbegin(); it != ordered_strains.rend(); ++it) + m_transparent_buffers.emplace_back(it->first, std::move(it->second)); + } else { + for (auto it = ordered_strains.begin(); it != ordered_strains.end(); ++it) + m_transparent_buffers.emplace_back(it->first, std::move(it->second)); + } } void MapBlockMesh::consolidateTransparentBuffers() @@ -1009,21 +1008,22 @@ video::SColor encode_light(u16 light, u8 emissive_light) u8 get_solid_sides(MeshMakeData *data) { - std::unordered_map results; v3s16 blockpos_nodes = data->m_blockpos * MAP_BLOCKSIZE; - const NodeDefManager *ndef = data->nodedef; + const NodeDefManager *ndef = data->m_nodedef; - u8 result = 0x3F; // all sides solid; + const u16 side = data->m_side_length; + // assert(data->m_vmanip.m_area.contains(blockpos_nodes + v3s16(side - 1))); - for (s16 i = 0; i < data->side_length && result != 0; i++) - for (s16 j = 0; j < data->side_length && result != 0; j++) { + u8 result = 0x3F; // all sides solid + for (s16 i = 0; i < side && result != 0; i++) + for (s16 j = 0; j < side && result != 0; j++) { v3s16 positions[6] = { v3s16(0, i, j), - v3s16(data->side_length - 1, i, j), + v3s16(side - 1, i, j), v3s16(i, 0, j), - v3s16(i, data->side_length - 1, j), + v3s16(i, side - 1, j), v3s16(i, j, 0), - v3s16(i, j, data->side_length - 1) + v3s16(i, j, side - 1) }; for (u8 k = 0; k < 6; k++) { diff --git a/src/client/mapblock_mesh.h b/src/client/mapblock_mesh.h index 9516f32ef..db776e9f6 100644 --- a/src/client/mapblock_mesh.h +++ b/src/client/mapblock_mesh.h @@ -4,8 +4,11 @@ #pragma once -#include "irrlichttypes_extrabloated.h" +#include "irrlichttypes.h" #include "irr_ptr.h" +#include "IMesh.h" +#include "SMeshBuffer.h" + #include "util/numeric.h" #include "client/tile.h" #include "voxel.h" @@ -13,6 +16,10 @@ #include #include +namespace irr::video { + class IVideoDriver; +} + class Client; class NodeDefManager; class IShaderSource; @@ -29,13 +36,23 @@ struct MinimapMapblock; struct MeshMakeData { VoxelManipulator m_vmanip_store; - v3s16 m_blockpos = v3s16(-1337,-1337,-1337); - v3s16 m_crack_pos_relative = v3s16(-1337,-1337,-1337); - bool m_smooth_lighting = false; - u16 side_length; - const NodeDefManager *nodedef; - bool m_use_shaders; + // base pos of meshgen area, in blocks + v3s16 m_blockpos = v3s16(-1337,-1337,-1337); + // size of meshgen area, in nodes. + // vmanip will have at least an extra 1 node onion layer. + // area is expected to fit into mesh grid cell. + u16 m_side_length; + // vertex positions will be relative to this grid + MeshGrid m_mesh_grid; + + // relative to blockpos + v3s16 m_crack_pos_relative = v3s16(-1337,-1337,-1337); + bool m_generate_minimap = false; + bool m_smooth_lighting = false; + bool m_enable_water_reflections = false; + + const NodeDefManager *m_nodedef; // fm: NodeContainer & m_vmanip; @@ -50,7 +67,7 @@ struct MeshMakeData bool debug{}; // == - explicit MeshMakeData(const NodeDefManager *ndef, u16 side_length, bool use_shaders + MeshMakeData(const NodeDefManager *ndef, u16 side_length, MeshGrid mesh_grid , int lod_step = 0 , int far_step = 0 , NodeContainer * nodecontainer = {} @@ -62,15 +79,15 @@ struct MeshMakeData void fillBlockDataBegin(const v3s16 &blockpos); void fillBlockData(const v3s16 &bp, MapNode *data); + /* + Prepare block data for rendering a single node located at (0,0,0). + */ + void fillSingleNode(MapNode data, MapNode padding = MapNode(CONTENT_AIR)); + /* Set the (node) position of a crack */ void setCrack(int crack_level, v3s16 crack_pos); - - /* - Enable or disable smooth lighting - */ - void setSmoothLighting(bool smooth_lighting); }; // represents a triangle as indexes into the vertex buffer in SMeshBuffer @@ -170,19 +187,17 @@ private: /* Holds a mesh for a mapblock. - Besides the SMesh*, this contains information used for animating - the vertex positions, colors and texture coordinates of the mesh. + Besides the SMesh*, this contains information used fortransparency sorting + and texture animation. For example: - - cracks [implemented] - - day/night transitions [implemented] - - animated flowing liquids [not implemented] - - animating vertex positions for e.g. axles [not implemented] + - cracks + - day/night transitions */ class MapBlockMesh { public: // Builds the mesh given - MapBlockMesh(Client *client, MeshMakeData *data, v3s16 camera_offset); + MapBlockMesh(Client *client, MeshMakeData *data); ~MapBlockMesh(); // Main animation function, parameters: @@ -193,13 +208,17 @@ public: // Returns true if anything has been changed. bool animate(bool faraway, float time, int crack, u32 daynight_ratio); + /// @warning ClientMap requires that the vertex and index data is not modified scene::IMesh *getMesh() { return m_mesh[0].get(); } + /// @param layer layer index + /// @warning ClientMap requires that the vertex and index data is not modified scene::IMesh *getMesh(u8 layer) { + assert(layer < MAX_TILE_LAYERS); return m_mesh[layer].get(); } @@ -245,8 +264,14 @@ public: /// Center of the bounding-sphere, in BS-space, relative to block pos. v3f getBoundingSphereCenter() const { return m_bounding_sphere_center; } - /// update transparent buffers to render towards the camera - void updateTransparentBuffers(v3f camera_pos, v3s16 block_pos); + /** Update transparent buffers to render towards the camera. + * @param group_by_buffers If true, triangles in the same buffer are batched + * into the same PartialMeshBuffer, resulting in fewer draw calls, but + * wrong order. Triangles within a single buffer are still ordered, and + * buffers are ordered relative to each other (with respect to their nearest + * triangle). + */ + void updateTransparentBuffers(v3f camera_pos, v3s16 block_pos, bool group_by_buffers); void consolidateTransparentBuffers(); /// get the list of transparent buffers @@ -258,7 +283,6 @@ public: private: struct AnimationInfo { int frame; // last animation frame - int frame_offset; TileLayer tile; }; @@ -270,8 +294,6 @@ private: f32 m_bounding_radius; v3f m_bounding_sphere_center; - bool m_enable_shaders; - // Must animate() be called before rendering? bool m_has_animation; int m_animation_force_timer; @@ -287,14 +309,6 @@ private: // Keys are pairs of (mesh index, buffer index in the mesh) std::map, AnimationInfo> m_animation_info; - // Animation info: day/night transitions - // Last daynight_ratio value passed to animate() - u32 m_last_daynight_ratio; - // For each mesh and mesh buffer, stores pre-baked colors - // of sunlit vertices - // Keys are pairs of (mesh index, buffer index in the mesh) - std::map, std::map > m_daynight_diffs; - // list of all semitransparent triangles in the mapblock std::vector m_transparent_triangles; // Binary Space Partitioning tree for the block diff --git a/src/client/mesh.cpp b/src/client/mesh.cpp index 900731a23..7b6a2efe3 100644 --- a/src/client/mesh.cpp +++ b/src/client/mesh.cpp @@ -3,7 +3,6 @@ // Copyright (C) 2010-2013 celeron55, Perttu Ahola #include "mesh.h" -#include "S3DVertex.h" #include "debug.h" #include "log.h" #include @@ -12,6 +11,9 @@ #include #include "client/tile.h" #include +#include "S3DVertex.h" +#include "SMesh.h" +#include "SMeshBuffer.h" inline static void applyShadeFactor(video::SColor& color, float factor) { @@ -106,8 +108,7 @@ void scaleMesh(scene::IMesh *mesh, v3f scale) if (mesh == NULL) return; - aabb3f bbox; - bbox.reset(0, 0, 0); + aabb3f bbox{{0.0f, 0.0f, 0.0f}}; u32 mc = mesh->getMeshBufferCount(); for (u32 j = 0; j < mc; j++) { @@ -135,8 +136,7 @@ void translateMesh(scene::IMesh *mesh, v3f vec) if (mesh == NULL) return; - aabb3f bbox; - bbox.reset(0, 0, 0); + aabb3f bbox{{0.0f, 0.0f, 0.0f}}; u32 mc = mesh->getMeshBufferCount(); for (u32 j = 0; j < mc; j++) { @@ -250,10 +250,14 @@ static void rotateMesh(scene::IMesh *mesh, float degrees) float c = std::cos(degrees); float s = std::sin(degrees); auto rotator = [c, s] (video::S3DVertex *vertex) { - float u = vertex->Pos.*U; - float v = vertex->Pos.*V; - vertex->Pos.*U = c * u - s * v; - vertex->Pos.*V = s * u + c * v; + auto rotate_vec = [c, s] (v3f &vec) { + float u = vec.*U; + float v = vec.*V; + vec.*U = c * u - s * v; + vec.*V = s * u + c * v; + }; + rotate_vec(vertex->Pos); + rotate_vec(vertex->Normal); }; applyToMesh(mesh, rotator); } @@ -273,9 +277,9 @@ void rotateMeshYZby(scene::IMesh *mesh, f64 degrees) rotateMesh<&v3f::Y, &v3f::Z>(mesh, degrees); } -void rotateMeshBy6dFacedir(scene::IMesh *mesh, int facedir) +void rotateMeshBy6dFacedir(scene::IMesh *mesh, u8 facedir) { - int axisdir = facedir >> 2; + u8 axisdir = facedir >> 2; facedir &= 0x03; switch (facedir) { case 1: rotateMeshXZby(mesh, -90); break; @@ -293,8 +297,7 @@ void rotateMeshBy6dFacedir(scene::IMesh *mesh, int facedir) void recalculateBoundingBox(scene::IMesh *src_mesh) { - aabb3f bbox; - bbox.reset(0,0,0); + aabb3f bbox{{0.0f, 0.0f, 0.0f}}; for (u16 j = 0; j < src_mesh->getMeshBufferCount(); j++) { scene::IMeshBuffer *buf = src_mesh->getMeshBuffer(j); buf->recalculateBoundingBox(); diff --git a/src/client/mesh.h b/src/client/mesh.h index 5fd0ebb0e..d8eb6080e 100644 --- a/src/client/mesh.h +++ b/src/client/mesh.h @@ -4,10 +4,20 @@ #pragma once +#include "SColor.h" #include "SMaterialLayer.h" -#include "irrlichttypes_extrabloated.h" #include "nodedef.h" +namespace irr { + namespace scene { + class IAnimatedMesh; + class IMesh; + class IMeshBuffer; + } +} + +using namespace irr; + /*! * Applies shading to a color based on the surface's * normal vector. @@ -68,7 +78,7 @@ void setMeshColorByNormal(scene::IMesh *mesh, const v3f &normal, Rotate the mesh by 6d facedir value. Method only for meshnodes, not suitable for entities. */ -void rotateMeshBy6dFacedir(scene::IMesh *mesh, int facedir); +void rotateMeshBy6dFacedir(scene::IMesh *mesh, u8 facedir); /* Rotate the mesh around the axis and given angle in degrees. diff --git a/src/client/mesh_generator_thread.cpp b/src/client/mesh_generator_thread.cpp index 0bd1ae0b1..59e8e1587 100644 --- a/src/client/mesh_generator_thread.cpp +++ b/src/client/mesh_generator_thread.cpp @@ -42,8 +42,8 @@ QueuedMeshUpdate::~QueuedMeshUpdate() MeshUpdateQueue::MeshUpdateQueue(Client *client): m_client(client) { - m_cache_enable_shaders = g_settings->getBool("enable_shaders"); m_cache_smooth_lighting = g_settings->getBool("smooth_lighting"); + m_cache_enable_water_reflections = g_settings->getBool("enable_water_reflections"); } MeshUpdateQueue::~MeshUpdateQueue() @@ -185,7 +185,10 @@ void MeshUpdateQueue::fillDataFromMapBlocks(QueuedMeshUpdate *q) getNodeBlockPos( floatToInt(m_client->m_env.getLocalPlayer()->getPosition(), BS)), q->p, m_client->getEnv().getLocalPlayer()->getSpeed().getLength()); - MeshMakeData * data = new MeshMakeData(m_client->ndef(), MAP_BLOCKSIZE * mesh_grid.cell_size, m_cache_enable_shaders, lod_step, 0); + + MeshMakeData *data = new MeshMakeData(m_client->ndef(), + MAP_BLOCKSIZE * mesh_grid.cell_size, mesh_grid, + lod_step, 0); q->data = data; data->fillBlockDataBegin(q->p); @@ -210,7 +213,9 @@ void MeshUpdateQueue::fillDataFromMapBlocks(QueuedMeshUpdate *q) } data->setCrack(q->crack_level, q->crack_pos); - data->setSmoothLighting(m_cache_smooth_lighting); + data->m_generate_minimap = !!m_client->getMinimap(); + data->m_smooth_lighting = m_cache_smooth_lighting; + data->m_enable_water_reflections = m_cache_enable_water_reflections; data->range = getNodeBlockPos(floatToInt(m_client->m_env.getLocalPlayer()->getPosition(), BS)).getDistanceFrom(q->p); } @@ -219,8 +224,8 @@ void MeshUpdateQueue::fillDataFromMapBlocks(QueuedMeshUpdate *q) MeshUpdateWorkerThread */ -MeshUpdateWorkerThread::MeshUpdateWorkerThread(Client *client, MeshUpdateQueue *queue_in, MeshUpdateManager *manager, v3s16 *camera_offset) : - UpdateThread("Mesh"), m_client(client), m_queue_in(queue_in), m_manager(manager), m_camera_offset(camera_offset) +MeshUpdateWorkerThread::MeshUpdateWorkerThread(Client *client, MeshUpdateQueue *queue_in, MeshUpdateManager *manager) : + UpdateThread("Mesh"), m_client(client), m_queue_in(queue_in), m_manager(manager) { m_generation_interval = g_settings->getU16("mesh_generation_interval"); m_generation_interval = rangelim(m_generation_interval, 0, 50); @@ -237,7 +242,7 @@ void MeshUpdateWorkerThread::doUpdate() ScopeProfiler sp(g_profiler, "Client: Mesh making (sum)"); - const auto mesh_new = std::make_shared(m_client, q->data, *m_camera_offset); + const auto mesh_new = std::make_shared(m_client, q->data); MeshUpdateResult r; r.p = q->p; @@ -272,9 +277,9 @@ MeshUpdateManager::MeshUpdateManager(Client *client): infostream << "MeshUpdateManager: using " << number_of_threads << " threads" << std::endl; for (int i = 0; i < number_of_threads; i++) - m_workers.push_back(std::make_unique(client, &m_queue_in, this, &m_camera_offset)); + m_workers.push_back(std::make_unique(client, &m_queue_in, this)); - m_workers.push_back(std::make_unique(client, &m_queue_in_urgent, this, &m_camera_offset)); + m_workers.push_back(std::make_unique(client, &m_queue_in_urgent, this)); } void MeshUpdateManager::updateBlock(Map *map, v3s16 p, bool ack_block_to_server, diff --git a/src/client/mesh_generator_thread.h b/src/client/mesh_generator_thread.h index d7b5d9013..825d3e078 100644 --- a/src/client/mesh_generator_thread.h +++ b/src/client/mesh_generator_thread.h @@ -71,12 +71,11 @@ private: std::unordered_set m_inflight_blocks; std::mutex m_mutex; - // TODO: Add callback to update these when g_settings changes - bool m_cache_enable_shaders; + // TODO: Add callback to update these when g_settings changes, and update all meshes bool m_cache_smooth_lighting; + bool m_cache_enable_water_reflections; void fillDataFromMapBlocks(QueuedMeshUpdate *q); - void cleanupCache(); }; struct MeshUpdateResult @@ -96,7 +95,7 @@ class MeshUpdateManager; class MeshUpdateWorkerThread : public UpdateThread { public: - MeshUpdateWorkerThread(Client *client, MeshUpdateQueue *queue_in, MeshUpdateManager *manager, v3s16 *camera_offset); + MeshUpdateWorkerThread(Client *client, MeshUpdateQueue *queue_in, MeshUpdateManager *manager); protected: virtual void doUpdate(); @@ -105,7 +104,6 @@ private: Client *m_client; MeshUpdateQueue *m_queue_in; MeshUpdateManager *m_manager; - v3s16 *m_camera_offset; // TODO: Add callback to update these when g_settings changes int m_generation_interval; @@ -124,8 +122,6 @@ public: bool getNextResult(MeshUpdateResult &r); - v3s16 m_camera_offset; - void start(); void stop(); void wait(); diff --git a/src/client/meshgen/collector.cpp b/src/client/meshgen/collector.cpp index 476f3112b..5a4fb8489 100644 --- a/src/client/meshgen/collector.cpp +++ b/src/client/meshgen/collector.cpp @@ -41,45 +41,6 @@ void MeshCollector::append(const TileLayer &layer, const video::S3DVertex *verti p.indices.push_back(indices[i] + vertex_count); } -void MeshCollector::append(const TileSpec &tile, const video::S3DVertex *vertices, - u32 numVertices, const u16 *indices, u32 numIndices, v3f pos, - video::SColor c, u8 light_source) -{ - for (int layernum = 0; layernum < MAX_TILE_LAYERS; layernum++) { - const TileLayer *layer = &tile.layers[layernum]; - if (layer->texture_id == 0) - continue; - append(*layer, vertices, numVertices, indices, numIndices, pos, c, - light_source, layernum, tile.world_aligned); - } -} - -void MeshCollector::append(const TileLayer &layer, const video::S3DVertex *vertices, - u32 numVertices, const u16 *indices, u32 numIndices, v3f pos, - video::SColor c, u8 light_source, u8 layernum, bool use_scale) -{ - PreMeshBuffer &p = findBuffer(layer, layernum, numVertices); - - f32 scale = 1.0f; - if (use_scale) - scale = 1.0f / layer.scale; - - u32 vertex_count = p.vertices.size(); - for (u32 i = 0; i < numVertices; i++) { - video::SColor color = c; - if (!light_source) - applyFacesShading(color, vertices[i].Normal); - auto vpos = vertices[i].Pos + pos + offset; - p.vertices.emplace_back(vpos, vertices[i].Normal, color, - scale * vertices[i].TCoords); - m_bounding_radius_sq = std::max(m_bounding_radius_sq, - (vpos - m_center_pos).getLengthSQ()); - } - - for (u32 i = 0; i < numIndices; i++) - p.indices.push_back(indices[i] + vertex_count); -} - PreMeshBuffer &MeshCollector::findBuffer( const TileLayer &layer, u8 layernum, u32 numVertices) { diff --git a/src/client/meshgen/collector.h b/src/client/meshgen/collector.h index 79256e262..693e2be04 100644 --- a/src/client/meshgen/collector.h +++ b/src/client/meshgen/collector.h @@ -35,21 +35,12 @@ struct MeshCollector void append(const TileSpec &material, const video::S3DVertex *vertices, u32 numVertices, const u16 *indices, u32 numIndices); - void append(const TileSpec &material, - const video::S3DVertex *vertices, u32 numVertices, - const u16 *indices, u32 numIndices, - v3f pos, video::SColor c, u8 light_source); private: void append(const TileLayer &material, const video::S3DVertex *vertices, u32 numVertices, const u16 *indices, u32 numIndices, u8 layernum, bool use_scale = false); - void append(const TileLayer &material, - const video::S3DVertex *vertices, u32 numVertices, - const u16 *indices, u32 numIndices, - v3f pos, video::SColor c, u8 light_source, - u8 layernum, bool use_scale = false); PreMeshBuffer &findBuffer(const TileLayer &layer, u8 layernum, u32 numVertices); }; diff --git a/src/client/minimap.cpp b/src/client/minimap.cpp index 60f959d03..20628c2a6 100644 --- a/src/client/minimap.cpp +++ b/src/client/minimap.cpp @@ -190,7 +190,6 @@ Minimap::Minimap(Client *client) m_current_mode_index = 0; // Initialize static settings - m_enable_shaders = g_settings->getBool("enable_shaders"); m_surface_mode_scan_height = g_settings->getBool("minimap_double_scan_height") ? 256 : 128; @@ -498,17 +497,15 @@ video::ITexture *Minimap::getMinimapTexture() blitMinimapPixelsToImageRadar(map_image); break; case MINIMAP_TYPE_TEXTURE: - // Want to use texture source, to : 1 find texture, 2 cache it + // FIXME: this is a pointless roundtrip through the gpu video::ITexture* texture = m_tsrc->getTexture(data->mode.texture); video::IImage* image = driver->createImageFromData( - texture->getColorFormat(), texture->getSize(), - texture->lock(video::ETLM_READ_ONLY), true, false); - texture->unlock(); + texture->getColorFormat(), texture->getSize(), + texture->lock(video::ETLM_READ_ONLY), true, false); auto dim = image->getDimension(); map_image->fill(video::SColor(255, 0, 0, 0)); - image->copyTo(map_image, irr::core::vector2d { ((data->mode.map_size - (static_cast(dim.Width))) >> 1) @@ -516,7 +513,9 @@ video::ITexture *Minimap::getMinimapTexture() ((data->mode.map_size - (static_cast(dim.Height))) >> 1) + data->pos.Z / data->mode.scale }); + image->drop(); + texture->unlock(); } map_image->copyToScaling(minimap_image); @@ -621,8 +620,8 @@ void Minimap::drawMinimap(core::rect rect) material.TextureLayers[0].Texture = minimap_texture; material.TextureLayers[1].Texture = data->heightmap_texture; - if (m_enable_shaders && data->mode.type == MINIMAP_TYPE_SURFACE) { - auto sid = m_shdrsrc->getShader("minimap_shader", TILE_MATERIAL_ALPHA); + if (data->mode.type == MINIMAP_TYPE_SURFACE) { + auto sid = m_shdrsrc->getShaderRaw("minimap_shader", true); material.MaterialType = m_shdrsrc->getShaderInfo(sid).material; } else { material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; diff --git a/src/client/minimap.h b/src/client/minimap.h index 4c06ff666..7fce1f260 100644 --- a/src/client/minimap.h +++ b/src/client/minimap.h @@ -4,19 +4,37 @@ #pragma once -#include "../hud.h" #include "fm_nodecontainer.h" -#include "irrlichttypes_extrabloated.h" + +#include "irrlichttypes.h" #include "irr_ptr.h" +#include "rect.h" +#include "SMeshBuffer.h" + +#include "../hud.h" +#include "mapnode.h" #include "util/thread.h" -#include "voxel.h" #include #include #include +namespace irr { + namespace video { + class IVideoDriver; + class IImage; + class ITexture; + } + + namespace scene { + class ISceneNode; + } +} + class Client; +class NodeDefManager; class ITextureSource; class IShaderSource; +class VoxelManipulator; #include "util/unordered_map_hash.h" @@ -159,7 +177,6 @@ private: const NodeDefManager *m_ndef; std::unique_ptr m_minimap_update_thread; irr_ptr m_meshbuffer; - bool m_enable_shaders; std::vector m_modes; size_t m_current_mode_index; u16 m_surface_mode_scan_height; diff --git a/src/client/particles.cpp b/src/client/particles.cpp index 62b9c712f..d9a564dce 100644 --- a/src/client/particles.cpp +++ b/src/client/particles.cpp @@ -22,6 +22,10 @@ #include "settings.h" #include "profiler.h" +#include "SMeshBuffer.h" + +using BlendMode = ParticleParamTypes::BlendMode; + ClientParticleTexture::ClientParticleTexture(const ServerParticleTexture& p, ITextureSource *tsrc) { tex = p; @@ -89,7 +93,7 @@ void Particle::step(float dtime, ClientEnvironment *env) aabb3f box(v3f(-m_p.size / 2.0f), v3f(m_p.size / 2.0f)); v3f p_pos = m_pos * BS; v3f p_velocity = m_velocity * BS; - collisionMoveResult r = collisionMoveSimple(env, env->getGameDef(), BS * 0.5f, + collisionMoveResult r = collisionMoveSimple(env, env->getGameDef(), box, 0.0f, dtime, &p_pos, &p_velocity, m_acceleration * BS, nullptr, m_p.object_collision); @@ -267,6 +271,7 @@ ParticleSpawner::ParticleSpawner( } size_t max_particles = 0; // maximum number of particles likely to be visible at any given time + assert(p.time >= 0); if (p.time != 0) { auto maxGenerations = p.time / std::min(p.exptime.start.min, p.exptime.end.min); max_particles = p.amount / maxGenerations; @@ -386,7 +391,7 @@ void ParticleSpawner::spawnParticle(ClientEnvironment *env, float radius, } case ParticleParamTypes::AttractorKind::line: { - // https://github.com/minetest/minetest/issues/11505#issuecomment-915612700 + // const auto& lorigin = attractor_origin; v3f ldir = attractor_direction; ldir.normalize(); @@ -402,7 +407,7 @@ void ParticleSpawner::spawnParticle(ClientEnvironment *env, float radius, } case ParticleParamTypes::AttractorKind::plane: { - // https://github.com/minetest/minetest/issues/11505#issuecomment-915612700 + // const v3f& porigin = attractor_origin; v3f normal = attractor_direction; normal.normalize(); @@ -602,8 +607,11 @@ video::S3DVertex *ParticleBuffer::getVertices(u16 index) void ParticleBuffer::OnRegisterSceneNode() { - if (IsVisible) - SceneManager->registerNodeForRendering(this, scene::ESNRP_TRANSPARENT_EFFECT); + if (IsVisible) { + SceneManager->registerNodeForRendering(this, + m_mesh_buffer->getMaterial().MaterialType == video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF + ? scene::ESNRP_SOLID : scene::ESNRP_TRANSPARENT_EFFECT); + } scene::ISceneNode::OnRegisterSceneNode(); } @@ -612,15 +620,22 @@ const core::aabbox3df &ParticleBuffer::getBoundingBox() const if (!m_bounding_box_dirty) return m_mesh_buffer->BoundingBox; - core::aabbox3df box; + core::aabbox3df box{{0, 0, 0}}; + bool first = true; for (u16 i = 0; i < m_count; i++) { // check if this index is used static_assert(quad_indices[1] != 0); if (m_mesh_buffer->getIndices()[6 * i + 1] == 0) continue; - for (u16 j = 0; j < 4; j++) - box.addInternalPoint(m_mesh_buffer->getPosition(i * 4 + j)); + for (u16 j = 0; j < 4; j++) { + const auto pos = m_mesh_buffer->getPosition(i * 4 + j); + if (first) + box.reset(pos); + else + box.addInternalPoint(pos); + first = false; + } } m_mesh_buffer->BoundingBox = box; @@ -910,6 +925,9 @@ void ParticleManager::addNodeParticle(IGameDef *gamedef, if (!getNodeParticleParams(n, f, p, &ref, texpos, texsize, &color)) return; + p.texture.blendmode = f.alpha == ALPHAMODE_BLEND + ? BlendMode::alpha : BlendMode::clip; + p.expirationtime = myrand_range(0, 100) / 100.0f; // Physics @@ -944,40 +962,47 @@ void ParticleManager::reserveParticleSpace(size_t max_estimate) m_particles.reserve(m_particles.size() + max_estimate); } -video::SMaterial ParticleManager::getMaterialForParticle(const ClientParticleTexRef &texture) +static void setBlendMode(video::SMaterial &material, BlendMode blendmode) { - // translate blend modes to GL blend functions video::E_BLEND_FACTOR bfsrc, bfdst; video::E_BLEND_OPERATION blendop; - const auto blendmode = texture.tex ? texture.tex->blendmode : - ParticleParamTypes::BlendMode::alpha; - switch (blendmode) { - case ParticleParamTypes::BlendMode::add: + case BlendMode::add: bfsrc = video::EBF_SRC_ALPHA; bfdst = video::EBF_DST_ALPHA; blendop = video::EBO_ADD; break; - case ParticleParamTypes::BlendMode::sub: + case BlendMode::sub: bfsrc = video::EBF_SRC_ALPHA; bfdst = video::EBF_DST_ALPHA; blendop = video::EBO_REVSUBTRACT; break; - case ParticleParamTypes::BlendMode::screen: + case BlendMode::screen: bfsrc = video::EBF_ONE; bfdst = video::EBF_ONE_MINUS_SRC_COLOR; blendop = video::EBO_ADD; break; - default: // includes ParticleParamTypes::BlendMode::alpha + default: // includes BlendMode::alpha bfsrc = video::EBF_SRC_ALPHA; bfdst = video::EBF_ONE_MINUS_SRC_ALPHA; blendop = video::EBO_ADD; break; } + material.MaterialTypeParam = video::pack_textureBlendFunc( + bfsrc, bfdst, + video::EMFN_MODULATE_1X, + video::EAS_TEXTURE | video::EAS_VERTEX_COLOR); + material.BlendOperation = blendop; +} + +video::SMaterial ParticleManager::getMaterialForParticle(const Particle *particle) +{ + const ClientParticleTexRef &texture = particle->getTextureRef(); + video::SMaterial material; // Texture @@ -988,17 +1013,18 @@ video::SMaterial ParticleManager::getMaterialForParticle(const ClientParticleTex tex.MagFilter = video::ETMAGF_NEAREST; }); - // We don't have working transparency sorting. Disable Z-Write for - // correct results for clipped-alpha at least. - material.ZWriteEnable = video::EZW_OFF; - - // enable alpha blending and set blend mode - material.MaterialType = video::EMT_ONETEXTURE_BLEND; - material.MaterialTypeParam = video::pack_textureBlendFunc( - bfsrc, bfdst, - video::EMFN_MODULATE_1X, - video::EAS_TEXTURE | video::EAS_VERTEX_COLOR); - material.BlendOperation = blendop; + const auto blendmode = particle->getBlendMode(); + if (blendmode == BlendMode::clip) { + material.ZWriteEnable = video::EZW_ON; + material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF; + material.MaterialTypeParam = 0.5f; + } else { + // We don't have working transparency sorting. Disable Z-Write for + // correct results for clipped-alpha at least. + material.ZWriteEnable = video::EZW_OFF; + material.MaterialType = video::EMT_ONETEXTURE_BLEND; + setBlendMode(material, blendmode); + } material.setTexture(0, texture.ref); return material; @@ -1008,7 +1034,7 @@ bool ParticleManager::addParticle(std::unique_ptr toadd) { MutexAutoLock lock(m_particle_list_lock); - auto material = getMaterialForParticle(toadd->getTextureRef()); + auto material = getMaterialForParticle(toadd.get()); ParticleBuffer *found = nullptr; // simple shortcut when multiple particles of the same type get added diff --git a/src/client/particles.h b/src/client/particles.h index 6a8d09a47..72294a552 100644 --- a/src/client/particles.h +++ b/src/client/particles.h @@ -4,12 +4,21 @@ #pragma once +#include "irrlichttypes_bloated.h" +#include "irr_ptr.h" +#include "ISceneNode.h" +#include "S3DVertex.h" +#include "SMeshBuffer.h" + +#include #include #include -#include "irrlichttypes_extrabloated.h" -#include "irr_ptr.h" #include "../particles.h" +namespace irr::video { + class ITexture; +} + struct ClientEvent; class ParticleManager; class ClientEnvironment; @@ -77,6 +86,9 @@ public: const ClientParticleTexRef &getTextureRef() const { return m_texture; } + ParticleParamTypes::BlendMode getBlendMode() const + { return m_texture.tex ? m_texture.tex->blendmode : m_p.texture.blendmode; } + ParticleBuffer *getBuffer() const { return m_buffer; } bool attachToBuffer(ParticleBuffer *buffer); @@ -231,7 +243,7 @@ protected: ParticleParameters &p, video::ITexture **texture, v2f &texpos, v2f &texsize, video::SColor *color, u8 tilenum = 0); - static video::SMaterial getMaterialForParticle(const ClientParticleTexRef &texture); + static video::SMaterial getMaterialForParticle(const Particle *texture); bool addParticle(std::unique_ptr toadd); diff --git a/src/client/render/anaglyph.cpp b/src/client/render/anaglyph.cpp index fe3a5f0f8..51e12d752 100644 --- a/src/client/render/anaglyph.cpp +++ b/src/client/render/anaglyph.cpp @@ -6,7 +6,7 @@ #include "anaglyph.h" #include "client/camera.h" #include - +#include /// SetColorMaskStep step @@ -18,11 +18,10 @@ void SetColorMaskStep::run(PipelineContext &context) { video::SOverrideMaterial &mat = context.device->getVideoDriver()->getOverrideMaterial(); mat.reset(); - mat.Material.ColorMask = color_mask; + mat.Material.ColorMask = static_cast(color_mask); mat.EnableProps = video::EMP_COLOR_MASK; mat.EnablePasses = scene::ESNRP_SKY_BOX | scene::ESNRP_SOLID | - scene::ESNRP_TRANSPARENT | scene::ESNRP_TRANSPARENT_EFFECT | - scene::ESNRP_SHADOW; + scene::ESNRP_TRANSPARENT | scene::ESNRP_TRANSPARENT_EFFECT; } /// ClearDepthBufferTarget diff --git a/src/client/render/core.h b/src/client/render/core.h index bfb2cb25a..f9d92bee5 100644 --- a/src/client/render/core.h +++ b/src/client/render/core.h @@ -4,7 +4,9 @@ // Copyright (C) 2017 numzero, Lobachevskiy Vitaliy #pragma once -#include "irrlichttypes_extrabloated.h" + +#include "irr_v2d.h" +#include namespace irr { diff --git a/src/client/render/interlaced.cpp b/src/client/render/interlaced.cpp index ae085877f..c4014a74d 100644 --- a/src/client/render/interlaced.cpp +++ b/src/client/render/interlaced.cpp @@ -24,7 +24,7 @@ void InitInterlacedMaskStep::run(PipelineContext &context) last_mask = mask; auto size = mask->getSize(); - u8 *data = reinterpret_cast(mask->lock()); + u8 *data = reinterpret_cast(mask->lock(video::ETLM_WRITE_ONLY)); for (u32 j = 0; j < size.Height; j++) { u8 val = j % 2 ? 0xff : 0x00; memset(data, val, 4 * size.Width); @@ -35,6 +35,13 @@ void InitInterlacedMaskStep::run(PipelineContext &context) void populateInterlacedPipeline(RenderPipeline *pipeline, Client *client) { + // FIXME: "3d_mode = interlaced" is currently broken. Two options: + // 1. Remove it + // 2. Fix it + // If you fix it, make sure to test it with "enable_post_processing = false". + // You'll probably have to add a depth texture to make that combination work. + // Also, this code should probably use selectColorFormat/selectDepthFormat. + static const u8 TEXTURE_LEFT = 0; static const u8 TEXTURE_RIGHT = 1; static const u8 TEXTURE_MASK = 2; @@ -59,12 +66,14 @@ void populateInterlacedPipeline(RenderPipeline *pipeline, Client *client) } pipeline->addStep(0.0f); + IShaderSource *s = client->getShaderSource(); - u32 shader = s->getShader("3d_interlaced_merge", TILE_MATERIAL_BASIC); + auto shader = s->getShaderRaw("3d_interlaced_merge"); video::E_MATERIAL_TYPE material = s->getShaderInfo(shader).material; auto texture_map = { TEXTURE_LEFT, TEXTURE_RIGHT, TEXTURE_MASK }; + auto merge = pipeline->addStep(material, texture_map); merge->setRenderSource(buffer); merge->setRenderTarget(pipeline->createOwned()); pipeline->addStep(); -} \ No newline at end of file +} diff --git a/src/client/render/pipeline.cpp b/src/client/render/pipeline.cpp index 5558d05b0..33b3e78e2 100644 --- a/src/client/render/pipeline.cpp +++ b/src/client/render/pipeline.cpp @@ -6,6 +6,7 @@ #include "client/client.h" #include "client/hud.h" #include "IRenderTarget.h" +#include "SColor.h" #include #include @@ -26,7 +27,7 @@ video::ITexture *TextureBuffer::getTexture(u8 index) } -void TextureBuffer::setTexture(u8 index, core::dimension2du size, const std::string &name, video::ECOLOR_FORMAT format, bool clear) +void TextureBuffer::setTexture(u8 index, core::dimension2du size, const std::string &name, video::ECOLOR_FORMAT format, bool clear, u8 msaa) { assert(index != NO_DEPTH_TEXTURE); @@ -41,9 +42,10 @@ void TextureBuffer::setTexture(u8 index, core::dimension2du size, const std::str definition.name = name; definition.format = format; definition.clear = clear; + definition.msaa = msaa; } -void TextureBuffer::setTexture(u8 index, v2f scale_factor, const std::string &name, video::ECOLOR_FORMAT format, bool clear) +void TextureBuffer::setTexture(u8 index, v2f scale_factor, const std::string &name, video::ECOLOR_FORMAT format, bool clear, u8 msaa) { assert(index != NO_DEPTH_TEXTURE); @@ -58,6 +60,7 @@ void TextureBuffer::setTexture(u8 index, v2f scale_factor, const std::string &na definition.name = name; definition.format = format; definition.clear = clear; + definition.msaa = msaa; } void TextureBuffer::reset(PipelineContext &context) @@ -120,23 +123,41 @@ bool TextureBuffer::ensureTexture(video::ITexture **texture, const TextureDefini if (!modify) return false; - if (*texture) + if (*texture) { m_driver->removeTexture(*texture); + *texture = nullptr; + } if (definition.valid) { + if (!m_driver->queryTextureFormat(definition.format)) { + errorstream << "Failed to create texture \"" << definition.name + << "\": unsupported format " << video::ColorFormatNames[definition.format] + << std::endl; + return false; + } + if (definition.clear) { + // We're not able to clear a render target texture + // We're not able to create a normal texture with MSAA + // (could be solved by more refactoring in Irrlicht, but not needed for now) + sanity_check(definition.msaa < 1); + video::IImage *image = m_driver->createImage(definition.format, size); // Cannot use image->fill because it's not implemented for all formats. std::memset(image->getData(), 0, image->getDataSizeFromFormat(definition.format, size.Width, size.Height)); *texture = m_driver->addTexture(definition.name.c_str(), image); image->drop(); - } - else { + } else if (definition.msaa > 0) { + *texture = m_driver->addRenderTargetTextureMs(size, definition.msaa, definition.name.c_str(), definition.format); + } else { *texture = m_driver->addRenderTargetTexture(size, definition.name.c_str(), definition.format); } - } - else { - *texture = nullptr; + + if (!*texture) { + errorstream << "Failed to create texture \"" << definition.name + << "\"" << std::endl; + return false; + } } return true; @@ -177,13 +198,6 @@ void TextureBufferOutput::activate(PipelineContext &context) size = texture->getSize(); } - // Use legacy call when there's single texture without depth texture - // This binds default depth buffer to the FBO - if (textures.size() == 1 && depth_stencil == NO_DEPTH_TEXTURE) { - driver->setRenderTarget(textures[0], m_clear, m_clear, context.clear_color); - return; - } - video::ITexture *depth_texture = nullptr; if (depth_stencil != NO_DEPTH_TEXTURE) depth_texture = buffer->getTexture(depth_stencil); @@ -196,6 +210,12 @@ void TextureBufferOutput::activate(PipelineContext &context) RenderTarget::activate(context); } +video::IRenderTarget *TextureBufferOutput::getIrrRenderTarget(PipelineContext &context) +{ + activate(context); // Needed to make sure that render_target is set up. + return render_target; +} + u8 DynamicSource::getTextureCount() { assert(isConfigured()); @@ -211,7 +231,7 @@ video::ITexture *DynamicSource::getTexture(u8 index) void ScreenTarget::activate(PipelineContext &context) { auto driver = context.device->getVideoDriver(); - driver->setRenderTarget(nullptr, m_clear, m_clear, context.clear_color); + driver->setRenderTargetEx(nullptr, m_clear ? video::ECBF_ALL : video::ECBF_NONE, context.clear_color); driver->OnResize(size); RenderTarget::activate(context); } diff --git a/src/client/render/pipeline.h b/src/client/render/pipeline.h index 9fa47c329..d91d523b9 100644 --- a/src/client/render/pipeline.h +++ b/src/client/render/pipeline.h @@ -3,7 +3,7 @@ // Copyright (C) 2022 x2048, Dmitry Kostenko #pragma once -#include "irrlichttypes_extrabloated.h" +#include "irrlichttypes_bloated.h" #include // used in all render/*.cpp #include // used in all render/*.cpp @@ -117,7 +117,7 @@ public: * @param name unique name of the texture * @param format color format */ - void setTexture(u8 index, core::dimension2du size, const std::string& name, video::ECOLOR_FORMAT format, bool clear = false); + void setTexture(u8 index, core::dimension2du size, const std::string& name, video::ECOLOR_FORMAT format, bool clear = false, u8 msaa = 0); /** * Configure relative-size texture for the specific index @@ -127,7 +127,7 @@ public: * @param name unique name of the texture * @param format color format */ - void setTexture(u8 index, v2f scale_factor, const std::string& name, video::ECOLOR_FORMAT format, bool clear = false); + void setTexture(u8 index, v2f scale_factor, const std::string& name, video::ECOLOR_FORMAT format, bool clear = false, u8 msaa = 0); virtual u8 getTextureCount() override { return m_textures.size(); } virtual video::ITexture *getTexture(u8 index) override; @@ -146,6 +146,7 @@ private: core::dimension2du size; std::string name; video::ECOLOR_FORMAT format; + u8 msaa; }; /** @@ -174,6 +175,9 @@ public: TextureBufferOutput(TextureBuffer *buffer, const std::vector &texture_map, u8 depth_stencil); virtual ~TextureBufferOutput() override; void activate(PipelineContext &context) override; + + video::IRenderTarget *getIrrRenderTarget(PipelineContext &context); + private: static const u8 NO_DEPTH_TEXTURE = 255; diff --git a/src/client/render/plain.cpp b/src/client/render/plain.cpp index c08ae78b2..0f94e3ef0 100644 --- a/src/client/render/plain.cpp +++ b/src/client/render/plain.cpp @@ -11,6 +11,7 @@ #include "client/hud.h" #include "client/minimap.h" #include "client/shadows/dynamicshadowsrender.h" +#include /// Draw3D pipeline step void Draw3D::run(PipelineContext &context) @@ -87,7 +88,7 @@ void UpscaleStep::run(PipelineContext &context) std::unique_ptr create3DStage(Client *client, v2f scale) { RenderStep *step = new Draw3D(); - if (g_settings->getBool("enable_shaders") && g_settings->getBool("enable_post_processing")) { + if (g_settings->getBool("enable_post_processing")) { RenderPipeline *pipeline = new RenderPipeline(); pipeline->addStep(pipeline->own(std::unique_ptr(step))); @@ -104,24 +105,30 @@ static v2f getDownscaleFactor() return v2f(1.0f / undersampling); } -RenderStep* addUpscaling(RenderPipeline *pipeline, RenderStep *previousStep, v2f downscale_factor) +RenderStep* addUpscaling(RenderPipeline *pipeline, RenderStep *previousStep, v2f downscale_factor, Client *client) { - const int TEXTURE_UPSCALE = 0; + const int TEXTURE_LOWRES_COLOR = 0; + const int TEXTURE_LOWRES_DEPTH = 1; if (downscale_factor.X == 1.0f && downscale_factor.Y == 1.0f) return previousStep; - // When shaders are enabled, post-processing pipeline takes care of rescaling - if (g_settings->getBool("enable_shaders") && g_settings->getBool("enable_post_processing")) + // post-processing pipeline takes care of rescaling + if (g_settings->getBool("enable_post_processing")) return previousStep; + auto driver = client->getSceneManager()->getVideoDriver(); + video::ECOLOR_FORMAT color_format = selectColorFormat(driver); + video::ECOLOR_FORMAT depth_format = selectDepthFormat(driver); // Initialize buffer TextureBuffer *buffer = pipeline->createOwned(); - buffer->setTexture(TEXTURE_UPSCALE, downscale_factor, "upscale", video::ECF_A8R8G8B8); + buffer->setTexture(TEXTURE_LOWRES_COLOR, downscale_factor, "lowres_color", color_format); + buffer->setTexture(TEXTURE_LOWRES_DEPTH, downscale_factor, "lowres_depth", depth_format); // Attach previous step to the buffer - TextureBufferOutput *buffer_output = pipeline->createOwned(buffer, TEXTURE_UPSCALE); + TextureBufferOutput *buffer_output = pipeline->createOwned( + buffer, std::vector {TEXTURE_LOWRES_COLOR}, TEXTURE_LOWRES_DEPTH); previousStep->setRenderTarget(buffer_output); // Add upscaling step @@ -140,9 +147,28 @@ void populatePlainPipeline(RenderPipeline *pipeline, Client *client) pipeline->addStep(); pipeline->addStep(); - step3D = addUpscaling(pipeline, step3D, downscale_factor); + step3D = addUpscaling(pipeline, step3D, downscale_factor, client); step3D->setRenderTarget(pipeline->createOwned()); pipeline->addStep(); } + +video::ECOLOR_FORMAT selectColorFormat(video::IVideoDriver *driver) +{ + u32 bits = g_settings->getU32("post_processing_texture_bits"); + if (bits >= 16 && driver->queryTextureFormat(video::ECF_A16B16G16R16F)) + return video::ECF_A16B16G16R16F; + if (bits >= 10 && driver->queryTextureFormat(video::ECF_A2R10G10B10)) + return video::ECF_A2R10G10B10; + return video::ECF_A8R8G8B8; +} + +video::ECOLOR_FORMAT selectDepthFormat(video::IVideoDriver *driver) +{ + if (driver->queryTextureFormat(video::ECF_D24)) + return video::ECF_D24; + if (driver->queryTextureFormat(video::ECF_D24S8)) + return video::ECF_D24S8; + return video::ECF_D16; // fallback depth format +} diff --git a/src/client/render/plain.h b/src/client/render/plain.h index 889dd0f01..b0ce29608 100644 --- a/src/client/render/plain.h +++ b/src/client/render/plain.h @@ -82,6 +82,9 @@ private: }; std::unique_ptr create3DStage(Client *client, v2f scale); -RenderStep* addUpscaling(RenderPipeline *pipeline, RenderStep *previousStep, v2f downscale_factor); +RenderStep* addUpscaling(RenderPipeline *pipeline, RenderStep *previousStep, v2f downscale_factor, Client *client); void populatePlainPipeline(RenderPipeline *pipeline, Client *client); + +video::ECOLOR_FORMAT selectColorFormat(video::IVideoDriver *driver); +video::ECOLOR_FORMAT selectDepthFormat(video::IVideoDriver *driver); diff --git a/src/client/render/secondstage.cpp b/src/client/render/secondstage.cpp index b5156cd41..b00a54575 100644 --- a/src/client/render/secondstage.cpp +++ b/src/client/render/secondstage.cpp @@ -9,6 +9,8 @@ #include "client/shader.h" #include "client/tile.h" #include "settings.h" +#include "mt_opengl.h" +#include PostProcessingStep::PostProcessingStep(u32 _shader_id, const std::vector &_texture_map) : shader_id(_shader_id), texture_map(_texture_map) @@ -20,7 +22,7 @@ PostProcessingStep::PostProcessingStep(u32 _shader_id, const std::vector &_t void PostProcessingStep::configureMaterial() { material.UseMipMaps = false; - material.ZBuffer = true; + material.ZBuffer = video::ECFN_LESSEQUAL; material.ZWriteEnable = video::EZW_ON; for (u32 k = 0; k < texture_map.size(); ++k) { material.TextureLayers[k].AnisotropicFilter = 0; @@ -87,16 +89,12 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep auto driver = client->getSceneManager()->getVideoDriver(); // configure texture formats - video::ECOLOR_FORMAT color_format = video::ECF_A8R8G8B8; - if (driver->queryTextureFormat(video::ECF_A16B16G16R16F)) - color_format = video::ECF_A16B16G16R16F; - - video::ECOLOR_FORMAT depth_format = video::ECF_D16; // fallback depth format - if (driver->queryTextureFormat(video::ECF_D32)) - depth_format = video::ECF_D32; - else if (driver->queryTextureFormat(video::ECF_D24S8)) - depth_format = video::ECF_D24S8; + video::ECOLOR_FORMAT color_format = selectColorFormat(driver); + video::ECOLOR_FORMAT depth_format = selectDepthFormat(driver); + verbosestream << "addPostProcessing(): color = " + << video::ColorFormatNames[color_format] << " depth = " + << video::ColorFormatNames[depth_format] << std::endl; // init post-processing buffer static const u8 TEXTURE_COLOR = 0; @@ -106,21 +104,45 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep static const u8 TEXTURE_EXPOSURE_2 = 4; static const u8 TEXTURE_FXAA = 5; static const u8 TEXTURE_VOLUME = 6; + + static const u8 TEXTURE_MSAA_COLOR = 7; + static const u8 TEXTURE_MSAA_DEPTH = 8; + static const u8 TEXTURE_SCALE_DOWN = 10; static const u8 TEXTURE_SCALE_UP = 20; - // Super-sampling is simply rendering into a larger texture. - // Downscaling is done by the final step when rendering to the screen. - const std::string antialiasing = g_settings->get("antialiasing"); const bool enable_bloom = g_settings->getBool("enable_bloom"); + const bool enable_volumetric_light = g_settings->getBool("enable_volumetric_lighting") && enable_bloom; const bool enable_auto_exposure = g_settings->getBool("enable_auto_exposure"); + + const std::string antialiasing = g_settings->get("antialiasing"); + const u16 antialiasing_scale = MYMAX(2, g_settings->getU16("fsaa")); + + // This code only deals with MSAA in combination with post-processing. MSAA without + // post-processing works via a flag at OpenGL context creation instead. + // To make MSAA work with post-processing, we need multisample texture support, + // which has higher OpenGL (ES) version requirements. + // Note: This is not about renderbuffer objects, but about textures, + // since that's what we use and what Irrlicht allows us to use. + + const bool msaa_available = driver->queryFeature(video::EVDF_TEXTURE_MULTISAMPLE); + const bool enable_msaa = antialiasing == "fsaa" && msaa_available; + if (antialiasing == "fsaa" && !msaa_available) + warningstream << "Ignoring configured FSAA. FSAA is not supported in " + << "combination with post-processing by the current video driver." << std::endl; + const bool enable_ssaa = antialiasing == "ssaa"; const bool enable_fxaa = antialiasing == "fxaa"; - const bool enable_volumetric_light = g_settings->getBool("enable_volumetric_lighting") && enable_bloom; + // Super-sampling is simply rendering into a larger texture. + // Downscaling is done by the final step when rendering to the screen. if (enable_ssaa) { - u16 ssaa_scale = MYMAX(2, g_settings->getU16("fsaa")); - scale *= ssaa_scale; + scale *= antialiasing_scale; + } + + if (enable_msaa) { + buffer->setTexture(TEXTURE_MSAA_COLOR, scale, "3d_render_msaa", color_format, false, antialiasing_scale); + buffer->setTexture(TEXTURE_MSAA_DEPTH, scale, "3d_depthmap_msaa", depth_format, false, antialiasing_scale); } buffer->setTexture(TEXTURE_COLOR, scale, "3d_render", color_format); @@ -129,7 +151,14 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep buffer->setTexture(TEXTURE_DEPTH, scale, "3d_depthmap", depth_format); // attach buffer to the previous step - previousStep->setRenderTarget(pipeline->createOwned(buffer, std::vector { TEXTURE_COLOR }, TEXTURE_DEPTH)); + if (enable_msaa) { + TextureBufferOutput *msaa = pipeline->createOwned(buffer, std::vector { TEXTURE_MSAA_COLOR }, TEXTURE_MSAA_DEPTH); + previousStep->setRenderTarget(msaa); + TextureBufferOutput *normal = pipeline->createOwned(buffer, std::vector { TEXTURE_COLOR }, TEXTURE_DEPTH); + pipeline->addStep(msaa, normal); + } else { + previousStep->setRenderTarget(pipeline->createOwned(buffer, std::vector { TEXTURE_COLOR }, TEXTURE_DEPTH)); + } // shared variables u32 shader_id; @@ -137,6 +166,9 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep // Number of mipmap levels of the bloom downsampling texture const u8 MIPMAP_LEVELS = 4; + // color_format can be a normalized integer format, but bloom requires + // values outside of [0,1] so this needs to be a different one. + const auto bloom_format = video::ECF_A16B16G16R16F; // post-processing stage @@ -145,19 +177,19 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep // common downsampling step for bloom or autoexposure if (enable_bloom || enable_auto_exposure) { - v2f downscale = scale * 0.5; + v2f downscale = scale * 0.5f; for (u8 i = 0; i < MIPMAP_LEVELS; i++) { - buffer->setTexture(TEXTURE_SCALE_DOWN + i, downscale, std::string("downsample") + std::to_string(i), color_format); + buffer->setTexture(TEXTURE_SCALE_DOWN + i, downscale, std::string("downsample") + std::to_string(i), bloom_format); if (enable_bloom) - buffer->setTexture(TEXTURE_SCALE_UP + i, downscale, std::string("upsample") + std::to_string(i), color_format); - downscale *= 0.5; + buffer->setTexture(TEXTURE_SCALE_UP + i, downscale, std::string("upsample") + std::to_string(i), bloom_format); + downscale *= 0.5f; } if (enable_bloom) { - buffer->setTexture(TEXTURE_BLOOM, scale, "bloom", color_format); + buffer->setTexture(TEXTURE_BLOOM, scale, "bloom", bloom_format); // get bright spots - u32 shader_id = client->getShaderSource()->getShader("extract_bloom", TILE_MATERIAL_PLAIN, NDT_MESH); + u32 shader_id = client->getShaderSource()->getShaderRaw("extract_bloom"); RenderStep *extract_bloom = pipeline->addStep(shader_id, std::vector { source, TEXTURE_EXPOSURE_1 }); extract_bloom->setRenderSource(buffer); extract_bloom->setRenderTarget(pipeline->createOwned(buffer, TEXTURE_BLOOM)); @@ -165,9 +197,9 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep } if (enable_volumetric_light) { - buffer->setTexture(TEXTURE_VOLUME, scale, "volume", color_format); + buffer->setTexture(TEXTURE_VOLUME, scale, "volume", bloom_format); - shader_id = client->getShaderSource()->getShader("volumetric_light", TILE_MATERIAL_PLAIN, NDT_MESH); + shader_id = client->getShaderSource()->getShaderRaw("volumetric_light"); auto volume = pipeline->addStep(shader_id, std::vector { source, TEXTURE_DEPTH }); volume->setRenderSource(buffer); volume->setRenderTarget(pipeline->createOwned(buffer, TEXTURE_VOLUME)); @@ -175,7 +207,7 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep } // downsample - shader_id = client->getShaderSource()->getShader("bloom_downsample", TILE_MATERIAL_PLAIN, NDT_MESH); + shader_id = client->getShaderSource()->getShaderRaw("bloom_downsample"); for (u8 i = 0; i < MIPMAP_LEVELS; i++) { auto step = pipeline->addStep(shader_id, std::vector { source }); step->setRenderSource(buffer); @@ -188,7 +220,7 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep // Bloom pt 2 if (enable_bloom) { // upsample - shader_id = client->getShaderSource()->getShader("bloom_upsample", TILE_MATERIAL_PLAIN, NDT_MESH); + shader_id = client->getShaderSource()->getShaderRaw("bloom_upsample"); for (u8 i = MIPMAP_LEVELS - 1; i > 0; i--) { auto step = pipeline->addStep(shader_id, std::vector { u8(TEXTURE_SCALE_DOWN + i - 1), source }); step->setRenderSource(buffer); @@ -201,7 +233,7 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep // Dynamic Exposure pt2 if (enable_auto_exposure) { - shader_id = client->getShaderSource()->getShader("update_exposure", TILE_MATERIAL_PLAIN, NDT_MESH); + shader_id = client->getShaderSource()->getShaderRaw("update_exposure"); auto update_exposure = pipeline->addStep(shader_id, std::vector { TEXTURE_EXPOSURE_1, u8(TEXTURE_SCALE_DOWN + MIPMAP_LEVELS - 1) }); update_exposure->setBilinearFilter(1, true); update_exposure->setRenderSource(buffer); @@ -215,7 +247,7 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep final_stage_source = TEXTURE_FXAA; buffer->setTexture(TEXTURE_FXAA, scale, "fxaa", color_format); - shader_id = client->getShaderSource()->getShader("fxaa", TILE_MATERIAL_PLAIN); + shader_id = client->getShaderSource()->getShaderRaw("fxaa"); PostProcessingStep *effect = pipeline->createOwned(shader_id, std::vector { TEXTURE_COLOR }); pipeline->addStep(effect); effect->setBilinearFilter(0, true); @@ -224,7 +256,7 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep } // final merge - shader_id = client->getShaderSource()->getShader("second_stage", TILE_MATERIAL_PLAIN, NDT_MESH); + shader_id = client->getShaderSource()->getShaderRaw("second_stage"); PostProcessingStep *effect = pipeline->createOwned(shader_id, std::vector { final_stage_source, TEXTURE_SCALE_UP, TEXTURE_EXPOSURE_2 }); pipeline->addStep(effect); if (enable_ssaa) @@ -238,3 +270,9 @@ RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep return effect; } + +void ResolveMSAAStep::run(PipelineContext &context) +{ + context.device->getVideoDriver()->blitRenderTarget(msaa_fbo->getIrrRenderTarget(context), + target_fbo->getIrrRenderTarget(context)); +} diff --git a/src/client/render/secondstage.h b/src/client/render/secondstage.h index 6b0e42289..1765a5ed8 100644 --- a/src/client/render/secondstage.h +++ b/src/client/render/secondstage.h @@ -44,4 +44,18 @@ private: void configureMaterial(); }; + +class ResolveMSAAStep : public TrivialRenderStep +{ +public: + ResolveMSAAStep(TextureBufferOutput *_msaa_fbo, TextureBufferOutput *_target_fbo) : + msaa_fbo(_msaa_fbo), target_fbo(_target_fbo) {}; + void run(PipelineContext &context) override; + +private: + TextureBufferOutput *msaa_fbo; + TextureBufferOutput *target_fbo; +}; + + RenderStep *addPostProcessing(RenderPipeline *pipeline, RenderStep *previousStep, v2f scale, Client *client); diff --git a/src/client/render/sidebyside.cpp b/src/client/render/sidebyside.cpp index 02a7e7a86..a26dbfdde 100644 --- a/src/client/render/sidebyside.cpp +++ b/src/client/render/sidebyside.cpp @@ -4,8 +4,10 @@ // Copyright (C) 2017 numzero, Lobachevskiy Vitaliy #include "sidebyside.h" +#include "client/client.h" #include "client/hud.h" #include "client/camera.h" +#include DrawImageStep::DrawImageStep(u8 texture_index, v2f _offset) : texture_index(texture_index), offset(_offset) @@ -35,6 +37,11 @@ void populateSideBySidePipeline(RenderPipeline *pipeline, Client *client, bool h { static const u8 TEXTURE_LEFT = 0; static const u8 TEXTURE_RIGHT = 1; + static const u8 TEXTURE_DEPTH = 2; + + auto driver = client->getSceneManager()->getVideoDriver(); + video::ECOLOR_FORMAT color_format = selectColorFormat(driver); + video::ECOLOR_FORMAT depth_format = selectDepthFormat(driver); v2f offset; if (horizontal) { @@ -47,15 +54,17 @@ void populateSideBySidePipeline(RenderPipeline *pipeline, Client *client, bool h } TextureBuffer *buffer = pipeline->createOwned(); - buffer->setTexture(TEXTURE_LEFT, virtual_size_scale, "3d_render_left", video::ECF_A8R8G8B8); - buffer->setTexture(TEXTURE_RIGHT, virtual_size_scale, "3d_render_right", video::ECF_A8R8G8B8); + buffer->setTexture(TEXTURE_LEFT, virtual_size_scale, "3d_render_left", color_format); + buffer->setTexture(TEXTURE_RIGHT, virtual_size_scale, "3d_render_right", color_format); + buffer->setTexture(TEXTURE_DEPTH, virtual_size_scale, "3d_depthmap_sidebyside", depth_format); auto step3D = pipeline->own(create3DStage(client, virtual_size_scale)); // eyes for (bool right : { false, true }) { pipeline->addStep(flipped ? !right : right); - auto output = pipeline->createOwned(buffer, right ? TEXTURE_RIGHT : TEXTURE_LEFT); + auto output = pipeline->createOwned( + buffer, std::vector {right ? TEXTURE_RIGHT : TEXTURE_LEFT}, TEXTURE_DEPTH); pipeline->addStep(step3D, output); pipeline->addStep(step3D); pipeline->addStep(); @@ -74,4 +83,4 @@ void populateSideBySidePipeline(RenderPipeline *pipeline, Client *client, bool h step->setRenderSource(buffer); step->setRenderTarget(screen); } -} \ No newline at end of file +} diff --git a/src/client/renderingengine.cpp b/src/client/renderingengine.cpp index 753ee93a9..9f9fdd5fa 100644 --- a/src/client/renderingengine.cpp +++ b/src/client/renderingengine.cpp @@ -50,8 +50,7 @@ void FpsControl::limit(IrrlichtDevice *device, f32 *dtime, bool assume_paused) if (busy_time < frametime_min) { sleep_time = frametime_min - busy_time; - if (sleep_time > 0) - sleep_us(sleep_time); + porting::preciseSleepUs(sleep_time); } else { sleep_time = 0; } @@ -135,7 +134,7 @@ static irr::IrrlichtDevice *createDevice(SIrrlichtCreationParameters params, std { if (requested_driver) { params.DriverType = *requested_driver; - verbosestream << "Trying video driver " << getVideoDriverName(params.DriverType) << std::endl; + infostream << "Trying video driver " << getVideoDriverName(params.DriverType) << std::endl; if (auto *device = createDeviceEx(params)) return device; errorstream << "Failed to initialize the " << getVideoDriverName(params.DriverType) << " video driver" << std::endl; @@ -147,7 +146,7 @@ static irr::IrrlichtDevice *createDevice(SIrrlichtCreationParameters params, std if (fallback_driver == video::EDT_NULL || fallback_driver == requested_driver) continue; params.DriverType = fallback_driver; - verbosestream << "Trying video driver " << getVideoDriverName(params.DriverType) << std::endl; + infostream << "Trying video driver " << getVideoDriverName(params.DriverType) << std::endl; if (auto *device = createDeviceEx(params)) return device; } @@ -179,7 +178,10 @@ RenderingEngine::RenderingEngine(MyEventReceiver *receiver) // bpp, fsaa, vsync bool vsync = g_settings->getBool("vsync"); - bool enable_fsaa = g_settings->get("antialiasing") == "fsaa"; + // Don't enable MSAA in OpenGL context creation if post-processing is enabled, + // the post-processing pipeline handles it. + bool enable_fsaa = g_settings->get("antialiasing") == "fsaa" && + !g_settings->getBool("enable_post_processing"); u16 fsaa = enable_fsaa ? MYMAX(2, g_settings->getU16("fsaa")) : 0; // Determine driver @@ -372,7 +374,7 @@ void RenderingEngine::draw_load_screen(const std::wstring &text, std::vector RenderingEngine::getSupportedVideoDrivers() { // Only check these drivers. We do not support software and D3D in any capacity. - // Order by preference (best first) + // ordered by preference (best first) static const video::E_DRIVER_TYPE glDrivers[] = { video::EDT_OPENGL, video::EDT_OPENGL3, @@ -381,7 +383,7 @@ std::vector RenderingEngine::getSupportedVideoDrivers() }; std::vector drivers; - for (video::E_DRIVER_TYPE driver: glDrivers) { + for (auto driver : glDrivers) { if (IrrlichtDevice::isDriverSupported(driver)) drivers.push_back(driver); } diff --git a/src/client/renderingengine.h b/src/client/renderingengine.h index 0381c2baf..17a9afa39 100644 --- a/src/client/renderingengine.h +++ b/src/client/renderingengine.h @@ -9,7 +9,6 @@ #include #include #include "client/inputhandler.h" -#include "irrlichttypes_extrabloated.h" #include "debug.h" #include "config.h" #include "client/shader.h" diff --git a/src/client/shader.cpp b/src/client/shader.cpp index a227eb37a..5924e935a 100644 --- a/src/client/shader.cpp +++ b/src/client/shader.cpp @@ -6,7 +6,6 @@ #include #include #include "shader.h" -#include "irrlichttypes_extrabloated.h" #include "irr_ptr.h" #include "debug.h" #include "filesys.h" @@ -19,7 +18,6 @@ #include #include #include "client/renderingengine.h" -#include #include "gettext.h" #include "log.h" #include "gamedef.h" @@ -271,7 +269,7 @@ public: The id 0 points to a null shader. Its material is EMT_SOLID. */ u32 getShaderIdDirect(const std::string &name, - MaterialType material_type, NodeDrawType drawtype) override; + MaterialType material_type, NodeDrawType drawtype); /* If shader specified by the name pointed by the id doesn't @@ -281,10 +279,18 @@ public: and not found in cache, the call is queued to the main thread for processing. */ - u32 getShader(const std::string &name, MaterialType material_type, NodeDrawType drawtype) override; + u32 getShaderRaw(const std::string &name, bool blendAlpha) override + { + // TODO: the shader system should be refactored to be much more generic. + // Just let callers pass arbitrary constants, this would also deal with + // runtime changes cleanly. + return getShader(name, blendAlpha ? TILE_MATERIAL_ALPHA : TILE_MATERIAL_BASIC, + NodeDrawType_END); + } + ShaderInfo getShaderInfo(u32 id) override; // Processes queued shader requests from other threads. @@ -307,9 +313,6 @@ public: private: - // Are shaders even enabled? - bool m_enabled; - // The id of the thread that is allowed to use irrlicht directly std::thread::id m_main_thread; @@ -348,12 +351,6 @@ ShaderSource::ShaderSource() // Add a dummy ShaderInfo as the first index, named "" m_shaderinfo_cache.emplace_back(); - m_enabled = g_settings->getBool("enable_shaders"); - if (!m_enabled) { - warningstream << "You are running " PROJECT_NAME_C " with shaders disabled, " - "this is not a recommended configuration." << std::endl; - } - // Add main global constant setter addShaderConstantSetterFactory(new MainShaderConstantSetterFactory()); } @@ -362,11 +359,9 @@ ShaderSource::~ShaderSource() { MutexAutoLock lock(m_shaderinfo_cache_mutex); - if (!m_enabled) - return; - // Delete materials auto *gpu = RenderingEngine::get_video_driver()->getGPUProgrammingServices(); + assert(gpu); for (ShaderInfo &i : m_shaderinfo_cache) { if (!i.name.empty()) gpu->deleteShaderMaterial(i.material); @@ -495,11 +490,9 @@ void ShaderSource::rebuildShaders() { MutexAutoLock lock(m_shaderinfo_cache_mutex); - if (!m_enabled) - return; - // Delete materials auto *gpu = RenderingEngine::get_video_driver()->getGPUProgrammingServices(); + assert(gpu); for (ShaderInfo &i : m_shaderinfo_cache) { if (!i.name.empty()) { gpu->deleteShaderMaterial(i.material); @@ -546,14 +539,14 @@ ShaderInfo ShaderSource::generateShader(const std::string &name, } shaderinfo.material = shaderinfo.base_material; - if (!m_enabled) + video::IVideoDriver *driver = RenderingEngine::get_video_driver(); + // The null driver doesn't support shaders (duh), but we can pretend it does. + if (driver->getDriverType() == video::EDT_NULL) return shaderinfo; - video::IVideoDriver *driver = RenderingEngine::get_video_driver(); auto *gpu = driver->getGPUProgrammingServices(); if (!driver->queryFeature(video::EVDF_ARB_GLSL) || !gpu) { - throw ShaderException(gettext("Shaders are enabled but GLSL is not " - "supported by the driver.")); + throw ShaderException(gettext("GLSL is not supported by the driver")); } // Create shaders header @@ -620,11 +613,23 @@ ShaderInfo ShaderSource::generateShader(const std::string &name, #define textureFlags texture2 )"; + /// Unique name of this shader, for debug/logging + std::string log_name = name; + + /* Define constants for node and object shaders */ + const bool node_shader = drawtype != NodeDrawType_END; + if (node_shader) { + + log_name.append(" mat=").append(itos(material_type)) + .append(" draw=").append(itos(drawtype)); + bool use_discard = fully_programmable; - // For renderers that should use discard instead of GL_ALPHA_TEST - const char *renderer = reinterpret_cast(GL.GetString(GL.RENDERER)); - if (strstr(renderer, "GC7000")) - use_discard = true; + if (!use_discard) { + // workaround for a certain OpenGL implementation lacking GL_ALPHA_TEST + const char *renderer = reinterpret_cast(GL.GetString(GL.RENDERER)); + if (strstr(renderer, "GC7000")) + use_discard = true; + } if (use_discard) { if (shaderinfo.base_material == video::EMT_TRANSPARENT_ALPHA_CHANNEL) shaders_header << "#define USE_DISCARD 1\n"; @@ -677,9 +682,35 @@ ShaderInfo ShaderSource::generateShader(const std::string &name, shaders_header << "#define WATER_WAVE_LENGTH " << g_settings->getFloat("water_wave_length") << "\n"; shaders_header << "#define WATER_WAVE_SPEED " << g_settings->getFloat("water_wave_speed") << "\n"; } + switch (material_type) { + case TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT: + case TILE_MATERIAL_WAVING_LIQUID_OPAQUE: + case TILE_MATERIAL_WAVING_LIQUID_BASIC: + shaders_header << "#define MATERIAL_WAVING_LIQUID 1\n"; + break; + default: + shaders_header << "#define MATERIAL_WAVING_LIQUID 0\n"; + break; + } + switch (material_type) { + case TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT: + case TILE_MATERIAL_WAVING_LIQUID_OPAQUE: + case TILE_MATERIAL_WAVING_LIQUID_BASIC: + case TILE_MATERIAL_LIQUID_TRANSPARENT: + shaders_header << "#define MATERIAL_WATER_REFLECTIONS 1\n"; + break; + default: + shaders_header << "#define MATERIAL_WATER_REFLECTIONS 0\n"; + break; + } shaders_header << "#define ENABLE_WAVING_LEAVES " << g_settings->getBool("enable_waving_leaves") << "\n"; shaders_header << "#define ENABLE_WAVING_PLANTS " << g_settings->getBool("enable_waving_plants") << "\n"; + + } + + /* Other constants */ + shaders_header << "#define ENABLE_TONE_MAPPING " << g_settings->getBool("tone_mapping") << "\n"; if (g_settings->getBool("enable_dynamic_shadows")) { @@ -730,34 +761,30 @@ ShaderInfo ShaderSource::generateShader(const std::string &name, shaders_header << "#define VOLUMETRIC_LIGHT 1\n"; } - shaders_header << "#line 0\n"; // reset the line counter for meaningful diagnostics - std::string common_header = shaders_header.str(); + const char *final_header = "#line 0\n"; // reset the line counter for meaningful diagnostics std::string vertex_shader = m_sourcecache.getOrLoad(name, "opengl_vertex.glsl"); std::string fragment_shader = m_sourcecache.getOrLoad(name, "opengl_fragment.glsl"); std::string geometry_shader = m_sourcecache.getOrLoad(name, "opengl_geometry.glsl"); - vertex_shader = common_header + vertex_header + vertex_shader; - fragment_shader = common_header + fragment_header + fragment_shader; + vertex_shader = common_header + vertex_header + final_header + vertex_shader; + fragment_shader = common_header + fragment_header + final_header + fragment_shader; const char *geometry_shader_ptr = nullptr; // optional if (!geometry_shader.empty()) { - geometry_shader = common_header + geometry_header + geometry_shader; + geometry_shader = common_header + geometry_header + final_header + geometry_shader; geometry_shader_ptr = geometry_shader.c_str(); } - irr_ptr cb{new ShaderCallback(m_setter_factories)}; - infostream<<"Compiling high level shaders for "<(m_setter_factories); + infostream << "Compiling high level shaders for " << log_name << std::endl; s32 shadermat = gpu->addHighLevelShaderMaterial( - vertex_shader.c_str(), nullptr, video::EVST_VS_1_1, - fragment_shader.c_str(), nullptr, video::EPST_PS_1_1, - geometry_shader_ptr, nullptr, video::EGST_GS_4_0, scene::EPT_TRIANGLES, scene::EPT_TRIANGLES, 0, - cb.get(), shaderinfo.base_material, 1); + vertex_shader.c_str(), fragment_shader.c_str(), geometry_shader_ptr, + log_name.c_str(), scene::EPT_TRIANGLES, scene::EPT_TRIANGLES, 0, + cb.get(), shaderinfo.base_material); if (shadermat == -1) { - errorstream<<"generate_shader(): " - "failed to generate \""<getPosition(); - // if world position is less than 1 block away from the captured + // if world position is less than 1 node away from the captured // world position then stick to the captured value, otherwise recapture. if (cam_pos_world.getDistanceFromSQ(last_cam_pos_world) < BS * BS) cam_pos_world = last_cam_pos_world; @@ -74,7 +62,7 @@ void DirectionalLight::createSplitMatrices(const Camera *cam) v3f boundVec = (cam_pos_scene + farCorner * sfFar) - center_scene; float radius = boundVec.getLength(); float length = radius * 3.0f; - v3f eye_displacement = quantizeDirection(direction, M_PI / 2880 /*15 seconds*/) * length; + v3f eye_displacement = direction * length; // we must compute the viewmat with the position - the camera offset // but the future_frustum position must be the actual world position @@ -96,9 +84,16 @@ DirectionalLight::DirectionalLight(const u32 shadowMapResolution, farPlane(farValue), mapRes(shadowMapResolution), pos(position) {} -void DirectionalLight::update_frustum(const Camera *cam, Client *client, bool force) +void DirectionalLight::updateCameraOffset(const Camera *cam) { - if (dirty && !force) + createSplitMatrices(cam); + should_update_map_shadow = true; + dirty = true; +} + +void DirectionalLight::updateFrustum(const Camera *cam, Client *client) +{ + if (dirty) return; float zNear = cam->getCameraNode()->getNearValue(); @@ -118,16 +113,6 @@ void DirectionalLight::update_frustum(const Camera *cam, Client *client, bool fo getPosition(), getDirection(), future_frustum.radius, future_frustum.length); should_update_map_shadow = true; dirty = true; - - // when camera offset changes, adjust the current frustum view matrix to avoid flicker - v3s16 cam_offset = cam->getOffset(); - if (cam_offset != shadow_frustum.camera_offset) { - v3f rotated_offset = shadow_frustum.ViewMat.rotateAndScaleVect( - intToFloat(cam_offset - shadow_frustum.camera_offset, BS)); - shadow_frustum.ViewMat.setTranslation(shadow_frustum.ViewMat.getTranslation() + rotated_offset); - shadow_frustum.player += intToFloat(shadow_frustum.camera_offset - cam->getOffset(), BS); - shadow_frustum.camera_offset = cam_offset; - } } void DirectionalLight::commitFrustum() diff --git a/src/client/shadows/dynamicshadows.h b/src/client/shadows/dynamicshadows.h index 2951c0a6e..640a5479f 100644 --- a/src/client/shadows/dynamicshadows.h +++ b/src/client/shadows/dynamicshadows.h @@ -34,9 +34,9 @@ public: f32 farValue = 100.0f); ~DirectionalLight() = default; - //DISABLE_CLASS_COPY(DirectionalLight) + void updateCameraOffset(const Camera *cam); - void update_frustum(const Camera *cam, Client *client, bool force = false); + void updateFrustum(const Camera *cam, Client *client); // when set direction is updated to negative normalized(direction) void setDirection(v3f dir); diff --git a/src/client/shadows/dynamicshadowsrender.cpp b/src/client/shadows/dynamicshadowsrender.cpp index df84c9d44..85c13f9f0 100644 --- a/src/client/shadows/dynamicshadowsrender.cpp +++ b/src/client/shadows/dynamicshadowsrender.cpp @@ -14,15 +14,15 @@ #include "client/client.h" #include "client/clientmap.h" #include "profiler.h" -#include "EShaderTypes.h" #include "IGPUProgrammingServices.h" #include "IMaterialRenderer.h" -#include +#include "IVideoDriver.h" ShadowRenderer::ShadowRenderer(IrrlichtDevice *device, Client *client) : m_smgr(device->getSceneManager()), m_driver(device->getVideoDriver()), - m_client(client), m_current_frame(0), - m_perspective_bias_xy(0.8), m_perspective_bias_z(0.5) + m_client(client), m_shadow_strength(0.0f), m_shadow_tint(255, 0, 0, 0), + m_time_day(0.0f), m_force_update_shadow_map(false), m_current_frame(0), + m_perspective_bias_xy(0.8f), m_perspective_bias_z(0.5f) { (void) m_client; @@ -109,25 +109,13 @@ void ShadowRenderer::disable() void ShadowRenderer::preInit(IWritableShaderSource *shsrc) { - if (g_settings->getBool("enable_shaders") && - g_settings->getBool("enable_dynamic_shadows")) { + if (g_settings->getBool("enable_dynamic_shadows")) { shsrc->addShaderConstantSetterFactory(new ShadowConstantSetterFactory()); } } void ShadowRenderer::initialize() { - auto *gpu = m_driver->getGPUProgrammingServices(); - - // we need glsl - if (!m_shadows_supported || !gpu || !m_driver->queryFeature(video::EVDF_ARB_GLSL)) { - m_shadows_supported = false; - - warningstream << "Shadows: GLSL Shader not supported on this system." - << std::endl; - return; - } - createShaders(); @@ -271,11 +259,14 @@ void ShadowRenderer::updateSMTextures() // detect if SM should be regenerated for (DirectionalLight &light : m_light_list) { - if (light.should_update_map_shadow || m_force_update_shadow_map) { - light.should_update_map_shadow = false; - m_current_frame = 0; - reset_sm_texture = true; - } + if (light.should_update_map_shadow) + m_force_update_shadow_map = true; + light.should_update_map_shadow = false; + } + + if (m_force_update_shadow_map) { + m_current_frame = 0; + reset_sm_texture = true; } video::ITexture* shadowMapTargetTexture = shadowMapClientMapFuture; @@ -535,7 +526,7 @@ void ShadowRenderer::mixShadowsQuad() void ShadowRenderer::createShaders() { - video::IGPUProgrammingServices *gpu = m_driver->getGPUProgrammingServices(); + auto *gpu = m_driver->getGPUProgrammingServices(); if (depth_shader == -1) { std::string depth_shader_vs = getShaderPath("shadow_shaders", "pass1_vertex.glsl"); @@ -553,10 +544,9 @@ void ShadowRenderer::createShaders() m_shadow_depth_cb = new ShadowDepthShaderCB(); depth_shader = gpu->addHighLevelShaderMaterial( - readShaderFile(depth_shader_vs).c_str(), "vertexMain", - video::EVST_VS_1_1, - readShaderFile(depth_shader_fs).c_str(), "pixelMain", - video::EPST_PS_1_2, m_shadow_depth_cb, video::EMT_ONETEXTURE_BLEND); + readShaderFile(depth_shader_vs).c_str(), + readShaderFile(depth_shader_fs).c_str(), nullptr, + m_shadow_depth_cb, video::EMT_ONETEXTURE_BLEND); if (depth_shader == -1) { // upsi, something went wrong loading shader. @@ -592,10 +582,9 @@ void ShadowRenderer::createShaders() m_shadow_depth_entity_cb = new ShadowDepthShaderCB(); depth_shader_entities = gpu->addHighLevelShaderMaterial( - readShaderFile(depth_shader_vs).c_str(), "vertexMain", - video::EVST_VS_1_1, - readShaderFile(depth_shader_fs).c_str(), "pixelMain", - video::EPST_PS_1_2, m_shadow_depth_entity_cb); + readShaderFile(depth_shader_vs).c_str(), + readShaderFile(depth_shader_fs).c_str(), nullptr, + m_shadow_depth_entity_cb); if (depth_shader_entities == -1) { // upsi, something went wrong loading shader. @@ -630,10 +619,9 @@ void ShadowRenderer::createShaders() m_shadow_mix_cb = new shadowScreenQuadCB(); m_screen_quad = new shadowScreenQuad(); mixcsm_shader = gpu->addHighLevelShaderMaterial( - readShaderFile(depth_shader_vs).c_str(), "vertexMain", - video::EVST_VS_1_1, - readShaderFile(depth_shader_fs).c_str(), "pixelMain", - video::EPST_PS_1_2, m_shadow_mix_cb); + readShaderFile(depth_shader_vs).c_str(), + readShaderFile(depth_shader_fs).c_str(), nullptr, + m_shadow_mix_cb); m_screen_quad->getMaterial().MaterialType = (video::E_MATERIAL_TYPE)mixcsm_shader; @@ -669,10 +657,9 @@ void ShadowRenderer::createShaders() m_shadow_depth_trans_cb = new ShadowDepthShaderCB(); depth_shader_trans = gpu->addHighLevelShaderMaterial( - readShaderFile(depth_shader_vs).c_str(), "vertexMain", - video::EVST_VS_1_1, - readShaderFile(depth_shader_fs).c_str(), "pixelMain", - video::EPST_PS_1_2, m_shadow_depth_trans_cb); + readShaderFile(depth_shader_vs).c_str(), + readShaderFile(depth_shader_fs).c_str(), nullptr, + m_shadow_depth_trans_cb); if (depth_shader_trans == -1) { // upsi, something went wrong loading shader. @@ -708,14 +695,16 @@ std::string ShadowRenderer::readShaderFile(const std::string &path) ShadowRenderer *createShadowRenderer(IrrlichtDevice *device, Client *client) { // disable if unsupported - if (g_settings->getBool("enable_dynamic_shadows") && ( - device->getVideoDriver()->getDriverType() != video::EDT_OPENGL || - !g_settings->getBool("enable_shaders"))) { - g_settings->setBool("enable_dynamic_shadows", false); + if (g_settings->getBool("enable_dynamic_shadows")) { + // See also checks in builtin/mainmenu/settings/dlg_settings.lua + const video::E_DRIVER_TYPE type = device->getVideoDriver()->getDriverType(); + if (type != video::EDT_OPENGL && type != video::EDT_OPENGL3) { + warningstream << "Shadows: disabled dynamic shadows due to being unsupported" << std::endl; + g_settings->setBool("enable_dynamic_shadows", false); + } } - if (g_settings->getBool("enable_shaders") && - g_settings->getBool("enable_dynamic_shadows")) { + if (g_settings->getBool("enable_dynamic_shadows")) { ShadowRenderer *shadow_renderer = new ShadowRenderer(device, client); shadow_renderer->initialize(); return shadow_renderer; diff --git a/src/client/shadows/dynamicshadowsrender.h b/src/client/shadows/dynamicshadowsrender.h index 5395c90b3..9bc4f6b94 100644 --- a/src/client/shadows/dynamicshadowsrender.h +++ b/src/client/shadows/dynamicshadowsrender.h @@ -7,8 +7,9 @@ #include #include #include -#include "irrlichttypes_extrabloated.h" #include "client/shadows/dynamicshadows.h" +#include +#include class ShadowDepthShaderCB; class shadowScreenQuad; @@ -118,11 +119,11 @@ private: std::vector m_shadow_node_array; float m_shadow_strength; - video::SColor m_shadow_tint{ 255, 0, 0, 0 }; + video::SColor m_shadow_tint; float m_shadow_strength_gamma; float m_shadow_map_max_distance; float m_shadow_map_texture_size; - float m_time_day{0.0f}; + float m_time_day; int m_shadow_samples; bool m_shadow_map_texture_32bit; bool m_shadows_enabled; @@ -130,7 +131,7 @@ private: bool m_shadow_map_colored; bool m_force_update_shadow_map; u8 m_map_shadow_update_frames; /* Use this number of frames to update map shaodw */ - u8 m_current_frame{0}; /* Current frame */ + u8 m_current_frame; /* Current frame */ f32 m_perspective_bias_xy; f32 m_perspective_bias_z; diff --git a/src/client/shadows/shadowsScreenQuad.h b/src/client/shadows/shadowsScreenQuad.h index 561db19f6..fa7a73d79 100644 --- a/src/client/shadows/shadowsScreenQuad.h +++ b/src/client/shadows/shadowsScreenQuad.h @@ -3,7 +3,6 @@ // Copyright (C) 2021 Liso #pragma once -#include "irrlichttypes_extrabloated.h" #include #include #include "client/shader.h" diff --git a/src/client/shadows/shadowsshadercallbacks.h b/src/client/shadows/shadowsshadercallbacks.h index 882a13d0c..4fc462b11 100644 --- a/src/client/shadows/shadowsshadercallbacks.h +++ b/src/client/shadows/shadowsshadercallbacks.h @@ -3,7 +3,6 @@ // Copyright (C) 2021 Liso #pragma once -#include "irrlichttypes_extrabloated.h" #include #include #include "client/shader.h" diff --git a/src/client/sky.cpp b/src/client/sky.cpp index bed62f9d2..a112d29dd 100644 --- a/src/client/sky.cpp +++ b/src/client/sky.cpp @@ -31,7 +31,7 @@ static video::SMaterial baseMaterial() video::SMaterial mat; mat.ZBuffer = video::ECFN_DISABLED; mat.ZWriteEnable = video::EZW_OFF; - mat.AntiAliasing = 0; + mat.AntiAliasing = video::EAAM_OFF; mat.TextureLayers[0].TextureWrapU = video::ETC_CLAMP_TO_EDGE; mat.TextureLayers[0].TextureWrapV = video::ETC_CLAMP_TO_EDGE; mat.BackfaceCulling = false; @@ -54,10 +54,6 @@ Sky::Sky(s32 id, RenderingEngine *rendering_engine, ITextureSource *tsrc, IShade m_seed = (u64)myrand() << 32 | myrand(); setAutomaticCulling(scene::EAC_OFF); - m_box.MaxEdge.set(0, 0, 0); - m_box.MinEdge.set(0, 0, 0); - - m_enable_shaders = g_settings->getBool("enable_shaders"); m_sky_params = SkyboxDefaults::getSkyDefaults(); m_sun_params = SkyboxDefaults::getSunDefaults(); @@ -67,9 +63,8 @@ Sky::Sky(s32 id, RenderingEngine *rendering_engine, ITextureSource *tsrc, IShade // Create materials m_materials[0] = baseMaterial(); - m_materials[0].MaterialType = m_enable_shaders ? - ssrc->getShaderInfo(ssrc->getShader("stars_shader", TILE_MATERIAL_ALPHA)).material : - video::EMT_TRANSPARENT_ALPHA_CHANNEL; + m_materials[0].MaterialType = + ssrc->getShaderInfo(ssrc->getShaderRaw("stars_shader", true)).material; m_materials[1] = baseMaterial(); m_materials[1].MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; @@ -177,25 +172,15 @@ void Sky::render() float offset = (1.0 - fabs(sin((m_time_of_day - 0.5) * irr::core::PI))) * 511; if (m_sun_tonemap) { - u8 * texels = (u8 *)m_sun_tonemap->lock(); - if (!texels) - return; - video::SColor* texel = (video::SColor *)(texels + (u32)offset * 4); - video::SColor texel_color (255, texel->getRed(), - texel->getGreen(), texel->getBlue()); - m_sun_tonemap->unlock(); + auto texel_color = m_sun_tonemap->getPixel(offset, 0); + texel_color.setAlpha(255); // Only accessed by our code later, not used by a shader m_materials[3].ColorParam = texel_color; } if (m_moon_tonemap) { - u8 * texels = (u8 *)m_moon_tonemap->lock(); - if (!texels) - return; - video::SColor* texel = (video::SColor *)(texels + (u32)offset * 4); - video::SColor texel_color (255, texel->getRed(), - texel->getGreen(), texel->getBlue()); - m_moon_tonemap->unlock(); + auto texel_color = m_moon_tonemap->getPixel(offset, 0); + texel_color.setAlpha(255); // Only accessed by our code later, not used by a shader m_materials[4].ColorParam = texel_color; } @@ -739,12 +724,11 @@ void Sky::draw_stars(video::IVideoDriver * driver, float wicked_time_of_day) color.a *= alpha; if (color.a <= 0.0f) // Stars are only drawn when not fully transparent return; - if (m_enable_shaders) - m_materials[0].ColorParam = color.toSColor(); - else - setMeshBufferColor(m_stars.get(), color.toSColor()); + m_materials[0].ColorParam = color.toSColor(); - auto sky_rotation = core::matrix4().setRotationAxisRadians(2.0f * M_PI * (wicked_time_of_day - 0.25f), v3f(0.0f, 0.0f, 1.0f)); + auto day_rotation = core::matrix4().setRotationAxisRadians(2.0f * M_PI * (wicked_time_of_day - 0.25f), v3f(0.0f, 0.0f, 1.0f)); + auto orbit_rotation = core::matrix4().setRotationAxisRadians(m_sky_params.body_orbit_tilt * M_PI / 180.0, v3f(1.0f, 0.0f, 0.0f)); + auto sky_rotation = orbit_rotation * day_rotation; auto world_matrix = driver->getTransform(video::ETS_WORLD); driver->setTransform(video::ETS_WORLD, world_matrix * sky_rotation); driver->setMaterial(m_materials[0]); @@ -778,13 +762,29 @@ void Sky::place_sky_body( * day_position: turn the body around the Z axis, to place it depending of the time of the day */ { - v3f centrum = getSkyBodyPosition(horizon_position, day_position, m_sky_params.body_orbit_tilt); - v3f untilted_centrum = getSkyBodyPosition(horizon_position, day_position, 0.f); for (video::S3DVertex &vertex : vertices) { // Body is directed to -Z (south) by default vertex.Pos.rotateXZBy(horizon_position); vertex.Pos.rotateXYBy(day_position); - vertex.Pos += centrum - untilted_centrum; + vertex.Pos.rotateYZBy(m_sky_params.body_orbit_tilt); + } +} + +// FIXME: stupid helper that does a pointless texture upload/download +static void getTextureAsImage(video::IImage *&dst, const std::string &name, ITextureSource *tsrc) +{ + if (dst) { + dst->drop(); + dst = nullptr; + } + if (tsrc->isKnownSourceImage(name)) { + auto *texture = tsrc->getTexture(name); + assert(texture); + auto *driver = RenderingEngine::get_video_driver(); + dst = driver->createImageFromData( + texture->getColorFormat(), texture->getSize(), + texture->lock(video::ETLM_READ_ONLY)); + texture->unlock(); } // fm todo: @@ -797,9 +797,10 @@ void Sky::setSunTexture(const std::string &sun_texture, { // Ignore matching textures (with modifiers) entirely, // but lets at least update the tonemap before hand. - m_sun_params.tonemap = sun_tonemap; - m_sun_tonemap = tsrc->isKnownSourceImage(sun_tonemap) ? - tsrc->getTexture(sun_tonemap) : nullptr; + if (m_sun_params.tonemap != sun_tonemap) { + m_sun_params.tonemap = sun_tonemap; + getTextureAsImage(m_sun_tonemap, sun_tonemap, tsrc); + } if (m_sun_params.texture == sun_texture && !m_first_update) return; @@ -839,9 +840,10 @@ void Sky::setMoonTexture(const std::string &moon_texture, { // Ignore matching textures (with modifiers) entirely, // but lets at least update the tonemap before hand. - m_moon_params.tonemap = moon_tonemap; - m_moon_tonemap = tsrc->isKnownSourceImage(moon_tonemap) ? - tsrc->getTexture(moon_tonemap) : nullptr; + if (m_moon_params.tonemap != moon_tonemap) { + m_moon_params.tonemap = moon_tonemap; + getTextureAsImage(m_moon_tonemap, moon_tonemap, tsrc); + } if (m_moon_params.texture == moon_texture && !m_first_update) return; @@ -916,8 +918,7 @@ void Sky::updateStars() indices.push_back(i * 4 + 3); indices.push_back(i * 4 + 0); } - if (m_enable_shaders) - m_stars->setHardwareMappingHint(scene::EHM_STATIC); + m_stars->setHardwareMappingHint(scene::EHM_STATIC); } void Sky::setSkyColors(const SkyColor &sky_color) diff --git a/src/client/sky.h b/src/client/sky.h index 59aca4213..0ae242ac9 100644 --- a/src/client/sky.h +++ b/src/client/sky.h @@ -17,6 +17,7 @@ namespace irr::video { class IVideoDriver; + class IImage; } class IShaderSource; @@ -132,7 +133,7 @@ public: } private: - aabb3f m_box; + aabb3f m_box{{0.0f, 0.0f, 0.0f}}; video::SMaterial m_materials[SKY_MATERIAL_COUNT]; // How much sun & moon transition should affect horizon color float m_horizon_blend() @@ -184,7 +185,6 @@ private: bool m_clouds_enabled = true; // Initialised to true, reset only by set_sky API bool m_directional_colored_fog; bool m_in_clouds = true; // Prevent duplicating bools to remember old values - bool m_enable_shaders = false; video::SColorf m_bgcolor_bright_f = video::SColorf(1.0f, 1.0f, 1.0f, 1.0f); video::SColorf m_skycolor_bright_f = video::SColorf(1.0f, 1.0f, 1.0f, 1.0f); @@ -212,10 +212,10 @@ private: u64 m_seed = 0; irr_ptr m_stars; - video::ITexture *m_sun_texture; - video::ITexture *m_moon_texture; - video::ITexture *m_sun_tonemap; - video::ITexture *m_moon_tonemap; + video::ITexture *m_sun_texture = nullptr; + video::ITexture *m_moon_texture = nullptr; + video::IImage *m_sun_tonemap = nullptr; + video::IImage *m_moon_tonemap = nullptr; void updateStars(); diff --git a/src/client/texturepaths.cpp b/src/client/texturepaths.cpp index 960171859..f2efa6038 100644 --- a/src/client/texturepaths.cpp +++ b/src/client/texturepaths.cpp @@ -22,10 +22,8 @@ void clearTextureNameCache() // If failed, return "". std::string getImagePath(std::string_view path) { - // A NULL-ended list of possible image extensions - // (In newer C++ versions a fixed size array and ranges::subrange could be used - // or just modernise removeStringEnd.) - static const char *extensions[] = {".png", ".jpg", ".bmp", ".tga", nullptr}; + // possible image extensions + static const char *extensions[] = {".png", ".jpg", ".tga", nullptr}; // Remove present extension std::string_view stripped_path = removeStringEnd(path, extensions); diff --git a/src/client/texturesource.cpp b/src/client/texturesource.cpp index 2aa0e9636..efd46981c 100644 --- a/src/client/texturesource.cpp +++ b/src/client/texturesource.cpp @@ -126,7 +126,6 @@ public: // Shall be called from the main thread. void rebuildImagesAndTextures(); - video::ITexture* getNormalTexture(const std::string &name); video::SColor getTextureAverageColor(const std::string &name); private: @@ -493,40 +492,20 @@ void TextureSource::rebuildTexture(video::IVideoDriver *driver, TextureInfo &ti) m_texture_trash.push_back(t_old); } -video::ITexture* TextureSource::getNormalTexture(const std::string &name) -{ - if (isKnownSourceImage("override_normal.png")) - return getTexture("override_normal.png"); - std::string fname_base = name; - static const char *normal_ext = "_normal.png"; - static const u32 normal_ext_size = strlen(normal_ext); - size_t pos = fname_base.find('.'); - std::string fname_normal = fname_base.substr(0, pos) + normal_ext; - if (isKnownSourceImage(fname_normal)) { - // look for image extension and replace it - size_t i = 0; - while ((i = fname_base.find('.', i)) != std::string::npos) { - fname_base.replace(i, 4, normal_ext); - i += normal_ext_size; - } - return getTexture(fname_base); - } - return nullptr; -} - video::SColor TextureSource::getTextureAverageColor(const std::string &name) { video::IVideoDriver *driver = RenderingEngine::get_video_driver(); video::ITexture *texture = getTexture(name); if (!texture) return {0, 0, 0, 0}; + // Note: this downloads the texture back from the GPU, which is pointless video::IImage *image = driver->createImage(texture, core::position2d(0, 0), texture->getOriginalSize()); if (!image) return {0, 0, 0, 0}; - video::SColor c = ImageSource::getImageAverageColor(*image); + video::SColor c = imageAverageColor(image); image->drop(); return c; diff --git a/src/client/texturesource.h b/src/client/texturesource.h index 46cf50c45..1297329dd 100644 --- a/src/client/texturesource.h +++ b/src/client/texturesource.h @@ -54,7 +54,6 @@ public: */ virtual Palette* getPalette(const std::string &name) = 0; virtual bool isKnownSourceImage(const std::string &name)=0; - virtual video::ITexture* getNormalTexture(const std::string &name)=0; virtual video::SColor getTextureAverageColor(const std::string &name)=0; }; @@ -75,7 +74,6 @@ public: virtual void processQueue()=0; virtual void insertSourceImage(const std::string &name, video::IImage *img)=0; virtual void rebuildImagesAndTextures()=0; - virtual video::ITexture* getNormalTexture(const std::string &name)=0; virtual video::SColor getTextureAverageColor(const std::string &name)=0; }; diff --git a/src/client/tile.h b/src/client/tile.h index 342e2e2b8..50ed9f807 100644 --- a/src/client/tile.h +++ b/src/client/tile.h @@ -32,6 +32,7 @@ enum MaterialType{ TILE_MATERIAL_WAVING_LIQUID_BASIC, TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT, TILE_MATERIAL_WAVING_LIQUID_OPAQUE, + // Note: PLAIN isn't a material actually used by tiles, rather just entities. TILE_MATERIAL_PLAIN, TILE_MATERIAL_PLAIN_ALPHA }; @@ -61,6 +62,11 @@ struct FrameSpec video::ITexture *texture = nullptr; }; +/** + * We have two tile layers: + * layer 0 = base + * layer 1 = overlay + */ #define MAX_TILE_LAYERS 2 //! Defines a layer of a tile. @@ -90,15 +96,17 @@ struct TileLayer return !(*this == other); } - // Sets everything else except the texture in the material void applyMaterialOptions(video::SMaterial &material) const; void applyMaterialOptionsWithShaders(video::SMaterial &material) const; + /// @return is this layer semi-transparent? bool isTransparent() const { + // see also: the mapping in ShaderSource::generateShader() switch (material_type) { case TILE_MATERIAL_ALPHA: + case TILE_MATERIAL_PLAIN_ALPHA: case TILE_MATERIAL_LIQUID_TRANSPARENT: case TILE_MATERIAL_WAVING_LIQUID_TRANSPARENT: return true; @@ -124,9 +132,6 @@ struct TileLayer MATERIAL_FLAG_TILEABLE_HORIZONTAL| MATERIAL_FLAG_TILEABLE_VERTICAL; - //! If true, the tile has its own color. - bool has_color = false; - std::vector *frames = nullptr; /*! @@ -135,6 +140,9 @@ struct TileLayer */ video::SColor color = video::SColor(0, 0, 0, 0); + //! If true, the tile has its own color. + bool has_color = false; + u8 scale = 1; }; diff --git a/src/client/wieldmesh.cpp b/src/client/wieldmesh.cpp index e490f3b50..ddaca73fb 100644 --- a/src/client/wieldmesh.cpp +++ b/src/client/wieldmesh.cpp @@ -20,12 +20,12 @@ #include #include #include "client/renderingengine.h" +#include +#include +#include -#include "map.h" -#include "clientmap.h" - -#define WIELD_SCALE_FACTOR 30.0 -#define WIELD_SCALE_FACTOR_EXTRUDED 40.0 +#define WIELD_SCALE_FACTOR 30.0f +#define WIELD_SCALE_FACTOR_EXTRUDED 40.0f #define MIN_EXTRUSION_MESH_RESOLUTION 16 #define MAX_EXTRUSION_MESH_RESOLUTION 512 @@ -187,7 +187,6 @@ WieldMeshSceneNode::WieldMeshSceneNode(scene::ISceneManager *mgr, s32 id): scene::ISceneNode(mgr->getRootSceneNode(), mgr, id), m_material_type(video::EMT_TRANSPARENT_ALPHA_CHANNEL_REF) { - m_enable_shaders = g_settings->getBool("enable_shaders"); m_anisotropic_filter = g_settings->getBool("anisotropic_filter"); m_bilinear_filter = g_settings->getBool("bilinear_filter"); m_trilinear_filter = g_settings->getBool("trilinear_filter"); @@ -199,8 +198,7 @@ WieldMeshSceneNode::WieldMeshSceneNode(scene::ISceneManager *mgr, s32 id): else g_extrusion_mesh_cache->grab(); - // Disable bounding box culling for this scene node - // since we won't calculate the bounding box. + // This class doesn't render anything, so disable culling. setAutomaticCulling(scene::EAC_OFF); // Create the child scene node @@ -230,18 +228,6 @@ WieldMeshSceneNode::~WieldMeshSceneNode() g_extrusion_mesh_cache = nullptr; } -void WieldMeshSceneNode::setCube(const ContentFeatures &f, - v3f wield_scale) -{ - scene::IMesh *cubemesh = g_extrusion_mesh_cache->createCube(); - scene::SMesh *copy = cloneMesh(cubemesh); - cubemesh->drop(); - postProcessNodeMesh(copy, f, false, true, &m_material_type, &m_colors, true); - changeToMesh(copy); - copy->drop(); - m_meshnode->setScale(wield_scale * WIELD_SCALE_FACTOR); -} - void WieldMeshSceneNode::setExtruded(const std::string &imagename, const std::string &overlay_name, v3f wield_scale, ITextureSource *tsrc, u8 num_frames) @@ -256,6 +242,7 @@ void WieldMeshSceneNode::setExtruded(const std::string &imagename, core::dimension2d dim = texture->getSize(); // Detect animation texture and pull off top frame instead of using entire thing + // FIXME: this is quite unportable, we should be working with the original TileLayer if there's one if (num_frames > 1) { u32 frame_height = dim.Height / num_frames; dim = core::dimension2d(dim.Width, frame_height); @@ -267,11 +254,13 @@ void WieldMeshSceneNode::setExtruded(const std::string &imagename, mesh->getMeshBuffer(0)->getMaterial().setTexture(0, tsrc->getTexture(imagename)); if (overlay_texture) { + // duplicate the extruded mesh for the overlay scene::IMeshBuffer *copy = cloneMeshBuffer(mesh->getMeshBuffer(0)); copy->getMaterial().setTexture(0, overlay_texture); mesh->addMeshBuffer(copy); copy->drop(); } + mesh->recalculateBoundingBox(); changeToMesh(mesh); mesh->drop(); @@ -297,15 +286,10 @@ void WieldMeshSceneNode::setExtruded(const std::string &imagename, } } -static scene::SMesh *createSpecialNodeMesh(Client *client, MapNode n, +static scene::SMesh *createGenericNodeMesh(Client *client, MapNode n, std::vector *colors, const ContentFeatures &f) { - MeshMakeData mesh_make_data(client->ndef(), 1, false); - MeshCollector collector(v3f(0.0f * BS), v3f()); - mesh_make_data.setSmoothLighting(false); - MapblockMeshGenerator gen(&mesh_make_data, &collector, - client->getSceneManager()->getMeshManipulator()); - + n.setParam1(0xff); if (n.getParam2()) { // keep it } else if (f.param_type_2 == CPT2_WALLMOUNTED || @@ -319,29 +303,43 @@ static scene::SMesh *createSpecialNodeMesh(Client *client, MapNode n, } else if (f.drawtype == NDT_SIGNLIKE || f.drawtype == NDT_TORCHLIKE) { n.setParam2(1); } - gen.renderSingle(n.getContent(), n.getParam2()); + + MeshCollector collector(v3f(0), v3f()); + { + MeshMakeData mmd(client->ndef(), 1, MeshGrid{1}); + mmd.fillSingleNode(n); + MapblockMeshGenerator(&mmd, &collector).generate(); + } colors->clear(); scene::SMesh *mesh = new scene::SMesh(); - for (auto &prebuffers : collector.prebuffers) + for (int layer = 0; layer < MAX_TILE_LAYERS; layer++) { + auto &prebuffers = collector.prebuffers[layer]; for (PreMeshBuffer &p : prebuffers) { if (p.layer.material_flags & MATERIAL_FLAG_ANIMATION) { const FrameSpec &frame = (*p.layer.frames)[0]; p.layer.texture = frame.texture; } - for (video::S3DVertex &v : p.vertices) { + for (video::S3DVertex &v : p.vertices) v.Color.setAlpha(255); - } - scene::SMeshBuffer *buf = new scene::SMeshBuffer(); - buf->Material.setTexture(0, p.layer.texture); - p.layer.applyMaterialOptions(buf->Material); - mesh->addMeshBuffer(buf); + + auto buf = make_irr(); buf->append(&p.vertices[0], p.vertices.size(), &p.indices[0], p.indices.size()); - buf->drop(); - colors->push_back( - ItemPartColor(p.layer.has_color, p.layer.color)); + + // Set up material + buf->Material.setTexture(0, p.layer.texture); + if (layer == 1) { + buf->Material.PolygonOffsetSlopeScale = -1; + buf->Material.PolygonOffsetDepthBias = -1; + } + p.layer.applyMaterialOptions(buf->Material); + + mesh->addMeshBuffer(buf.get()); + colors->emplace_back(p.layer.has_color, p.layer.color); } + } + mesh->recalculateBoundingBox(); return mesh; } @@ -357,10 +355,8 @@ void WieldMeshSceneNode::setItem(const ItemStack &item, Client *client, bool che scene::SMesh *mesh = nullptr; - if (m_enable_shaders) { - u32 shader_id = shdrsrc->getShader("object_shader", TILE_MATERIAL_BASIC, NDT_NORMAL); - m_material_type = shdrsrc->getShaderInfo(shader_id).material; - } + u32 shader_id = shdrsrc->getShader("object_shader", TILE_MATERIAL_BASIC, NDT_NORMAL); + m_material_type = shdrsrc->getShaderInfo(shader_id).material; // Color-related m_colors.clear(); @@ -383,15 +379,12 @@ void WieldMeshSceneNode::setItem(const ItemStack &item, Client *client, bool che } // Handle nodes - // See also CItemDefManager::createClientCached() if (def.type == ITEM_NODE) { - bool cull_backface = f.needsBackfaceCulling(); - // Select rendering method switch (f.drawtype) { case NDT_AIRLIKE: setExtruded("no_texture_airlike.png", "", - v3f(1.0, 1.0, 1.0), tsrc, 1); + v3f(1), tsrc, 1); break; case NDT_SIGNLIKE: case NDT_TORCHLIKE: @@ -401,38 +394,33 @@ void WieldMeshSceneNode::setItem(const ItemStack &item, Client *client, bool che v3f wscale = wield_scale; if (f.drawtype == NDT_FLOWINGLIQUID) wscale.Z *= 0.1f; - setExtruded(tsrc->getTextureName(f.tiles[0].layers[0].texture_id), - tsrc->getTextureName(f.tiles[0].layers[1].texture_id), - wscale, tsrc, - f.tiles[0].layers[0].animation_frame_count); - // Add color const TileLayer &l0 = f.tiles[0].layers[0]; - m_colors.emplace_back(l0.has_color, l0.color); const TileLayer &l1 = f.tiles[0].layers[1]; + setExtruded(tsrc->getTextureName(l0.texture_id), + tsrc->getTextureName(l1.texture_id), + wscale, tsrc, + l0.animation_frame_count); + // Add color + m_colors.emplace_back(l0.has_color, l0.color); m_colors.emplace_back(l1.has_color, l1.color); break; } case NDT_PLANTLIKE_ROOTED: { - setExtruded(tsrc->getTextureName(f.special_tiles[0].layers[0].texture_id), - "", wield_scale, tsrc, - f.special_tiles[0].layers[0].animation_frame_count); - // Add color + // use the plant tile const TileLayer &l0 = f.special_tiles[0].layers[0]; + setExtruded(tsrc->getTextureName(l0.texture_id), + "", wield_scale, tsrc, + l0.animation_frame_count); m_colors.emplace_back(l0.has_color, l0.color); break; } - case NDT_NORMAL: - case NDT_ALLFACES: - case NDT_LIQUID: - setCube(f, wield_scale); - break; default: { - // Render non-trivial drawtypes like the actual node + // Render all other drawtypes like the actual node MapNode n(id); if (def.place_param2) n.setParam2(*def.place_param2); - mesh = createSpecialNodeMesh(client, n, &m_colors, f); + mesh = createGenericNodeMesh(client, n, &m_colors, f); changeToMesh(mesh); mesh->drop(); m_meshnode->setScale( @@ -445,9 +433,9 @@ void WieldMeshSceneNode::setItem(const ItemStack &item, Client *client, bool che u32 material_count = m_meshnode->getMaterialCount(); for (u32 i = 0; i < material_count; ++i) { video::SMaterial &material = m_meshnode->getMaterial(i); + // FIXME: overriding this breaks different alpha modes the mesh may have material.MaterialType = m_material_type; material.MaterialTypeParam = 0.5f; - material.BackfaceCulling = cull_backface; material.forEachTexture([this] (auto &tex) { setMaterialFilters(tex, m_bilinear_filter, m_trilinear_filter, m_anisotropic_filter); @@ -503,10 +491,7 @@ void WieldMeshSceneNode::setColor(video::SColor c) if (m_colors[j].needColorize(buffercolor)) { buf->setDirty(scene::EBT_VERTEX); - if (m_enable_shaders) - setMeshBufferColor(buf, buffercolor); - else - colorizeMeshBuffer(buf, &buffercolor); + setMeshBufferColor(buf, buffercolor); } } } @@ -516,13 +501,11 @@ void WieldMeshSceneNode::setNodeLightColor(video::SColor color) if (!m_meshnode) return; - if (m_enable_shaders) { + { for (u32 i = 0; i < m_meshnode->getMaterialCount(); ++i) { video::SMaterial &material = m_meshnode->getMaterial(i); material.ColorParam = color; } - } else { - setColor(color); } } @@ -541,12 +524,7 @@ void WieldMeshSceneNode::changeToMesh(scene::IMesh *mesh) dummymesh->drop(); // m_meshnode grabbed it } else { m_meshnode->setMesh(mesh); - // without shaders recolored often for lighting - // otherwise only once - if (m_enable_shaders) - mesh->setHardwareMappingHint(scene::EHM_STATIC); - else - mesh->setHardwareMappingHint(scene::EHM_DYNAMIC); + mesh->setHardwareMappingHint(scene::EHM_STATIC); } m_meshnode->setVisible(true); @@ -568,8 +546,6 @@ void getItemMesh(Client *client, const ItemStack &item, ItemMesh *result) // Shading is on by default result->needs_shading = true; - bool cull_backface = f.needsBackfaceCulling(); - // If inventory_image is defined, it overrides everything else const std::string inventory_image = item.getInventoryImage(idef); const std::string inventory_overlay = item.getInventoryOverlay(idef); @@ -586,51 +562,32 @@ void getItemMesh(Client *client, const ItemStack &item, ItemMesh *result) result->needs_shading = false; } else if (def.type == ITEM_NODE) { switch (f.drawtype) { - case NDT_NORMAL: - case NDT_ALLFACES: - case NDT_LIQUID: - case NDT_FLOWINGLIQUID: { - scene::IMesh *cube = g_extrusion_mesh_cache->createCube(); - mesh = cloneMesh(cube); - cube->drop(); - if (f.drawtype == NDT_FLOWINGLIQUID) { - scaleMesh(mesh, v3f(1.2, 0.03, 1.2)); - translateMesh(mesh, v3f(0, -0.57, 0)); - } else - scaleMesh(mesh, v3f(1.2, 1.2, 1.2)); - // add overlays - postProcessNodeMesh(mesh, f, false, false, nullptr, - &result->buffer_colors, true); - if (f.drawtype == NDT_ALLFACES) - scaleMesh(mesh, v3f(f.visual_scale)); - break; - } case NDT_PLANTLIKE: { - mesh = getExtrudedMesh(tsrc, - tsrc->getTextureName(f.tiles[0].layers[0].texture_id), - tsrc->getTextureName(f.tiles[0].layers[1].texture_id)); - // Add color const TileLayer &l0 = f.tiles[0].layers[0]; - result->buffer_colors.emplace_back(l0.has_color, l0.color); const TileLayer &l1 = f.tiles[0].layers[1]; + mesh = getExtrudedMesh(tsrc, + tsrc->getTextureName(l0.texture_id), + tsrc->getTextureName(l1.texture_id)); + // Add color + result->buffer_colors.emplace_back(l0.has_color, l0.color); result->buffer_colors.emplace_back(l1.has_color, l1.color); break; } case NDT_PLANTLIKE_ROOTED: { - mesh = getExtrudedMesh(tsrc, - tsrc->getTextureName(f.special_tiles[0].layers[0].texture_id), ""); - // Add color + // Use the plant tile const TileLayer &l0 = f.special_tiles[0].layers[0]; + mesh = getExtrudedMesh(tsrc, + tsrc->getTextureName(l0.texture_id), ""); result->buffer_colors.emplace_back(l0.has_color, l0.color); break; } default: { - // Render non-trivial drawtypes like the actual node + // Render all other drawtypes like the actual node MapNode n(id); if (def.place_param2) n.setParam2(*def.place_param2); - mesh = createSpecialNodeMesh(client, n, &result->buffer_colors, f); + mesh = createGenericNodeMesh(client, n, &result->buffer_colors, f); scaleMesh(mesh, v3f(0.12, 0.12, 0.12)); break; } @@ -639,13 +596,13 @@ void getItemMesh(Client *client, const ItemStack &item, ItemMesh *result) for (u32 i = 0; i < mesh->getMeshBufferCount(); ++i) { scene::IMeshBuffer *buf = mesh->getMeshBuffer(i); video::SMaterial &material = buf->getMaterial(); + // FIXME: overriding this breaks different alpha modes the mesh may have material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; material.MaterialTypeParam = 0.5f; material.forEachTexture([] (auto &tex) { tex.MinFilter = video::ETMINF_NEAREST_MIPMAP_NEAREST; tex.MagFilter = video::ETMAGF_NEAREST; }); - material.BackfaceCulling = cull_backface; } rotateMeshXZby(mesh, -45); @@ -666,7 +623,7 @@ scene::SMesh *getExtrudedMesh(ITextureSource *tsrc, const std::string &imagename, const std::string &overlay_name) { // check textures - video::ITexture *texture = tsrc->getTextureForMesh(imagename); + video::ITexture *texture = tsrc->getTexture(imagename); if (!texture) { return NULL; } @@ -701,56 +658,7 @@ scene::SMesh *getExtrudedMesh(ITextureSource *tsrc, material.MaterialType = video::EMT_TRANSPARENT_ALPHA_CHANNEL; material.MaterialTypeParam = 0.5f; } - scaleMesh(mesh, v3f(2.0, 2.0, 2.0)); + scaleMesh(mesh, v3f(2)); return mesh; } - -void postProcessNodeMesh(scene::SMesh *mesh, const ContentFeatures &f, - bool use_shaders, bool set_material, const video::E_MATERIAL_TYPE *mattype, - std::vector *colors, bool apply_scale) -{ - const u32 mc = mesh->getMeshBufferCount(); - // Allocate colors for existing buffers - colors->clear(); - colors->resize(mc); - - for (u32 i = 0; i < mc; ++i) { - const TileSpec *tile = &(f.tiles[i]); - scene::IMeshBuffer *buf = mesh->getMeshBuffer(i); - for (int layernum = 0; layernum < MAX_TILE_LAYERS; layernum++) { - const TileLayer *layer = &tile->layers[layernum]; - if (layer->texture_id == 0) - continue; - if (layernum != 0) { - scene::IMeshBuffer *copy = cloneMeshBuffer(buf); - copy->getMaterial() = buf->getMaterial(); - mesh->addMeshBuffer(copy); - copy->drop(); - buf = copy; - colors->emplace_back(layer->has_color, layer->color); - } else { - (*colors)[i] = ItemPartColor(layer->has_color, layer->color); - } - - video::SMaterial &material = buf->getMaterial(); - if (set_material) - layer->applyMaterialOptions(material); - if (mattype) { - material.MaterialType = *mattype; - } - if (layer->animation_frame_count > 1) { - const FrameSpec &animation_frame = (*layer->frames)[0]; - material.setTexture(0, animation_frame.texture); - } else { - material.setTexture(0, layer->texture); - } - - if (apply_scale && tile->world_aligned) { - u32 n = buf->getVertexCount(); - for (u32 k = 0; k != n; ++k) - buf->getTCoords(k) /= layer->scale; - } - } - } -} diff --git a/src/client/wieldmesh.h b/src/client/wieldmesh.h index d45af408b..a95b37d9d 100644 --- a/src/client/wieldmesh.h +++ b/src/client/wieldmesh.h @@ -92,7 +92,6 @@ public: WieldMeshSceneNode(scene::ISceneManager *mgr, s32 id = -1); virtual ~WieldMeshSceneNode(); - void setCube(const ContentFeatures &f, v3f wield_scale); void setExtruded(const std::string &imagename, const std::string &overlay_image, v3f wield_scale, ITextureSource *tsrc, u8 num_frames); void setItem(const ItemStack &item, Client *client, @@ -119,7 +118,6 @@ public: private: video::E_MATERIAL_TYPE m_material_type; - bool m_enable_shaders; bool m_anisotropic_filter; bool m_bilinear_filter; bool m_trilinear_filter; @@ -137,7 +135,7 @@ private: // Bounding box culling is disabled for this type of scene node, // so this variable is just required so we can implement // getBoundingBox() and is set to an empty box. - aabb3f m_bounding_box; + aabb3f m_bounding_box{{0, 0, 0}}; ShadowRenderer *m_shadow; }; @@ -146,14 +144,3 @@ void getItemMesh(Client *client, const ItemStack &item, ItemMesh *result); scene::SMesh *getExtrudedMesh(ITextureSource *tsrc, const std::string &imagename, const std::string &overlay_name); - -/*! - * Applies overlays, textures and optionally materials to the given mesh and - * extracts tile colors for colorization. - * \param mattype overrides the buffer's material type, but can also - * be NULL to leave the original material. - * \param colors returns the colors of the mesh buffers in the mesh. - */ -void postProcessNodeMesh(scene::SMesh *mesh, const ContentFeatures &f, bool use_shaders, - bool set_material, const video::E_MATERIAL_TYPE *mattype, - std::vector *colors, bool apply_scale = false); diff --git a/src/clientdynamicinfo.cpp b/src/clientdynamicinfo.cpp index 46283b33c..717e7813f 100644 --- a/src/clientdynamicinfo.cpp +++ b/src/clientdynamicinfo.cpp @@ -13,32 +13,32 @@ ClientDynamicInfo ClientDynamicInfo::getCurrent() { - v2u32 screen_size = RenderingEngine::getWindowSize(); - f32 density = RenderingEngine::getDisplayDensity(); - f32 gui_scaling = g_settings->getFloat("gui_scaling", 0.5f, 20.0f); - f32 hud_scaling = g_settings->getFloat("hud_scaling", 0.5f, 20.0f); - f32 real_gui_scaling = gui_scaling * density; - f32 real_hud_scaling = hud_scaling * density; - bool touch_controls = g_touchcontrols; + v2u32 screen_size = RenderingEngine::getWindowSize(); + f32 density = RenderingEngine::getDisplayDensity(); + f32 gui_scaling = g_settings->getFloat("gui_scaling", 0.5f, 20.0f); + f32 hud_scaling = g_settings->getFloat("hud_scaling", 0.5f, 20.0f); + f32 real_gui_scaling = gui_scaling * density; + f32 real_hud_scaling = hud_scaling * density; + bool touch_controls = g_touchcontrols; - return { - screen_size, real_gui_scaling, real_hud_scaling, - ClientDynamicInfo::calculateMaxFSSize(screen_size, density, gui_scaling), - touch_controls - }; + return { + screen_size, real_gui_scaling, real_hud_scaling, + ClientDynamicInfo::calculateMaxFSSize(screen_size, density, gui_scaling), + touch_controls + }; } v2f32 ClientDynamicInfo::calculateMaxFSSize(v2u32 render_target_size, f32 density, f32 gui_scaling) { // must stay in sync with GUIFormSpecMenu::calculateImgsize - const double screen_dpi = density * 96; + const double screen_dpi = density * 96; - // assume padding[0,0] since max_formspec_size is used for fullscreen formspecs + // assume padding[0,0] since max_formspec_size is used for fullscreen formspecs double prefer_imgsize = GUIFormSpecMenu::getImgsize(render_target_size, - screen_dpi, gui_scaling); - return v2f32(render_target_size.X / prefer_imgsize, - render_target_size.Y / prefer_imgsize); + screen_dpi, gui_scaling); + return v2f32(render_target_size.X / prefer_imgsize, + render_target_size.Y / prefer_imgsize); } #endif diff --git a/src/cmake_config.h.in b/src/cmake_config.h.in index 339e30c7a..b8c72d3e4 100644 --- a/src/cmake_config.h.in +++ b/src/cmake_config.h.in @@ -57,6 +57,7 @@ #cmakedefine01 USE_SYSTEM_GMP #cmakedefine01 USE_SYSTEM_JSONCPP #cmakedefine01 USE_REDIS +#cmakedefine01 USE_OPENSSL #cmakedefine01 HAVE_ENDIAN_H #cmakedefine01 HAVE_STRLCPY #cmakedefine01 HAVE_MALLOC_TRIM diff --git a/src/collision.cpp b/src/collision.cpp index fc108592e..58397271e 100644 --- a/src/collision.cpp +++ b/src/collision.cpp @@ -21,6 +21,8 @@ #warning "-ffast-math is known to cause bugs in collision code, do not use!" #endif +bool g_collision_problems_encountered = false; + namespace { struct NearbyCollisionInfo { @@ -261,7 +263,7 @@ static void add_object_boxes(Environment *env, { auto process_object = [&cinfo] (ActiveObject *object) { if (object && object->collideWithObjects()) { - aabb3f box; + aabb3f box{{0.0f, 0.0f, 0.0f}}; if (object->getCollisionBox(&box)) cinfo.emplace_back(object, 0, box); } @@ -322,7 +324,7 @@ static void add_object_boxes(Environment *env, #define PROFILER_NAME(text) (dynamic_cast(env) ? ("Server: " text) : ("Client: " text)) collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef, - f32 pos_max_d, const aabb3f &box_0, + const aabb3f &box_0, f32 stepheight, f32 dtime, v3f *pos_f, v3f *speed_f, v3f accel_f, ActiveObject *self, @@ -345,6 +347,7 @@ collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef, warningstream << "collisionMoveSimple: maximum step interval exceeded," " lost movement details!"<= 100) { - warningstream << "collisionMoveSimple: Loop count exceeded, aborting to avoid infiniite loop" << std::endl; + warningstream << "collisionMoveSimple: Loop count exceeded, aborting to avoid infinite loop" << std::endl; + g_collision_problems_encountered = true; break; } @@ -508,7 +512,6 @@ collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef, info.object = nearest_info.obj; info.new_pos = *pos_f; info.old_speed = *speed_f; - info.plane = nearest_collided; // Set the speed component that caused the collision to zero if (step_up) { diff --git a/src/collision.h b/src/collision.h index 20dd42201..5306cdd8a 100644 --- a/src/collision.h +++ b/src/collision.h @@ -12,13 +12,13 @@ class IGameDef; class Environment; class ActiveObject; -enum CollisionType +enum CollisionType : u8 { COLLISION_NODE, COLLISION_OBJECT, }; -enum CollisionAxis +enum CollisionAxis : s8 { COLLISION_AXIS_NONE = -1, COLLISION_AXIS_X, @@ -37,23 +37,25 @@ struct CollisionInfo v3f new_pos; v3f old_speed; v3f new_speed; - int plane = -1; }; struct collisionMoveResult { collisionMoveResult() = default; - bool touching_ground = false; bool collides = false; + bool touching_ground = false; bool standing_on_object = false; std::vector collisions; }; -/// @brief Moves using a single iteration; speed should not exceed pos_max_d/dtime +/// Status if any problems were ever encountered during collision detection. +/// @warning For unit test use only. +extern bool g_collision_problems_encountered; + /// @param self (optional) ActiveObject to ignore in the collision detection. -collisionMoveResult collisionMoveSimple(Environment *env,IGameDef *gamedef, - f32 pos_max_d, const aabb3f &box_0, +collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef, + const aabb3f &box_0, f32 stepheight, f32 dtime, v3f *pos_f, v3f *speed_f, v3f accel_f, ActiveObject *self=NULL, diff --git a/src/constants.h b/src/constants.h index 35db4e5a6..fc1b2fe8f 100644 --- a/src/constants.h +++ b/src/constants.h @@ -13,7 +13,7 @@ */ /* - Connection + Network Protocol */ #define PEER_ID_INEXISTENT 0 @@ -81,7 +81,7 @@ #define BS 10.0f #define HBS (BS/2) -// Dimension of a MapBlock +// Dimension of a MapBlock in nodes #define MAP_BLOCKP 4 #define MAP_BLOCKSIZE (1< #pragma once -#include "config.h" -#include "convert_json.h" #include "irrlichttypes.h" +#include enum class ContentType { diff --git a/src/content/mod_configuration.cpp b/src/content/mod_configuration.cpp index 230c49802..975f0be88 100644 --- a/src/content/mod_configuration.cpp +++ b/src/content/mod_configuration.cpp @@ -47,7 +47,7 @@ void ModConfiguration::addMods(const std::vector &new_mods) } // Add new mods - for (int want_from_modpack = 1; want_from_modpack >= 0; --want_from_modpack) { + for (bool want_from_modpack : {true, false}) { // First iteration: // Add all the mods that come from modpacks // Second iteration: @@ -56,9 +56,12 @@ void ModConfiguration::addMods(const std::vector &new_mods) std::set seen_this_iteration; for (const ModSpec &mod : new_mods) { - if (mod.part_of_modpack != (bool)want_from_modpack) + if (mod.part_of_modpack != want_from_modpack) continue; + // unrelated to this code, but we want to assert it somewhere + assert(fs::IsPathAbsolute(mod.path)); + if (existing_mods.count(mod.name) == 0) { // GOOD CASE: completely new mod. m_unsatisfied_mods.push_back(mod); diff --git a/src/content/mods.cpp b/src/content/mods.cpp index a95ea0227..5a9281f7d 100644 --- a/src/content/mods.cpp +++ b/src/content/mods.cpp @@ -15,6 +15,7 @@ #include "porting.h" #include "convert_json.h" #include "script/common/c_internal.h" +#include "exceptions.h" void ModSpec::checkAndLog() const { @@ -167,6 +168,7 @@ std::map getModsInPath( mod_path.clear(); mod_path.append(path).append(DIR_DELIM).append(modname); + mod_path = fs::AbsolutePath(mod_path); mod_virtual_path.clear(); // Intentionally uses / to keep paths same on different platforms @@ -174,7 +176,7 @@ std::map getModsInPath( ModSpec spec(modname, mod_path, part_of_modpack, mod_virtual_path); parseModContents(spec); - result.insert(std::make_pair(modname, spec)); + result[modname] = std::move(spec); } return result; } diff --git a/src/content/mods.h b/src/content/mods.h index 974960edd..05fd52cad 100644 --- a/src/content/mods.h +++ b/src/content/mods.h @@ -25,7 +25,7 @@ struct ModSpec { std::string name; std::string author; - std::string path; + std::string path; // absolute path on disk std::string desc; int release = 0; diff --git a/src/content/subgames.cpp b/src/content/subgames.cpp index a43f7da23..17db8f67a 100644 --- a/src/content/subgames.cpp +++ b/src/content/subgames.cpp @@ -12,6 +12,7 @@ #include "defaultsettings.h" // for set_default_settings #include "map_settings_manager.h" #include "util/string.h" +#include "exceptions.h" // The maximum number of identical world names allowed #define MAX_WORLD_NAMES 100 @@ -22,9 +23,8 @@ namespace { -bool getGameMinetestConfig(const std::string &game_path, Settings &conf) +bool getGameConfig(const std::string &game_path, Settings &conf) { - // TODO: rename this std::string conf_path = game_path + DIR_DELIM + "minetest.conf"; return conf.readConfigFile(conf_path.c_str()); } @@ -357,7 +357,7 @@ void loadGameConfAndInitWorld(const std::string &path, const std::string &name, game_settings = Settings::createLayer(SL_GAME); } - getGameMinetestConfig(gamespec.path, *game_settings); + getGameConfig(gamespec.path, *game_settings); game_settings->removeSecureSettings(); infostream << "Initializing world at " << final_path << std::endl; diff --git a/src/database/database-files.cpp b/src/database/database-files.cpp index e19d51108..5001a2810 100644 --- a/src/database/database-files.cpp +++ b/src/database/database-files.cpp @@ -43,7 +43,7 @@ void PlayerDatabaseFiles::deSerialize(RemotePlayer *p, std::istream &is, } try { - sao->setBasePosition(args.getV3F("position")); + sao->setBasePosition(args.getV3F("position").value_or(v3f())); } catch (SettingNotFoundException &e) {} try { diff --git a/src/database/database-redis.cpp b/src/database/database-redis.cpp index 5699f0b31..77c89cec8 100644 --- a/src/database/database-redis.cpp +++ b/src/database/database-redis.cpp @@ -20,7 +20,7 @@ /* * Redis is not a good fit for Minetest and only still supported for legacy as * well as advanced use case reasons, see: - * + * * * Do NOT extend this backend with any new functionality. */ diff --git a/src/debug.h b/src/debug.h index f2671ba56..38e18fb35 100644 --- a/src/debug.h +++ b/src/debug.h @@ -6,10 +6,9 @@ #include #include -#include "gettime.h" #include "debug/stacktrace.h" -#include "log.h" #include "config.h" +#include "log.h" // unused. for convenience. #ifdef _MSC_VER #define FUNCTION_NAME __FUNCTION__ diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp index c2fdb66ec..0dee03843 100644 --- a/src/defaultsettings.cpp +++ b/src/defaultsettings.cpp @@ -465,11 +465,10 @@ void set_default_settings() settings->setDefault("language", ""); settings->setDefault("name", ""); settings->setDefault("bind_address", ""); - settings->setDefault("serverlist_url", "servers.luanti.org"); + settings->setDefault("serverlist_url", "https://servers.luanti.org"); // Client settings->setDefault("address", ""); - settings->setDefault("enable_sound", "true"); #if defined(__unix__) && !defined(__APPLE__) && !defined (__ANDROID__) // On Linux+X11 (not Linux+Wayland or Linux+XWayland), I've encountered a bug // where fake mouse events were generated from touch events if in relative @@ -489,9 +488,9 @@ void set_default_settings() settings->setDefault("sound_volume_unfocused", "0.3"); settings->setDefault("mute_sound", "false"); settings->setDefault("sound_extensions_blacklist", ""); - settings->setDefault("enable_mesh_cache", "false"); settings->setDefault("mesh_generation_interval", "0"); settings->setDefault("mesh_generation_threads", "0"); + settings->setDefault("mesh_buffer_min_vertices", "300"); settings->setDefault("free_move", "false"); settings->setDefault("pitch_move", "false"); settings->setDefault("fast_move", "false"); @@ -536,7 +535,7 @@ void set_default_settings() settings->setDefault("keymap_minimap", "KEY_KEY_V"); settings->setDefault("keymap_console", "KEY_F10"); - // See https://github.com/minetest/minetest/issues/12792 + // see settings->setDefault("keymap_rangeselect", has_touch ? "KEY_KEY_R" : ""); settings->setDefault("keymap_freemove", "KEY_KEY_K"); @@ -657,7 +656,6 @@ void set_default_settings() settings->setDefault("cinematic", "false"); settings->setDefault("camera_smoothing", "0.0"); settings->setDefault("cinematic_camera_smoothing", "0.7"); - settings->setDefault("enable_clouds", "true"); settings->setDefault("view_bobbing_amount", "1.0"); settings->setDefault("fall_bobbing_amount", "0.03"); settings->setDefault("enable_3d_clouds", "true"); @@ -679,18 +677,15 @@ void set_default_settings() settings->setDefault("hud_scaling", "1.0"); settings->setDefault("gui_scaling", "1.0"); settings->setDefault("gui_scaling_filter", "false"); - settings->setDefault("gui_scaling_filter_txr2img", "true"); settings->setDefault("smooth_scrolling", "true"); - settings->setDefault("desynchronize_mapblock_texture_animation", "false"); settings->setDefault("hud_hotbar_max_width", "1.0"); settings->setDefault("enable_local_map_saving", "false"); settings->setDefault("show_entity_selectionbox", "false"); settings->setDefault("ambient_occlusion_gamma", "1.8"); - settings->setDefault("enable_shaders", "true"); - settings->setDefault("enable_particles", "true"); settings->setDefault("arm_inertia", "true"); settings->setDefault("show_nametag_backgrounds", "true"); settings->setDefault("show_block_bounds_radius_near", "4"); + settings->setDefault("transparency_sorting_group_by_buffers", "true"); settings->setDefault("transparency_sorting_distance", "16"); settings->setDefault("enable_minimap", "true"); @@ -699,6 +694,7 @@ void set_default_settings() // Effects settings->setDefault("enable_post_processing", "true"); + settings->setDefault("post_processing_texture_bits", "16"); settings->setDefault("directional_colored_fog", "true"); settings->setDefault("inventory_items_animations", "false"); settings->setDefault("mip_map", "false"); @@ -732,7 +728,7 @@ void set_default_settings() settings->setDefault("shadow_map_color", "false"); settings->setDefault("shadow_filters", "1"); settings->setDefault("shadow_poisson_filter", "true"); - settings->setDefault("shadow_update_frames", "8"); + settings->setDefault("shadow_update_frames", "16"); settings->setDefault("shadow_soft_radius", "5.0"); settings->setDefault("shadow_sky_body_orbit_tilt", "0.0"); @@ -801,7 +797,6 @@ void set_default_settings() #endif // Server - settings->setDefault("disable_escape_sequences", "false"); settings->setDefault("strip_color_codes", "false"); #ifndef NDEBUG settings->setDefault("random_mod_load_order", "true"); @@ -821,7 +816,6 @@ void set_default_settings() settings->setDefault("protocol_version_min", "1"); settings->setDefault("player_transfer_distance", "0"); settings->setDefault("max_simultaneous_block_sends_per_client", "40"); - settings->setDefault("time_send_interval", "5"); settings->setDefault("motd", ""); settings->setDefault("max_users", "15"); @@ -931,6 +925,7 @@ void set_default_settings() settings->setDefault("keymap_sneak", "KEY_SHIFT"); #endif + settings->setDefault("touch_layout", ""); settings->setDefault("touchscreen_sensitivity", "0.2"); settings->setDefault("touchscreen_threshold", "20"); settings->setDefault("touch_long_tap_delay", "400"); @@ -954,8 +949,12 @@ void set_default_settings() settings->setDefault("active_block_range", "2"); settings->setDefault("viewing_range", "50"); settings->setDefault("leaves_style", "simple"); + // Note: OpenGL ES 2.0 is not guaranteed to provide depth textures, + // which we would need for PP. settings->setDefault("enable_post_processing", "false"); + // still set these two settings in case someone wants to enable it settings->setDefault("debanding", "false"); + settings->setDefault("post_processing_texture_bits", "8"); settings->setDefault("curl_verify_cert", "false"); // Apply settings according to screen size diff --git a/src/dummymap.h b/src/dummymap.h index 0a49e8c86..f5513904c 100644 --- a/src/dummymap.h +++ b/src/dummymap.h @@ -24,5 +24,19 @@ public: ~DummyMap() = default; + void fill(v3s16 bpmin, v3s16 bpmax, MapNode n) + { + for (s16 z = bpmin.Z; z <= bpmax.Z; z++) + for (s16 y = bpmin.Y; y <= bpmax.Y; y++) + for (s16 x = bpmin.X; x <= bpmax.X; x++) { + MapBlock *block = getBlockNoCreateNoEx({x, y, z}); + if (block) { + for (size_t i = 0; i < MapBlock::nodecount; i++) + block->getData()[i] = n; + block->expireIsAirCache(); + } + } + } + bool maySaveBlocks() override { return false; } }; diff --git a/src/emerge.h b/src/emerge.h index 8eb3bb97e..81c95f203 100644 --- a/src/emerge.h +++ b/src/emerge.h @@ -8,7 +8,6 @@ #include #include "network/networkprotocol.h" #include "irr_v3d.h" -#include "util/container.h" #include "util/metricsbackend.h" #include "mapgen/mapgen.h" // for MapgenParams #include "map.h" diff --git a/src/emerge_internal.h b/src/emerge_internal.h index 3ff7cd72a..2c73444fb 100644 --- a/src/emerge_internal.h +++ b/src/emerge_internal.h @@ -98,7 +98,7 @@ public: MapEditEventAreaIgnorer(VoxelArea *ignorevariable, const VoxelArea &a): m_ignorevariable(ignorevariable) { - if (m_ignorevariable->getVolume() == 0) + if (m_ignorevariable->hasEmptyExtent()) *m_ignorevariable = a; else m_ignorevariable = nullptr; @@ -107,7 +107,7 @@ public: ~MapEditEventAreaIgnorer() { if (m_ignorevariable) { - assert(m_ignorevariable->getVolume() != 0); + assert(!m_ignorevariable->hasEmptyExtent()); *m_ignorevariable = VoxelArea(); } } diff --git a/src/environment.cpp b/src/environment.cpp index c1fe18af2..309416e0e 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -30,7 +30,6 @@ Environment::Environment(IGameDef *gamedef): m_gamedef(gamedef) { m_time_of_day = 9000; - m_cache_enable_shaders = g_settings->getBool("enable_shaders"); m_cache_active_block_mgmt_interval = g_settings->getFloat("active_block_mgmt_interval"); m_cache_abm_interval = g_settings->getFloat("abm_interval"); m_cache_nodetimer_interval = g_settings->getFloat("nodetimer_interval"); @@ -44,8 +43,7 @@ u32 Environment::getDayNightRatio() { if (m_enable_day_night_ratio_override) return m_day_night_ratio_override; - //MutexAutoLock lock(m_time_lock); - return time_to_daynight_ratio(m_time_of_day, m_cache_enable_shaders); + return time_to_daynight_ratio(m_time_of_day, true); } void Environment::setTimeOfDaySpeed(float speed) diff --git a/src/environment.h b/src/environment.h index 785f2b374..82a17b1bd 100644 --- a/src/environment.h +++ b/src/environment.h @@ -150,7 +150,6 @@ protected: * (as opposed to the this local caching). This can be addressed in * a later release. */ - bool m_cache_enable_shaders; float m_cache_active_block_mgmt_interval; float m_cache_abm_interval; float m_cache_nodetimer_interval; diff --git a/src/filesys.cpp b/src/filesys.cpp index 2ad5c8342..3184ec84b 100644 --- a/src/filesys.cpp +++ b/src/filesys.cpp @@ -117,7 +117,7 @@ std::vector GetDirListing(const std::string &pathstring) << " Error is " << dwError << std::endl; listing.clear(); return listing; - } + } } return listing; } @@ -519,15 +519,10 @@ bool CopyFileContents(const std::string &source, const std::string &target) // fallback to normal copy, but no need to reopen the files sourcefile.reset(fdopen(srcfd, "rb")); targetfile.reset(fdopen(tgtfd, "wb")); - goto fallback; - -#endif - +#else sourcefile.reset(fopen(source.c_str(), "rb")); targetfile.reset(fopen(target.c_str(), "wb")); - -fallback: - +#endif if (!sourcefile) { errorstream << source << ": can't open for reading: " << strerror(errno) << std::endl; @@ -728,7 +723,7 @@ bool PathStartsWith(const std::string &path, const std::string &prefix) if(prefixpos == prefixsize) return true; // Return false if path has ended (at delimiter/EOS) - // while prefix did not. + // while prefix did not. if(pathpos == pathsize) return false; } @@ -846,16 +841,51 @@ std::string RemoveRelativePathComponents(std::string path) std::string AbsolutePath(const std::string &path) { #ifdef _WIN32 + // handle behavior differences on windows + if (path.empty()) + return ""; + else if (!PathExists(path)) + return ""; char *abs_path = _fullpath(NULL, path.c_str(), MAX_PATH); #else char *abs_path = realpath(path.c_str(), NULL); #endif - if (!abs_path) return ""; + if (!abs_path) + return ""; std::string abs_path_str(abs_path); free(abs_path); return abs_path_str; } +std::string AbsolutePathPartial(const std::string &path) +{ + if (path.empty()) + return ""; + // Try to determine absolute path + std::string abs_path = fs::AbsolutePath(path); + if (!abs_path.empty()) + return abs_path; + // Remove components until it works + std::string cur_path = path; + std::string removed; + while (abs_path.empty() && !cur_path.empty()) { + std::string component; + cur_path = RemoveLastPathComponent(cur_path, &component); + removed = component + (removed.empty() ? "" : DIR_DELIM + removed); + abs_path = AbsolutePath(cur_path); + } + // If we had a relative path that does not exist, it needs to be joined with cwd + if (cur_path.empty() && !IsPathAbsolute(path)) + abs_path = AbsolutePath("."); + // or there's an error + if (abs_path.empty()) + return ""; + // Put them back together and resolve the remaining relative components + if (!removed.empty()) + abs_path.append(DIR_DELIM).append(removed); + return RemoveRelativePathComponents(abs_path); +} + const char *GetFilenameFromPath(const char *path) { const char *filename = strrchr(path, DIR_DELIM_CHAR); diff --git a/src/filesys.h b/src/filesys.h index dededcdb3..0e974d822 100644 --- a/src/filesys.h +++ b/src/filesys.h @@ -131,6 +131,12 @@ std::string RemoveRelativePathComponents(std::string path); // components and symlinks removed. Returns "" on error. std::string AbsolutePath(const std::string &path); +// This is a combination of RemoveRelativePathComponents() and AbsolutePath() +// It will resolve symlinks for the leading path components that exist and +// still remove "." and ".." in the rest of the path. +// Returns "" on error. +std::string AbsolutePathPartial(const std::string &path); + // Returns the filename from a path or the entire path if no directory // delimiter is found. const char *GetFilenameFromPath(const char *path); diff --git a/src/fm_nodecontainer.h b/src/fm_nodecontainer.h index c095f3a94..58cd26d50 100644 --- a/src/fm_nodecontainer.h +++ b/src/fm_nodecontainer.h @@ -38,6 +38,7 @@ public: return getNodeRefUnsafe(p); }; virtual void setNode(const v3pos_t &p, const MapNode &n, bool important = false) {}; + virtual bool setNodeNoEmerge(const v3pos_t &p, const MapNode &n) { setNode(p, n); return true; }; virtual void clear() {} virtual void addArea(const VoxelArea &a) {}; virtual void copyFrom(MapNode *src, const VoxelArea &src_area, v3pos_t from_pos, diff --git a/src/fm_server.cpp b/src/fm_server.cpp index a277f211e..de94f7a57 100644 --- a/src/fm_server.cpp +++ b/src/fm_server.cpp @@ -40,6 +40,7 @@ along with Freeminer. If not, see . #include "mapblock.h" #include "mapnode.h" #include "network/fm_networkprotocol.h" +#include "network/networkpacket.h" #include "profiler.h" #include "server.h" #include "debug/stacktrace.h" diff --git a/src/gettext_plural_form.cpp b/src/gettext_plural_form.cpp index 6a5322421..89dd721a4 100644 --- a/src/gettext_plural_form.cpp +++ b/src/gettext_plural_form.cpp @@ -90,16 +90,16 @@ class TernaryOperation: public GettextPluralForm }; typedef std::pair ParserResult; -typedef ParserResult (*Parser)(const size_t, const std::wstring_view &); +typedef ParserResult (*Parser)(const size_t, std::wstring_view); -static ParserResult parse_expr(const size_t nplurals, const std::wstring_view &str); +static ParserResult parse_expr(const size_t nplurals, std::wstring_view str); template typename Operator> static ParserResult reduce_ltr(const size_t nplurals, const ParserResult &res, const wchar_t* pattern) { if (!str_starts_with(res.second, pattern)) return ParserResult(nullptr, res.second); - auto next = Parser(nplurals, res.second.substr(std::char_traits::length(pattern))); + auto next = Parser(nplurals, trim(res.second.substr(std::char_traits::length(pattern)))); if (!next.first) return next; next.first = GettextPluralForm::Ptr(new BinaryOperation(res.first, next.first)); @@ -123,7 +123,7 @@ static ParserResult reduce_ltr(const size_t nplurals, const ParserResult &res, c } template typename Operator, template typename... Operators> -static ParserResult parse_ltr(const size_t nplurals, const std::wstring_view &str, const wchar_t** patterns) +static ParserResult parse_ltr(const size_t nplurals, std::wstring_view str, const wchar_t** patterns) { auto &&pres = Parser(nplurals, str); if (!pres.first) @@ -139,7 +139,7 @@ static ParserResult parse_ltr(const size_t nplurals, const std::wstring_view &st return pres; } -static ParserResult parse_atomic(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_atomic(const size_t nplurals, std::wstring_view str) { if (str.empty()) return ParserResult(nullptr, str); @@ -151,7 +151,7 @@ static ParserResult parse_atomic(const size_t nplurals, const std::wstring_view return ParserResult(new ConstValue(nplurals, val), trim(str.substr(endp-str.data()))); } -static ParserResult parse_parenthesized(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_parenthesized(const size_t nplurals, std::wstring_view str) { if (str.empty()) return ParserResult(nullptr, str); @@ -167,7 +167,7 @@ static ParserResult parse_parenthesized(const size_t nplurals, const std::wstrin return result; } -static ParserResult parse_negation(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_negation(const size_t nplurals, std::wstring_view str) { if (str.empty()) return ParserResult(nullptr, str); @@ -179,43 +179,43 @@ static ParserResult parse_negation(const size_t nplurals, const std::wstring_vie return result; } -static ParserResult parse_multiplicative(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_multiplicative(const size_t nplurals, std::wstring_view str) { static const wchar_t *patterns[] = { L"*", L"/", L"%" }; return parse_ltr(nplurals, str, patterns); } -static ParserResult parse_additive(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_additive(const size_t nplurals, std::wstring_view str) { static const wchar_t *patterns[] = { L"+", L"-" }; return parse_ltr(nplurals, str, patterns); } -static ParserResult parse_comparison(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_comparison(const size_t nplurals, std::wstring_view str) { static const wchar_t *patterns[] = { L"<=", L">=", L"<", L">" }; return parse_ltr(nplurals, str, patterns); } -static ParserResult parse_equality(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_equality(const size_t nplurals, std::wstring_view str) { static const wchar_t *patterns[] = { L"==", L"!=" }; return parse_ltr(nplurals, str, patterns); } -static ParserResult parse_conjunction(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_conjunction(const size_t nplurals, std::wstring_view str) { static const wchar_t *and_pattern[] = { L"&&" }; return parse_ltr(nplurals, str, and_pattern); } -static ParserResult parse_disjunction(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_disjunction(const size_t nplurals, std::wstring_view str) { static const wchar_t *or_pattern[] = { L"||" }; return parse_ltr(nplurals, str, or_pattern); } -static ParserResult parse_ternary(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_ternary(const size_t nplurals, std::wstring_view str) { auto pres = parse_disjunction(nplurals, str); if (pres.second.empty() || pres.second[0] != '?') // no ? : @@ -229,12 +229,12 @@ static ParserResult parse_ternary(const size_t nplurals, const std::wstring_view return ParserResult(new TernaryOperation(cond, val, pres.first), pres.second); } -static ParserResult parse_expr(const size_t nplurals, const std::wstring_view &str) +static ParserResult parse_expr(const size_t nplurals, std::wstring_view str) { return parse_ternary(nplurals, trim(str)); } -GettextPluralForm::Ptr GettextPluralForm::parse(const size_t nplurals, const std::wstring_view &str) +GettextPluralForm::Ptr GettextPluralForm::parse(const size_t nplurals, std::wstring_view str) { if (nplurals == 0) return nullptr; @@ -244,7 +244,7 @@ GettextPluralForm::Ptr GettextPluralForm::parse(const size_t nplurals, const std return result.first; } -GettextPluralForm::Ptr GettextPluralForm::parseHeaderLine(const std::wstring_view &str) +GettextPluralForm::Ptr GettextPluralForm::parseHeaderLine(std::wstring_view str) { if (!str_starts_with(str, L"Plural-Forms: nplurals=") || !str_ends_with(str, L";")) return nullptr; diff --git a/src/gettext_plural_form.h b/src/gettext_plural_form.h index d73718965..1d3195e9a 100644 --- a/src/gettext_plural_form.h +++ b/src/gettext_plural_form.h @@ -24,8 +24,8 @@ public: } virtual ~GettextPluralForm() {}; - static GettextPluralForm::Ptr parse(const size_t nplurals, const std::wstring_view &str); - static GettextPluralForm::Ptr parseHeaderLine(const std::wstring_view &str); + static GettextPluralForm::Ptr parse(const size_t nplurals, std::wstring_view str); + static GettextPluralForm::Ptr parseHeaderLine(std::wstring_view str); protected: GettextPluralForm(size_t nplurals): nplurals(nplurals) {}; private: diff --git a/src/gui/CMakeLists.txt b/src/gui/CMakeLists.txt index 04a03609d..876acab74 100644 --- a/src/gui/CMakeLists.txt +++ b/src/gui/CMakeLists.txt @@ -25,5 +25,7 @@ set(gui_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/modalMenu.cpp ${CMAKE_CURRENT_SOURCE_DIR}/profilergraph.cpp ${CMAKE_CURRENT_SOURCE_DIR}/touchcontrols.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/touchscreenlayout.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/touchscreeneditor.cpp PARENT_SCOPE ) diff --git a/src/gui/guiAnimatedImage.h b/src/gui/guiAnimatedImage.h index 885aedece..8f42cd9f3 100644 --- a/src/gui/guiAnimatedImage.h +++ b/src/gui/guiAnimatedImage.h @@ -1,8 +1,10 @@ #pragma once -#include "irrlichttypes_extrabloated.h" #include -#include +#include +#include + +using namespace irr; class ISimpleTextureSource; diff --git a/src/gui/guiBackgroundImage.h b/src/gui/guiBackgroundImage.h index 71c5b5077..de12c48d7 100644 --- a/src/gui/guiBackgroundImage.h +++ b/src/gui/guiBackgroundImage.h @@ -17,8 +17,11 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #pragma once -#include "irrlichttypes_extrabloated.h" -#include "util/string.h" +#include +#include +#include "irr_v2d.h" + +using namespace irr; class ISimpleTextureSource; diff --git a/src/gui/guiBox.cpp b/src/gui/guiBox.cpp index e29389662..21d525774 100644 --- a/src/gui/guiBox.cpp +++ b/src/gui/guiBox.cpp @@ -4,6 +4,7 @@ #include "guiBox.h" #include +#include "irr_v2d.h" GUIBox::GUIBox(gui::IGUIEnvironment *env, gui::IGUIElement *parent, s32 id, const core::rect &rectangle, diff --git a/src/gui/guiBox.h b/src/gui/guiBox.h index 4d83eaace..49c3b8210 100644 --- a/src/gui/guiBox.h +++ b/src/gui/guiBox.h @@ -4,9 +4,11 @@ #pragma once -#include #include -#include "irrlichttypes_extrabloated.h" +#include +#include + +using namespace irr; class GUIBox : public gui::IGUIElement { diff --git a/src/gui/guiChatConsole.cpp b/src/gui/guiChatConsole.cpp index cd1c79d2e..fbc63b65a 100644 --- a/src/gui/guiChatConsole.cpp +++ b/src/gui/guiChatConsole.cpp @@ -16,6 +16,7 @@ #include "gettext.h" #include "irrlicht_changes/CGUITTFont.h" #include "util/string.h" +#include "guiScrollBar.h" #include inline u32 clamp_u8(s32 value) @@ -28,6 +29,11 @@ inline bool isInCtrlKeys(const irr::EKEY_CODE& kc) return kc == KEY_LCONTROL || kc == KEY_RCONTROL || kc == KEY_CONTROL; } +inline u32 getScrollbarSize(IGUIEnvironment* env) +{ + return env->getSkin()->getSize(gui::EGDS_SCROLLBAR_SIZE); +} + GUIChatConsole::GUIChatConsole( gui::IGUIEnvironment* env, gui::IGUIElement* parent, @@ -55,22 +61,21 @@ GUIChatConsole::GUIChatConsole( m_background_color.setGreen(255); m_background_color.setBlue(255); } else { - v3f console_color = g_settings->getV3F("console_color"); + v3f console_color = g_settings->getV3F("console_color").value_or(v3f()); m_background_color.setRed(clamp_u8(myround(console_color.X))); m_background_color.setGreen(clamp_u8(myround(console_color.Y))); m_background_color.setBlue(clamp_u8(myround(console_color.Z))); } const u16 chat_font_size = g_settings->getU16("chat_font_size"); - m_font = g_fontengine->getFont(chat_font_size != 0 ? - rangelim(chat_font_size, 5, 72) : FONT_SIZE_UNSPECIFIED, FM_Mono); + m_font.grab(g_fontengine->getFont(chat_font_size != 0 ? + rangelim(chat_font_size, 5, 72) : FONT_SIZE_UNSPECIFIED, FM_Mono)); if (!m_font) { errorstream << "GUIChatConsole: Unable to load mono font" << std::endl; } else { core::dimension2d dim = m_font->getDimension(L"M"); m_fontsize = v2u32(dim.Width, dim.Height); - m_font->grab(); } m_fontsize.X = MYMAX(m_fontsize.X, 1); m_fontsize.Y = MYMAX(m_fontsize.Y, 1); @@ -81,12 +86,11 @@ GUIChatConsole::GUIChatConsole( // track ctrl keys for mouse event m_is_ctrl_down = false; m_cache_clickable_chat_weblinks = g_settings->getBool("clickable_chat_weblinks"); -} -GUIChatConsole::~GUIChatConsole() -{ - if (m_font) - m_font->drop(); + m_scrollbar.reset(new GUIScrollBar(env, this, -1, core::rect(0, 0, 30, m_height), false, true, tsrc)); + m_scrollbar->setSubElement(true); + m_scrollbar->setLargeStep(1); + m_scrollbar->setSmallStep(1); } void GUIChatConsole::openConsole(f32 scale) @@ -121,6 +125,7 @@ void GUIChatConsole::closeConsole() m_open = false; Environment->removeFocus(this); m_menumgr->deletingMenu(this); + m_scrollbar->setVisible(false); } void GUIChatConsole::closeConsoleAtOnce() @@ -187,6 +192,10 @@ void GUIChatConsole::draw() m_screensize = screensize; m_desired_height = m_desired_height_fraction * m_screensize.Y; reformatConsole(); + } else if (!m_scrollbar->getAbsolutePosition().isPointInside(core::vector2di(screensize.X, m_height))) { + // the height of the chat window is no longer the height of the scrollbar + // happens while opening/closing the window + updateScrollbar(true); } // Animation @@ -211,6 +220,9 @@ void GUIChatConsole::reformatConsole() s32 rows = m_desired_height / m_fontsize.Y - 1; // make room for the input prompt if (cols <= 0 || rows <= 0) cols = rows = 0; + + updateScrollbar(true); + recalculateConsolePosition(); m_chat_backend->reformat(cols, rows); } @@ -300,12 +312,19 @@ void GUIChatConsole::drawBackground() void GUIChatConsole::drawText() { - if (m_font == NULL) + if (!m_font) return; //fmold: irr::gui::CGUITTFont *tmp = static_cast(m_font); ChatBuffer& buf = m_chat_backend->getConsoleBuffer(); + + core::recti rect; + if (m_scrollbar->isVisible()) + rect = core::rect (0, 0, m_screensize.X - getScrollbarSize(Environment), m_height); + else + rect = AbsoluteClippingRect; + for (u32 row = 0; row < buf.getRows(); ++row) { const ChatFormattedLine& line = buf.getFormattedLine(row); @@ -324,13 +343,13 @@ void GUIChatConsole::drawText() if (m_font->getType() == irr::gui::EGFT_CUSTOM) { // Draw colored text if possible - gui::CGUITTFont *tmp = static_cast(m_font); + auto *tmp = static_cast(m_font.get()); tmp->draw( fragment.text, destrect, false, false, - &AbsoluteClippingRect); + &rect); } else { // Otherwise use standard text m_font->draw( @@ -339,10 +358,12 @@ void GUIChatConsole::drawText() video::SColor(255, 255, 255, 255), false, false, - &AbsoluteClippingRect); + &rect); } } } + + updateScrollbar(); } void GUIChatConsole::drawPrompt() @@ -746,6 +767,11 @@ bool GUIChatConsole::OnEvent(const SEvent& event) prompt.input(std::wstring(event.StringInput.Str->c_str())); return true; } + else if (event.EventType == EET_GUI_EVENT && event.GUIEvent.EventType == EGET_SCROLL_BAR_CHANGED && + (void*) event.GUIEvent.Caller == (void*) m_scrollbar.get()) + { + m_chat_backend->getConsoleBuffer().scrollAbsolute(m_scrollbar->getPos()); + } return Parent ? Parent->OnEvent(event) : false; } @@ -758,6 +784,7 @@ void GUIChatConsole::setVisible(bool visible) m_height = 0; recalculateConsolePosition(); } + m_scrollbar->setVisible(visible); } bool GUIChatConsole::weblinkClick(s32 col, s32 row) @@ -829,3 +856,18 @@ void GUIChatConsole::updatePrimarySelection() std::string selected = wide_to_utf8(wselected); Environment->getOSOperator()->copyToPrimarySelection(selected.c_str()); } + +void GUIChatConsole::updateScrollbar(bool update_size) +{ + ChatBuffer &buf = m_chat_backend->getConsoleBuffer(); + m_scrollbar->setMin(buf.getTopScrollPos()); + m_scrollbar->setMax(buf.getBottomScrollPos()); + m_scrollbar->setPos(buf.getScrollPosition()); + m_scrollbar->setPageSize(m_fontsize.Y * buf.getLineCount()); + m_scrollbar->setVisible(m_scrollbar->getMin() != m_scrollbar->getMax()); + + if (update_size) { + const core::rect rect (m_screensize.X - getScrollbarSize(Environment), 0, m_screensize.X, m_height); + m_scrollbar->setRelativePosition(rect); + } +} diff --git a/src/gui/guiChatConsole.h b/src/gui/guiChatConsole.h index 0d99988fb..05c4baf3f 100644 --- a/src/gui/guiChatConsole.h +++ b/src/gui/guiChatConsole.h @@ -4,12 +4,13 @@ #pragma once -#include "irrlichttypes_extrabloated.h" #include "modalMenu.h" #include "chat.h" -#include "config.h" +#include "irr_ptr.h" +#include class Client; +class GUIScrollBar; class GUIChatConsole : public gui::IGUIElement { @@ -20,7 +21,6 @@ public: ChatBackend* backend, Client* client, IMenuManager* menumgr); - virtual ~GUIChatConsole(); // Open the console (height = desired fraction of screen size) // This doesn't open immediately but initiates an animation. @@ -81,10 +81,13 @@ private: // If the selected text changed, we need to update the (X11) primary selection. void updatePrimarySelection(); + void updateScrollbar(bool update_size = false); + private: ChatBackend* m_chat_backend; Client* m_client; IMenuManager* m_menumgr; + irr_ptr m_scrollbar; // current screen size v2u32 m_screensize; @@ -121,7 +124,7 @@ private: video::SColor m_background_color = video::SColor(255, 0, 0, 0); // font - gui::IGUIFont *m_font = nullptr; + irr_ptr m_font; v2u32 m_fontsize; // Enable clickable chat weblinks diff --git a/src/gui/guiEditBoxWithScrollbar.cpp b/src/gui/guiEditBoxWithScrollbar.cpp index f85947822..a72dd031d 100644 --- a/src/gui/guiEditBoxWithScrollbar.cpp +++ b/src/gui/guiEditBoxWithScrollbar.cpp @@ -30,10 +30,6 @@ GUIEditBoxWithScrollBar::GUIEditBoxWithScrollBar(const wchar_t* text, bool borde : GUIEditBox(environment, parent, id, rectangle, border, writable), m_background(true), m_bg_color_used(false), m_tsrc(tsrc) { -#ifdef _DEBUG - setDebugName("GUIEditBoxWithScrollBar"); -#endif - Text = text; @@ -202,9 +198,9 @@ void GUIEditBoxWithScrollBar::draw() mbegin = font->getDimension(s.c_str()).Width; // deal with kerning - mbegin += font->getKerningWidth( - &((*txt_line)[realmbgn - start_pos]), - realmbgn - start_pos > 0 ? &((*txt_line)[realmbgn - start_pos - 1]) : 0); + mbegin += font->getKerning( + (*txt_line)[realmbgn - start_pos], + realmbgn - start_pos > 0 ? (*txt_line)[realmbgn - start_pos - 1] : 0).X; lineStartPos = realmbgn - start_pos; } @@ -250,7 +246,8 @@ void GUIEditBoxWithScrollBar::draw() } s = txt_line->subString(0, m_cursor_pos - start_pos); charcursorpos = font->getDimension(s.c_str()).Width + - font->getKerningWidth(L"_", m_cursor_pos - start_pos > 0 ? &((*txt_line)[m_cursor_pos - start_pos - 1]) : 0); + font->getKerning(L'_', + m_cursor_pos - start_pos > 0 ? (*txt_line)[m_cursor_pos - start_pos - 1] : 0).X; if (focus && (porting::getTimeMs() - m_blink_start_time) % 700 < 350) { setTextRect(cursor_line); @@ -439,7 +436,7 @@ void GUIEditBoxWithScrollBar::setTextRect(s32 line) d = font->getDimension(Text.c_str()); d.Height = AbsoluteRect.getHeight(); } - d.Height += font->getKerningHeight(); + d.Height += font->getKerning(L'A').Y; // justification switch (m_halign) { @@ -544,7 +541,7 @@ void GUIEditBoxWithScrollBar::calculateScrollPos() // calculate vertical scrolling if (has_broken_text) { - irr::u32 line_height = font->getDimension(L"A").Height + font->getKerningHeight(); + irr::u32 line_height = font->getDimension(L"A").Height + font->getKerning(L'A').Y; // only up to 1 line fits? if (line_height >= (irr::u32)m_frame_rect.getHeight()) { m_vscroll_pos = 0; diff --git a/src/gui/guiEngine.cpp b/src/gui/guiEngine.cpp index 4797079f3..cc18afba7 100644 --- a/src/gui/guiEngine.cpp +++ b/src/gui/guiEngine.cpp @@ -27,6 +27,7 @@ #include #include "client/imagefilters.h" #include "util/tracy_wrapper.h" +#include "script/common/c_types.h" // LuaError #if USE_SOUND #include "client/sound/sound_openal.h" @@ -133,7 +134,7 @@ GUIEngine::GUIEngine(JoystickController *joystick, // create soundmanager #if USE_SOUND - if (g_settings->getBool("enable_sound") && g_sound_manager_singleton.get()) { + if (g_sound_manager_singleton.get()) { m_sound_manager = createOpenALSoundManager(g_sound_manager_singleton.get(), std::make_unique()); } diff --git a/src/gui/guiFormSpecMenu.cpp b/src/gui/guiFormSpecMenu.cpp index 2cbfad760..dc822d137 100644 --- a/src/gui/guiFormSpecMenu.cpp +++ b/src/gui/guiFormSpecMenu.cpp @@ -79,7 +79,7 @@ */ static unsigned int font_line_height(gui::IGUIFont *font) { - return font->getDimension(L"Ay").Height + font->getKerningHeight(); + return font->getDimension(L"Ay").Height + font->getKerning(L'A').Y; } inline u32 clamp_u8(s32 value) @@ -3018,7 +3018,7 @@ void GUIFormSpecMenu::regenerateGui(v2u32 screensize) m_tabheader_upper_edge = 0; { - v3f formspec_bgcolor = g_settings->getV3F("formspec_fullscreen_bg_color"); + v3f formspec_bgcolor = g_settings->getV3F("formspec_fullscreen_bg_color").value_or(v3f()); m_fullscreen_bgcolor = video::SColor( (u8) clamp_u8(g_settings->getS32("formspec_fullscreen_bg_opacity")), clamp_u8(myround(formspec_bgcolor.X)), @@ -3623,10 +3623,25 @@ void GUIFormSpecMenu::showTooltip(const std::wstring &text, // Calculate and set the tooltip position s32 tooltip_x = m_pointer.X + tooltip_offset_x; s32 tooltip_y = m_pointer.Y + tooltip_offset_y; - if (tooltip_x + tooltip_width > (s32)screenSize.X) - tooltip_x = (s32)screenSize.X - tooltip_width - m_btn_height; - if (tooltip_y + tooltip_height > (s32)screenSize.Y) - tooltip_y = (s32)screenSize.Y - tooltip_height - m_btn_height; + // Bottom/Left limited positions (if the tooltip is too far out) + s32 tooltip_x_alt = (s32)screenSize.X - tooltip_width - m_btn_height; + s32 tooltip_y_alt = (s32)screenSize.Y - tooltip_height - m_btn_height; + + int collision = (tooltip_x_alt < tooltip_x) + 2 * (tooltip_y_alt < tooltip_y); + switch (collision) { + case 1: // x + tooltip_x = tooltip_x_alt; + break; + case 2: // y + tooltip_y = tooltip_y_alt; + break; + case 3: // both + tooltip_x = tooltip_x_alt; + tooltip_y = (s32)screenSize.Y - 2 * tooltip_height - m_btn_height; + break; + default: // OK + break; + } m_tooltip_element->setRelativePosition( core::rect( @@ -3890,7 +3905,7 @@ void GUIFormSpecMenu::acceptInput(FormspecQuitMode quitmode) fields[s.fname] = "CHG:" + itos(e->getPos()); else fields[s.fname] = "VAL:" + itos(e->getPos()); - } + } } else if (s.ftype == f_AnimatedImage) { // No dynamic cast possible due to some distributions shipped // without rtti support in Irrlicht @@ -5141,7 +5156,7 @@ double GUIFormSpecMenu::calculateImgsize(const parserData &data) { // must stay in sync with ClientDynamicInfo::calculateMaxFSSize - const double screen_dpi = RenderingEngine::getDisplayDensity() * 96; + const double screen_dpi = RenderingEngine::getDisplayDensity() * 96; const double gui_scaling = g_settings->getFloat("gui_scaling", 0.5f, 42.0f); // Fixed-size mode diff --git a/src/gui/guiHyperText.cpp b/src/gui/guiHyperText.cpp index e3900a1fd..5446038b0 100644 --- a/src/gui/guiHyperText.cpp +++ b/src/gui/guiHyperText.cpp @@ -777,7 +777,7 @@ void TextDrawer::place(const core::rect &dest_rect) std::max(f.margin, p.margin); } else if (f.rect.UpperLeftCorner.X - f.margin <= left && - f.rect.LowerRightCorner.X + f.margin >= right) { + f.rect.LowerRightCorner.X + f.margin >= right) { // float taking all space left = right; } @@ -1015,10 +1015,6 @@ GUIHyperText::GUIHyperText(const wchar_t *text, IGUIEnvironment *environment, m_drawer(text, client, environment, tsrc), m_text_scrollpos(0, 0) { -#ifdef _DEBUG - setDebugName("GUIHyperText"); -#endif - IGUISkin *skin = 0; if (Environment) skin = Environment->getSkin(); diff --git a/src/gui/guiHyperText.h b/src/gui/guiHyperText.h index d11e80dd7..abdd5de7b 100644 --- a/src/gui/guiHyperText.h +++ b/src/gui/guiHyperText.h @@ -8,7 +8,9 @@ #include #include #include -#include "irrlichttypes_extrabloated.h" +#include +#include +#include "irr_v3d.h" using namespace irr; diff --git a/src/gui/guiInventoryList.cpp b/src/gui/guiInventoryList.cpp index e5c61e86b..c19d45b71 100644 --- a/src/gui/guiInventoryList.cpp +++ b/src/gui/guiInventoryList.cpp @@ -85,8 +85,12 @@ void GUIInventoryList::draw() v2s32 p((i % m_geom.X) * m_slot_spacing.X, (i / m_geom.X) * m_slot_spacing.Y); core::rect rect = imgrect + base_pos + p; - ItemStack item = ilist->getItem(item_i); - ItemStack orig_item = item; + + if (!getAbsoluteClippingRect().isRectCollided(rect)) + continue; // out of (parent) clip area + + const ItemStack &orig_item = ilist->getItem(item_i); + ItemStack item = orig_item; bool selected = selected_item && m_invmgr->getInventory(selected_item->inventoryloc) == inv @@ -137,12 +141,26 @@ void GUIInventoryList::draw() client, rotation_kind); } - // Add hovering tooltip + // Add hovering tooltip. The tooltip disappears if any item is selected, + // including the currently hovered one. bool show_tooltip = !item.empty() && hovering && !selected_item; - // Make it possible to see item tooltips on touchscreens + if (RenderingEngine::getLastPointerType() == PointerType::Touch) { + // Touchscreen users cannot hover over an item without selecting it. + // To allow touchscreen users to see item tooltips, we also show the + // tooltip if the item is selected and the finger is still on the + // source slot. + // The selected amount may be 0 in rare cases during "left-dragging" + // (used to distribute items evenly). + // In this case, the user doesn't see an item being dragged, + // so we don't show the tooltip. + // Note: `m_fs_menu->getSelectedAmount() != 0` below refers to the + // part of the selected item the user is dragging. + // `!item.empty()` would refer to the part of the selected item + // remaining in the source slot. show_tooltip |= hovering && selected && m_fs_menu->getSelectedAmount() != 0; } + if (show_tooltip) { std::string tooltip = orig_item.getDescription(client->idef()); if (m_fs_menu->doTooltipAppendItemname()) diff --git a/src/gui/guiInventoryList.h b/src/gui/guiInventoryList.h index a4a53a48b..517dfe4c6 100644 --- a/src/gui/guiInventoryList.h +++ b/src/gui/guiInventoryList.h @@ -5,8 +5,11 @@ #pragma once #include "inventorymanager.h" -#include "irrlichttypes_extrabloated.h" -#include "util/string.h" +#include +#include +#include "irr_v2d.h" + +using namespace irr; class GUIFormSpecMenu; diff --git a/src/gui/guiItemImage.h b/src/gui/guiItemImage.h index c293f77d6..9bf81de9f 100644 --- a/src/gui/guiItemImage.h +++ b/src/gui/guiItemImage.h @@ -4,10 +4,10 @@ #pragma once -#include "IGUIElement.h" -#include "IGUIEnvironment.h" -#include "irrlichttypes_extrabloated.h" -#include "util/string.h" +#include +#include + +using namespace irr; class Client; diff --git a/src/gui/guiKeyChangeMenu.cpp b/src/gui/guiKeyChangeMenu.cpp index 4e87e9d93..99e0a0aa8 100644 --- a/src/gui/guiKeyChangeMenu.cpp +++ b/src/gui/guiKeyChangeMenu.cpp @@ -7,7 +7,6 @@ #include "guiKeyChangeMenu.h" #include "debug.h" #include "guiButton.h" -#include "serialization.h" #include #include #include @@ -16,7 +15,7 @@ #include #include #include "settings.h" -#include +#include "gettext.h" #include "mainmenumanager.h" // for g_gamecallback diff --git a/src/gui/guiKeyChangeMenu.h b/src/gui/guiKeyChangeMenu.h index 6544840cb..c858b2c93 100644 --- a/src/gui/guiKeyChangeMenu.h +++ b/src/gui/guiKeyChangeMenu.h @@ -6,12 +6,11 @@ #pragma once -#include "irrlichttypes_extrabloated.h" #include "modalMenu.h" -#include "gettext.h" #include "client/keycode.h" #include #include +#include class ISimpleTextureSource; diff --git a/src/gui/guiMainMenu.h b/src/gui/guiMainMenu.h index c92787adb..5a635c596 100644 --- a/src/gui/guiMainMenu.h +++ b/src/gui/guiMainMenu.h @@ -4,10 +4,8 @@ #pragma once -#include "irrlichttypes_extrabloated.h" #include "gameparams.h" #include -#include struct MainMenuDataForScript { diff --git a/src/gui/guiOpenURL.h b/src/gui/guiOpenURL.h index 8f873c2fa..f48f1aaa5 100644 --- a/src/gui/guiOpenURL.h +++ b/src/gui/guiOpenURL.h @@ -17,7 +17,6 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. #pragma once -#include "irrlichttypes_extrabloated.h" #include "modalMenu.h" #include diff --git a/src/gui/guiPasswordChange.h b/src/gui/guiPasswordChange.h index e2cafa312..f31f9dd21 100644 --- a/src/gui/guiPasswordChange.h +++ b/src/gui/guiPasswordChange.h @@ -23,7 +23,6 @@ along with Freeminer. If not, see . #pragma once -#include "irrlichttypes_extrabloated.h" #include "modalMenu.h" #include diff --git a/src/gui/guiScene.cpp b/src/gui/guiScene.cpp index f30c4f3d1..269bc1658 100644 --- a/src/gui/guiScene.cpp +++ b/src/gui/guiScene.cpp @@ -7,10 +7,10 @@ #include #include #include +#include #include "IAttributes.h" #include "porting.h" #include "client/mesh.h" -#include "settings.h" GUIScene::GUIScene(gui::IGUIEnvironment *env, scene::ISceneManager *smgr, gui::IGUIElement *parent, core::recti rect, s32 id) @@ -98,11 +98,6 @@ void GUIScene::draw() if (m_inf_rot) rotateCamera(v3f(0.f, -0.03f * (float)dtime_ms, 0.f)); - // HACK restore mesh vertex colors to full brightness: - // They may have been mutated in entity rendering code before. - if (!g_settings->getBool("enable_shaders")) - setMeshColor(m_mesh->getMesh(), irr::video::SColor(0xFFFFFFFF)); - m_smgr->drawAll(); if (m_initial_rotation && m_mesh) { diff --git a/src/gui/guiScene.h b/src/gui/guiScene.h index f9b6981c5..43902dad7 100644 --- a/src/gui/guiScene.h +++ b/src/gui/guiScene.h @@ -4,9 +4,11 @@ #pragma once -#include "irrlichttypes_extrabloated.h" #include "ICameraSceneNode.h" #include "StyleSpec.h" +#include +#include +#include using namespace irr; diff --git a/src/gui/guiScrollBar.h b/src/gui/guiScrollBar.h index af3bc4652..c485fbd83 100644 --- a/src/gui/guiScrollBar.h +++ b/src/gui/guiScrollBar.h @@ -12,8 +12,9 @@ the arrow buttons where there is insufficient space. #pragma once -#include "irrlichttypes_extrabloated.h" #include +#include +#include class ISimpleTextureSource; diff --git a/src/gui/guiScrollContainer.h b/src/gui/guiScrollContainer.h index 523d1cd42..ee09a16e5 100644 --- a/src/gui/guiScrollContainer.h +++ b/src/gui/guiScrollContainer.h @@ -4,8 +4,6 @@ #pragma once -#include "irrlichttypes_extrabloated.h" -#include "util/string.h" #include "guiScrollBar.h" class GUIScrollContainer : public gui::IGUIElement diff --git a/src/gui/guiTable.h b/src/gui/guiTable.h index d45102fbc..490b2810e 100644 --- a/src/gui/guiTable.h +++ b/src/gui/guiTable.h @@ -8,9 +8,7 @@ #include #include #include -#include -#include "irrlichttypes_extrabloated.h" #include "guiScrollBar.h" class ISimpleTextureSource; diff --git a/src/gui/guiVolumeChange.h b/src/gui/guiVolumeChange.h index 801928d00..aeddba594 100644 --- a/src/gui/guiVolumeChange.h +++ b/src/gui/guiVolumeChange.h @@ -24,7 +24,6 @@ along with Freeminer. If not, see . #pragma once -#include "irrlichttypes_extrabloated.h" #include "modalMenu.h" #include diff --git a/src/gui/mainmenumanager.h b/src/gui/mainmenumanager.h index a37db2a32..2ac00fee7 100644 --- a/src/gui/mainmenumanager.h +++ b/src/gui/mainmenumanager.h @@ -11,16 +11,24 @@ #include #include +#include "IGUIEnvironment.h" + +namespace irr::gui { + class IGUIStaticText; +} + class IGameCallback { public: virtual void exitToOS() = 0; + virtual void openSettings() = 0; virtual void keyConfig() = 0; virtual void disconnect() = 0; virtual void changePassword() = 0; virtual void changeVolume() = 0; virtual void showOpenURLDialog(const std::string &url) = 0; virtual void signalKeyConfigChange() = 0; + virtual void touchscreenLayout() = 0; }; extern gui::IGUIEnvironment *guienv; @@ -70,6 +78,12 @@ public: return m_stack.size(); } + void deleteFront() + { + m_stack.front()->setVisible(false); + deletingMenu(m_stack.front()); + } + bool pausesGame() { for (gui::IGUIElement *i : m_stack) { @@ -80,7 +94,7 @@ public: return false; } - // FIXME: why isn't this private? +private: std::list m_stack; }; @@ -102,6 +116,11 @@ public: shutdown_requested = true; } + void openSettings() override + { + settings_requested = true; + } + void disconnect() override { disconnect_requested = true; @@ -127,15 +146,22 @@ public: keyconfig_changed = true; } + void touchscreenLayout() override + { + touchscreenlayout_requested = true; + } + void showOpenURLDialog(const std::string &url) override { show_open_url_dialog = url; } bool disconnect_requested = false; + bool settings_requested = false; bool changepassword_requested = false; bool changevolume_requested = false; bool keyconfig_requested = false; + bool touchscreenlayout_requested = false; bool shutdown_requested = false; bool keyconfig_changed = false; std::string show_open_url_dialog = ""; diff --git a/src/gui/modalMenu.h b/src/gui/modalMenu.h index e15fe2408..c5578dcf5 100644 --- a/src/gui/modalMenu.h +++ b/src/gui/modalMenu.h @@ -4,8 +4,10 @@ #pragma once -#include "irrlichttypes_extrabloated.h" +#include "IGUIElement.h" +#include "irrlichttypes_bloated.h" #include "irr_ptr.h" + #include "util/string.h" #ifdef __ANDROID__ #include diff --git a/src/gui/touchcontrols.cpp b/src/gui/touchcontrols.cpp index d4168cf2b..18c5c4d26 100644 --- a/src/gui/touchcontrols.cpp +++ b/src/gui/touchcontrols.cpp @@ -5,6 +5,7 @@ // Copyright (C) 2024 grorp, Gregor Parzefall #include "touchcontrols.h" +#include "touchscreenlayout.h" #include "gettime.h" #include "irr_v2d.h" @@ -14,117 +15,63 @@ #include "client/guiscalingfilter.h" #include "client/keycode.h" #include "client/renderingengine.h" +#include "client/texturesource.h" #include "util/numeric.h" -#include "gettext.h" +#include "irr_gui_ptr.h" +#include "IGUIImage.h" #include "IGUIStaticText.h" #include "IGUIFont.h" #include #include +#include +#include #include #include TouchControls *g_touchcontrols; -static const char *button_image_names[] = { - "jump_btn.png", - "down.png", - "zoom.png", - "aux1_btn.png", - "overflow_btn.png", - - "fly_btn.png", - "noclip_btn.png", - "fast_btn.png", - "debug_btn.png", - "camera_btn.png", - "rangeview_btn.png", - "minimap_btn.png", - "", - - "chat_btn.png", - "inventory_btn.png", - "drop_btn.png", - "exit_btn.png", - - "joystick_off.png", - "joystick_bg.png", - "joystick_center.png", -}; - -// compare with GUIKeyChangeMenu::init_keys -static const char *button_titles[] = { - N_("Jump"), - N_("Sneak"), - N_("Zoom"), - N_("Aux1"), - N_("Overflow menu"), - - N_("Toggle fly"), - N_("Toggle noclip"), - N_("Toggle fast"), - N_("Toggle debug"), - N_("Change camera"), - N_("Range select"), - N_("Toggle minimap"), - N_("Toggle chat log"), - - N_("Chat"), - N_("Inventory"), - N_("Drop"), - N_("Exit"), - - N_("Joystick"), - N_("Joystick"), - N_("Joystick"), -}; - -static void load_button_texture(IGUIImage *gui_button, const std::string &path, - const recti &button_rect, ISimpleTextureSource *tsrc, video::IVideoDriver *driver) +void TouchControls::emitKeyboardEvent(EKEY_CODE keycode, bool pressed) { - video::ITexture *texture = guiScalingImageButton(driver, - tsrc->getTexture(path), button_rect.getWidth(), - button_rect.getHeight()); + SEvent e{}; + e.EventType = EET_KEY_INPUT_EVENT; + e.KeyInput.Key = keycode; + e.KeyInput.Control = false; + e.KeyInput.Shift = false; + e.KeyInput.Char = 0; + e.KeyInput.PressedDown = pressed; + m_receiver->OnEvent(e); +} + +void TouchControls::loadButtonTexture(IGUIImage *gui_button, const std::string &path) +{ + auto rect = gui_button->getRelativePosition(); + video::ITexture *texture = guiScalingImageButton(m_device->getVideoDriver(), + m_texturesource->getTexture(path), rect.getWidth(), rect.getHeight()); gui_button->setImage(texture); gui_button->setScaleImage(true); } -void button_info::emitAction(bool action, video::IVideoDriver *driver, - IEventReceiver *receiver, ISimpleTextureSource *tsrc) +void TouchControls::buttonEmitAction(button_info &btn, bool action) { - if (keycode == KEY_UNKNOWN) + if (btn.keycode == KEY_UNKNOWN) return; - SEvent translated{}; - translated.EventType = EET_KEY_INPUT_EVENT; - translated.KeyInput.Key = keycode; - translated.KeyInput.Control = false; - translated.KeyInput.Shift = false; - translated.KeyInput.Char = 0; + emitKeyboardEvent(btn.keycode, action); if (action) { - translated.KeyInput.PressedDown = true; - receiver->OnEvent(translated); + if (btn.toggleable == button_info::FIRST_TEXTURE) { + btn.toggleable = button_info::SECOND_TEXTURE; + loadButtonTexture(btn.gui_button.get(), btn.toggle_textures[1]); - if (toggleable == button_info::FIRST_TEXTURE) { - toggleable = button_info::SECOND_TEXTURE; - load_button_texture(gui_button.get(), toggle_textures[1], - gui_button->getRelativePosition(), - tsrc, driver); - } else if (toggleable == button_info::SECOND_TEXTURE) { - toggleable = button_info::FIRST_TEXTURE; - load_button_texture(gui_button.get(), toggle_textures[0], - gui_button->getRelativePosition(), - tsrc, driver); + } else if (btn.toggleable == button_info::SECOND_TEXTURE) { + btn.toggleable = button_info::FIRST_TEXTURE; + loadButtonTexture(btn.gui_button.get(), btn.toggle_textures[0]); } - } else { - translated.KeyInput.PressedDown = false; - receiver->OnEvent(translated); } } -static bool buttons_handlePress(std::vector &buttons, size_t pointer_id, IGUIElement *element, - video::IVideoDriver *driver, IEventReceiver *receiver, ISimpleTextureSource *tsrc) +bool TouchControls::buttonsHandlePress(std::vector &buttons, size_t pointer_id, IGUIElement *element) { if (!element) return false; @@ -137,7 +84,7 @@ static bool buttons_handlePress(std::vector &buttons, size_t pointe if (btn.pointer_ids.size() > 1) return true; - btn.emitAction(true, driver, receiver, tsrc); + buttonEmitAction(btn, true); btn.repeat_counter = -BUTTON_REPEAT_DELAY; return true; } @@ -147,8 +94,7 @@ static bool buttons_handlePress(std::vector &buttons, size_t pointe } -static bool buttons_handleRelease(std::vector &buttons, size_t pointer_id, - video::IVideoDriver *driver, IEventReceiver *receiver, ISimpleTextureSource *tsrc) +bool TouchControls::buttonsHandleRelease(std::vector &buttons, size_t pointer_id) { for (button_info &btn : buttons) { auto it = std::find(btn.pointer_ids.begin(), btn.pointer_ids.end(), pointer_id); @@ -158,7 +104,7 @@ static bool buttons_handleRelease(std::vector &buttons, size_t poin if (!btn.pointer_ids.empty()) return true; - btn.emitAction(false, driver, receiver, tsrc); + buttonEmitAction(btn, false); return true; } } @@ -166,8 +112,7 @@ static bool buttons_handleRelease(std::vector &buttons, size_t poin return false; } -static bool buttons_step(std::vector &buttons, float dtime, - video::IVideoDriver *driver, IEventReceiver *receiver, ISimpleTextureSource *tsrc) +bool TouchControls::buttonsStep(std::vector &buttons, float dtime) { bool has_pointers = false; @@ -180,8 +125,8 @@ static bool buttons_step(std::vector &buttons, float dtime, if (btn.repeat_counter < BUTTON_REPEAT_INTERVAL) continue; - btn.emitAction(false, driver, receiver, tsrc); - btn.emitAction(true, driver, receiver, tsrc); + buttonEmitAction(btn, false); + buttonEmitAction(btn, true); btn.repeat_counter = 0.0f; } @@ -260,20 +205,53 @@ static EKEY_CODE id_to_keycode(touch_gui_button_id id) } +static const char *setting_names[] = { + "touchscreen_threshold", "touch_long_tap_delay", + "fixed_virtual_joystick", "virtual_joystick_triggers_aux1", + "touch_layout", +}; + TouchControls::TouchControls(IrrlichtDevice *device, ISimpleTextureSource *tsrc): m_device(device), m_guienv(device->getGUIEnvironment()), m_receiver(device->getEventReceiver()), m_texturesource(tsrc) +{ + m_screensize = m_device->getVideoDriver()->getScreenSize(); + m_button_size = ButtonLayout::getButtonSize(m_screensize); + + readSettings(); + for (auto name : setting_names) + g_settings->registerChangedCallback(name, settingChangedCallback, this); +} + +void TouchControls::settingChangedCallback(const std::string &name, void *data) +{ + static_cast(data)->readSettings(); +} + +void TouchControls::readSettings() { m_touchscreen_threshold = g_settings->getU16("touchscreen_threshold"); m_long_tap_delay = g_settings->getU16("touch_long_tap_delay"); m_fixed_joystick = g_settings->getBool("fixed_virtual_joystick"); m_joystick_triggers_aux1 = g_settings->getBool("virtual_joystick_triggers_aux1"); - m_screensize = m_device->getVideoDriver()->getScreenSize(); - m_button_size = MYMIN(m_screensize.Y / 4.5f, - RenderingEngine::getDisplayDensity() * 65.0f * - g_settings->getFloat("hud_scaling")); + + // Note that "fixed_virtual_joystick" and "virtual_joystick_triggers_aux1" + // also affect the layout. + applyLayout(ButtonLayout::loadFromSettings()); +} + +void TouchControls::applyLayout(const ButtonLayout &layout) +{ + m_layout = layout; + + m_buttons.clear(); + m_overflow_btn = nullptr; + m_overflow_bg = nullptr; + m_overflow_buttons.clear(); + m_overflow_button_titles.clear(); + m_overflow_button_rects.clear(); // Initialize joystick display "button". // Joystick is placed on the bottom left of screen. @@ -300,47 +278,21 @@ TouchControls::TouchControls(IrrlichtDevice *device, ISimpleTextureSource *tsrc) m_joystick_btn_center = grab_gui_element(makeButtonDirect(joystick_center_id, recti(0, 0, m_button_size, m_button_size), false)); - // init jump button - addButton(m_buttons, jump_id, button_image_names[jump_id], - recti(m_screensize.X - 1.75f * m_button_size, - m_screensize.Y - m_button_size, - m_screensize.X - 0.25f * m_button_size, - m_screensize.Y)); + for (const auto &[id, meta] : m_layout.layout) { + if (!mayAddButton(id)) + continue; - // init sneak button - addButton(m_buttons, sneak_id, button_image_names[sneak_id], - recti(m_screensize.X - 3.25f * m_button_size, - m_screensize.Y - m_button_size, - m_screensize.X - 1.75f * m_button_size, - m_screensize.Y)); - - // init zoom button - addButton(m_buttons, zoom_id, button_image_names[zoom_id], - recti(m_screensize.X - 1.25f * m_button_size, - m_screensize.Y - 4 * m_button_size, - m_screensize.X - 0.25f * m_button_size, - m_screensize.Y - 3 * m_button_size)); - - // init aux1 button - if (!m_joystick_triggers_aux1) - addButton(m_buttons, aux1_id, button_image_names[aux1_id], - recti(m_screensize.X - 1.25f * m_button_size, - m_screensize.Y - 2.5f * m_button_size, - m_screensize.X - 0.25f * m_button_size, - m_screensize.Y - 1.5f * m_button_size)); - - // init overflow button - m_overflow_btn = grab_gui_element(makeButtonDirect(overflow_id, - recti(m_screensize.X - 1.25f * m_button_size, - m_screensize.Y - 5.5f * m_button_size, - m_screensize.X - 0.25f * m_button_size, - m_screensize.Y - 4.5f * m_button_size), true)); - - const static touch_gui_button_id overflow_buttons[] { - chat_id, inventory_id, drop_id, exit_id, - fly_id, noclip_id, fast_id, debug_id, camera_id, range_id, minimap_id, - toggle_chat_id, - }; + recti rect = m_layout.getRect(id, m_screensize, m_button_size, m_texturesource); + if (id == toggle_chat_id) + // Chat is shown by default, so chat_hide_btn.png is shown first. + addToggleButton(m_buttons, id, "chat_hide_btn.png", + "chat_show_btn.png", rect, true); + else if (id == overflow_id) + m_overflow_btn = grab_gui_element( + makeButtonDirect(id, rect, true)); + else + addButton(m_buttons, id, button_image_names[id], rect, true); + } IGUIStaticText *background = m_guienv->addStaticText(L"", recti(v2s32(0, 0), dimension2du(m_screensize))); @@ -348,32 +300,17 @@ TouchControls::TouchControls(IrrlichtDevice *device, ISimpleTextureSource *tsrc) background->setVisible(false); m_overflow_bg = grab_gui_element(background); - s32 cols = 4; - s32 rows = 3; - f32 screen_aspect = (f32)m_screensize.X / (f32)m_screensize.Y; - while ((s32)ARRLEN(overflow_buttons) > cols * rows) { - f32 aspect = (f32)cols / (f32)rows; - if (aspect > screen_aspect) - rows++; - else - cols++; - } - - v2s32 size(m_button_size, m_button_size); - v2s32 spacing(m_screensize.X / (cols + 1), m_screensize.Y / (rows + 1)); - v2s32 pos(spacing); - - for (auto id : overflow_buttons) { - if (id_to_keycode(id) == KEY_UNKNOWN) - continue; - - recti rect(pos - size / 2, dimension2du(size.X, size.Y)); - if (rect.LowerRightCorner.X > (s32)m_screensize.X) { - pos.X = spacing.X; - pos.Y += spacing.Y; - rect = recti(pos - size / 2, dimension2du(size.X, size.Y)); - } + auto overflow_buttons = m_layout.getMissingButtons(); + overflow_buttons.erase(std::remove_if( + overflow_buttons.begin(), overflow_buttons.end(), + [&](touch_gui_button_id id) { + // There's no sense in adding the overflow button to the overflow + // menu (also, it's impossible since it doesn't have a keycode). + return !mayAddButton(id) || id == overflow_id; + }), overflow_buttons.end()); + layout_button_grid(m_screensize, m_texturesource, overflow_buttons, + [&] (touch_gui_button_id id, v2s32 pos, recti rect) { if (id == toggle_chat_id) // Chat is shown by default, so chat_hide_btn.png is shown first. addToggleButton(m_overflow_buttons, id, "chat_hide_btn.png", @@ -381,41 +318,48 @@ TouchControls::TouchControls(IrrlichtDevice *device, ISimpleTextureSource *tsrc) else addButton(m_overflow_buttons, id, button_image_names[id], rect, false); - std::wstring str = wstrgettext(button_titles[id]); - IGUIStaticText *text = m_guienv->addStaticText(str.c_str(), recti()); - IGUIFont *font = text->getActiveFont(); - dimension2du dim = font->getDimension(str.c_str()); - dim = dimension2du(dim.Width * 1.25f, dim.Height * 1.25f); // avoid clipping - text->setRelativePosition(recti(pos.X - dim.Width / 2, pos.Y + size.Y / 2, - pos.X + dim.Width / 2, pos.Y + size.Y / 2 + dim.Height)); - text->setTextAlignment(EGUIA_CENTER, EGUIA_UPPERLEFT); + IGUIStaticText *text = m_guienv->addStaticText(L"", recti()); + make_button_grid_title(text, id, pos, rect); text->setVisible(false); m_overflow_button_titles.push_back(grab_gui_element(text)); rect.addInternalPoint(text->getRelativePosition().UpperLeftCorner); rect.addInternalPoint(text->getRelativePosition().LowerRightCorner); m_overflow_button_rects.push_back(rect); - - pos.X += spacing.X; - } + }); m_status_text = grab_gui_element( m_guienv->addStaticText(L"", recti(), false, false)); m_status_text->setVisible(false); + + // applyLayout can be called at any time, also e.g. while the overflow menu + // is open, so this is necessary to restore correct visibility. + updateVisibility(); } TouchControls::~TouchControls() { + g_settings->deregisterAllChangedCallbacks(this); releaseAll(); } +bool TouchControls::mayAddButton(touch_gui_button_id id) +{ + if (!ButtonLayout::isButtonAllowed(id)) + return false; + if (id == aux1_id && m_joystick_triggers_aux1) + return false; + if (id != overflow_id && id_to_keycode(id) == KEY_UNKNOWN) + return false; + return true; +} + void TouchControls::addButton(std::vector &buttons, touch_gui_button_id id, const std::string &image, const recti &rect, bool visible) { IGUIImage *btn_gui_button = m_guienv->addImage(rect, nullptr, id); btn_gui_button->setVisible(visible); - load_button_texture(btn_gui_button, image, rect, - m_texturesource, m_device->getVideoDriver()); + loadButtonTexture(btn_gui_button, image); button_info &btn = buttons.emplace_back(); btn.keycode = id_to_keycode(id); @@ -437,8 +381,7 @@ IGUIImage *TouchControls::makeButtonDirect(touch_gui_button_id id, { IGUIImage *btn_gui_button = m_guienv->addImage(rect, nullptr, id); btn_gui_button->setVisible(visible); - load_button_texture(btn_gui_button, button_image_names[id], rect, - m_texturesource, m_device->getVideoDriver()); + loadButtonTexture(btn_gui_button, button_image_names[id]); return btn_gui_button; } @@ -473,11 +416,9 @@ void TouchControls::handleReleaseEvent(size_t pointer_id) m_pointer_pos.erase(pointer_id); // handle buttons - if (buttons_handleRelease(m_buttons, pointer_id, m_device->getVideoDriver(), - m_receiver, m_texturesource)) + if (buttonsHandleRelease(m_buttons, pointer_id)) return; - if (buttons_handleRelease(m_overflow_buttons, pointer_id, m_device->getVideoDriver(), - m_receiver, m_texturesource)) + if (buttonsHandleRelease(m_overflow_buttons, pointer_id)) return; if (m_has_move_id && pointer_id == m_move_id) { @@ -555,21 +496,19 @@ void TouchControls::translateEvent(const SEvent &event) } } - if (buttons_handlePress(m_overflow_buttons, pointer_id, element, - m_device->getVideoDriver(), m_receiver, m_texturesource)) + if (buttonsHandlePress(m_overflow_buttons, pointer_id, element)) return; toggleOverflowMenu(); // refresh since visibility of buttons has changed - element = m_guienv->getRootGUIElement()->getElementFromPoint(touch_pos); + element = m_guienv->getRootGUIElement()->getElementFromPoint(touch_pos); // continue processing, but avoid accidentally placing a node // when closing the overflow menu prevent_short_tap = true; } // handle buttons - if (buttons_handlePress(m_buttons, pointer_id, element, - m_device->getVideoDriver(), m_receiver, m_texturesource)) + if (buttonsHandlePress(m_buttons, pointer_id, element)) return; // handle hotbar @@ -688,24 +627,27 @@ void TouchControls::translateEvent(const SEvent &event) void TouchControls::applyJoystickStatus() { if (m_joystick_triggers_aux1) { - SEvent translated{}; - translated.EventType = EET_KEY_INPUT_EVENT; - translated.KeyInput.Key = id_to_keycode(aux1_id); - translated.KeyInput.PressedDown = false; - m_receiver->OnEvent(translated); - - if (m_joystick_status_aux1) { - translated.KeyInput.PressedDown = true; - m_receiver->OnEvent(translated); - } + auto key = id_to_keycode(aux1_id); + emitKeyboardEvent(key, false); + if (m_joystick_status_aux1) + emitKeyboardEvent(key, true); } } void TouchControls::step(float dtime) { + v2u32 screensize = m_device->getVideoDriver()->getScreenSize(); + s32 button_size = ButtonLayout::getButtonSize(screensize); + + if (m_screensize != screensize || m_button_size != button_size) { + m_screensize = screensize; + m_button_size = button_size; + applyLayout(m_layout); + } + // simulate keyboard repeats - buttons_step(m_buttons, dtime, m_device->getVideoDriver(), m_receiver, m_texturesource); - buttons_step(m_overflow_buttons, dtime, m_device->getVideoDriver(), m_receiver, m_texturesource); + buttonsStep(m_buttons, dtime); + buttonsStep(m_overflow_buttons, dtime); // joystick applyJoystickStatus(); diff --git a/src/gui/touchcontrols.h b/src/gui/touchcontrols.h index cb3e8e8bf..ea71e2c86 100644 --- a/src/gui/touchcontrols.h +++ b/src/gui/touchcontrols.h @@ -5,11 +5,8 @@ #pragma once -#include "IGUIStaticText.h" #include "irrlichttypes.h" -#include -#include -#include +#include "IEventReceiver.h" #include #include @@ -17,41 +14,29 @@ #include #include "itemdef.h" -#include "client/game.h" +#include "touchscreenlayout.h" #include "util/basic_macros.h" -#include "client/texturesource.h" namespace irr { class IrrlichtDevice; + namespace gui + { + class IGUIEnvironment; + class IGUIImage; + class IGUIStaticText; + } + namespace video + { + class IVideoDriver; + } } +class ISimpleTextureSource; using namespace irr::core; using namespace irr::gui; -// We cannot use irr_ptr for Irrlicht GUI elements we own. -// Option 1: Pass IGUIElement* returned by IGUIEnvironment::add* into irr_ptr -// constructor. -// -> We steal the reference owned by IGUIEnvironment and drop it later, -// causing the IGUIElement to be deleted while IGUIEnvironment still -// references it. -// Option 2: Pass IGUIElement* returned by IGUIEnvironment::add* into irr_ptr::grab. -// -> We add another reference and drop it later, but since IGUIEnvironment -// still references the IGUIElement, it is never deleted. -// To make IGUIEnvironment drop its reference to the IGUIElement, we have to call -// IGUIElement::remove, so that's what we'll do. -template -std::shared_ptr grab_gui_element(T *element) -{ - static_assert(std::is_base_of_v, - "grab_gui_element only works for IGUIElement"); - return std::shared_ptr(element, [](T *e) { - e->remove(); - }); -} - - enum class TapState { None, @@ -59,36 +44,6 @@ enum class TapState LongTap, }; -enum touch_gui_button_id -{ - jump_id = 0, - sneak_id, - zoom_id, - aux1_id, - overflow_id, - - // usually in the "settings bar" - fly_id, - noclip_id, - fast_id, - debug_id, - camera_id, - range_id, - minimap_id, - toggle_chat_id, - - // usually in the "rare controls bar" - chat_id, - inventory_id, - drop_id, - exit_id, - - // the joystick - joystick_off_id, - joystick_bg_id, - joystick_center_id, -}; - #define BUTTON_REPEAT_DELAY 0.5f #define BUTTON_REPEAT_INTERVAL 0.333f @@ -112,9 +67,6 @@ struct button_info SECOND_TEXTURE } toggleable = NOT_TOGGLEABLE; std::string toggle_textures[2]; - - void emitAction(bool action, video::IVideoDriver *driver, - IEventReceiver *receiver, ISimpleTextureSource *tsrc); }; @@ -173,11 +125,26 @@ private: IGUIEnvironment *m_guienv = nullptr; IEventReceiver *m_receiver = nullptr; ISimpleTextureSource *m_texturesource = nullptr; + bool m_visible = true; + + // changes to these two values are handled in TouchControls::step v2u32 m_screensize; s32 m_button_size; + + // cached settings double m_touchscreen_threshold; u16 m_long_tap_delay; - bool m_visible = true; + bool m_fixed_joystick; + bool m_joystick_triggers_aux1; + + static void settingChangedCallback(const std::string &name, void *data); + void readSettings(); + + ButtonLayout m_layout; + void applyLayout(const ButtonLayout &layout); + + // not read from a setting, but set by Game via setUseCrosshair + bool m_draw_crosshair = false; std::unordered_map m_hotbar_rects; std::optional m_hotbar_selection = std::nullopt; @@ -210,9 +177,6 @@ private: float m_joystick_direction = 0.0f; // assume forward float m_joystick_speed = 0.0f; // no movement bool m_joystick_status_aux1 = false; - bool m_fixed_joystick = false; - bool m_joystick_triggers_aux1 = false; - bool m_draw_crosshair = false; std::shared_ptr m_joystick_btn_off; std::shared_ptr m_joystick_btn_bg; std::shared_ptr m_joystick_btn_center; @@ -228,18 +192,32 @@ private: std::shared_ptr m_status_text; + // Note: TouchControls intentionally uses IGUIImage instead of IGUIButton + // for its buttons. We only want static image display, not interactivity, + // from Irrlicht. + + void emitKeyboardEvent(EKEY_CODE keycode, bool pressed); + + void loadButtonTexture(IGUIImage *gui_button, const std::string &path); + void buttonEmitAction(button_info &btn, bool action); + + bool buttonsHandlePress(std::vector &buttons, size_t pointer_id, IGUIElement *element); + bool buttonsHandleRelease(std::vector &buttons, size_t pointer_id); + bool buttonsStep(std::vector &buttons, float dtime); + void toggleOverflowMenu(); void updateVisibility(); void releaseAll(); // initialize a button + bool mayAddButton(touch_gui_button_id id); void addButton(std::vector &buttons, touch_gui_button_id id, const std::string &image, - const recti &rect, bool visible=true); + const recti &rect, bool visible); void addToggleButton(std::vector &buttons, touch_gui_button_id id, const std::string &image_1, const std::string &image_2, - const recti &rect, bool visible=true); + const recti &rect, bool visible); IGUIImage *makeButtonDirect(touch_gui_button_id id, const recti &rect, bool visible); diff --git a/src/gui/touchscreeneditor.cpp b/src/gui/touchscreeneditor.cpp new file mode 100644 index 000000000..4a8468ee5 --- /dev/null +++ b/src/gui/touchscreeneditor.cpp @@ -0,0 +1,401 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 grorp, Gregor Parzefall + +#include "touchscreeneditor.h" +#include "touchcontrols.h" +#include "touchscreenlayout.h" + +#include "client/renderingengine.h" +#include "gettext.h" +#include "irr_gui_ptr.h" +#include "settings.h" + +#include "IGUIButton.h" +#include "IGUIFont.h" +#include "IGUIImage.h" +#include "IGUIStaticText.h" +#include +#include + +GUITouchscreenLayout::GUITouchscreenLayout(gui::IGUIEnvironment* env, + gui::IGUIElement* parent, s32 id, + IMenuManager *menumgr, ISimpleTextureSource *tsrc +): + GUIModalMenu(env, parent, id, menumgr), + m_tsrc(tsrc) +{ + m_layout = ButtonLayout::loadFromSettings(); + + m_gui_help_text = grab_gui_element(Environment->addStaticText( + L"", core::recti(), false, false, this, -1)); + m_gui_help_text->setTextAlignment(EGUIA_CENTER, EGUIA_CENTER); + + m_gui_add_btn = grab_gui_element(Environment->addButton( + core::recti(), this, -1, wstrgettext("Add button").c_str())); + m_gui_reset_btn = grab_gui_element(Environment->addButton( + core::recti(), this, -1, wstrgettext("Reset").c_str())); + m_gui_done_btn = grab_gui_element(Environment->addButton( + core::recti(), this, -1, wstrgettext("Done").c_str())); + + m_gui_remove_btn = grab_gui_element(Environment->addButton( + core::recti(), this, -1, wstrgettext("Remove").c_str())); +} + +GUITouchscreenLayout::~GUITouchscreenLayout() +{ + ButtonLayout::clearTextureCache(); +} + +void GUITouchscreenLayout::regenerateGui(v2u32 screensize) +{ + DesiredRect = core::recti(0, 0, screensize.X, screensize.Y); + recalculateAbsolutePosition(false); + + s32 button_size = ButtonLayout::getButtonSize(screensize); + if (m_last_screensize != screensize || m_button_size != button_size) { + m_last_screensize = screensize; + m_button_size = button_size; + // Prevent interpolation when the layout scales. + clearGUIImages(); + } + + // Discard invalid selection. May happen when... + // 1. a button is removed. + // 2. adding a button fails and it disappears from the layout again. + if (m_selected_btn != touch_gui_button_id_END && + m_layout.layout.count(m_selected_btn) == 0) + m_selected_btn = touch_gui_button_id_END; + + if (m_mode == Mode::Add) + regenerateGUIImagesAddMode(screensize); + else + regenerateGUIImagesRegular(screensize); + regenerateMenu(screensize); +} + +void GUITouchscreenLayout::clearGUIImages() +{ + m_gui_images.clear(); + m_gui_images_target_pos.clear(); + + m_add_layout.layout.clear(); + m_add_button_titles.clear(); +} + +void GUITouchscreenLayout::regenerateGUIImagesRegular(v2u32 screensize) +{ + assert(m_mode != Mode::Add); + + auto old_gui_images = m_gui_images; + clearGUIImages(); + + for (const auto &[btn, meta] : m_layout.layout) { + core::recti rect = m_layout.getRect(btn, screensize, m_button_size, m_tsrc); + std::shared_ptr img; + + if (old_gui_images.count(btn) > 0) { + img = old_gui_images.at(btn); + // Update size, keep position. Position is interpolated in interpolateGUIImages. + img->setRelativePosition(core::recti( + img->getRelativePosition().UpperLeftCorner, rect.getSize())); + } else { + img = grab_gui_element(Environment->addImage(rect, this, -1)); + img->setImage(ButtonLayout::getTexture(btn, m_tsrc)); + img->setScaleImage(true); + } + + m_gui_images[btn] = img; + m_gui_images_target_pos[btn] = rect.UpperLeftCorner; + } +} + +void GUITouchscreenLayout::regenerateGUIImagesAddMode(v2u32 screensize) +{ + assert(m_mode == Mode::Add); + + clearGUIImages(); + + auto missing_buttons = m_layout.getMissingButtons(); + + layout_button_grid(screensize, m_tsrc, missing_buttons, + [&] (touch_gui_button_id btn, v2s32 pos, core::recti rect) { + auto img = grab_gui_element(Environment->addImage(rect, this, -1)); + img->setImage(ButtonLayout::getTexture(btn, m_tsrc)); + img->setScaleImage(true); + m_gui_images[btn] = img; + + ButtonMeta meta; + meta.setPos(pos, screensize, m_button_size); + m_add_layout.layout[btn] = meta; + + IGUIStaticText *text = Environment->addStaticText(L"", core::recti(), + false, false,this, -1); + make_button_grid_title(text, btn, pos, rect); + m_add_button_titles.push_back(grab_gui_element(text)); + }); +} + +void GUITouchscreenLayout::interpolateGUIImages() +{ + if (m_mode == Mode::Add) + return; + + for (auto &[btn, gui_image] : m_gui_images) { + bool interpolate = m_mode != Mode::Dragging || m_selected_btn != btn; + + v2s32 cur_pos_int = gui_image->getRelativePosition().UpperLeftCorner; + v2s32 tgt_pos_int = m_gui_images_target_pos.at(btn); + v2f cur_pos(cur_pos_int.X, cur_pos_int.Y); + v2f tgt_pos(tgt_pos_int.X, tgt_pos_int.Y); + + if (interpolate && cur_pos.getDistanceFrom(tgt_pos) > 2.0f) { + v2f pos = cur_pos.getInterpolated(tgt_pos, 0.5f); + gui_image->setRelativePosition(v2s32(core::round32(pos.X), core::round32(pos.Y))); + } else { + gui_image->setRelativePosition(tgt_pos_int); + } + } +} + +static void layout_menu_row(v2u32 screensize, + const std::vector> &row, + const std::vector> &full_row, bool bottom) +{ + s32 spacing = RenderingEngine::getDisplayDensity() * 4.0f; + + s32 btn_w = 0; + s32 btn_h = 0; + for (const auto &btn : full_row) { + IGUIFont *font = btn->getActiveFont(); + core::dimension2du dim = font->getDimension(btn->getText()); + btn_w = std::max(btn_w, (s32)(dim.Width * 1.5f)); + btn_h = std::max(btn_h, (s32)(dim.Height * 2.5f)); + } + + const s32 row_width = ((btn_w + spacing) * row.size()) - spacing; + s32 x = screensize.X / 2 - row_width / 2; + const s32 y = bottom ? screensize.Y - spacing - btn_h : spacing; + + for (const auto &btn : row) { + btn->setRelativePosition(core::recti( + v2s32(x, y), core::dimension2du(btn_w, btn_h))); + x += btn_w + spacing; + } +} + +void GUITouchscreenLayout::regenerateMenu(v2u32 screensize) +{ + bool have_selection = m_selected_btn != touch_gui_button_id_END; + + if (m_mode == Mode::Add) + m_gui_help_text->setText(wstrgettext("Start dragging a button to add. Tap outside to cancel.").c_str()); + else if (!have_selection) + m_gui_help_text->setText(wstrgettext("Tap a button to select it. Drag a button to move it.").c_str()); + else + m_gui_help_text->setText(wstrgettext("Tap outside to deselect.").c_str()); + + IGUIFont *font = m_gui_help_text->getActiveFont(); + core::dimension2du dim = font->getDimension(m_gui_help_text->getText()); + s32 height = dim.Height * 2.5f; + s32 pos_y = (m_mode == Mode::Add || have_selection) ? 0 : screensize.Y - height; + m_gui_help_text->setRelativePosition(core::recti( + v2s32(0, pos_y), + core::dimension2du(screensize.X, height))); + + bool normal_buttons_visible = m_mode != Mode::Add && !have_selection; + bool add_visible = normal_buttons_visible && !m_layout.getMissingButtons().empty(); + + m_gui_add_btn->setVisible(add_visible); + m_gui_reset_btn->setVisible(normal_buttons_visible); + m_gui_done_btn->setVisible(normal_buttons_visible); + + if (normal_buttons_visible) { + std::vector row1{m_gui_add_btn, m_gui_reset_btn, m_gui_done_btn}; + if (add_visible) { + layout_menu_row(screensize, row1, row1, false); + } else { + std::vector row1_reduced{m_gui_reset_btn, m_gui_done_btn}; + layout_menu_row(screensize, row1_reduced, row1, false); + } + } + + bool remove_visible = m_mode != Mode::Add && have_selection && + !ButtonLayout::isButtonRequired(m_selected_btn); + + m_gui_remove_btn->setVisible(remove_visible); + + if (remove_visible) { + std::vector row2{m_gui_remove_btn}; + layout_menu_row(screensize, row2, row2, true); + } +} + +void GUITouchscreenLayout::drawMenu() +{ + video::IVideoDriver *driver = Environment->getVideoDriver(); + + video::SColor bgcolor(140, 0, 0, 0); + video::SColor selection_color(255, 128, 128, 128); + video::SColor error_color(255, 255, 0, 0); + + driver->draw2DRectangle(bgcolor, AbsoluteRect, &AbsoluteClippingRect); + + // Done here instead of in OnPostRender to avoid drag&drop lagging behind + // input by one frame. + // Must be done before drawing selection rectangle. + interpolateGUIImages(); + + bool draw_selection = m_gui_images.count(m_selected_btn) > 0; + if (draw_selection) + driver->draw2DRectangle(selection_color, + m_gui_images.at(m_selected_btn)->getAbsolutePosition(), + &AbsoluteClippingRect); + + if (m_mode == Mode::Dragging) { + for (const auto &rect : m_error_rects) + driver->draw2DRectangle(error_color, rect, &AbsoluteClippingRect); + } + + IGUIElement::draw(); +} + +void GUITouchscreenLayout::updateDragState(v2u32 screensize, v2s32 mouse_movement) +{ + assert(m_mode == Mode::Dragging); + + core::recti rect = m_layout.getRect(m_selected_btn, screensize, m_button_size, m_tsrc); + rect += mouse_movement; + rect.constrainTo(core::recti(v2s32(0, 0), core::dimension2du(screensize))); + + ButtonMeta &meta = m_layout.layout.at(m_selected_btn); + meta.setPos(rect.getCenter(), screensize, m_button_size); + + rect = m_layout.getRect(m_selected_btn, screensize, m_button_size, m_tsrc); + + m_error_rects.clear(); + for (const auto &[other_btn, other_meta] : m_layout.layout) { + if (other_btn == m_selected_btn) + continue; + core::recti other_rect = m_layout.getRect(other_btn, screensize, m_button_size, m_tsrc); + if (other_rect.isRectCollided(rect)) + m_error_rects.push_back(other_rect); + } + if (m_error_rects.empty()) + m_last_good_layout = m_layout; +} + +bool GUITouchscreenLayout::OnEvent(const SEvent& event) +{ + if (event.EventType == EET_KEY_INPUT_EVENT) { + if (event.KeyInput.Key == KEY_ESCAPE && event.KeyInput.PressedDown) { + quitMenu(); + return true; + } + } + + core::dimension2du screensize = Environment->getVideoDriver()->getScreenSize(); + + if (event.EventType == EET_MOUSE_INPUT_EVENT) { + v2s32 mouse_pos = v2s32(event.MouseInput.X, event.MouseInput.Y); + + switch (event.MouseInput.Event) { + case EMIE_LMOUSE_PRESSED_DOWN: { + m_mouse_down = true; + m_last_mouse_pos = mouse_pos; + + IGUIElement *el = Environment->getRootGUIElement()->getElementFromPoint(mouse_pos); + // Clicking on nothing deselects. + m_selected_btn = touch_gui_button_id_END; + for (const auto &[btn, gui_image] : m_gui_images) { + if (el == gui_image.get()) { + m_selected_btn = btn; + break; + } + } + + if (m_mode == Mode::Add) { + if (m_selected_btn != touch_gui_button_id_END) { + m_mode = Mode::Dragging; + m_last_good_layout = m_layout; + m_layout.layout[m_selected_btn] = m_add_layout.layout.at(m_selected_btn); + updateDragState(screensize, v2s32(0, 0)); + } else { + // Clicking on nothing quits add mode without adding a button. + m_mode = Mode::Default; + } + } + + regenerateGui(screensize); + return true; + } + case EMIE_MOUSE_MOVED: { + if (m_mouse_down && m_selected_btn != touch_gui_button_id_END) { + if (m_mode != Mode::Dragging) { + m_mode = Mode::Dragging; + m_last_good_layout = m_layout; + } + updateDragState(screensize, mouse_pos - m_last_mouse_pos); + + regenerateGui(screensize); + } + + m_last_mouse_pos = mouse_pos; + return true; + } + case EMIE_LMOUSE_LEFT_UP: { + m_mouse_down = false; + + if (m_mode == Mode::Dragging) { + m_mode = Mode::Default; + if (!m_error_rects.empty()) + m_layout = m_last_good_layout; + + regenerateGui(screensize); + } + + return true; + } + default: + break; + } + } + + if (event.EventType == EET_GUI_EVENT) { + switch (event.GUIEvent.EventType) { + case EGET_BUTTON_CLICKED: { + if (event.GUIEvent.Caller == m_gui_add_btn.get()) { + m_mode = Mode::Add; + regenerateGui(screensize); + return true; + } + + if (event.GUIEvent.Caller == m_gui_reset_btn.get()) { + m_layout = ButtonLayout::predefined; + regenerateGui(screensize); + return true; + } + + if (event.GUIEvent.Caller == m_gui_done_btn.get()) { + std::ostringstream oss; + m_layout.serializeJson(oss); + g_settings->set("touch_layout", oss.str()); + quitMenu(); + return true; + } + + if (event.GUIEvent.Caller == m_gui_remove_btn.get()) { + m_layout.layout.erase(m_selected_btn); + regenerateGui(screensize); + return true; + } + + break; + } + default: + break; + } + } + + return Parent ? Parent->OnEvent(event) : false; +} diff --git a/src/gui/touchscreeneditor.h b/src/gui/touchscreeneditor.h new file mode 100644 index 000000000..cedc3b42a --- /dev/null +++ b/src/gui/touchscreeneditor.h @@ -0,0 +1,82 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 grorp, Gregor Parzefall + +#pragma once + +#include "touchscreenlayout.h" +#include "modalMenu.h" + +#include +#include + +class ISimpleTextureSource; +namespace irr::gui +{ + class IGUIButton; + class IGUIImage; +} + +class GUITouchscreenLayout : public GUIModalMenu +{ +public: + GUITouchscreenLayout(gui::IGUIEnvironment* env, + gui::IGUIElement* parent, s32 id, + IMenuManager *menumgr, ISimpleTextureSource *tsrc); + ~GUITouchscreenLayout(); + + void regenerateGui(v2u32 screensize); + void drawMenu(); + bool OnEvent(const SEvent& event); + +protected: + std::wstring getLabelByID(s32 id) { return L""; } + std::string getNameByID(s32 id) { return ""; } + +private: + ISimpleTextureSource *m_tsrc; + + ButtonLayout m_layout; + v2u32 m_last_screensize; + s32 m_button_size; + + enum class Mode { + Default, + Dragging, + Add, + }; + Mode m_mode = Mode::Default; + + std::unordered_map> m_gui_images; + // unused if m_mode == Mode::Add + std::unordered_map m_gui_images_target_pos; + void clearGUIImages(); + void regenerateGUIImagesRegular(v2u32 screensize); + void regenerateGUIImagesAddMode(v2u32 screensize); + void interpolateGUIImages(); + + // interaction state + bool m_mouse_down = false; + v2s32 m_last_mouse_pos; + touch_gui_button_id m_selected_btn = touch_gui_button_id_END; + + // dragging + ButtonLayout m_last_good_layout; + std::vector m_error_rects; + void updateDragState(v2u32 screensize, v2s32 mouse_movement); + + // add mode + ButtonLayout m_add_layout; + std::vector> m_add_button_titles; + + // Menu GUI elements + std::shared_ptr m_gui_help_text; + + std::shared_ptr m_gui_add_btn; + std::shared_ptr m_gui_reset_btn; + std::shared_ptr m_gui_done_btn; + + std::shared_ptr m_gui_remove_btn; + + void regenerateMenu(v2u32 screensize); +}; diff --git a/src/gui/touchscreenlayout.cpp b/src/gui/touchscreenlayout.cpp new file mode 100644 index 000000000..0a88f5dd5 --- /dev/null +++ b/src/gui/touchscreenlayout.cpp @@ -0,0 +1,345 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 grorp, Gregor Parzefall + +#include "touchscreenlayout.h" +#include "client/renderingengine.h" +#include "client/texturesource.h" +#include "convert_json.h" +#include "gettext.h" +#include "settings.h" +#include + +#include "IGUIFont.h" +#include "IGUIStaticText.h" + +const char *button_names[] = { + "jump", + "sneak", + "zoom", + "aux1", + "overflow", + + "chat", + "inventory", + "drop", + "exit", + + "fly", + "fast", + "noclip", + "debug", + "camera", + "range", + "minimap", + "toggle_chat", + + "joystick_off", + "joystick_bg", + "joystick_center", +}; + +// compare with GUIKeyChangeMenu::init_keys +const char *button_titles[] = { + N_("Jump"), + N_("Sneak"), + N_("Zoom"), + N_("Aux1"), + N_("Overflow menu"), + + N_("Chat"), + N_("Inventory"), + N_("Drop"), + N_("Exit"), + + N_("Toggle fly"), + N_("Toggle fast"), + N_("Toggle noclip"), + N_("Toggle debug"), + N_("Change camera"), + N_("Range select"), + N_("Toggle minimap"), + N_("Toggle chat log"), + + N_("Joystick"), + N_("Joystick"), + N_("Joystick"), +}; + +const char *button_image_names[] = { + "jump_btn.png", + "down.png", + "zoom.png", + "aux1_btn.png", + "overflow_btn.png", + + "chat_btn.png", + "inventory_btn.png", + "drop_btn.png", + "exit_btn.png", + + "fly_btn.png", + "fast_btn.png", + "noclip_btn.png", + "debug_btn.png", + "camera_btn.png", + "rangeview_btn.png", + "minimap_btn.png", + // toggle button: switches between "chat_hide_btn.png" and "chat_show_btn.png" + "chat_hide_btn.png", + + "joystick_off.png", + "joystick_bg.png", + "joystick_center.png", +}; + +v2s32 ButtonMeta::getPos(v2u32 screensize, s32 button_size) const +{ + return v2s32((position.X * screensize.X) + (offset.X * button_size), + (position.Y * screensize.Y) + (offset.Y * button_size)); +} + +void ButtonMeta::setPos(v2s32 pos, v2u32 screensize, s32 button_size) +{ + v2s32 third(screensize.X / 3, screensize.Y / 3); + + if (pos.X < third.X) + position.X = 0.0f; + else if (pos.X < 2 * third.X) + position.X = 0.5f; + else + position.X = 1.0f; + + if (pos.Y < third.Y) + position.Y = 0.0f; + else if (pos.Y < 2 * third.Y) + position.Y = 0.5f; + else + position.Y = 1.0f; + + offset.X = (pos.X - (position.X * screensize.X)) / button_size; + offset.Y = (pos.Y - (position.Y * screensize.Y)) / button_size; +} + +bool ButtonLayout::isButtonAllowed(touch_gui_button_id id) +{ + return id != joystick_off_id && id != joystick_bg_id && id != joystick_center_id && + id != touch_gui_button_id_END; +} + +bool ButtonLayout::isButtonRequired(touch_gui_button_id id) +{ + return id == overflow_id; +} + +s32 ButtonLayout::getButtonSize(v2u32 screensize) +{ + return std::min(screensize.Y / 4.5f, + RenderingEngine::getDisplayDensity() * 65.0f * + g_settings->getFloat("hud_scaling")); +} + +const ButtonLayout ButtonLayout::predefined {{ + {jump_id, { + v2f(1.0f, 1.0f), + v2f(-1.0f, -0.5f), + }}, + {sneak_id, { + v2f(1.0f, 1.0f), + v2f(-2.5f, -0.5f), + }}, + {zoom_id, { + v2f(1.0f, 1.0f), + v2f(-0.75f, -3.5f), + }}, + {aux1_id, { + v2f(1.0f, 1.0f), + v2f(-0.75f, -2.0f), + }}, + {overflow_id, { + v2f(1.0f, 1.0f), + v2f(-0.75f, -5.0f), + }}, +}}; + +ButtonLayout ButtonLayout::loadFromSettings() +{ + bool restored = false; + ButtonLayout layout; + + std::string str = g_settings->get("touch_layout"); + if (!str.empty()) { + std::istringstream iss(str); + try { + layout.deserializeJson(iss); + restored = true; + } catch (const Json::Exception &e) { + warningstream << "Could not parse touchscreen layout: " << e.what() << std::endl; + } + } + + if (!restored) + return predefined; + + return layout; +} + +std::unordered_map> ButtonLayout::texture_cache; + +video::ITexture *ButtonLayout::getTexture(touch_gui_button_id btn, ISimpleTextureSource *tsrc) +{ + if (texture_cache.count(btn) > 0) + return texture_cache.at(btn).get(); + + video::ITexture *tex = tsrc->getTexture(button_image_names[btn]); + if (!tex) + // necessary in the mainmenu + tex = tsrc->getTexture(porting::path_share + "/textures/base/pack/" + + button_image_names[btn]); + irr_ptr ptr; + ptr.grab(tex); + texture_cache[btn] = ptr; + return tex; +} + +void ButtonLayout::clearTextureCache() +{ + texture_cache.clear(); +} + +core::recti ButtonLayout::getRect(touch_gui_button_id btn, + v2u32 screensize, s32 button_size, ISimpleTextureSource *tsrc) +{ + const ButtonMeta &meta = layout.at(btn); + v2s32 pos = meta.getPos(screensize, button_size); + + v2u32 orig_size = getTexture(btn, tsrc)->getOriginalSize(); + v2s32 size((button_size * orig_size.X) / orig_size.Y, button_size); + + return core::recti(pos - size / 2, core::dimension2di(size)); +} + +std::vector ButtonLayout::getMissingButtons() +{ + std::vector missing_buttons; + for (u8 i = 0; i < touch_gui_button_id_END; i++) { + touch_gui_button_id btn = (touch_gui_button_id)i; + if (isButtonAllowed(btn) && layout.count(btn) == 0) + missing_buttons.push_back(btn); + } + return missing_buttons; +} + +void ButtonLayout::serializeJson(std::ostream &os) const +{ + Json::Value root = Json::objectValue; + root["layout"] = Json::objectValue; + + for (const auto &[id, meta] : layout) { + Json::Value button = Json::objectValue; + button["position_x"] = meta.position.X; + button["position_y"] = meta.position.Y; + button["offset_x"] = meta.offset.X; + button["offset_y"] = meta.offset.Y; + + root["layout"][button_names[id]] = button; + } + + fastWriteJson(root, os); +} + +static touch_gui_button_id button_name_to_id(const std::string &name) +{ + for (u8 i = 0; i < touch_gui_button_id_END; i++) { + if (name == button_names[i]) + return (touch_gui_button_id)i; + } + return touch_gui_button_id_END; +} + +void ButtonLayout::deserializeJson(std::istream &is) +{ + layout.clear(); + + Json::Value root; + is >> root; + + if (!root["layout"].isObject()) + throw Json::RuntimeError("invalid type for layout"); + + Json::Value &obj = root["layout"]; + Json::ValueIterator iter; + for (iter = obj.begin(); iter != obj.end(); iter++) { + touch_gui_button_id id = button_name_to_id(iter.name()); + if (!isButtonAllowed(id)) + throw Json::RuntimeError("invalid button name"); + + Json::Value &value = *iter; + if (!value.isObject()) + throw Json::RuntimeError("invalid type for button metadata"); + + ButtonMeta meta; + + if (!value["position_x"].isNumeric() || !value["position_y"].isNumeric()) + throw Json::RuntimeError("invalid type for position_x or position_y in button metadata"); + meta.position.X = value["position_x"].asFloat(); + meta.position.Y = value["position_y"].asFloat(); + + if (!value["offset_x"].isNumeric() || !value["offset_y"].isNumeric()) + throw Json::RuntimeError("invalid type for offset_x or offset_y in button metadata"); + meta.offset.X = value["offset_x"].asFloat(); + meta.offset.Y = value["offset_y"].asFloat(); + + layout.emplace(id, meta); + } +} + +void layout_button_grid(v2u32 screensize, ISimpleTextureSource *tsrc, + const std::vector &buttons, + // pos refers to the center of the button + const std::function &callback) +{ + s32 cols = 4; + s32 rows = 3; + f32 screen_aspect = (f32)screensize.X / (f32)screensize.Y; + while ((s32)buttons.size() > cols * rows) { + f32 aspect = (f32)cols / (f32)rows; + if (aspect > screen_aspect) + rows++; + else + cols++; + } + + s32 button_size = ButtonLayout::getButtonSize(screensize); + v2s32 spacing(screensize.X / (cols + 1), screensize.Y / (rows + 1)); + v2s32 pos(spacing); + + for (touch_gui_button_id btn : buttons) { + v2u32 orig_size = ButtonLayout::getTexture(btn, tsrc)->getOriginalSize(); + v2s32 size((button_size * orig_size.X) / orig_size.Y, button_size); + + core::recti rect(pos - size / 2, core::dimension2di(size)); + + if (rect.LowerRightCorner.X > (s32)screensize.X) { + pos.X = spacing.X; + pos.Y += spacing.Y; + rect = core::recti(pos - size / 2, core::dimension2di(size)); + } + + callback(btn, pos, rect); + + pos.X += spacing.X; + } +} + +void make_button_grid_title(gui::IGUIStaticText *text, touch_gui_button_id btn, v2s32 pos, core::recti rect) +{ + std::wstring str = wstrgettext(button_titles[btn]); + text->setText(str.c_str()); + gui::IGUIFont *font = text->getActiveFont(); + core::dimension2du dim = font->getDimension(str.c_str()); + dim = core::dimension2du(dim.Width * 1.25f, dim.Height * 1.25f); // avoid clipping + text->setRelativePosition(core::recti(pos.X - dim.Width / 2, rect.LowerRightCorner.Y, + pos.X + dim.Width / 2, rect.LowerRightCorner.Y + dim.Height)); + text->setTextAlignment(gui::EGUIA_CENTER, gui::EGUIA_UPPERLEFT); +} diff --git a/src/gui/touchscreenlayout.h b/src/gui/touchscreenlayout.h new file mode 100644 index 000000000..9c7d72fbf --- /dev/null +++ b/src/gui/touchscreenlayout.h @@ -0,0 +1,104 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 grorp, Gregor Parzefall + +#pragma once + +#include "irr_ptr.h" +#include "irrlichttypes_bloated.h" +#include "rect.h" +#include +#include + +class ISimpleTextureSource; +namespace irr::gui +{ + class IGUIStaticText; +} +namespace irr::video +{ + class ITexture; +} + +enum touch_gui_button_id : u8 +{ + jump_id = 0, + sneak_id, + zoom_id, + aux1_id, + overflow_id, + + // formerly "rare controls bar" + chat_id, + inventory_id, + drop_id, + exit_id, + + // formerly "settings bar" + fly_id, + fast_id, + noclip_id, + debug_id, + camera_id, + range_id, + minimap_id, + toggle_chat_id, + + // the joystick + joystick_off_id, + joystick_bg_id, + joystick_center_id, + + touch_gui_button_id_END, +}; + +extern const char *button_names[]; +extern const char *button_titles[]; +extern const char *button_image_names[]; + +struct ButtonMeta { + // Position, specified as a percentage of the screensize in the range [0,1]. + // The editor currently writes the values 0, 0.5 and 1. + v2f position; + // Offset, multiplied by the global button size before it is applied. + // Together, position and offset define the position of the button's center. + v2f offset; + + // Returns the button's effective center position in pixels. + v2s32 getPos(v2u32 screensize, s32 button_size) const; + // Sets the button's effective center position in pixels. + void setPos(v2s32 pos, v2u32 screensize, s32 button_size); +}; + +struct ButtonLayout { + static bool isButtonAllowed(touch_gui_button_id id); + static bool isButtonRequired(touch_gui_button_id id); + static s32 getButtonSize(v2u32 screensize); + static ButtonLayout loadFromSettings(); + + static video::ITexture *getTexture(touch_gui_button_id btn, ISimpleTextureSource *tsrc); + static void clearTextureCache(); + + std::unordered_map layout; + + core::recti getRect(touch_gui_button_id btn, + v2u32 screensize, s32 button_size, ISimpleTextureSource *tsrc); + + std::vector getMissingButtons(); + + void serializeJson(std::ostream &os) const; + void deserializeJson(std::istream &is); + + static const ButtonLayout predefined; + +private: + static std::unordered_map> texture_cache; +}; + +void layout_button_grid(v2u32 screensize, ISimpleTextureSource *tsrc, + const std::vector &buttons, + // pos refers to the center of the button. + const std::function &callback); + +void make_button_grid_title(gui::IGUIStaticText *text, + touch_gui_button_id btn,v2s32 pos, core::recti rect); diff --git a/src/guiTextInputMenu.h b/src/guiTextInputMenu.h index 65d9e7e25..1242462ab 100644 --- a/src/guiTextInputMenu.h +++ b/src/guiTextInputMenu.h @@ -23,7 +23,6 @@ along with Freeminer. If not, see . #ifndef GUITEXTINPUTMENU_HEADER #define GUITEXTINPUTMENU_HEADER -#include "irrlichttypes_extrabloated.h" #include "gui/guiFormSpecMenu.h" #include diff --git a/src/httpfetch.cpp b/src/httpfetch.cpp index 83e15f1df..8405a419e 100644 --- a/src/httpfetch.cpp +++ b/src/httpfetch.cpp @@ -793,7 +793,7 @@ void httpfetch_sync(const HTTPFetchRequest &fetch_request, bool httpfetch_sync_interruptible(const HTTPFetchRequest &fetch_request, HTTPFetchResult &fetch_result, long interval) { - if (Thread *thread = Thread::getCurrentThread()) { + if (const Thread *thread = Thread::getCurrentThread()) { HTTPFetchRequest req = fetch_request; req.caller = httpfetch_caller_alloc_secure(); httpfetch_async(req); diff --git a/src/hud.h b/src/hud.h index c7e824a5f..8fb7d2eea 100644 --- a/src/hud.h +++ b/src/hud.h @@ -7,7 +7,7 @@ #include "irrlichttypes_bloated.h" #include -#include "common/c_types.h" +#include "util/enum_string.h" #define HUD_DIR_LEFT_RIGHT 0 #define HUD_DIR_RIGHT_LEFT 1 diff --git a/src/inventory.cpp b/src/inventory.cpp index e52085b3a..7d14675a8 100644 --- a/src/inventory.cpp +++ b/src/inventory.cpp @@ -295,10 +295,8 @@ std::string ItemStack::getWieldOverlay(const IItemDefManager *itemdef) const v3f ItemStack::getWieldScale(const IItemDefManager *itemdef) const { std::string scale = metadata.getString("wield_scale"); - if (scale.empty()) - return getDefinition(itemdef).wield_scale; - return str_to_v3f(scale); + return str_to_v3f(scale).value_or(getDefinition(itemdef).wield_scale); } ItemStack ItemStack::addItem(ItemStack newitem, IItemDefManager *itemdef) diff --git a/src/irr_gui_ptr.h b/src/irr_gui_ptr.h new file mode 100644 index 000000000..8c16a5b1e --- /dev/null +++ b/src/irr_gui_ptr.h @@ -0,0 +1,28 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 grorp, Gregor Parzefall + +#pragma once +#include +#include "IGUIElement.h" + +// We cannot use irr_ptr for Irrlicht GUI elements we own. +// Option 1: Pass IGUIElement* returned by IGUIEnvironment::add* into irr_ptr +// constructor. +// -> We steal the reference owned by IGUIEnvironment and drop it later, +// causing the IGUIElement to be deleted while IGUIEnvironment still +// references it. +// Option 2: Pass IGUIElement* returned by IGUIEnvironment::add* into irr_ptr::grab. +// -> We add another reference and drop it later, but since IGUIEnvironment +// still references the IGUIElement, it is never deleted. +// To make IGUIEnvironment drop its reference to the IGUIElement, we have to call +// IGUIElement::remove, so that's what we'll do. +template +std::shared_ptr grab_gui_element(T *element) +{ + static_assert(std::is_base_of_v, + "grab_gui_element only works for IGUIElement"); + return std::shared_ptr(element, [](T *e) { + e->remove(); + }); +} diff --git a/src/irrlicht_changes/CGUITTFont.cpp b/src/irrlicht_changes/CGUITTFont.cpp index 00c484715..0548fc95a 100644 --- a/src/irrlicht_changes/CGUITTFont.cpp +++ b/src/irrlicht_changes/CGUITTFont.cpp @@ -1,6 +1,7 @@ /* CGUITTFont FreeType class for Irrlicht Copyright (c) 2009-2010 John Norman + with changes from Luanti contributors: Copyright (c) 2016 Nathanaëlle Courant Copyright (c) 2023 Caleb Butler @@ -30,72 +31,116 @@ john@suckerfreegames.com */ -#include #include "CGUITTFont.h" -#include "CMeshBuffer.h" + +#include "irr_ptr.h" +#include "log.h" +#include "filesys.h" +#include "debug.h" #include "IFileSystem.h" #include "IGUIEnvironment.h" -#include "IMeshManipulator.h" -#include "IMeshSceneNode.h" -#include "ISceneManager.h" -#include "ISceneNode.h" + +#include +#include namespace irr { namespace gui { -// Manages the FT_Face cache. -struct SGUITTFace : public virtual irr::IReferenceCounted +std::map SGUITTFace::faces; +FT_Library SGUITTFace::freetype_library = nullptr; +std::size_t SGUITTFace::n_faces = 0; + +FT_Library SGUITTFace::getFreeTypeLibrary() { - SGUITTFace() : face_buffer(0), face_buffer_size(0) - { - memset((void*)&face, 0, sizeof(FT_Face)); - } + if (freetype_library) + return freetype_library; + FT_Library ft; + if (FT_Init_FreeType(&ft)) + FATAL_ERROR("initializing freetype failed"); + freetype_library = ft; + return freetype_library; +} - ~SGUITTFace() - { - FT_Done_Face(face); - delete[] face_buffer; - } - - FT_Face face; - FT_Byte* face_buffer; - FT_Long face_buffer_size; -}; - -// Static variables. -FT_Library CGUITTFont::c_library; -std::map CGUITTFont::c_faces; -bool CGUITTFont::c_libraryLoaded = false; -scene::IMesh* CGUITTFont::shared_plane_ptr_ = 0; -scene::SMesh CGUITTFont::shared_plane_; - -// - -/** Checks that no dimension of the FT_BitMap object is negative. If either is - * negative, abort execution. - */ -inline void checkFontBitmapSize(const FT_Bitmap &bits) +SGUITTFace::SGUITTFace(std::string &&buffer) : face_buffer(std::move(buffer)) { - if ((s32)bits.rows < 0 || (s32)bits.width < 0) { - std::cout << "Insane font glyph size. File: " - << __FILE__ << " Line " << __LINE__ - << std::endl; - abort(); + memset((void*)&face, 0, sizeof(FT_Face)); + n_faces++; +} + +SGUITTFace::~SGUITTFace() +{ + FT_Done_Face(face); + n_faces--; + // If there are no more faces referenced by FreeType, clean up. + if (n_faces == 0) { + assert(freetype_library); + FT_Done_FreeType(freetype_library); + freetype_library = nullptr; } } +SGUITTFace* SGUITTFace::createFace(std::string &&buffer) +{ + irr_ptr face(new SGUITTFace(std::move(buffer))); + auto ft = getFreeTypeLibrary(); + if (!ft) + return nullptr; + return (FT_New_Memory_Face(ft, + reinterpret_cast(face->face_buffer.data()), + face->face_buffer.size(), 0, &face->face)) + ? nullptr : face.release(); +} + +SGUITTFace* SGUITTFace::loadFace(const io::path &filename) +{ + auto it = faces.find(filename); + if (it != faces.end()) { + it->second->grab(); + return it->second; + } + + std::string buffer; + if (!fs::ReadFile(filename.c_str(), buffer, true)) { + errorstream << "CGUITTFont: Reading file " << filename.c_str() << " failed." << std::endl; + return nullptr; + } + + auto *face = SGUITTFace::createFace(std::move(buffer)); + if (!face) { + errorstream << "CGUITTFont: FT_New_Memory_Face failed." << std::endl; + return nullptr; + } + faces.emplace(filename, face); + return face; +} + +void SGUITTFace::dropFilename() +{ + if (!filename.has_value()) + return; + + auto it = faces.find(*filename); + if (it == faces.end()) + return; + + SGUITTFace* f = it->second; + // Drop our face. If this was the last face, the destructor will clean up. + if (f->drop()) + faces.erase(*filename); +} + video::IImage* SGUITTGlyph::createGlyphImage(const FT_Bitmap& bits, video::IVideoDriver* driver) const { // Make sure our casts to s32 in the loops below will not cause problems - checkFontBitmapSize(bits); + if ((s32)bits.rows < 0 || (s32)bits.width < 0) + FATAL_ERROR("Insane font glyph size"); // Determine what our texture size should be. // Add 1 because textures are inclusive-exclusive. core::dimension2du d(bits.width + 1, bits.rows + 1); core::dimension2du texture_size; - //core::dimension2du texture_size(bits.width + 1, bits.rows + 1); // Create and load our image now. video::IImage* image = 0; @@ -147,36 +192,36 @@ video::IImage* SGUITTGlyph::createGlyphImage(const FT_Bitmap& bits, video::IVide for (s32 x = 0; x < (s32)bits.width; ++x) { image_data[y * image_pitch + x] |= static_cast(255.0f * (static_cast(*row++) / gray_count)) << 24; - //data[y * image_pitch + x] |= ((u32)(*bitsdata++) << 24); } glyph_data += bits.pitch; } break; } default: - // TODO: error message? + errorstream << "CGUITTFont: unknown pixel mode " << (int)bits.pixel_mode << std::endl; return 0; } return image; } -void SGUITTGlyph::preload(u32 char_index, FT_Face face, video::IVideoDriver* driver, u32 font_size, const FT_Int32 loadFlags) +void SGUITTGlyph::preload(u32 char_index, FT_Face face, CGUITTFont *parent, u32 font_size, const FT_Int32 loadFlags) { - if (isLoaded) return; - // Set the size of the glyph. FT_Set_Pixel_Sizes(face, 0, font_size); // Attempt to load the glyph. - if (FT_Load_Glyph(face, char_index, loadFlags) != FT_Err_Ok) - // TODO: error message? + auto err = FT_Load_Glyph(face, char_index, loadFlags); + if (err != FT_Err_Ok) { + warningstream << "SGUITTGlyph: failed to load glyph " << char_index + << " with error: " << (int)err << std::endl; return; + } FT_GlyphSlot glyph = face->glyph; - FT_Bitmap bits = glyph->bitmap; + const FT_Bitmap &bits = glyph->bitmap; // Setup the glyph information here: - advance = glyph->advance; + advance = core::vector2di(glyph->advance.x, glyph->advance.y); offset = core::vector2di(glyph->bitmap_left, glyph->bitmap_top); // Try to get the last page with available slots. @@ -187,7 +232,6 @@ void SGUITTGlyph::preload(u32 char_index, FT_Face face, video::IVideoDriver* dri { page = parent->createGlyphPage(bits.pixel_mode); if (!page) - // TODO: add error message? return; } @@ -207,10 +251,7 @@ void SGUITTGlyph::preload(u32 char_index, FT_Face face, video::IVideoDriver* dri --page->available_slots; // We grab the glyph bitmap here so the data won't be removed when the next glyph is loaded. - surface = createGlyphImage(bits, driver); - - // Set our glyph as loaded. - isLoaded = true; + surface = createGlyphImage(bits, parent->getDriver()); } void SGUITTGlyph::unload() @@ -220,22 +261,18 @@ void SGUITTGlyph::unload() surface->drop(); surface = 0; } - isLoaded = false; + // reset isLoaded to false + source_rect = core::recti(); } ////////////////////// -CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias, const bool transparency, const u32 shadow, const u32 shadow_alpha) +CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, + SGUITTFace *face, u32 size, bool antialias, + bool transparency, u32 shadow, u32 shadow_alpha) { - if (!c_libraryLoaded) - { - if (FT_Init_FreeType(&c_library)) - return 0; - c_libraryLoaded = true; - } - CGUITTFont* font = new CGUITTFont(env); - bool ret = font->load(filename, size, antialias, transparency); + bool ret = font->load(face, size, antialias, transparency); if (!ret) { font->drop(); @@ -253,17 +290,13 @@ CGUITTFont* CGUITTFont::createTTFont(IGUIEnvironment *env, const io::path& filen //! Constructor. CGUITTFont::CGUITTFont(IGUIEnvironment *env) : use_monochrome(false), use_transparency(true), use_hinting(true), use_auto_hinting(true), -batch_load_size(1), Device(0), Environment(env), Driver(0), GlobalKerningWidth(0), GlobalKerningHeight(0), +batch_load_size(1), Driver(0), GlobalKerningWidth(0), GlobalKerningHeight(0), shadow_offset(0), shadow_alpha(0), fallback(0) { - #ifdef _DEBUG - setDebugName("CGUITTFont"); - #endif - if (Environment) - { + if (env) { // don't grab environment, to avoid circular references - Driver = Environment->getVideoDriver(); + Driver = env->getVideoDriver(); } if (Driver) @@ -272,106 +305,32 @@ shadow_offset(0), shadow_alpha(0), fallback(0) setInvisibleCharacters(L" "); } -bool CGUITTFont::load(const io::path& filename, const u32 size, const bool antialias, const bool transparency) +bool CGUITTFont::load(SGUITTFace *face, const u32 size, const bool antialias, const bool transparency) { - // Some sanity checks. - if (Environment == 0 || Driver == 0) return false; - if (size == 0) return false; - if (filename.size() == 0) return false; + if (!Driver || size == 0 || !face) + return false; - io::IFileSystem* filesystem = Environment->getFileSystem(); - irr::ILogger* logger = (Device != 0 ? Device->getLogger() : 0); - // FIXME: this is always null ^ this->size = size; - this->filename = filename; // Update the font loading flags when the font is first loaded. this->use_monochrome = !antialias; this->use_transparency = transparency; update_load_flags(); - // Log. - if (logger) - logger->log("CGUITTFont", (core::stringc(L"Creating new font: ") + filename + " " + core::stringc(size) + "pt " + (antialias ? "+antialias " : "-antialias ") + (transparency ? "+transparency" : "-transparency")).c_str(), irr::ELL_INFORMATION); - - // Grab the face. - SGUITTFace* face = 0; - auto node = c_faces.find(filename); - if (node == c_faces.end()) - { - face = new SGUITTFace(); - c_faces.emplace(filename, face); - - if (filesystem) - { - // Read in the file data. - io::IReadFile* file = filesystem->createAndOpenFile(filename); - if (file == 0) - { - if (logger) logger->log("CGUITTFont", "Failed to open the file.", irr::ELL_INFORMATION); - - c_faces.erase(filename); - delete face; - face = 0; - return false; - } - face->face_buffer = new FT_Byte[file->getSize()]; - file->read(face->face_buffer, file->getSize()); - face->face_buffer_size = file->getSize(); - file->drop(); - - // Create the face. - if (FT_New_Memory_Face(c_library, face->face_buffer, face->face_buffer_size, 0, &face->face)) - { - if (logger) logger->log("CGUITTFont", "FT_New_Memory_Face failed.", irr::ELL_INFORMATION); - - c_faces.erase(filename); - delete face; - face = 0; - return false; - } - } - else - { - if (FT_New_Face(c_library, reinterpret_cast(filename.c_str()), 0, &face->face)) - { - if (logger) logger->log("CGUITTFont", "FT_New_Face failed.", irr::ELL_INFORMATION); - - c_faces.erase(filename); - delete face; - face = 0; - return false; - } - } - } - else - { - // Using another instance of this face. - face = node->second; - face->grab(); - } - // Store our face. + face->grab(); tt_face = face->face; // Store font metrics. FT_Set_Pixel_Sizes(tt_face, size, 0); font_metrics = tt_face->size->metrics; + verbosestream << tt_face->num_glyphs << " glyphs, ascender=" << font_metrics.ascender + << " height=" << font_metrics.height << std::endl; + // Allocate our glyphs. Glyphs.clear(); - Glyphs.reallocate(tt_face->num_glyphs); Glyphs.set_used(tt_face->num_glyphs); - for (FT_Long i = 0; i < tt_face->num_glyphs; ++i) - { - Glyphs[i].isLoaded = false; - Glyphs[i].glyph_page = 0; - Glyphs[i].source_rect = core::recti(); - Glyphs[i].offset = core::vector2di(); - Glyphs[i].advance = FT_Vector(); - Glyphs[i].surface = 0; - Glyphs[i].parent = this; - } // Cache the first 127 ascii characters. u32 old_size = batch_load_size; @@ -388,24 +347,6 @@ CGUITTFont::~CGUITTFont() reset_images(); Glyphs.clear(); - // We aren't using this face anymore. - auto n = c_faces.find(filename); - if (n != c_faces.end()) - { - SGUITTFace* f = n->second; - - // Drop our face. If this was the last face, the destructor will clean up. - if (f->drop()) - c_faces.erase(filename); - - // If there are no more faces referenced by FreeType, clean up. - if (c_faces.empty()) - { - FT_Done_FreeType(c_library); - c_libraryLoaded = false; - } - } - // Drop our driver now. if (Driver) Driver->drop(); @@ -449,7 +390,7 @@ CGUITTGlyphPage* CGUITTFont::getLastGlyphPage() const return page; } -CGUITTGlyphPage* CGUITTFont::createGlyphPage(const u8& pixel_mode) +CGUITTGlyphPage* CGUITTFont::createGlyphPage(const u8 pixel_mode) { CGUITTGlyphPage* page = 0; @@ -489,7 +430,8 @@ CGUITTGlyphPage* CGUITTFont::createGlyphPage(const u8& pixel_mode) { if (!page->createPageTexture(pixel_mode, page_texture_size)) { - // TODO: add error message? + errorstream << "CGUITTGlyphPage: failed to create texture (" + << page_texture_size.Width << "x" << page_texture_size.Height << ")" << std::endl; delete page; return 0; } @@ -628,13 +570,12 @@ void CGUITTFont::draw(const EnrichedString &text, const core::rect& positio else if (fallback != 0) { // Let the fallback font draw it, this isn't super efficient but hopefully that doesn't matter - wchar_t l1[] = { (wchar_t) currentChar, 0 }, l2 = (wchar_t) previousChar; + wchar_t l1[] = { (wchar_t) currentChar, 0 }; if (visible) { // Apply kerning. - offset.X += fallback->getKerningWidth(l1, &l2); - offset.Y += fallback->getKerningHeight(); + offset += fallback->getKerning(*l1, (wchar_t) previousChar); const u32 current_color = iter - utext.begin(); fallback->draw(core::stringw(l1), @@ -699,11 +640,6 @@ void CGUITTFont::draw(const EnrichedString &text, const core::rect& positio } } -core::dimension2d CGUITTFont::getCharDimension(const wchar_t ch) const -{ - return core::dimension2d(getWidthFromCharacter(ch), getHeightFromCharacter(ch)); -} - core::dimension2d CGUITTFont::getDimension(const wchar_t* text) const { return getDimension(convertWCharToU32String(text)); @@ -770,21 +706,12 @@ core::dimension2d CGUITTFont::getDimension(const std::u32string& text) cons return text_dimension; } -inline u32 CGUITTFont::getWidthFromCharacter(wchar_t c) const -{ - return getWidthFromCharacter((char32_t)c); -} - inline u32 CGUITTFont::getWidthFromCharacter(char32_t c) const { - // Set the size of the face. - // This is because we cache faces and the face may have been set to a different size. - //FT_Set_Pixel_Sizes(tt_face, 0, size); - u32 n = getGlyphIndexByChar(c); if (n > 0) { - int w = Glyphs[n-1].advance.x / 64; + int w = Glyphs[n-1].advance.X / 64; return w; } if (fallback != 0) @@ -798,17 +725,8 @@ inline u32 CGUITTFont::getWidthFromCharacter(char32_t c) const else return (font_metrics.ascender / 64) / 2; } -inline u32 CGUITTFont::getHeightFromCharacter(wchar_t c) const -{ - return getHeightFromCharacter((char32_t)c); -} - inline u32 CGUITTFont::getHeightFromCharacter(char32_t c) const { - // Set the size of the face. - // This is because we cache faces and the face may have been set to a different size. - //FT_Set_Pixel_Sizes(tt_face, 0, size); - u32 n = getGlyphIndexByChar(c); if (n > 0) { @@ -827,11 +745,6 @@ inline u32 CGUITTFont::getHeightFromCharacter(char32_t c) const else return (font_metrics.ascender / 64) / 2; } -u32 CGUITTFont::getGlyphIndexByChar(wchar_t c) const -{ - return getGlyphIndexByChar((char32_t)c); -} - u32 CGUITTFont::getGlyphIndexByChar(char32_t c) const { // Get the glyph. @@ -842,7 +755,7 @@ u32 CGUITTFont::getGlyphIndexByChar(char32_t c) const return 0; // If our glyph is already loaded, don't bother doing any batch loading code. - if (glyph != 0 && Glyphs[glyph - 1].isLoaded) + if (glyph != 0 && Glyphs[glyph - 1].isLoaded()) return glyph; // Determine our batch loading positions. @@ -861,9 +774,10 @@ u32 CGUITTFont::getGlyphIndexByChar(char32_t c) const if (char_index) { SGUITTGlyph& glyph = Glyphs[char_index - 1]; - if (!glyph.isLoaded) + if (!glyph.isLoaded()) { - glyph.preload(char_index, tt_face, Driver, size, load_flags); + auto *this2 = const_cast(this); // oh well + glyph.preload(char_index, tt_face, this2, size, load_flags); Glyph_Pages[glyph.glyph_page]->pushGlyphToBePaged(&glyph); } } @@ -882,11 +796,10 @@ s32 CGUITTFont::getCharacterFromPos(const wchar_t* text, s32 pixel_x) const s32 CGUITTFont::getCharacterFromPos(const std::u32string& text, s32 pixel_x) const { s32 x = 0; - //s32 idx = 0; u32 character = 0; char32_t previousChar = 0; - std::u32string::const_iterator iter = text.begin(); + auto iter = text.begin(); while (iter != text.end()) { char32_t c = *iter; @@ -917,28 +830,6 @@ void CGUITTFont::setKerningHeight(s32 kerning) GlobalKerningHeight = kerning; } -s32 CGUITTFont::getKerningWidth(const wchar_t* thisLetter, const wchar_t* previousLetter) const -{ - if (tt_face == 0) - return GlobalKerningWidth; - if (thisLetter == 0 || previousLetter == 0) - return 0; - - return getKerningWidth((char32_t)*thisLetter, (char32_t)*previousLetter); -} - -s32 CGUITTFont::getKerningWidth(const char32_t thisLetter, const char32_t previousLetter) const -{ - // Return only the kerning width. - return getKerning(thisLetter, previousLetter).X; -} - -s32 CGUITTFont::getKerningHeight() const -{ - // FreeType 2 currently doesn't return any height kerning information. - return GlobalKerningHeight; -} - core::vector2di CGUITTFont::getKerning(const wchar_t thisLetter, const wchar_t previousLetter) const { return getKerning((char32_t)thisLetter, (char32_t)previousLetter); @@ -960,11 +851,8 @@ core::vector2di CGUITTFont::getKerning(const char32_t thisLetter, const char32_t // If we don't have this glyph, ask fallback font if (n == 0) { - if (fallback != 0) { - wchar_t l1 = (wchar_t) thisLetter, l2 = (wchar_t) previousLetter; - ret.X = fallback->getKerningWidth(&l1, &l2); - ret.Y = fallback->getKerningHeight(); - } + if (fallback) + ret = fallback->getKerning((wchar_t) thisLetter, (wchar_t) previousLetter); return ret; } @@ -1028,6 +916,7 @@ video::IImage* CGUITTFont::createTextureFromChar(const char32_t& ch) pageholder->copyTo(image, core::position2di(0, 0), glyph.source_rect); tex->unlock(); + pageholder->drop(); return image; } @@ -1039,195 +928,6 @@ video::ITexture* CGUITTFont::getPageTextureByIndex(const u32& page_index) const return 0; } -void CGUITTFont::createSharedPlane() -{ - /* - 2___3 - | /| - | / | <-- plane mesh is like this, point 2 is (0,0), point 0 is (0, -1) - |/ | <-- the texture coords of point 2 is (0,0, point 0 is (0, 1) - 0---1 - */ - - using namespace core; - using namespace video; - using namespace scene; - S3DVertex vertices[4]; - u16 indices[6] = {0,2,3,3,1,0}; - vertices[0] = S3DVertex(vector3df(0,-1,0), vector3df(0,0,-1), SColor(255,255,255,255), vector2df(0,1)); - vertices[1] = S3DVertex(vector3df(1,-1,0), vector3df(0,0,-1), SColor(255,255,255,255), vector2df(1,1)); - vertices[2] = S3DVertex(vector3df(0, 0,0), vector3df(0,0,-1), SColor(255,255,255,255), vector2df(0,0)); - vertices[3] = S3DVertex(vector3df(1, 0,0), vector3df(0,0,-1), SColor(255,255,255,255), vector2df(1,0)); - - SMeshBuffer* buf = new SMeshBuffer(); - buf->append(vertices, 4, indices, 6); - - shared_plane_.addMeshBuffer( buf ); - - shared_plane_ptr_ = &shared_plane_; - buf->drop(); //the addMeshBuffer method will grab it, so we can drop this ptr. -} - -core::dimension2d CGUITTFont::getDimensionUntilEndOfLine(const wchar_t* p) const -{ - core::stringw s; - for (const wchar_t* temp = p; temp && *temp != '\0' && *temp != L'\r' && *temp != L'\n'; ++temp ) - s.append(*temp); - - return getDimension(s.c_str()); -} - -core::array CGUITTFont::addTextSceneNode(const wchar_t* text, scene::ISceneManager* smgr, scene::ISceneNode* parent, const video::SColor& color, bool center) -{ - using namespace core; - using namespace video; - using namespace scene; - - array container; - - if (!Driver || !smgr) return container; - if (!parent) - parent = smgr->addEmptySceneNode(smgr->getRootSceneNode(), -1); - // if you don't specify parent, then we add an empty node attached to the root node - // this is generally undesirable. - - if (!shared_plane_ptr_) //this points to a static mesh that contains the plane - createSharedPlane(); //if it's not initialized, we create one. - - dimension2d text_size(getDimension(text)); //convert from unsigned to signed. - vector3df start_point(0, 0, 0), offset; - - /** NOTICE: - Because we are considering adding texts into 3D world, all Y axis vectors are inverted. - **/ - - // There's currently no "vertical center" concept when you apply text scene node to the 3D world. - if (center) - { - offset.X = start_point.X = -text_size.Width / 2.f; - offset.Y = start_point.Y = +text_size.Height/ 2.f; - offset.X += (text_size.Width - getDimensionUntilEndOfLine(text).Width) >> 1; - } - - // the default font material - SMaterial mat; - mat.ZWriteEnable = video::EZW_OFF; - mat.MaterialType = use_transparency ? video::EMT_TRANSPARENT_ALPHA_CHANNEL : video::EMT_SOLID; - mat.MaterialTypeParam = 0.01f; - - wchar_t current_char = 0, previous_char = 0; - u32 n = 0; - - array glyph_indices; - - while (*text) - { - current_char = *text; - bool line_break=false; - if (current_char == L'\r') // Mac or Windows breaks - { - line_break = true; - if (*(text + 1) == L'\n') // Windows line breaks. - current_char = *(++text); - } - else if (current_char == L'\n') // Unix breaks - { - line_break = true; - } - - if (line_break) - { - previous_char = 0; - offset.Y -= tt_face->size->metrics.ascender / 64; - offset.X = start_point.X; - if (center) - offset.X += (text_size.Width - getDimensionUntilEndOfLine(text+1).Width) >> 1; - ++text; - } - else - { - n = getGlyphIndexByChar(current_char); - if (n > 0) - { - glyph_indices.push_back( n ); - - // Store glyph size and offset informations. - SGUITTGlyph const& glyph = Glyphs[n-1]; - u32 texw = glyph.source_rect.getWidth(); - u32 texh = glyph.source_rect.getHeight(); - s32 offx = glyph.offset.X; - s32 offy = (font_metrics.ascender / 64) - glyph.offset.Y; - - // Apply kerning. - vector2di k = getKerning(current_char, previous_char); - offset.X += k.X; - offset.Y += k.Y; - - vector3df current_pos(offset.X + offx, offset.Y - offy, 0); - dimension2d letter_size = dimension2d(texw, texh); - - // Now we copy planes corresponding to the letter size. - IMeshManipulator* mani = smgr->getMeshManipulator(); - IMesh* meshcopy = mani->createMeshCopy(shared_plane_ptr_); - mani->scale(meshcopy, vector3df((f32)letter_size.Width, (f32)letter_size.Height, 1)); - - ISceneNode* current_node = smgr->addMeshSceneNode(meshcopy, parent, -1, current_pos); - meshcopy->drop(); - - current_node->getMaterial(0) = mat; - current_node->setAutomaticCulling(EAC_OFF); - current_node->setIsDebugObject(true); //so the picking won't have any effect on individual letter - //current_node->setDebugDataVisible(EDS_BBOX); //de-comment this when debugging - - container.push_back(current_node); - } - offset.X += getWidthFromCharacter(current_char); - // Note that fallback font handling is missing here (Minetest never uses this) - - previous_char = current_char; - ++text; - } - } - - update_glyph_pages(); - //only after we update the textures can we use the glyph page textures. - - for (u32 i = 0; i < glyph_indices.size(); ++i) - { - u32 n = glyph_indices[i]; - SGUITTGlyph const& glyph = Glyphs[n-1]; - ITexture* current_tex = Glyph_Pages[glyph.glyph_page]->texture; - f32 page_texture_size = (f32)current_tex->getSize().Width; - //Now we calculate the UV position according to the texture size and the source rect. - // - // 2___3 - // | /| - // | / | <-- plane mesh is like this, point 2 is (0,0), point 0 is (0, -1) - // |/ | <-- the texture coords of point 2 is (0,0, point 0 is (0, 1) - // 0---1 - // - f32 u1 = glyph.source_rect.UpperLeftCorner.X / page_texture_size; - f32 u2 = u1 + (glyph.source_rect.getWidth() / page_texture_size); - f32 v1 = glyph.source_rect.UpperLeftCorner.Y / page_texture_size; - f32 v2 = v1 + (glyph.source_rect.getHeight() / page_texture_size); - - //we can be quite sure that this is IMeshSceneNode, because we just added them in the above loop. - IMeshSceneNode* node = static_cast(container[i]); - - S3DVertex* pv = static_cast(node->getMesh()->getMeshBuffer(0)->getVertices()); - //pv[0].TCoords.Y = pv[1].TCoords.Y = (letter_size.Height - 1) / static_cast(letter_size.Height); - //pv[1].TCoords.X = pv[3].TCoords.X = (letter_size.Width - 1) / static_cast(letter_size.Width); - pv[0].TCoords = vector2df(u1, v2); - pv[1].TCoords = vector2df(u2, v2); - pv[2].TCoords = vector2df(u1, v1); - pv[3].TCoords = vector2df(u2, v1); - - container[i]->getMaterial(0).setTexture(0, current_tex); - } - - return container; -} - std::u32string CGUITTFont::convertWCharToU32String(const wchar_t* const charArray) const { static_assert(sizeof(wchar_t) == 2 || sizeof(wchar_t) == 4, "unexpected wchar size"); diff --git a/src/irrlicht_changes/CGUITTFont.h b/src/irrlicht_changes/CGUITTFont.h index f8e9d8896..ffdd6a6ca 100644 --- a/src/irrlicht_changes/CGUITTFont.h +++ b/src/irrlicht_changes/CGUITTFont.h @@ -3,6 +3,7 @@ Copyright (c) 2009-2010 John Norman Copyright (c) 2016 Nathanaëlle Courant Copyright (c) 2023 Caleb Butler + Copyright (c) 2024 Luanti contributors This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any @@ -33,22 +34,51 @@ #pragma once #include -#include +#include + #include "IGUIEnvironment.h" #include "IGUIFont.h" -#include "ISceneManager.h" #include "IVideoDriver.h" #include "IrrlichtDevice.h" -#include "SMesh.h" #include "util/enriched_string.h" #include "util/basic_macros.h" -#include FT_FREETYPE_H + +#include +#include namespace irr { namespace gui { - struct SGUITTFace; + // Manages the FT_Face cache. + struct SGUITTFace : public irr::IReferenceCounted + { + private: + + static std::map faces; + static FT_Library freetype_library; + static std::size_t n_faces; + + static FT_Library getFreeTypeLibrary(); + + public: + + SGUITTFace(std::string &&buffer); + + ~SGUITTFace(); + + std::optional filename; + + FT_Face face; + /// Must not be deallocated until we are done with the face! + std::string face_buffer; + + static SGUITTFace* createFace(std::string &&buffer); + + static SGUITTFace* loadFace(const io::path &filename); + + void dropFilename(); + }; class CGUITTFont; //! Structure representing a single TrueType glyph. @@ -56,26 +86,22 @@ namespace gui { //! Constructor. SGUITTGlyph() : - isLoaded(false), glyph_page(0), source_rect(), offset(), advance(), - surface(0), - parent(0) + surface(0) {} DISABLE_CLASS_COPY(SGUITTGlyph); //! This class would be trivially copyable except for the reference count on `surface`. SGUITTGlyph(SGUITTGlyph &&other) noexcept : - isLoaded(other.isLoaded), glyph_page(other.glyph_page), source_rect(other.source_rect), offset(other.offset), advance(other.advance), - surface(other.surface), - parent(other.parent) + surface(other.surface) { other.surface = 0; } @@ -83,12 +109,17 @@ namespace gui //! Destructor. ~SGUITTGlyph() { unload(); } + //! If true, the glyph has been loaded. + inline bool isLoaded() const { + return source_rect != core::recti(); + } + //! Preload the glyph. //! The preload process occurs when the program tries to cache the glyph from FT_Library. //! However, it simply defines the SGUITTGlyph's properties and will only create the page //! textures if necessary. The actual creation of the textures should only occur right //! before the batch draw call. - void preload(u32 char_index, FT_Face face, video::IVideoDriver* driver, u32 font_size, const FT_Int32 loadFlags); + void preload(u32 char_index, FT_Face face, CGUITTFont *parent, u32 font_size, const FT_Int32 loadFlags); //! Unloads the glyph. void unload(); @@ -96,9 +127,6 @@ namespace gui //! Creates the IImage object from the FT_Bitmap. video::IImage* createGlyphImage(const FT_Bitmap& bits, video::IVideoDriver* driver) const; - //! If true, the glyph has been loaded. - bool isLoaded; - //! The page the glyph is on. u32 glyph_page; @@ -109,14 +137,11 @@ namespace gui core::vector2di offset; //! Glyph advance information. - FT_Vector advance; + core::vector2di advance; //! This is just the temporary image holder. After this glyph is paged, //! it will be dropped. mutable video::IImage* surface; - - //! The pointer pointing to the parent (CGUITTFont) - CGUITTFont* parent; }; //! Holds a sheet of glyphs. @@ -130,7 +155,8 @@ namespace gui { if (driver) driver->removeTexture(texture); - else texture->drop(); + else + texture->drop(); } } @@ -184,19 +210,11 @@ namespace gui for (u32 i = 0; i < glyph_to_be_paged.size(); ++i) { const SGUITTGlyph* glyph = glyph_to_be_paged[i]; - if (glyph && glyph->isLoaded) + if (glyph && glyph->surface) { - if (glyph->surface) - { - glyph->surface->copyTo(pageholder, glyph->source_rect.UpperLeftCorner); - glyph->surface->drop(); - glyph->surface = 0; - } - else - { - ; // TODO: add error message? - //currently, if we failed to create the image, just ignore this operation. - } + glyph->surface->copyTo(pageholder, glyph->source_rect.UpperLeftCorner); + glyph->surface->drop(); + glyph->surface = 0; } } @@ -227,88 +245,82 @@ namespace gui public: //! Creates a new TrueType font and returns a pointer to it. The pointer must be drop()'ed when finished. //! \param env The IGUIEnvironment the font loads out of. - //! \param filename The filename of the font. //! \param size The size of the font glyphs in pixels. Since this is the size of the individual glyphs, the true height of the font may change depending on the characters used. //! \param antialias set the use_monochrome (opposite to antialias) flag //! \param transparency set the use_transparency flag //! \return Returns a pointer to a CGUITTFont. Will return 0 if the font failed to load. - static CGUITTFont* createTTFont(IGUIEnvironment *env, const io::path& filename, const u32 size, const bool antialias = true, const bool transparency = true, const u32 shadow = 0, const u32 shadow_alpha = 255); + static CGUITTFont* createTTFont(IGUIEnvironment *env, + SGUITTFace *face, u32 size, bool antialias = true, + bool transparency = true, u32 shadow = 0, u32 shadow_alpha = 255); //! Destructor virtual ~CGUITTFont(); //! Sets the amount of glyphs to batch load. - virtual void setBatchLoadSize(u32 batch_size) { batch_load_size = batch_size; } + void setBatchLoadSize(u32 batch_size) { batch_load_size = batch_size; } //! Sets the maximum texture size for a page of glyphs. - virtual void setMaxPageTextureSize(const core::dimension2du& texture_size) { max_page_texture_size = texture_size; } + void setMaxPageTextureSize(const core::dimension2du& texture_size) { max_page_texture_size = texture_size; } //! Get the font size. - virtual u32 getFontSize() const { return size; } + u32 getFontSize() const { return size; } //! Check the font's transparency. - virtual bool isTransparent() const { return use_transparency; } + bool isTransparent() const { return use_transparency; } //! Check if the font auto-hinting is enabled. //! Auto-hinting is FreeType's built-in font hinting engine. - virtual bool useAutoHinting() const { return use_auto_hinting; } + bool useAutoHinting() const { return use_auto_hinting; } //! Check if the font hinting is enabled. - virtual bool useHinting() const { return use_hinting; } + bool useHinting() const { return use_hinting; } //! Check if the font is being loaded as a monochrome font. //! The font can either be a 256 color grayscale font, or a 2 color monochrome font. - virtual bool useMonochrome() const { return use_monochrome; } + bool useMonochrome() const { return use_monochrome; } //! Tells the font to allow transparency when rendering. //! Default: true. //! \param flag If true, the font draws using transparency. - virtual void setTransparency(const bool flag); + void setTransparency(const bool flag); //! Tells the font to use monochrome rendering. //! Default: false. //! \param flag If true, the font draws using a monochrome image. If false, the font uses a grayscale image. - virtual void setMonochrome(const bool flag); + void setMonochrome(const bool flag); //! Enables or disables font hinting. //! Default: Hinting and auto-hinting true. //! \param enable If false, font hinting is turned off. If true, font hinting is turned on. //! \param enable_auto_hinting If true, FreeType uses its own auto-hinting algorithm. If false, it tries to use the algorithm specified by the font. - virtual void setFontHinting(const bool enable, const bool enable_auto_hinting = true); + void setFontHinting(const bool enable, const bool enable_auto_hinting = true); //! Draws some text and clips it to the specified rectangle if wanted. virtual void draw(const core::stringw& text, const core::rect& position, video::SColor color, bool hcenter=false, bool vcenter=false, - const core::rect* clip=0); + const core::rect* clip=0) override; void draw(const EnrichedString& text, const core::rect& position, bool hcenter=false, bool vcenter=false, const core::rect* clip=0); - //! Returns the dimension of a character produced by this font. - virtual core::dimension2d getCharDimension(const wchar_t ch) const; - //! Returns the dimension of a text string. - virtual core::dimension2d getDimension(const wchar_t* text) const; + virtual core::dimension2du getDimension(const wchar_t* text) const override; //! Calculates the index of the character in the text which is on a specific position. - virtual s32 getCharacterFromPos(const wchar_t* text, s32 pixel_x) const; + virtual s32 getCharacterFromPos(const wchar_t* text, s32 pixel_x) const override; //! Sets global kerning width for the font. - virtual void setKerningWidth(s32 kerning); + virtual void setKerningWidth(s32 kerning) override; //! Sets global kerning height for the font. - virtual void setKerningHeight(s32 kerning); - - //! Gets kerning values (distance between letters) for the font. If no parameters are provided, - virtual s32 getKerningWidth(const wchar_t* thisLetter=0, const wchar_t* previousLetter=0) const; - virtual s32 getKerningWidth(const char32_t thisLetter=0, const char32_t previousLetter=0) const; + virtual void setKerningHeight(s32 kerning) override; //! Returns the distance between letters - virtual s32 getKerningHeight() const; + virtual core::vector2di getKerning(const wchar_t thisLetter, const wchar_t previousLetter) const override; //! Define which characters should not be drawn by the font. - virtual void setInvisibleCharacters(const wchar_t *s); + virtual void setInvisibleCharacters(const wchar_t *s) override; //! Get the last glyph page if there's still available slots. //! If not, it will return zero. @@ -317,7 +329,7 @@ namespace gui //! Create a new glyph page texture. //! \param pixel_mode the pixel mode defined by FT_Pixel_Mode //should be better typed. fix later. - CGUITTGlyphPage* createGlyphPage(const u8& pixel_mode); + CGUITTGlyphPage* createGlyphPage(const u8 pixel_mode); //! Get the last glyph page's index. u32 getLastGlyphPageIndex() const { return Glyph_Pages.size() - 1; } @@ -328,16 +340,13 @@ namespace gui //! Create corresponding character's software image copy from the font, //! so you can use this data just like any ordinary video::IImage. //! \param ch The character you need - virtual video::IImage* createTextureFromChar(const char32_t& ch); + video::IImage* createTextureFromChar(const char32_t& ch); //! This function is for debugging mostly. If the page doesn't exist it returns zero. //! \param page_index Simply return the texture handle of a given page index. - virtual video::ITexture* getPageTextureByIndex(const u32& page_index) const; + video::ITexture* getPageTextureByIndex(const u32& page_index) const; - //! Add a list of scene nodes generated by putting font textures on the 3D planes. - virtual core::array addTextSceneNode - (const wchar_t* text, scene::ISceneManager* smgr, scene::ISceneNode* parent = 0, - const video::SColor& color = video::SColor(255, 0, 0, 0), bool center = false ); + inline video::IVideoDriver *getDriver() const { return Driver; } inline s32 getAscender() const { return font_metrics.ascender; } @@ -351,13 +360,6 @@ namespace gui core::dimension2du max_page_texture_size; private: - // Manages the FreeType library. - static FT_Library c_library; - static std::map c_faces; - static bool c_libraryLoaded; - static scene::IMesh* shared_plane_ptr_; - static scene::SMesh shared_plane_; - // Helper functions for the same-named public member functions above // (Since std::u32string is nicer to work with than wchar_t *) core::dimension2d getDimension(const std::u32string& text) const; @@ -367,7 +369,7 @@ namespace gui std::u32string convertWCharToU32String(const wchar_t* const) const; CGUITTFont(IGUIEnvironment *env); - bool load(const io::path& filename, const u32 size, const bool antialias, const bool transparency); + bool load(SGUITTFace *face, const u32 size, const bool antialias, const bool transparency); void reset_images(); void update_glyph_pages() const; void update_load_flags() @@ -379,22 +381,13 @@ namespace gui if (useMonochrome()) load_flags |= FT_LOAD_MONOCHROME | FT_LOAD_TARGET_MONO; else load_flags |= FT_LOAD_TARGET_NORMAL; } - u32 getWidthFromCharacter(wchar_t c) const; u32 getWidthFromCharacter(char32_t c) const; - u32 getHeightFromCharacter(wchar_t c) const; u32 getHeightFromCharacter(char32_t c) const; - u32 getGlyphIndexByChar(wchar_t c) const; u32 getGlyphIndexByChar(char32_t c) const; - core::vector2di getKerning(const wchar_t thisLetter, const wchar_t previousLetter) const; core::vector2di getKerning(const char32_t thisLetter, const char32_t previousLetter) const; - core::dimension2d getDimensionUntilEndOfLine(const wchar_t* p) const; - void createSharedPlane(); - - irr::IrrlichtDevice* Device; - gui::IGUIEnvironment* Environment; video::IVideoDriver* Driver; - io::path filename; + std::optional filename; FT_Face tt_face; FT_Size_Metrics font_metrics; FT_Int32 load_flags; diff --git a/src/irrlicht_changes/static_text.cpp b/src/irrlicht_changes/static_text.cpp index eba397963..e9be122b5 100644 --- a/src/irrlicht_changes/static_text.cpp +++ b/src/irrlicht_changes/static_text.cpp @@ -30,10 +30,6 @@ StaticText::StaticText(const EnrichedString &text, bool border, RestrainTextInside(true), RightToLeft(false), OverrideFont(0), LastBreakFont(0) { - #ifdef _DEBUG - setDebugName("StaticText"); - #endif - setText(text); } @@ -78,7 +74,7 @@ void StaticText::draw() updateText(); core::rect r = frameRect; - s32 height_line = font->getDimension(L"A").Height + font->getKerningHeight(); + s32 height_line = font->getDimension(L"A").Height + font->getKerning(L'A').Y; s32 height_total = height_line * BrokenText.size(); if (VAlign == EGUIA_CENTER && WordWrap) { @@ -550,7 +546,7 @@ s32 StaticText::getTextHeight() const return 0; if (WordWrap) { - s32 height = font->getDimension(L"A").Height + font->getKerningHeight(); + s32 height = font->getDimension(L"A").Height + font->getKerning(L'A').Y; return height * BrokenText.size(); } // There may be intentional new lines without WordWrap diff --git a/src/irrlichttypes_extrabloated.h b/src/irrlichttypes_extrabloated.h deleted file mode 100644 index 98c0e2cea..000000000 --- a/src/irrlichttypes_extrabloated.h +++ /dev/null @@ -1,21 +0,0 @@ -// Luanti -// SPDX-License-Identifier: LGPL-2.1-or-later -// Copyright (C) 2010-2013 celeron55, Perttu Ahola - -#pragma once - -#include "irrlichttypes_bloated.h" -#include "config.h" // IS_CLIENT_BUILD - -#if IS_CLIENT_BUILD -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#endif diff --git a/src/itemstackmetadata.cpp b/src/itemstackmetadata.cpp index 9262a784d..a75f1ae29 100644 --- a/src/itemstackmetadata.cpp +++ b/src/itemstackmetadata.cpp @@ -88,12 +88,11 @@ void ItemStackMetadata::deSerialize(std::istream &is) void ItemStackMetadata::updateToolCapabilities() { if (contains(TOOLCAP_KEY)) { - toolcaps_overridden = true; toolcaps_override = ToolCapabilities(); std::istringstream is(getString(TOOLCAP_KEY)); - toolcaps_override.deserializeJson(is); + toolcaps_override->deserializeJson(is); } else { - toolcaps_overridden = false; + toolcaps_override = std::nullopt; } } diff --git a/src/itemstackmetadata.h b/src/itemstackmetadata.h index c49e812ba..c3eda83ed 100644 --- a/src/itemstackmetadata.h +++ b/src/itemstackmetadata.h @@ -15,8 +15,7 @@ class IItemDefManager; class ItemStackMetadata : public SimpleMetadata { public: - ItemStackMetadata(): - toolcaps_overridden(false) + ItemStackMetadata() {} // Overrides @@ -29,7 +28,7 @@ public: const ToolCapabilities &getToolCapabilities( const ToolCapabilities &default_caps) const { - return toolcaps_overridden ? toolcaps_override : default_caps; + return toolcaps_override.has_value() ? *toolcaps_override : default_caps; } void setToolCapabilities(const ToolCapabilities &caps); @@ -40,7 +39,6 @@ public: return wear_bar_override; } - void setWearBarParams(const WearBarParams ¶ms); void clearWearBarParams(); @@ -48,7 +46,6 @@ private: void updateToolCapabilities(); void updateWearBarParams(); - bool toolcaps_overridden; - ToolCapabilities toolcaps_override; + std::optional toolcaps_override; std::optional wear_bar_override; }; diff --git a/src/lighting.cpp b/src/lighting.cpp deleted file mode 100644 index b8def7728..000000000 --- a/src/lighting.cpp +++ /dev/null @@ -1,14 +0,0 @@ -// Luanti -// SPDX-License-Identifier: LGPL-2.1-or-later -// Copyright (C) 2021 x2048, Dmitry Kostenko - -#include "lighting.h" - -AutoExposure::AutoExposure() - : luminance_min(-3.f), - luminance_max(-3.f), - exposure_correction(0.0f), - speed_dark_bright(1000.f), - speed_bright_dark(1000.f), - center_weight_power(1.f) -{} diff --git a/src/lighting.h b/src/lighting.h index ab40d546d..4ba1b37ef 100644 --- a/src/lighting.h +++ b/src/lighting.h @@ -30,7 +30,14 @@ struct AutoExposure /// @brief Power value for center-weighted metering. Value of 1.0 measures entire screen uniformly float center_weight_power; - AutoExposure(); + constexpr AutoExposure() + : luminance_min(-3.f), + luminance_max(-3.f), + exposure_correction(0.0f), + speed_dark_bright(1000.f), + speed_bright_dark(1000.f), + center_weight_power(1.f) + {} }; /** Describes ambient light settings for a player diff --git a/src/log.cpp b/src/log.cpp index b85682c50..709338adc 100644 --- a/src/log.cpp +++ b/src/log.cpp @@ -106,7 +106,7 @@ void AndroidLogOutput::logRaw(LogLevel lev, std::string_view line) static_assert(ARRLEN(g_level_to_android) == LL_MAX, "mismatch between android and internal loglevels"); __android_log_print(g_level_to_android[lev], PROJECT_NAME_C, "%.*s", - line.size(), line.data()); + static_cast(line.size()), line.data()); } #endif diff --git a/src/main.cpp b/src/main.cpp index 4738cfbee..0506b603e 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -25,6 +25,7 @@ #include "config.h" #include "player.h" #include "porting.h" +#include "serialization.h" // SER_FMT_VER_HIGHEST_* #include "network/socket.h" #include "mapblock.h" #if USE_CURSES @@ -57,8 +58,8 @@ extern "C" { #endif #if defined(__MINGW32__) && !defined(__clang__) -// see https://github.com/minetest/minetest/issues/14140 or -// https://github.com/minetest/minetest/issues/10137 for one of the various issues we had +// see or +// for some of the issues we had #error ================================== #error MinGW gcc has a broken TLS implementation and is not supported for building \ Luanti. Look at testTLS() in test_threading.cpp and see for yourself. \ @@ -894,9 +895,7 @@ static bool game_configure(GameParams *game_params, const Settings &cmd_args) return false; } - game_configure_subgame(game_params, cmd_args); - - return true; + return game_configure_subgame(game_params, cmd_args); } static void game_configure_port(GameParams *game_params, const Settings &cmd_args) @@ -1088,18 +1087,27 @@ static bool determine_subgame(GameParams *game_params) if (game_params->game_spec.isValid()) { gamespec = game_params->game_spec; infostream << "Using commanded gameid [" << gamespec.id << "]" << std::endl; - } else { - if (game_params->is_dedicated_server) { - std::string contentdb_url = g_settings->get("contentdb_url"); + } else if (game_params->is_dedicated_server) { + auto games = getAvailableGameIds(); + // If there's exactly one obvious choice then do the right thing + if (games.size() > 1) + games.erase("devtest"); + if (games.size() == 1) { + gamespec = findSubgame(*games.begin()); + infostream << "Automatically selecting gameid [" << gamespec.id << "]" << std::endl; + } else { + // Else, force the user to choose + auto &url = g_settings->get("contentdb_url"); - // If this is a dedicated server and no gamespec has been specified, - // print a friendly error pointing to ContentDB. - errorstream << "To run a " PROJECT_NAME_C " server, you need to select a game using the '--gameid' argument." << std::endl - << "Check out " << contentdb_url << " for a selection of games to pick from and download." << std::endl; + errorstream << "To run a " PROJECT_NAME_C " server, you need to select a game using the '--gameid' argument." << std::endl; + if (games.empty()) + errorstream << "Check out " << url << " for a selection of games to pick from and download." << std::endl; + else + errorstream << "Use '--gameid list' to print a list of all installed games." << std::endl; + return false; } gamespec = findSubgame("default"); - //return false; } } else { // World exists std::string world_gameid = getWorldGameId(game_params->world_path, false); @@ -1120,6 +1128,8 @@ static bool determine_subgame(GameParams *game_params) } if (!gamespec.isValid()) { + if (!game_params->is_dedicated_server) + return true; // not an error, this would prevent the main menu from running errorstream << "Game [" << gamespec.id << "] could not be found." << std::endl; return false; diff --git a/src/map.cpp b/src/map.cpp index bea9756ea..9a52616ce 100644 --- a/src/map.cpp +++ b/src/map.cpp @@ -809,21 +809,16 @@ MMVManip::MMVManip(Map *map): assert(map); } -void MMVManip::initialEmerge(v3s16 blockpos_min, v3s16 blockpos_max, - bool load_if_inexistent) +void MMVManip::initialEmerge(v3s16 p_min, v3s16 p_max, bool load_if_inexistent) { TimeTaker timer1("initialEmerge"); assert(m_map); - // Units of these are MapBlocks - v3s16 p_min = blockpos_min; - v3s16 p_max = blockpos_max; - VoxelArea block_area_nodes (p_min*MAP_BLOCKSIZE, (p_max+1)*MAP_BLOCKSIZE-v3s16(1,1,1)); - u32 size_MB = block_area_nodes.getVolume()*4/1000000; + u32 size_MB = block_area_nodes.getVolume() * sizeof(MapNode) / 1000000U; if(size_MB >= 1) { infostream<<"initialEmerge: area: "; @@ -833,6 +828,7 @@ void MMVManip::initialEmerge(v3s16 blockpos_min, v3s16 blockpos_max, infostream<getNode(0, 0, 0).getContent() == CONTENT_IGNORE) - { - // Mark that block was loaded as blank - flags |= VMANIP_BLOCK_CONTAINS_CIGNORE; - }*/ m_loaded_blocks[p] = flags; } - m_is_dirty = false; + if (all_new) + m_is_dirty = false; } void MMVManip::blitBackAll(std::map *modified_blocks, @@ -894,6 +886,7 @@ void MMVManip::blitBackAll(std::map *modified_blocks, /* Copy data of all blocks */ + assert(!m_loaded_blocks.empty()); for (auto &loaded_block : m_loaded_blocks) { v3s16 p = loaded_block.first; MapBlock *block = m_map->getBlockNoCreateNoEx(p, false, true); @@ -918,7 +911,7 @@ MMVManip *MMVManip::clone() const { MMVManip *ret = new MMVManip(); - const s32 size = m_area.getVolume(); + const u32 size = m_area.getVolume(); ret->m_area = m_area; if (m_data) { ret->m_data = new MapNode[size]; diff --git a/src/map.h b/src/map.h index 32997ee97..0272b603b 100644 --- a/src/map.h +++ b/src/map.h @@ -97,7 +97,7 @@ struct MapEditEvent VoxelArea a; for (v3s16 p : modified_blocks) { v3s16 np1 = p*MAP_BLOCKSIZE; - v3s16 np2 = np1 + v3s16(1,1,1)*MAP_BLOCKSIZE - v3s16(1,1,1); + v3s16 np2 = np1 + v3s16(MAP_BLOCKSIZE-1); a.addPoint(np1); a.addPoint(np2); } @@ -392,9 +392,6 @@ protected: u32 needed_count); }; -#define VMANIP_BLOCK_DATA_INEXIST 1 -#define VMANIP_BLOCK_CONTAINS_CIGNORE 2 - class MMVManip : public VoxelManipulator { public: @@ -441,4 +438,8 @@ protected: value = flags describing the block */ std::map m_loaded_blocks; + + enum : u8 { + VMANIP_BLOCK_DATA_INEXIST = 1 << 0, + }; }; diff --git a/src/map_settings_manager.cpp b/src/map_settings_manager.cpp index 6a57246e7..95682e177 100644 --- a/src/map_settings_manager.cpp +++ b/src/map_settings_manager.cpp @@ -41,10 +41,9 @@ bool MapSettingsManager::getMapSetting( } -bool MapSettingsManager::getMapSettingNoiseParams( +bool MapSettingsManager::getNoiseParams( const std::string &name, NoiseParams *value_out) const { - // TODO: Rename to "getNoiseParams" return m_map_settings->getNoiseParams(name, *value_out); } diff --git a/src/map_settings_manager.h b/src/map_settings_manager.h index 3ef08de67..f1b2a71db 100644 --- a/src/map_settings_manager.h +++ b/src/map_settings_manager.h @@ -37,7 +37,7 @@ public: bool getMapSetting(const std::string &name, std::string *value_out) const; - bool getMapSettingNoiseParams(const std::string &name, + bool getNoiseParams(const std::string &name, NoiseParams *value_out) const; // Note: Map config becomes read-only after makeMapgenParams() gets called diff --git a/src/mapblock.cpp b/src/mapblock.cpp index 6720011a2..875e33af4 100644 --- a/src/mapblock.cpp +++ b/src/mapblock.cpp @@ -237,6 +237,12 @@ MapBlock::~MapBlock() porting::TrackFreedMemory(sizeof(MapNode) * nodecount); } +static inline size_t get_max_objects_per_block() +{ + thread_local const auto ret = g_settings->getU16("max_objects_per_block"); + return MYMAX(256, ret); +} + bool MapBlock::onObjectsActivation() { // Ignore if no stored objects (to not set changed flag) @@ -250,14 +256,13 @@ bool MapBlock::onObjectsActivation() << std::endl; #endif - thread_local const auto max_objects_per_block = g_settings->getU16("max_objects_per_block"); - if (count > max_objects_per_block) { + if (count > get_max_objects_per_block()) { errorstream << "suspiciously large amount of objects detected: " << count << " in " << getPos() << "; removing all of them." << std::endl; // Clear stored list //m_static_objects.clearStored(); - m_static_objects.m_stored.resize(max_objects_per_block); + m_static_objects.m_stored.resize(get_max_objects_per_block()); raiseModified(MOD_STATE_WRITE_NEEDED, MOD_REASON_TOO_MANY_OBJECTS); return false; } @@ -267,7 +272,7 @@ bool MapBlock::onObjectsActivation() bool MapBlock::saveStaticObject(u16 id, const StaticObject &obj, u32 reason) { - if (m_static_objects.getStoredSize() >= g_settings->getU16("max_objects_per_block")) { + if (m_static_objects.getStoredSize() >= get_max_objects_per_block()) { warningstream << "MapBlock::saveStaticObject(): Trying to store id = " << id << " statically but block " << getPos() << " already contains " << m_static_objects.getStoredSize() << " objects." @@ -482,11 +487,9 @@ static void correctBlockNodeIds(const NameIdMapping *nimap, MapNode *nodes, void MapBlock::serialize(std::ostream &os_compressed, u8 version, bool disk, int compression_level, bool use_content_only) { - if(!ser_ver_supported(version)) + if (!ser_ver_supported_write(version)) throw VersionMismatchException("ERROR: MapBlock format not supported"); - FATAL_ERROR_IF(version < SER_FMT_VER_LOWEST_WRITE, "Serialization version error"); - std::ostringstream os_raw(std::ios_base::binary); std::ostream &os = version >= 29 ? os_raw : os_compressed; @@ -524,7 +527,7 @@ void MapBlock::serialize(std::ostream &os_compressed, u8 version, bool disk, int Buffer buf; const u8 content_width = 2; const u8 params_width = 2; - if(disk) + if(disk) { MapNode *tmp_nodes = new MapNode[nodecount]; memcpy(tmp_nodes, data, nodecount * sizeof(MapNode)); @@ -611,7 +614,8 @@ void MapBlock::serializeNetworkSpecific(std::ostream &os) bool MapBlock::deSerialize(std::istream &in_compressed, u8 version, bool disk) { const auto lock = lock_unique_rec(); - if(!ser_ver_supported(version)) + + if (!ser_ver_supported_read(version)) throw VersionMismatchException("ERROR: MapBlock format not supported"); TRACESTREAM(<<"MapBlock::deSerialize "<perlinMap3D(nmin.X, nmin.Y - 1, nmin.Z); noise_cave2->perlinMap3D(nmin.X, nmin.Y - 1, nmin.Z); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 index2d = 0; // Biomemap index for (s16 z = nmin.Z; z <= nmax.Z; z++) @@ -86,7 +86,7 @@ void CavesNoiseIntersection::generateCaves(MMVManip *vm, u16 depth_riverbed = biome->depth_riverbed; u16 nplaced = 0; - s16 biome_y_min = m_bmgn->getNextTransitionY(nmax.Y); + s16 biome_y_next = m_bmgn->getNextTransitionY(nmax.Y); // Don't excavate the overgenerated stone at nmax.Y + 1, // this creates a 'roof' over the tunnel, preventing light in @@ -96,13 +96,13 @@ void CavesNoiseIntersection::generateCaves(MMVManip *vm, index3d -= m_ystride, VoxelArea::add_y(em, vi, -1)) { // We need this check to make sure that biomes don't generate too far down - if (y < biome_y_min) { + if (y <= biome_y_next) { biome = m_bmgn->getBiomeAtIndex(index2d, v3s16(x, y, z)); - biome_y_min = m_bmgn->getNextTransitionY(y); + biome_y_next = m_bmgn->getNextTransitionY(y); if (x == nmin.X && z == nmin.Z && false) { dstream << "cavegen: biome at " << y << " is " << biome->name - << ", next at " << biome_y_min << std::endl; + << ", next at " << biome_y_next << std::endl; } } @@ -232,7 +232,7 @@ bool CavernsNoise::generateCaverns(MMVManip *vm, v3s16 nmin, v3s16 nmax) //// Place nodes bool near_cavern = false; - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 index2d = 0; for (s16 z = nmin.Z; z <= nmax.Z; z++) diff --git a/src/mapgen/dungeongen.cpp b/src/mapgen/dungeongen.cpp index b0d3656c5..906590b74 100644 --- a/src/mapgen/dungeongen.cpp +++ b/src/mapgen/dungeongen.cpp @@ -129,7 +129,7 @@ void DungeonGen::generate(MMVManip *vm, u32 bseed, v3s16 nmin, v3s16 nmax) void DungeonGen::makeDungeon(v3s16 start_padding) { - const v3s16 &areasize = vm->m_area.getExtent(); + const v3s32 &areasize = vm->m_area.getExtent(); v3s16 roomsize; v3s16 roomplace; diff --git a/src/mapgen/mapgen.cpp b/src/mapgen/mapgen.cpp index d18dfb41c..5cb9ff24a 100644 --- a/src/mapgen/mapgen.cpp +++ b/src/mapgen/mapgen.cpp @@ -273,7 +273,7 @@ u32 Mapgen::getBlockSeed2(v3s16 p, s32 seed) // Returns -MAX_MAP_GENERATION_LIMIT if not found s16 Mapgen::findGroundLevel(v2s16 p2d, s16 ymin, s16 ymax) { - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 i = vm->m_area.index(p2d.X, ymax, p2d.Y); s16 y; @@ -291,7 +291,7 @@ s16 Mapgen::findGroundLevel(v2s16 p2d, s16 ymin, s16 ymax) // Returns -MAX_MAP_GENERATION_LIMIT if not found or if ground is found first s16 Mapgen::findLiquidSurface(v2s16 p2d, s16 ymin, s16 ymax) { - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 i = vm->m_area.index(p2d.X, ymax, p2d.Y); s16 y; @@ -329,7 +329,7 @@ void Mapgen::updateHeightmap(v3s16 nmin, v3s16 nmax) void Mapgen::getSurfaces(v2s16 p2d, s16 ymin, s16 ymax, std::vector &floors, std::vector &ceilings) { - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); bool is_walkable = false; u32 vi = vm->m_area.index(p2d.X, ymax, p2d.Y); @@ -353,7 +353,7 @@ void Mapgen::getSurfaces(v2s16 p2d, s16 ymin, s16 ymax, } -inline bool Mapgen::isLiquidHorizontallyFlowable(u32 vi, v3s16 em) +inline bool Mapgen::isLiquidHorizontallyFlowable(u32 vi, v3s32 em) { u32 vi_neg_x = vi; VoxelArea::add_x(em, vi_neg_x, -1); @@ -396,7 +396,7 @@ void Mapgen::updateLiquid(UniqueQueue *trans_liquid, v3pos_t nmin, v3po int rarecnt = 0; content_t was_n; - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); isignored = true; isliquid = false; @@ -521,7 +521,7 @@ void Mapgen::propagateSunlight(v3s16 nmin, v3s16 nmax, bool propagate_shadow) //TimeTaker t("propagateSunlight"); VoxelArea a(nmin, nmax); bool block_is_underground = (water_level >= nmax.Y); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); // NOTE: Direct access to the low 4 bits of param1 is okay here because, // by definition, sunlight will never be in the night lightbank. @@ -691,7 +691,7 @@ void MapgenBasic::generateBiomes() assert(biomegen); assert(biomemap); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 index = 0; noise_filler_depth->perlinMap2D(node_min.X, node_min.Z); @@ -706,7 +706,7 @@ void MapgenBasic::generateBiomes() u16 depth_riverbed = 0; u32 vi = vm->m_area.index(x, node_max.Y, z); - s16 biome_y_min = biomegen->getNextTransitionY(node_max.Y); + s16 biome_y_next = biomegen->getNextTransitionY(node_max.Y); // Check node at base of mapchunk above, either a node of a previously // generated mapchunk or if not, a node of overgenerated base terrain. @@ -726,23 +726,29 @@ void MapgenBasic::generateBiomes() for (s16 y = node_max.Y; y >= node_min.Y; y--) { content_t c = vm->m_data[vi].getContent(); bool cc_stone = (c != CONTENT_AIR && c != c_water_source && c != c_ice && c != CONTENT_IGNORE); // was in mt: c == c_stone + const bool biome_outdated = !biome || y <= biome_y_next; // Biome is (re)calculated: // 1. At the surface of stone below air or water. // 2. At the surface of water below air. // 3. When stone or water is detected but biome has not yet been calculated. // 4. When stone or water is detected just below a biome's lower limit. bool is_stone_surface = (cc_stone) && - (air_above || water_above || !biome || y < biome_y_min); // 1, 3, 4 + (air_above || water_above || biome_outdated); // 1, 3, 4 bool is_water_surface = (c == c_water_source || c == c_river_water_source) && - (air_above || !biome || y < biome_y_min); // 2, 3, 4 + (air_above || biome_outdated); // 2, 3, 4 if (is_stone_surface || is_water_surface) { - if (!biome || y < biome_y_min) { + if (biome_outdated) { // (Re)calculate biome biome = biomegen->getBiomeAtIndex(index, v3s16(x, y, z)); - biome_y_min = biomegen->getNextTransitionY(y); + biome_y_next = biomegen->getNextTransitionY(y); + + if (x == node_min.X && z == node_min.Z && false) { + dstream << "biomegen: biome at " << y << " is " << biome->name + << ", next at " << biome_y_next << std::endl; + } } // Add biome to biomemap at first stone surface detected @@ -835,7 +841,7 @@ void MapgenBasic::generateBiomes() // If no stone surface detected in mapchunk column and a water surface // biome fallback exists, add it to the biomemap. This avoids water // surface decorations failing in deep water. - if (biomemap[index] == BIOME_NONE && water_biome_index != 0) + if (biomemap[index] == BIOME_NONE && water_biome_index != 0) biomemap[index] = water_biome_index; } } @@ -846,7 +852,7 @@ void MapgenBasic::dustTopNodes() if (node_max.Y < water_level) return; - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 index = 0; for (s16 z = node_min.Z; z <= node_max.Z; z++) diff --git a/src/mapgen/mapgen.h b/src/mapgen/mapgen.h index c865bfade..c5896dbe8 100644 --- a/src/mapgen/mapgen.h +++ b/src/mapgen/mapgen.h @@ -292,7 +292,7 @@ private: // isLiquidHorizontallyFlowable() is a helper function for updateLiquid() // that checks whether there are floodable nodes without liquid beneath // the node at index vi. - inline bool isLiquidHorizontallyFlowable(u32 vi, v3s16 em); + inline bool isLiquidHorizontallyFlowable(u32 vi, v3s32 em); }; /* diff --git a/src/mapgen/mapgen_carpathian.cpp b/src/mapgen/mapgen_carpathian.cpp index ba54a3672..46048b51f 100644 --- a/src/mapgen/mapgen_carpathian.cpp +++ b/src/mapgen/mapgen_carpathian.cpp @@ -445,7 +445,7 @@ int MapgenCarpathian::generateTerrain() noise_rivers->perlinMap2D(node_min.X, node_min.Z); //// Place nodes - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 stone_surface_max_y = -MAX_MAP_GENERATION_LIMIT; u32 index2d = 0; diff --git a/src/mapgen/mapgen_earth.cpp b/src/mapgen/mapgen_earth.cpp index f1aa6e9e9..28a30929d 100644 --- a/src/mapgen/mapgen_earth.cpp +++ b/src/mapgen/mapgen_earth.cpp @@ -342,7 +342,7 @@ int MapgenEarth::generateTerrain() { MapNode n_ice(c_ice); u32 index = 0; - v3pos_t em = vm->m_area.getExtent(); + auto em = vm->m_area.getExtent(); for (pos_t z = node_min.Z; z <= node_max.Z; z++) { for (pos_t x = node_min.X; x <= node_max.X; x++, index++) { diff --git a/src/mapgen/mapgen_flat.cpp b/src/mapgen/mapgen_flat.cpp index f0e7984d5..56346432e 100644 --- a/src/mapgen/mapgen_flat.cpp +++ b/src/mapgen/mapgen_flat.cpp @@ -172,7 +172,7 @@ int MapgenFlat::getSpawnLevelAtPoint(v2s16 p) stone_level = ground_level - depress; } else if ((spflags & MGFLAT_HILLS) && n_terrain > hill_threshold) { s16 rise = (n_terrain - hill_threshold) * hill_steepness; - stone_level = ground_level + rise; + stone_level = ground_level + rise; } if (ground_level < water_level) @@ -278,7 +278,7 @@ s16 MapgenFlat::generateTerrain() MapNode n_stone(c_stone); MapNode n_water(c_water_source); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 stone_surface_max_y = -MAX_MAP_GENERATION_LIMIT; u32 ni2d = 0; @@ -296,7 +296,7 @@ s16 MapgenFlat::generateTerrain() stone_level = ground_level - depress; } else if ((spflags & MGFLAT_HILLS) && n_terrain > hill_threshold) { s16 rise = (n_terrain - hill_threshold) * hill_steepness; - stone_level = ground_level + rise; + stone_level = ground_level + rise; } u32 vi = vm->m_area.index(x, node_min.Y - 1, z); diff --git a/src/mapgen/mapgen_fractal.cpp b/src/mapgen/mapgen_fractal.cpp index dcd62f63a..3e28fbcac 100644 --- a/src/mapgen/mapgen_fractal.cpp +++ b/src/mapgen/mapgen_fractal.cpp @@ -103,8 +103,17 @@ void MapgenFractalParams::readParams(const Settings *settings) settings->getS16NoEx("mgfractal_dungeon_ymax", dungeon_ymax); settings->getU16NoEx("mgfractal_fractal", fractal); settings->getU16NoEx("mgfractal_iterations", iterations); - settings->getV3FNoEx("mgfractal_scale", scale); - settings->getV3FNoEx("mgfractal_offset", offset); + + std::optional mgfractal_scale; + if (settings->getV3FNoEx("mgfractal_scale", mgfractal_scale) && mgfractal_scale.has_value()) { + scale = *mgfractal_scale; + } + + std::optional mgfractal_offset; + if (settings->getV3FNoEx("mgfractal_offset", mgfractal_offset) && mgfractal_offset.has_value()) { + offset = *mgfractal_offset; + } + settings->getFloatNoEx("mgfractal_slice_w", slice_w); settings->getFloatNoEx("mgfractal_julia_x", julia_x); settings->getFloatNoEx("mgfractal_julia_y", julia_y); diff --git a/src/mapgen/mapgen_indev.cpp b/src/mapgen/mapgen_indev.cpp index f01fce89e..3c6ddef46 100644 --- a/src/mapgen/mapgen_indev.cpp +++ b/src/mapgen/mapgen_indev.cpp @@ -439,7 +439,7 @@ int MapgenIndev::generateGround() : 0; // Fill ground with stone - v3pos_t em = vm->m_area.getExtent(); + auto em = vm->m_area.getExtent(); u32 i = vm->m_area.index(x, node_min.Y, z); cache_index = 0; diff --git a/src/mapgen/mapgen_math.cpp b/src/mapgen/mapgen_math.cpp index 437e50816..435e113ba 100644 --- a/src/mapgen/mapgen_math.cpp +++ b/src/mapgen/mapgen_math.cpp @@ -664,7 +664,7 @@ int MapgenMath::generateTerrain() MapNode n_ice(c_ice); //u32 index = 0; - v3pos_t em = vm->m_area.getExtent(); + auto em = vm->m_area.getExtent(); /* debug v3f vec0 = (v3f(node_min.X, node_min.Y, node_min.Z) - center) * scale ; errorstream << " X=" << node_min.X << " Y=" << node_min.Y << " Z=" << node_min.Z diff --git a/src/mapgen/mapgen_v6.cpp b/src/mapgen/mapgen_v6.cpp index 2fcaf045b..306e4d991 100644 --- a/src/mapgen/mapgen_v6.cpp +++ b/src/mapgen/mapgen_v6.cpp @@ -233,7 +233,7 @@ void MapgenV6Params::setDefaultSettings(Settings *settings) // Returns Y one under area minimum if not found s16 MapgenV6::find_stone_level(v2s16 p2d) { - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 y_nodes_max = vm->m_area.MaxEdge.Y; s16 y_nodes_min = vm->m_area.MinEdge.Y; u32 i = vm->m_area.index(p2d.X, y_nodes_max, p2d.Y); @@ -700,7 +700,7 @@ int MapgenV6::generateGround() const auto heat = m_emerge->env->m_use_weather ? m_emerge->env->getServerMap().updateBlockHeat(m_emerge->env, v3pos_t(x,node_max.Y,z), nullptr, &heat_cache) : 0; // Fill ground with stone - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 i = vm->m_area.index(x, node_min.Y, z); for (s16 y = node_min.Y; y <= node_max.Y; y++) { if (vm->m_data[i].getContent() == CONTENT_IGNORE) { @@ -771,7 +771,7 @@ void MapgenV6::addMud() // Add mud on ground s16 mudcount = 0; - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 y_start = surface_y + 1; u32 i = vm->m_area.index(x, y_start, z); for (s16 y = y_start; y <= node_max.Y; y++) { @@ -789,7 +789,7 @@ void MapgenV6::addMud() void MapgenV6::flowMud(s16 &mudflow_minpos, s16 &mudflow_maxpos) { - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); static const v3s16 dirs4[4] = { v3s16(0, 0, 1), // Back v3s16(1, 0, 0), // Right @@ -902,7 +902,7 @@ void MapgenV6::flowMud(s16 &mudflow_minpos, s16 &mudflow_maxpos) void MapgenV6::moveMud(u32 remove_index, u32 place_index, - u32 above_remove_index, v2s16 pos, v3s16 em) + u32 above_remove_index, v2s16 pos, v3s32 em) { MapNode n_air(CONTENT_AIR); // Copy mud from old place to new place @@ -955,7 +955,7 @@ void MapgenV6::placeTreesAndJungleGrass() if (c_junglegrass == CONTENT_IGNORE) c_junglegrass = CONTENT_AIR; MapNode n_junglegrass(c_junglegrass); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); // Divide area into parts s16 div = 8; @@ -1079,8 +1079,7 @@ void MapgenV6::growGrass() // Add surface nodes MapNode n_dirt_with_snow(c_dirt_with_snow); MapNode n_snowblock(c_snowblock); MapNode n_dirt(c_dirt); - - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 index = 0; for (s16 z = full_node_min.Z; z <= full_node_max.Z; z++) diff --git a/src/mapgen/mapgen_v6.h b/src/mapgen/mapgen_v6.h index f3b04fcbd..690b08f11 100644 --- a/src/mapgen/mapgen_v6.h +++ b/src/mapgen/mapgen_v6.h @@ -156,7 +156,7 @@ public: void addMud(); void flowMud(s16 &mudflow_minpos, s16 &mudflow_maxpos); void moveMud(u32 remove_index, u32 place_index, - u32 above_remove_index, v2s16 pos, v3s16 em); + u32 above_remove_index, v2s16 pos, v3s32 em); void growGrass(); void placeTreesAndJungleGrass(); virtual void generateCaves(int max_stone_y); diff --git a/src/mapgen/mapgen_v7.cpp b/src/mapgen/mapgen_v7.cpp index 1b17efa19..7629cf898 100644 --- a/src/mapgen/mapgen_v7.cpp +++ b/src/mapgen/mapgen_v7.cpp @@ -569,7 +569,7 @@ int MapgenV7::generateTerrain() } //// Place nodes - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 stone_surface_max_y = -MAX_MAP_GENERATION_LIMIT; u32 index2d = 0; diff --git a/src/mapgen/mapgen_valleys.cpp b/src/mapgen/mapgen_valleys.cpp index 196454642..55185c445 100644 --- a/src/mapgen/mapgen_valleys.cpp +++ b/src/mapgen/mapgen_valleys.cpp @@ -344,7 +344,7 @@ int MapgenValleys::generateTerrain() noise_inter_valley_fill->perlinMap3D(node_min.X, node_min.Y - 1, node_min.Z); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); s16 surface_max_y = -MAX_MAP_GENERATION_LIMIT; u32 index_2d = 0; diff --git a/src/mapgen/mg_biome.cpp b/src/mapgen/mg_biome.cpp index a03c41656..9f1e20109 100644 --- a/src/mapgen/mg_biome.cpp +++ b/src/mapgen/mg_biome.cpp @@ -27,20 +27,7 @@ BiomeManager::BiomeManager(Server *server) : // Create default biome to be used in case none exist Biome *b = new Biome; - b->name = "default"; - b->flags = 0; - b->depth_top = 0; - b->depth_filler = -MAX_MAP_GENERATION_LIMIT; - b->depth_water_top = 0; - b->depth_riverbed = 0; - b->min_pos = v3s16(-MAX_MAP_GENERATION_LIMIT, - -MAX_MAP_GENERATION_LIMIT, -MAX_MAP_GENERATION_LIMIT); - b->max_pos = v3s16(MAX_MAP_GENERATION_LIMIT, - MAX_MAP_GENERATION_LIMIT, MAX_MAP_GENERATION_LIMIT); - b->heat_point = 0.0; - b->humidity_point = 0.0; - b->vertical_blend = 0; b->m_nodenames.emplace_back("mapgen_stone"); b->m_nodenames.emplace_back("mapgen_stone"); @@ -84,11 +71,13 @@ void BiomeManager::clear() { EmergeManager *emerge = m_server->getEmergeManager(); - // Remove all dangling references in Decorations - DecorationManager *decomgr = emerge->getWritableDecorationManager(); - for (size_t i = 0; i != decomgr->getNumObjects(); i++) { - Decoration *deco = (Decoration *)decomgr->getRaw(i); - deco->biomes.clear(); + if (emerge) { + // Remove all dangling references in Decorations + DecorationManager *decomgr = emerge->getWritableDecorationManager(); + for (size_t i = 0; i != decomgr->getNumObjects(); i++) { + Decoration *deco = (Decoration *)decomgr->getRaw(i); + deco->biomes.clear(); + } } // Don't delete the first biome @@ -163,7 +152,10 @@ BiomeGenOriginal::BiomeGenOriginal(BiomeManager *biomemgr, for (size_t i = 0; i < m_bmgr->getNumObjects(); i++) { Biome *b = (Biome *)m_bmgr->getRaw(i); values.push_back(b->max_pos.Y); - values.push_back(b->min_pos.Y); + // We scan for biomes from high Y to low Y (top to bottom). Hence, + // biomes effectively transition at (min_pos.Y - 1). + if (b->min_pos.Y > -MAX_MAP_GENERATION_LIMIT) + values.push_back(b->min_pos.Y - 1); } std::sort(values.begin(), values.end(), std::greater<>()); @@ -281,7 +273,9 @@ Biome *BiomeGenOriginal::calcBiomeFromNoise(float heat, float humidity, v3s16 po float d_heat = heat - heat_point; float d_humidity = humidity - b->humidity_point; - float dist = (d_heat * d_heat) + (d_humidity * d_humidity); + float dist = ((d_heat * d_heat) + (d_humidity * d_humidity)); + if (b->weight > 0.f) + dist /= b->weight; if (pos.Y <= b->max_pos.Y) { // Within y limits of biome b if (dist < dist_min) { @@ -369,10 +363,10 @@ ObjDef *Biome::clone() const ObjDef::cloneTo(obj); NodeResolver::cloneTo(obj); - obj->flags = flags; - + // fm: obj->c_top_cold = c_top_cold; obj->c_ice = c_ice; + // === obj->c_top = c_top; obj->c_filler = c_filler; @@ -397,6 +391,7 @@ ObjDef *Biome::clone() const obj->heat_point = heat_point; obj->humidity_point = humidity_point; obj->vertical_blend = vertical_blend; + obj->weight = weight; return obj; } diff --git a/src/mapgen/mg_biome.h b/src/mapgen/mg_biome.h index 5705684dd..f87552beb 100644 --- a/src/mapgen/mg_biome.h +++ b/src/mapgen/mg_biome.h @@ -22,6 +22,12 @@ class BiomeManager; typedef u16 biome_t; +constexpr v3s16 MAX_MAP_GENERATION_LIMIT_V3( + MAX_MAP_GENERATION_LIMIT, + MAX_MAP_GENERATION_LIMIT, + MAX_MAP_GENERATION_LIMIT +); + #define BIOME_NONE ((biome_t)0) enum BiomeType { @@ -32,31 +38,32 @@ class Biome : public ObjDef, public NodeResolver { public: ObjDef *clone() const; - u32 flags; - - content_t c_top; - content_t c_filler; - content_t c_stone; - content_t c_water_top; - content_t c_water; - content_t c_river_water; - content_t c_riverbed; - content_t c_dust; + content_t + c_top = CONTENT_IGNORE, + c_filler = CONTENT_IGNORE, + c_stone = CONTENT_IGNORE, + c_water_top = CONTENT_IGNORE, + c_water = CONTENT_IGNORE, + c_river_water = CONTENT_IGNORE, + c_riverbed = CONTENT_IGNORE, + c_dust = CONTENT_IGNORE; std::vector c_cave_liquid; - content_t c_dungeon; - content_t c_dungeon_alt; - content_t c_dungeon_stair; + content_t + c_dungeon = CONTENT_IGNORE, + c_dungeon_alt = CONTENT_IGNORE, + c_dungeon_stair = CONTENT_IGNORE; - s16 depth_top; - s16 depth_filler; - s16 depth_water_top; - s16 depth_riverbed; + s16 depth_top = 0; + s16 depth_filler = -MAX_MAP_GENERATION_LIMIT; + s16 depth_water_top = 0; + s16 depth_riverbed = 0; - v3s16 min_pos; - v3s16 max_pos; - float heat_point; - float humidity_point; - s16 vertical_blend; + v3s16 min_pos = -MAX_MAP_GENERATION_LIMIT_V3; + v3s16 max_pos = MAX_MAP_GENERATION_LIMIT_V3; + float heat_point = 0.0f; + float humidity_point = 0.0f; + s16 vertical_blend = 0; + float weight = 1.0f; //freeminer: content_t c_ice; @@ -197,7 +204,8 @@ private: Noise *noise_heat_blend; Noise *noise_humidity_blend; - // ordered descending + /// Y values at which biomes may transition. + /// This array may only be used for downwards scanning! std::vector m_transitions_y; }; diff --git a/src/mapgen/mg_decoration.cpp b/src/mapgen/mg_decoration.cpp index 60183d4e4..e8f381ec6 100644 --- a/src/mapgen/mg_decoration.cpp +++ b/src/mapgen/mg_decoration.cpp @@ -346,7 +346,7 @@ size_t DecoSimple::generate(MMVManip *vm, PcgRandom *pr, v3s16 p, bool ceiling) pr->range(deco_param2, deco_param2_max) : deco_param2; bool force_placement = (flags & DECO_FORCE_PLACEMENT); - const v3s16 &em = vm->m_area.getExtent(); + const v3s32 &em = vm->m_area.getExtent(); u32 vi = vm->m_area.index(p); if (ceiling) { diff --git a/src/mapgen/mg_ore.h b/src/mapgen/mg_ore.h index 435933046..eed13ebfc 100644 --- a/src/mapgen/mg_ore.h +++ b/src/mapgen/mg_ore.h @@ -172,9 +172,8 @@ public: return new OreVein; case ORE_STRATUM: return new OreStratum; - default: - return nullptr; } + return nullptr; } void clear(); diff --git a/src/mapgen/treegen.cpp b/src/mapgen/treegen.cpp index c7212fe0e..5e7d3a1c3 100644 --- a/src/mapgen/treegen.cpp +++ b/src/mapgen/treegen.cpp @@ -25,8 +25,7 @@ void TreeDef::resolveNodeNames() getIdFromNrBacklog(&leavesnode.param0, "", CONTENT_IGNORE); if (leaves2_chance) getIdFromNrBacklog(&leaves2node.param0, "", CONTENT_IGNORE); - if (fruit_chance) - getIdFromNrBacklog(&fruitnode.param0, "", CONTENT_IGNORE); + getIdFromNrBacklog(&fruitnode.param0, "", CONTENT_IGNORE); } /* @@ -82,7 +81,7 @@ void make_tree(MMVManip &vmanip, v3s16 p0, bool is_apple_tree, VoxelArea leaves_a(v3pos_t(-size, -pr.range(2, 3), -size), v3pos_t(size, pr.range(2, 3), size)); //SharedPtr leaves_d(new u8[leaves_a.getVolume()]); Buffer leaves_d(leaves_a.getVolume()); - for (s32 i = 0; i < leaves_a.getVolume(); i++) + for (u32 i = 0; i < leaves_d.getSize(); i++) leaves_d[i] = 0; // Force leaves at near the end of the trunk @@ -283,29 +282,29 @@ treegen::error make_ltree(MMVManip &vmanip, v3s16 p0, Key for Special L-System Symbols used in Axioms - G - move forward one unit with the pen up - F - move forward one unit with the pen down drawing trunks and branches - f - move forward one unit with the pen down drawing leaves (100% chance) - T - move forward one unit with the pen down drawing trunks only - R - move forward one unit with the pen down placing fruit - A - replace with rules set A - B - replace with rules set B - C - replace with rules set C - D - replace with rules set D - a - replace with rules set A, chance 90% - b - replace with rules set B, chance 80% - c - replace with rules set C, chance 70% - d - replace with rules set D, chance 60% - + - yaw the turtle right by angle degrees - - - yaw the turtle left by angle degrees - & - pitch the turtle down by angle degrees - ^ - pitch the turtle up by angle degrees - / - roll the turtle to the right by angle degrees - * - roll the turtle to the left by angle degrees - [ - save in stack current state info - ] - recover from stack state info + G - move forward one unit with the pen up + F - move forward one unit with the pen down drawing trunks and branches + f - move forward one unit with the pen down drawing leaves (100% chance) + T - move forward one unit with the pen down drawing trunks only + R - move forward one unit with the pen down placing fruit + A - replace with rules set A + B - replace with rules set B + C - replace with rules set C + D - replace with rules set D + a - replace with rules set A, chance 90% + b - replace with rules set B, chance 80% + c - replace with rules set C, chance 70% + d - replace with rules set D, chance 60% + + - yaw the turtle right by angle degrees + - - yaw the turtle left by angle degrees + & - pitch the turtle down by angle degrees + ^ - pitch the turtle up by angle degrees + / - roll the turtle to the right by angle degrees + * - roll the turtle to the left by angle degrees + [ - save in stack current state info + ] - recover from stack state info - */ + */ s16 x,y,z; for (s16 i = 0; i < (s16)axiom.size(); i++) { @@ -705,9 +704,8 @@ void make_jungletree(MMVManip &vmanip, v3s16 p0, const NodeDefManager *ndef, s16 size = pr.range(2, 4); VoxelArea leaves_a(v3pos_t(-size, -pr.range(2, 4), -size), v3pos_t(size, pr.range(2, 4), size)); - //SharedPtr leaves_d(new u8[leaves_a.getVolume()]); Buffer leaves_d(leaves_a.getVolume()); - for (s32 i = 0; i < leaves_a.getVolume(); i++) + for (u32 i = 0; i < leaves_d.getSize(); i++) leaves_d[i] = 0; // Force leaves at near the end of the trunk @@ -797,7 +795,7 @@ void make_pine_tree(MMVManip &vmanip, v3s16 p0, const NodeDefManager *ndef, u16 size = pr.range(2, 4); VoxelArea leaves_a(v3pos_t(-4, -4*2, -4), v3pos_t(4, 4, 4)); Buffer leaves_d(leaves_a.getVolume()); - for (s32 i = 0; i < leaves_a.getVolume(); i++) + for (u32 i = 0; i < leaves_d.getSize(); i++) leaves_d[i] = 0; // Upper branches @@ -911,4 +909,15 @@ void make_cavetree(MMVManip &vmanip, v3pos_t p0, } } +std::string error_to_string(error e) +{ + switch (e) { + case SUCCESS: + return "success"; + case UNBALANCED_BRACKETS: + return "closing ']' has no matching opening bracket"; + } + return "unknown error"; +} + }; // namespace treegen diff --git a/src/mapgen/treegen.h b/src/mapgen/treegen.h index ee3d712c9..73e9f069a 100644 --- a/src/mapgen/treegen.h +++ b/src/mapgen/treegen.h @@ -71,4 +71,7 @@ namespace treegen { treegen::error make_ltree(MMVManip &vmanip, v3s16 p0, const TreeDef &def); // Helper to spawn it directly on map treegen::error spawn_ltree(ServerMap *map, v3s16 p0, const TreeDef &def); + + // Helper to get a string from the error message + std::string error_to_string(error e); }; // namespace treegen diff --git a/src/mapnode.cpp b/src/mapnode.cpp index cb29a5559..3627fce10 100644 --- a/src/mapnode.cpp +++ b/src/mapnode.cpp @@ -8,7 +8,7 @@ #include "nodedef.h" #include "map.h" #include "content_mapnode.h" // For mapnode_translate_*_internal -#include "serialization.h" // For ser_ver_supported +#include "serialization.h" // For ser_ver_supported_* #include "util/serialize.h" #include "log.h" #include "util/directiontables.h" @@ -180,8 +180,8 @@ void transformNodeBox(const MapNode &n, const NodeBox &nodebox, const ContentFeatures &f = nodemgr->get(n); const auto &fixed = nodebox.fixed; int facedir = n.getFaceDir(nodemgr, true); - u8 axisdir = facedir>>2; - facedir&=0x03; + u8 axisdir = facedir >> 2; + facedir &= 0x03; boxes.reserve(boxes.size() + fixed.size()); for (aabb3f box : fixed) { @@ -190,122 +190,44 @@ void transformNodeBox(const MapNode &n, const NodeBox &nodebox, box.MaxEdge.Y = (-0.5f + 1.0f/n.getMaxLevel(nodemgr) * std::min(n.getLevel(nodemgr), f.getMaxLevel())) * BS; } + if(facedir == 1) { + box.MinEdge.rotateXZBy(-90); + box.MaxEdge.rotateXZBy(-90); + } else if(facedir == 2) { + box.MinEdge.rotateXZBy(180); + box.MaxEdge.rotateXZBy(180); + } else if(facedir == 3) { + box.MinEdge.rotateXZBy(90); + box.MaxEdge.rotateXZBy(90); + } + switch (axisdir) { case 0: - if(facedir == 1) - { - box.MinEdge.rotateXZBy(-90); - box.MaxEdge.rotateXZBy(-90); - } - else if(facedir == 2) - { - box.MinEdge.rotateXZBy(180); - box.MaxEdge.rotateXZBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateXZBy(90); - box.MaxEdge.rotateXZBy(90); - } break; case 1: // z+ box.MinEdge.rotateYZBy(90); box.MaxEdge.rotateYZBy(90); - if(facedir == 1) - { - box.MinEdge.rotateXYBy(90); - box.MaxEdge.rotateXYBy(90); - } - else if(facedir == 2) - { - box.MinEdge.rotateXYBy(180); - box.MaxEdge.rotateXYBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateXYBy(-90); - box.MaxEdge.rotateXYBy(-90); - } break; case 2: //z- box.MinEdge.rotateYZBy(-90); box.MaxEdge.rotateYZBy(-90); - if(facedir == 1) - { - box.MinEdge.rotateXYBy(-90); - box.MaxEdge.rotateXYBy(-90); - } - else if(facedir == 2) - { - box.MinEdge.rotateXYBy(180); - box.MaxEdge.rotateXYBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateXYBy(90); - box.MaxEdge.rotateXYBy(90); - } break; case 3: //x+ box.MinEdge.rotateXYBy(-90); box.MaxEdge.rotateXYBy(-90); - if(facedir == 1) - { - box.MinEdge.rotateYZBy(90); - box.MaxEdge.rotateYZBy(90); - } - else if(facedir == 2) - { - box.MinEdge.rotateYZBy(180); - box.MaxEdge.rotateYZBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateYZBy(-90); - box.MaxEdge.rotateYZBy(-90); - } break; case 4: //x- box.MinEdge.rotateXYBy(90); box.MaxEdge.rotateXYBy(90); - if(facedir == 1) - { - box.MinEdge.rotateYZBy(-90); - box.MaxEdge.rotateYZBy(-90); - } - else if(facedir == 2) - { - box.MinEdge.rotateYZBy(180); - box.MaxEdge.rotateYZBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateYZBy(90); - box.MaxEdge.rotateYZBy(90); - } break; case 5: box.MinEdge.rotateXYBy(-180); box.MaxEdge.rotateXYBy(-180); - if(facedir == 1) - { - box.MinEdge.rotateXZBy(90); - box.MaxEdge.rotateXZBy(90); - } - else if(facedir == 2) - { - box.MinEdge.rotateXZBy(180); - box.MaxEdge.rotateXZBy(180); - } - else if(facedir == 3) - { - box.MinEdge.rotateXZBy(-90); - box.MaxEdge.rotateXZBy(-90); - } break; default: break; } + box.repair(); boxes.push_back(box); } @@ -422,57 +344,47 @@ void transformNodeBox(const MapNode &n, const NodeBox &nodebox, boxes.reserve(boxes_size); -#define BOXESPUSHBACK(c) \ - for (std::vector::const_iterator \ - it = (c).begin(); \ - it != (c).end(); ++it) \ - (boxes).push_back(*it); + auto boxes_insert = [&](const std::vector &boxes_src) { + boxes.insert(boxes.end(), boxes_src.begin(), boxes_src.end()); + }; - BOXESPUSHBACK(nodebox.fixed); + boxes_insert(nodebox.fixed); - if (neighbors & 1) { - BOXESPUSHBACK(c.connect_top); - } else { - BOXESPUSHBACK(c.disconnected_top); - } + if (neighbors & 1) + boxes_insert(c.connect_top); + else + boxes_insert(c.disconnected_top); - if (neighbors & 2) { - BOXESPUSHBACK(c.connect_bottom); - } else { - BOXESPUSHBACK(c.disconnected_bottom); - } + if (neighbors & 2) + boxes_insert(c.connect_bottom); + else + boxes_insert(c.disconnected_bottom); - if (neighbors & 4) { - BOXESPUSHBACK(c.connect_front); - } else { - BOXESPUSHBACK(c.disconnected_front); - } + if (neighbors & 4) + boxes_insert(c.connect_front); + else + boxes_insert(c.disconnected_front); - if (neighbors & 8) { - BOXESPUSHBACK(c.connect_left); - } else { - BOXESPUSHBACK(c.disconnected_left); - } + if (neighbors & 8) + boxes_insert(c.connect_left); + else + boxes_insert(c.disconnected_left); - if (neighbors & 16) { - BOXESPUSHBACK(c.connect_back); - } else { - BOXESPUSHBACK(c.disconnected_back); - } + if (neighbors & 16) + boxes_insert(c.connect_back); + else + boxes_insert(c.disconnected_back); - if (neighbors & 32) { - BOXESPUSHBACK(c.connect_right); - } else { - BOXESPUSHBACK(c.disconnected_right); - } + if (neighbors & 32) + boxes_insert(c.connect_right); + else + boxes_insert(c.disconnected_right); - if (neighbors == 0) { - BOXESPUSHBACK(c.disconnected); - } + if (neighbors == 0) + boxes_insert(c.disconnected); - if (neighbors < 4) { - BOXESPUSHBACK(c.disconnected_sides); - } + if (neighbors < 4) + boxes_insert(c.disconnected_sides); } else // NODEBOX_REGULAR @@ -725,7 +637,7 @@ int MapNode::freeze_melt(const NodeDefManager *ndef, int direction) { u32 MapNode::serializedLength(u8 version) { - if(!ser_ver_supported(version)) + if (!ser_ver_supported_read(version)) throw VersionMismatchException("ERROR: MapNode format not supported"); if (version == 0) @@ -759,7 +671,7 @@ void MapNode::msgpack_unpack(msgpack::object o) } void MapNode::serialize(u8 *dest, u8 version) const { - if(!ser_ver_supported(version)) + if (!ser_ver_supported_write(version)) throw VersionMismatchException("ERROR: MapNode format not supported"); // Can't do this anymore; we have 16-bit dynamically allocated node IDs @@ -774,7 +686,7 @@ void MapNode::serialize(u8 *dest, u8 version) const } void MapNode::deSerialize(u8 *source, u8 version) { - if(!ser_ver_supported(version)) + if (!ser_ver_supported_read(version)) throw VersionMismatchException("ERROR: MapNode format not supported"); if(version <= 21) @@ -802,18 +714,12 @@ Buffer MapNode::serializeBulk(int version, const MapNode *nodes, u32 nodecount, u8 content_width, u8 params_width) { - if (!ser_ver_supported(version)) + if (!ser_ver_supported_write(version)) throw VersionMismatchException("ERROR: MapNode format not supported"); sanity_check(content_width == 2); sanity_check(params_width == 2); - // Can't do this anymore; we have 16-bit dynamically allocated node IDs - // in memory; conversion just won't work in this direction. - if (version < 24) - throw SerializationError("MapNode::serializeBulk: serialization to " - "version < 24 not possible"); - Buffer databuf(nodecount * (content_width + params_width)); // Writing to the buffer linearly is faster @@ -835,13 +741,13 @@ void MapNode::deSerializeBulk(std::istream &is, int version, MapNode *nodes, u32 nodecount, u8 content_width, u8 params_width) { - if(!ser_ver_supported(version)) + if (!ser_ver_supported_read(version)) throw VersionMismatchException("ERROR: MapNode format not supported"); if (version < 22 || (content_width != 1 && content_width != 2) || params_width != 2) - FATAL_ERROR("Deserialize bulk node data error"); + throw SerializationError("Deserialize bulk node data error"); // read data const u32 len = nodecount * (content_width + params_width); diff --git a/src/network/clientpackethandler.cpp b/src/network/clientpackethandler.cpp index 4e787bab8..8ffb5ed5a 100644 --- a/src/network/clientpackethandler.cpp +++ b/src/network/clientpackethandler.cpp @@ -14,6 +14,7 @@ #include "client/client.h" +#include "exceptions.h" #include "irr_v2d.h" #include "util/base64.h" #include "client/camera.h" @@ -37,7 +38,7 @@ #include "script/scripting_client.h" #include "util/serialize.h" #include "util/srp.h" -#include "util/sha1.h" +#include "util/hashing.h" #include "tileanimation.h" #include "gettext.h" #include "skyparams.h" @@ -72,7 +73,7 @@ void Client::handleCommand_Hello(NetworkPacket* pkt) if (pkt->getSize() < 1) return; - u8 serialization_ver; + u8 serialization_ver; // negotiated value u16 proto_ver; u16 unused_compression_mode; u32 auth_mechs; @@ -89,9 +90,9 @@ void Client::handleCommand_Hello(NetworkPacket* pkt) << ", proto_ver=" << proto_ver << ". Doing auth with mech " << chosen_auth_mechanism << std::endl; - if (!ser_ver_supported(serialization_ver)) { + if (!ser_ver_supported_read(serialization_ver)) { infostream << "Client: TOCLIENT_HELLO: Server sent " - << "unsupported ser_fmt_ver"<< std::endl; + << "unsupported ser_fmt_ver=" << (int)serialization_ver << std::endl; return; } @@ -1035,6 +1036,8 @@ void Client::handleCommand_AddParticleSpawner(NetworkPacket* pkt) p.amount = readU16(is); p.time = readF32(is); + if (p.time < 0) + throw SerializationError("particle spawner time < 0"); bool missing_end_values = false; if (m_proto_ver >= 42) { @@ -1673,12 +1676,7 @@ void Client::handleCommand_MediaPush(NetworkPacket *pkt) if (!filedata.empty()) { // LEGACY CODEPATH // Compute and check checksum of data - std::string computed_hash; - { - class SHA1 ctx; - ctx.addBytes(filedata); - computed_hash = ctx.getDigest(); - } + std::string computed_hash = hashing::sha1(filedata); if (raw_hash != computed_hash) { verbosestream << "Hash of file data mismatches, ignoring." << std::endl; return; diff --git a/src/network/mtp/impl.cpp b/src/network/mtp/impl.cpp index 3d5fdaa0c..4a0700af7 100644 --- a/src/network/mtp/impl.cpp +++ b/src/network/mtp/impl.cpp @@ -53,6 +53,15 @@ u16 BufferedPacket::getSeqnum() const return readU16(&data[BASE_HEADER_SIZE + 1]); } +void BufferedPacket::setSenderPeerId(session_t id) +{ + if (size() < BASE_HEADER_SIZE) { + assert(false); // should never happen + return; + } + writeU16(&data[4], id); +} + BufferedPacketPtr makePacket(const Address &address, const SharedBuffer &data, u32 protocol_id, session_t sender_peer_id, u8 channel) { @@ -337,6 +346,13 @@ void ReliablePacketBuffer::insert(BufferedPacketPtr &p_ptr, u16 next_expected) m_oldest_non_answered_ack = m_list.front()->getSeqnum(); } +void ReliablePacketBuffer::fixPeerId(session_t new_id) +{ + MutexAutoLock listlock(m_list_mutex); + for (auto &packet : m_list) + packet->setSenderPeerId(new_id); +} + void ReliablePacketBuffer::incrementTimeouts(float dtime) { MutexAutoLock listlock(m_list_mutex); @@ -569,6 +585,13 @@ ConnectionCommandPtr ConnectionCommand::resend_one(session_t peer_id) return c; } +ConnectionCommandPtr ConnectionCommand::peer_id_set(session_t own_peer_id) +{ + auto c = create(CONNCMD_PEER_ID_SET); + c->peer_id = own_peer_id; + return c; +} + ConnectionCommandPtr ConnectionCommand::send(session_t peer_id, u8 channelnum, NetworkPacket *pkt, bool reliable) { @@ -1642,6 +1665,14 @@ void Connection::DisconnectPeer(session_t peer_id) putCommand(ConnectionCommand::disconnect_peer(peer_id)); } +void Connection::SetPeerID(session_t id) +{ + m_peer_id = id; + // fix peer id in existing queued reliable packets + if (id != PEER_ID_INEXISTENT) + putCommand(ConnectionCommand::peer_id_set(id)); +} + void Connection::doResendOne(session_t peer_id) { assert(peer_id != PEER_ID_INEXISTENT); diff --git a/src/network/mtp/impl.h b/src/network/mtp/impl.h index 28bf0f3f9..040ae5aaa 100644 --- a/src/network/mtp/impl.h +++ b/src/network/mtp/impl.h @@ -260,7 +260,7 @@ protected: UDPPeer* createServerPeer(const Address& sender); bool deletePeer(session_t peer_id, bool timeout); - void SetPeerID(session_t id) { m_peer_id = id; } + void SetPeerID(session_t id); void doResendOne(session_t peer_id); diff --git a/src/network/mtp/internal.h b/src/network/mtp/internal.h index e5c198266..acd8f9a76 100644 --- a/src/network/mtp/internal.h +++ b/src/network/mtp/internal.h @@ -187,6 +187,7 @@ struct BufferedPacket { DISABLE_CLASS_COPY(BufferedPacket) u16 getSeqnum() const; + void setSenderPeerId(session_t id); inline size_t size() const { return m_data.size(); } @@ -250,6 +251,8 @@ public: BufferedPacketPtr popFirst(); BufferedPacketPtr popSeqnum(u16 seqnum); void insert(BufferedPacketPtr &p_ptr, u16 next_expected); + /// Adjusts the sender peer ID for all packets + void fixPeerId(session_t id); void incrementTimeouts(float dtime); u32 getTimedOuts(float timeout); @@ -307,7 +310,8 @@ enum ConnectionCommandType{ CONNCMD_SEND_TO_ALL, CONCMD_ACK, CONCMD_CREATE_PEER, - CONNCMD_RESEND_ONE + CONNCMD_RESEND_ONE, + CONNCMD_PEER_ID_SET }; // This is very similar to ConnectionEvent @@ -331,6 +335,7 @@ struct ConnectionCommand static ConnectionCommandPtr disconnect(); static ConnectionCommandPtr disconnect_peer(session_t peer_id); static ConnectionCommandPtr resend_one(session_t peer_id); + static ConnectionCommandPtr peer_id_set(session_t own_peer_id); static ConnectionCommandPtr send(session_t peer_id, u8 channelnum, NetworkPacket *pkt, bool reliable); static ConnectionCommandPtr ack(session_t peer_id, u8 channelnum, const Buffer &data); static ConnectionCommandPtr createPeer(session_t peer_id, const Buffer &data); diff --git a/src/network/mtp/threads.cpp b/src/network/mtp/threads.cpp index 8cf52d514..83d7d73fd 100644 --- a/src/network/mtp/threads.cpp +++ b/src/network/mtp/threads.cpp @@ -482,6 +482,11 @@ void ConnectionSendThread::processNonReliableCommand(ConnectionCommandPtr &c_ptr << " UDP processing CONNCMD_DISCONNECT_PEER" << std::endl); disconnect_peer(c.peer_id); return; + case CONNCMD_PEER_ID_SET: + LOG(dout_con << m_connection->getDesc() + << " UDP processing CONNCMD_PEER_ID_SET" << std::endl); + fix_peer_id(c.peer_id); + return; case CONNCMD_SEND: LOG(dout_con << m_connection->getDesc() << " UDP processing CONNCMD_SEND" << std::endl); @@ -597,6 +602,26 @@ void ConnectionSendThread::disconnect_peer(session_t peer_id) dynamic_cast(&peer)->m_pending_disconnect = true; } +void ConnectionSendThread::fix_peer_id(session_t own_peer_id) +{ + auto peer_ids = m_connection->getPeerIDs(); + for (const session_t peer_id : peer_ids) { + PeerHelper peer = m_connection->getPeerNoEx(peer_id); + if (!peer) + continue; + + auto *udp_peer = dynamic_cast(&peer); + if (!udp_peer) + continue; + + for (int ch = 0; ch < CHANNEL_COUNT; ch++) { + auto &channel = udp_peer->channels[ch]; + + channel.outgoing_reliables_sent.fixPeerId(own_peer_id); + } + } +} + void ConnectionSendThread::send(session_t peer_id, u8 channelnum, const SharedBuffer &data) { diff --git a/src/network/mtp/threads.h b/src/network/mtp/threads.h index 74067fcc7..979a8bbfd 100644 --- a/src/network/mtp/threads.h +++ b/src/network/mtp/threads.h @@ -73,6 +73,7 @@ private: void connect(Address address); void disconnect(); void disconnect_peer(session_t peer_id); + void fix_peer_id(session_t own_peer_id); void send(session_t peer_id, u8 channelnum, const SharedBuffer &data); void sendReliable(ConnectionCommandPtr &c); void sendToAll(u8 channelnum, const SharedBuffer &data); diff --git a/src/network/networkprotocol.cpp b/src/network/networkprotocol.cpp index 40f8acef1..85096930f 100644 --- a/src/network/networkprotocol.cpp +++ b/src/network/networkprotocol.cpp @@ -59,9 +59,13 @@ Rename TOSERVER_RESPAWN to TOSERVER_RESPAWN_LEGACY Support float animation frame numbers in TOCLIENT_LOCAL_PLAYER_ANIMATIONS [scheduled bump for 5.10.0] + PROTOCOL VERSION 47 + Add particle blend mode "clip" + [scheduled bump for 5.11.0] */ -const u16 LATEST_PROTOCOL_VERSION = 46; +// Note: Also update core.protocol_versions in builtin when bumping +const u16 LATEST_PROTOCOL_VERSION = 47; // See also formspec [Version History] in doc/lua_api.md const u16 FORMSPEC_API_VERSION = 8; diff --git a/src/network/serverpackethandler.cpp b/src/network/serverpackethandler.cpp index e1d9da94a..137c9064e 100644 --- a/src/network/serverpackethandler.cpp +++ b/src/network/serverpackethandler.cpp @@ -19,11 +19,13 @@ #include "remoteplayer.h" #include "rollback_interface.h" #include "scripting_server.h" +#include "serialization.h" #include "settings.h" #include "tool.h" #include "version.h" #include "irrlicht_changes/printing.h" #include "network/connection.h" +#include "network/networkpacket.h" #include "network/networkprotocol.h" #include "network/serveropcodes.h" #include "server/player_sao.h" @@ -35,6 +37,8 @@ #include "util/srp.h" #include "clientdynamicinfo.h" +#include + void Server::handleCommand_Deprecated(NetworkPacket* pkt) { infostream << "Server: " << toServerCommandTable[pkt->getCommand()].name @@ -90,34 +94,27 @@ void Server::handleCommand_Init(NetworkPacket* pkt) if (denyIfBanned(peer_id)) return; - // First byte after command is maximum supported - // serialization version - u8 client_max; + u8 max_ser_ver; // SER_FMT_VER_HIGHEST_READ (of client) u16 unused; - u16 min_net_proto_version = 0; + u16 min_net_proto_version; u16 max_net_proto_version; std::string playerName; - *pkt >> client_max >> unused >> min_net_proto_version - >> max_net_proto_version >> playerName; + *pkt >> max_ser_ver >> unused + >> min_net_proto_version >> max_net_proto_version + >> playerName; - u8 our_max = SER_FMT_VER_HIGHEST_READ; // Use the highest version supported by both - u8 depl_serial_v = std::min(client_max, our_max); - // If it's lower than the lowest supported, give up. -#if SER_FMT_VER_LOWEST_READ > 0 - if (depl_serial_v < SER_FMT_VER_LOWEST_READ) - depl_serial_v = SER_FMT_VER_INVALID; -#endif + const u8 serialization_ver = std::min(max_ser_ver, SER_FMT_VER_HIGHEST_WRITE); - if (depl_serial_v == SER_FMT_VER_INVALID) { + if (!ser_ver_supported_write(serialization_ver)) { actionstream << "Server: A mismatched client " << playerName << " tried to connect from " << - addr_s << " ser_fmt_max=" << (int)client_max << std::endl; + addr_s << " ser_fmt_max=" << (int)serialization_ver << std::endl; DenyAccess(peer_id, SERVER_ACCESSDENIED_WRONG_VERSION); return; } - client->setPendingSerializationVersion(depl_serial_v); + client->setPendingSerializationVersion(serialization_ver); /* Read and check network protocol version @@ -270,8 +267,9 @@ void Server::handleCommand_Init(NetworkPacket* pkt) NetworkPacket resp_pkt(TOCLIENT_HELLO, 0, peer_id); - resp_pkt << depl_serial_v << u16(0) << net_proto_version - << auth_mechs << std::string_view(); + resp_pkt << serialization_ver << u16(0) /* unused */ + << net_proto_version + << auth_mechs << std::string_view() /* unused */; Send(&resp_pkt); @@ -487,7 +485,11 @@ void Server::process_PlayerPos(RemotePlayer *player, PlayerSAO *playersao, *pkt >> bits; if (pkt->getRemainingBytes() >= 8) { - *pkt >> player->control.movement_speed; + f32 movement_speed; + *pkt >> movement_speed; + if (movement_speed != movement_speed) // NaN + movement_speed = 0.0f; + player->control.movement_speed = std::clamp(movement_speed, 0.0f, 1.0f); *pkt >> player->control.movement_direction; } else { player->control.movement_speed = 0.0f; @@ -652,6 +654,24 @@ void Server::handleCommand_InventoryAction(NetworkPacket* pkt) where the client made a bad prediction. */ + auto mark_player_inv_list_dirty = [this](const InventoryLocation &loc, + const std::string &list_name) { + + // Undo the client prediction of the affected list. See `clientApply`. + if (loc.type != InventoryLocation::PLAYER) + return; + + Inventory *inv = m_inventory_mgr->getInventory(loc); + if (!inv) + return; + + InventoryList *list = inv->getList(list_name); + if (!list) + return; + + list->setModified(true); + }; + const bool player_has_interact = checkPriv(player->getName(), "interact"); auto check_inv_access = [player, player_has_interact, this] ( @@ -696,8 +716,12 @@ void Server::handleCommand_InventoryAction(NetworkPacket* pkt) ma->to_inv.applyCurrentPlayer(player->getName()); m_inventory_mgr->setInventoryModified(ma->from_inv); - if (ma->from_inv != ma->to_inv) + mark_player_inv_list_dirty(ma->from_inv, ma->from_list); + bool inv_different = ma->from_inv != ma->to_inv; + if (inv_different) m_inventory_mgr->setInventoryModified(ma->to_inv); + if (inv_different || ma->from_list != ma->to_list) + mark_player_inv_list_dirty(ma->to_inv, ma->to_list); if (!check_inv_access(ma->from_inv) || !check_inv_access(ma->to_inv)) @@ -734,6 +758,7 @@ void Server::handleCommand_InventoryAction(NetworkPacket* pkt) da->from_inv.applyCurrentPlayer(player->getName()); m_inventory_mgr->setInventoryModified(da->from_inv); + mark_player_inv_list_dirty(da->from_inv, da->from_list); /* Disable dropping items out of craftpreview @@ -769,6 +794,7 @@ void Server::handleCommand_InventoryAction(NetworkPacket* pkt) ca->craft_inv.applyCurrentPlayer(player->getName()); m_inventory_mgr->setInventoryModified(ca->craft_inv); + // Note: `ICraftAction::clientApply` is empty, thus nothing to revert. // Disallow crafting if not allowed to interact if (!player_has_interact) { diff --git a/src/nodedef.cpp b/src/nodedef.cpp index 17c7a6de1..e845f6c17 100644 --- a/src/nodedef.cpp +++ b/src/nodedef.cpp @@ -13,6 +13,7 @@ #include "client/texturesource.h" #include "client/tile.h" #include +#include #endif #include "log.h" #include "settings.h" @@ -120,7 +121,7 @@ void NodeBox::deSerialize(std::istream &is) case NODEBOX_LEVELED: { u16 fixed_count = readU16(is); while(fixed_count--) { - aabb3f box; + aabb3f box{{0.0f, 0.0f, 0.0f}}; box.MinEdge = readV3F32(is); box.MaxEdge = readV3F32(is); fixed.push_back(box); @@ -368,18 +369,12 @@ void TextureSettings::readSettings() { connected_glass = g_settings->getBool("connected_glass"); translucent_liquids = g_settings->getBool("translucent_liquids"); - bool smooth_lighting = g_settings->getBool("smooth_lighting"); - enable_mesh_cache = g_settings->getBool("enable_mesh_cache"); enable_minimap = g_settings->getBool("enable_minimap"); node_texture_size = std::max(g_settings->getU16("texture_min_size"), 1); std::string leaves_style_str = g_settings->get("leaves_style"); std::string world_aligned_mode_str = g_settings->get("world_aligned_mode"); std::string autoscale_mode_str = g_settings->get("autoscale_mode"); - // Mesh cache is not supported in combination with smooth lighting - if (smooth_lighting) - enable_mesh_cache = false; - if (leaves_style_str == "fancy") { leaves_style = LEAVES_FANCY; } else if (leaves_style_str == "simple") { @@ -455,8 +450,7 @@ void ContentFeatures::reset() drawtype = NDT_NORMAL; mesh.clear(); #if CHECK_CLIENT_BUILD() - for (auto &i : mesh_ptr) - i = NULL; + mesh_ptr = nullptr; minimap_color = video::SColor(0, 0, 0, 0); #endif visual_scale = 1.0; @@ -1003,7 +997,7 @@ static void fillTileAttribs(ITextureSource *tsrc, TileLayer *layer, } } -bool isWorldAligned(AlignStyle style, WorldAlignMode mode, NodeDrawType drawtype) +static bool isWorldAligned(AlignStyle style, WorldAlignMode mode, NodeDrawType drawtype) { if (style == ALIGN_STYLE_WORLD) return true; @@ -1020,14 +1014,14 @@ bool isWorldAligned(AlignStyle style, WorldAlignMode mode, NodeDrawType drawtype #endif -#if IS_CLIENT_BUILD +//#if IS_CLIENT_BUILD void ContentFeatures::updateTextures(ITextureSource *tsrc, IShaderSource *shdsrc, scene::IMeshManipulator *meshmanip, Client *client, const TextureSettings &tsettings , bool server ) { -#if IS_CLIENT_BUILD +#if CHECK_CLIENT_BUILD() // minimap pixel color - the average color of a texture if (tsrc) if (tsettings.enable_minimap && !tiledef[0].name.empty()) @@ -1171,7 +1165,7 @@ void ContentFeatures::updateTextures(ITextureSource *tsrc, IShaderSource *shdsrc if (drawtype == NDT_NODEBOX) solidness_far = 1; -#if IS_CLIENT_BUILD +#if CHECK_CLIENT_BUILD() if (is_liquid) { if (waving == 3) { material_type = alpha == ALPHAMODE_OPAQUE ? @@ -1235,62 +1229,31 @@ void ContentFeatures::updateTextures(ITextureSource *tsrc, IShaderSource *shdsrc if(client) if (drawtype == NDT_MESH && !mesh.empty()) { - // Meshnode drawtype // Read the mesh and apply scale - mesh_ptr[0] = client->getMesh(mesh); - if (mesh_ptr[0]){ - v3f scale = v3f(1.0, 1.0, 1.0) * BS * visual_scale; - scaleMesh(mesh_ptr[0], scale); - recalculateBoundingBox(mesh_ptr[0]); - meshmanip->recalculateNormals(mesh_ptr[0], true, false); + mesh_ptr = client->getMesh(mesh); + if (mesh_ptr) { + v3f scale = v3f(BS) * visual_scale; + scaleMesh(mesh_ptr, scale); + recalculateBoundingBox(mesh_ptr); + if (!checkMeshNormals(mesh_ptr)) { + infostream << "ContentFeatures: recalculating normals for mesh " + << mesh << std::endl; + meshmanip->recalculateNormals(mesh_ptr, true, false); + } else { + // Animation is not supported, but we need to reset it to + // default state if it is animated. + // Note: recalculateNormals() also does this hence the else-block + if (mesh_ptr->getMeshType() == scene::EAMT_SKINNED) + ((scene::SkinnedMesh*) mesh_ptr)->resetAnimation(); + } } } - - //Cache 6dfacedir and wallmounted rotated clones of meshes - if (tsettings.enable_mesh_cache && mesh_ptr[0] && - (param_type_2 == CPT2_FACEDIR - || param_type_2 == CPT2_COLORED_FACEDIR)) { - for (u16 j = 1; j < 24; j++) { - mesh_ptr[j] = cloneMesh(mesh_ptr[0]); - rotateMeshBy6dFacedir(mesh_ptr[j], j); - recalculateBoundingBox(mesh_ptr[j]); - meshmanip->recalculateNormals(mesh_ptr[j], true, false); - } - } else if (tsettings.enable_mesh_cache && mesh_ptr[0] && - (param_type_2 == CPT2_4DIR - || param_type_2 == CPT2_COLORED_4DIR)) { - for (u16 j = 1; j < 4; j++) { - mesh_ptr[j] = cloneMesh(mesh_ptr[0]); - rotateMeshBy6dFacedir(mesh_ptr[j], j); - recalculateBoundingBox(mesh_ptr[j]); - meshmanip->recalculateNormals(mesh_ptr[j], true, false); - } - } else if (tsettings.enable_mesh_cache && mesh_ptr[0] - && (param_type_2 == CPT2_WALLMOUNTED || - param_type_2 == CPT2_COLORED_WALLMOUNTED)) { - static const u8 wm_to_6d[6] = { 20, 0, 16 + 1, 12 + 3, 8, 4 + 2 }; - for (u16 j = 1; j < 6; j++) { - mesh_ptr[j] = cloneMesh(mesh_ptr[0]); - rotateMeshBy6dFacedir(mesh_ptr[j], wm_to_6d[j]); - recalculateBoundingBox(mesh_ptr[j]); - meshmanip->recalculateNormals(mesh_ptr[j], true, false); - } - rotateMeshBy6dFacedir(mesh_ptr[0], wm_to_6d[0]); - recalculateBoundingBox(mesh_ptr[0]); - meshmanip->recalculateNormals(mesh_ptr[0], true, false); - } -#endif } -/* #endif -*/ /* NodeDefManager */ -#endif - - NodeDefManager::NodeDefManager() @@ -1303,10 +1266,8 @@ NodeDefManager::~NodeDefManager() { #if CHECK_CLIENT_BUILD() for (ContentFeatures &f : m_content_features) { - for (auto &j : f.mesh_ptr) { - if (j) - j->drop(); - } + if (f.mesh_ptr) + f.mesh_ptr->drop(); } #endif } diff --git a/src/nodedef.h b/src/nodedef.h index c6ab50f44..1d6266329 100644 --- a/src/nodedef.h +++ b/src/nodedef.h @@ -221,9 +221,9 @@ struct NodeBox // NODEBOX_FIXED std::vector fixed; // NODEBOX_WALLMOUNTED - aabb3f wall_top; - aabb3f wall_bottom; - aabb3f wall_side; // being at the -X side + aabb3f wall_top = dummybox; + aabb3f wall_bottom = dummybox; + aabb3f wall_side = dummybox; // being at the -X side // NODEBOX_CONNECTED // (kept externally to not bloat the structure) std::shared_ptr connected; @@ -245,6 +245,10 @@ struct NodeBox void reset(); void serialize(std::ostream &os, u16 protocol_version) const; void deSerialize(std::istream &is); + +private: + /// @note the actual defaults are in reset(), see nodedef.cpp + static constexpr aabb3f dummybox = aabb3f({0, 0, 0}); }; struct MapNode; @@ -277,7 +281,6 @@ public: int node_texture_size; bool translucent_liquids; bool connected_glass; - bool enable_mesh_cache; bool enable_minimap; TextureSettings() = default; @@ -329,6 +332,7 @@ enum NodeDrawType : u8 NDT_MESH, // Combined plantlike-on-solid NDT_PLANTLIKE_ROOTED, + // Dummy for validity check NodeDrawType_END }; @@ -484,7 +488,7 @@ struct ContentFeatures enum NodeDrawType drawtype; std::string mesh; #if CHECK_CLIENT_BUILD() - scene::IMesh *mesh_ptr[24]; + scene::IMesh *mesh_ptr; // mesh in case of mesh node video::SColor minimap_color; #endif float visual_scale; // Misc. scale parameter @@ -617,21 +621,6 @@ struct ContentFeatures } } - bool needsBackfaceCulling() const - { - switch (drawtype) { - case NDT_TORCHLIKE: - case NDT_SIGNLIKE: - case NDT_FIRELIKE: - case NDT_RAILLIKE: - case NDT_PLANTLIKE: - case NDT_PLANTLIKE_ROOTED: - case NDT_MESH: - return false; - default: - return true; - } - } bool isLiquid() const{ return (liquid_type != LIQUID_NONE); @@ -966,14 +955,14 @@ private: * The union of all nodes' selection boxes. * Might be larger if big nodes are removed from the manager. */ - aabb3f m_selection_box_union; + aabb3f m_selection_box_union{{0.0f, 0.0f, 0.0f}}; /*! * The smallest box in integer node coordinates that * contains all nodes' selection boxes. * Might be larger if big nodes are removed from the manager. */ - core::aabbox3d m_selection_box_int_union; + core::aabbox3d m_selection_box_int_union{{0, 0, 0}}; /*! * NodeResolver instances to notify once node registration has finished. diff --git a/src/noise.cpp b/src/noise.cpp index 5d24776ee..6ea250015 100644 --- a/src/noise.cpp +++ b/src/noise.cpp @@ -160,8 +160,8 @@ void PcgRandom::getState(u64 state[2]) const void PcgRandom::setState(const u64 state[2]) { - m_state = state[0]; - m_inc = state[1]; + m_state = state[0]; + m_inc = state[1]; } /////////////////////////////////////////////////////////////////////////////// diff --git a/src/objdef.cpp b/src/objdef.cpp index 1d7806e3d..f5ba82929 100644 --- a/src/objdef.cpp +++ b/src/objdef.cpp @@ -6,6 +6,9 @@ #include "util/numeric.h" #include "log.h" #include "gamedef.h" +#include "porting.h" // strcasecmp + +#include ObjDefManager::ObjDefManager(IGameDef *gamedef, ObjDefType type) { diff --git a/src/objdef.h b/src/objdef.h index 93dd78837..ec52aa831 100644 --- a/src/objdef.h +++ b/src/objdef.h @@ -4,8 +4,9 @@ #pragma once -#include "util/basic_macros.h" -#include "porting.h" +#include "util/basic_macros.h" // DISABLE_CLASS_COPY +#include "irrlichttypes.h" +#include #include class IGameDef; diff --git a/src/object_properties.cpp b/src/object_properties.cpp index e5bfb5da7..63a5c9f94 100644 --- a/src/object_properties.cpp +++ b/src/object_properties.cpp @@ -15,8 +15,7 @@ static const video::SColor NULL_BGCOLOR{0, 1, 1, 1}; ObjectProperties::ObjectProperties() { - textures.emplace_back("blank.png"); - colors.emplace_back(255,255,255,255); + textures.emplace_back("blank.png"); // no_texture.png } std::string ObjectProperties::dump() const diff --git a/src/object_properties.h b/src/object_properties.h index 3174aec3b..ddf94e75f 100644 --- a/src/object_properties.h +++ b/src/object_properties.h @@ -18,7 +18,7 @@ struct ObjectProperties // FMTODO: public shared_locker /* member variables ordered roughly by size */ std::vector textures; - std::vector colors; + std::vector colors; // Currently unused // Values are BS=1 aabb3f collisionbox = aabb3f(-0.5f, -0.5f, -0.5f, 0.5f, 0.5f, 0.5f); // Values are BS=1 diff --git a/src/particles.cpp b/src/particles.cpp index 2c470d2d3..660ea8d2f 100644 --- a/src/particles.cpp +++ b/src/particles.cpp @@ -190,8 +190,10 @@ void ServerParticleTexture::serialize(std::ostream &os, u16 protocol_ver, FlagT flags = 0; if (animated) flags |= FlagT(ParticleTextureFlags::animated); - if (blendmode != BlendMode::alpha) - flags |= FlagT(blendmode) << 1; + // Default to `blend = "alpha"` for older clients that don't support `blend = "clip"` + auto sent_blendmode = (protocol_ver < 47 && blendmode == BlendMode::clip) + ? BlendMode::alpha : blendmode; + flags |= FlagT(sent_blendmode) << 1; serializeParameterValue(os, flags); alpha.serialize(os); @@ -215,6 +217,8 @@ void ServerParticleTexture::deSerialize(std::istream &is, u16 protocol_ver, animated = !!(flags & FlagT(ParticleTextureFlags::animated)); blendmode = BlendMode((flags & FlagT(ParticleTextureFlags::blend)) >> 1); + if (blendmode >= BlendMode::BlendMode_END) + throw SerializationError("invalid blend mode"); alpha.deSerialize(is); scale.deSerialize(is); diff --git a/src/particles.h b/src/particles.h index 52fe26661..00d04dbeb 100644 --- a/src/particles.h +++ b/src/particles.h @@ -233,7 +233,8 @@ namespace ParticleParamTypes } enum class AttractorKind : u8 { none, point, line, plane }; - enum class BlendMode : u8 { alpha, add, sub, screen }; + // Note: Allows at most 8 enum members (due to how this is serialized) + enum class BlendMode : u8 { alpha, add, sub, screen, clip, BlendMode_END }; // these are consistently-named convenience aliases to make code more readable without `using ParticleParamTypes` declarations using v3fRange = RangedParameter; diff --git a/src/pathfinder.cpp b/src/pathfinder.cpp index afd998610..656abf901 100644 --- a/src/pathfinder.cpp +++ b/src/pathfinder.cpp @@ -302,7 +302,7 @@ private: v3s16 m_start; /**< source position */ v3s16 m_destination; /**< destination position */ - core::aabbox3d m_limits; /**< position limits in real map coordinates */ + core::aabbox3d m_limits{{0, 0, 0}}; /**< position limits in real map coordinates */ /** contains all map data already collected and analyzed. Access it via the getIndexElement/getIdxElem methods. */ diff --git a/src/player.h b/src/player.h index 0562a4285..25cfdd361 100644 --- a/src/player.h +++ b/src/player.h @@ -131,7 +131,6 @@ struct PlayerPhysicsOverride }; class Map; -struct CollisionInfo; struct HudElement; class Environment; @@ -145,12 +144,6 @@ public: DISABLE_CLASS_COPY(Player); - virtual void move(f32 dtime, Environment *env, f32 pos_max_d) - {} - virtual void move(f32 dtime, Environment *env, f32 pos_max_d, - std::vector *collision_info) - {} - // in BS-space inline void setSpeed(v3f speed) { diff --git a/src/porting.cpp b/src/porting.cpp index 0c39590e5..1595b4f7f 100644 --- a/src/porting.cpp +++ b/src/porting.cpp @@ -740,6 +740,10 @@ void initializePaths() #endif // RUN_IN_PLACE + assert(!path_share.empty()); + assert(!path_user.empty()); + assert(!path_cache.empty()); + infostream << "Detected share path: " << path_share << std::endl; infostream << "Detected user path: " << path_user << std::endl; infostream << "Detected cache path: " << path_cache << std::endl; diff --git a/src/porting.h b/src/porting.h index 4090cc182..eeba732ce 100644 --- a/src/porting.h +++ b/src/porting.h @@ -35,17 +35,17 @@ #define sleep_ms(x) Sleep(x) - #define MAX_PACKET_SIZE_SINGLEPLAYER 1400 #define sleep_us(x) Sleep((x)/1000) + #define SLEEP_ACCURACY_US 2000 + #define setenv(n,v,o) _putenv_s(n,v) #define unsetenv(n) _putenv_s(n,"") #else #include #include // setenv - //fmtodo: #define MAX_PACKET_SIZE_SINGLEPLAYER 8192 - #define MAX_PACKET_SIZE_SINGLEPLAYER 1400 + #define SLEEP_ACCURACY_US 200 #define sleep_ms(x) usleep((x)*1000) #define sleep_us(x) usleep(x) @@ -72,9 +72,9 @@ #ifndef _WIN32 // POSIX #include #include - #if defined(__MACH__) && defined(__APPLE__) - #include - #endif + #if defined(__MACH__) && defined(__APPLE__) + #include + #endif #endif namespace porting @@ -118,8 +118,7 @@ extern std::string path_cache; bool getCurrentExecPath(char *buf, size_t len); /* - Get full path of stuff in data directory. - Example: "stone.png" -> "../data/stone.png" + Concatenate subpath to path_share. */ std::string getDataPath(const char *subpath); @@ -230,6 +229,21 @@ inline u64 getDeltaMs(u64 old_time_ms, u64 new_time_ms) return (old_time_ms - new_time_ms); } +inline void preciseSleepUs(u64 sleep_time) +{ + if (sleep_time > 0) + { + u64 target_time = porting::getTimeUs() + sleep_time; + if (sleep_time > SLEEP_ACCURACY_US) + sleep_us(sleep_time - SLEEP_ACCURACY_US); + + // Busy-wait the remaining time to adjust for sleep inaccuracies + // The target - now > 0 construct will handle overflow gracefully (even though it should + // never happen) + while ((s64)(target_time - porting::getTimeUs()) > 0) {} + } +} + inline const char *getPlatformName() { return diff --git a/src/profiler.cpp b/src/profiler.cpp index 69d67808e..3af81c506 100644 --- a/src/profiler.cpp +++ b/src/profiler.cpp @@ -123,7 +123,7 @@ int Profiler::print(std::ostream &o, u32 page, u32 pagecount) { GraphValues values; getPage(values, page, pagecount); - char buffer[50]; + char buffer[128]; for (const auto &i : values) { o << " " << i.first << " "; @@ -134,7 +134,7 @@ int Profiler::print(std::ostream &o, u32 page, u32 pagecount) { // Padding - s32 space = std::max(0, 44 - (s32)i.first.size()); + s32 space = std::max(0, 46 - (s32)i.first.size()); memset(buffer, '_', space); buffer[space] = '\0'; o << buffer; diff --git a/src/reflowscan.h b/src/reflowscan.h index 66fec9ea6..70890c9bc 100644 --- a/src/reflowscan.h +++ b/src/reflowscan.h @@ -5,7 +5,8 @@ #pragma once #include "util/container.h" -#include "irrlichttypes_bloated.h" +#include "irrlichttypes.h" +#include "irr_v3d.h" class NodeDefManager; class Map; diff --git a/src/script/CMakeLists.txt b/src/script/CMakeLists.txt index ccb5785bd..fd46f522f 100644 --- a/src/script/CMakeLists.txt +++ b/src/script/CMakeLists.txt @@ -15,6 +15,7 @@ set(common_SCRIPT_SRCS set(client_SCRIPT_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/scripting_mainmenu.cpp ${CMAKE_CURRENT_SOURCE_DIR}/scripting_client.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/scripting_pause_menu.cpp ${client_SCRIPT_COMMON_SRCS} ${client_SCRIPT_CPP_API_SRCS} ${client_SCRIPT_LUA_API_SRCS} diff --git a/src/script/common/CMakeLists.txt b/src/script/common/CMakeLists.txt index 3e84b46c7..f771861d7 100644 --- a/src/script/common/CMakeLists.txt +++ b/src/script/common/CMakeLists.txt @@ -1,7 +1,6 @@ set(common_SCRIPT_COMMON_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/c_content.cpp ${CMAKE_CURRENT_SOURCE_DIR}/c_converter.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/c_types.cpp ${CMAKE_CURRENT_SOURCE_DIR}/c_internal.cpp ${CMAKE_CURRENT_SOURCE_DIR}/c_packer.cpp ${CMAKE_CURRENT_SOURCE_DIR}/helper.cpp diff --git a/src/script/common/c_content.cpp b/src/script/common/c_content.cpp index 323e293eb..4f69293de 100644 --- a/src/script/common/c_content.cpp +++ b/src/script/common/c_content.cpp @@ -32,6 +32,23 @@ struct EnumString es_TileAnimationType[] = {0, nullptr}, }; +struct EnumString es_ItemType[] = +{ + {ITEM_NONE, "none"}, + {ITEM_NODE, "node"}, + {ITEM_CRAFT, "craft"}, + {ITEM_TOOL, "tool"}, + {0, NULL}, +}; + +struct EnumString es_TouchInteractionMode[] = +{ + {LONG_DIG_SHORT_PLACE, "long_dig_short_place"}, + {SHORT_DIG_LONG_PLACE, "short_dig_long_place"}, + {TouchInteractionMode_USER, "user"}, + {0, NULL}, +}; + /******************************************************************************/ void read_item_definition(lua_State* L, int index, const ItemDefinition &default_def, ItemDefinition &def) @@ -175,7 +192,7 @@ void push_item_definition(lua_State *L, const ItemDefinition &i) void push_item_definition_full(lua_State *L, const ItemDefinition &i) { - std::string type(es_ItemType[(int)i.type].str); + std::string type(enum_to_string(es_ItemType, i.type)); lua_newtable(L); lua_pushstring(L, i.name.c_str()); @@ -233,11 +250,11 @@ void push_item_definition_full(lua_State *L, const ItemDefinition &i) lua_createtable(L, 0, 3); const TouchInteraction &inter = i.touch_interaction; - lua_pushstring(L, es_TouchInteractionMode[inter.pointed_nothing].str); + lua_pushstring(L, enum_to_string(es_TouchInteractionMode, inter.pointed_nothing)); lua_setfield(L, -2,"pointed_nothing"); - lua_pushstring(L, es_TouchInteractionMode[inter.pointed_node].str); + lua_pushstring(L, enum_to_string(es_TouchInteractionMode, inter.pointed_node)); lua_setfield(L, -2,"pointed_node"); - lua_pushstring(L, es_TouchInteractionMode[inter.pointed_object].str); + lua_pushstring(L, enum_to_string(es_TouchInteractionMode, inter.pointed_object)); lua_setfield(L, -2,"pointed_object"); lua_setfield(L, -2, "touch_interaction"); } @@ -991,7 +1008,7 @@ void read_content_features(lua_State *L, ContentFeatures &f, int index) lua_getfield(L, index, "selection_box"); if(lua_istable(L, -1)) f.selection_box = read_nodebox(L, -1); - lua_pop(L, 1); + lua_pop(L, 1); lua_getfield(L, index, "collision_box"); if(lua_istable(L, -1)) @@ -1044,10 +1061,10 @@ void read_content_features(lua_State *L, ContentFeatures &f, int index) void push_content_features(lua_State *L, const ContentFeatures &c) { - std::string paramtype(ScriptApiNode::es_ContentParamType[(int)c.param_type].str); - std::string paramtype2(ScriptApiNode::es_ContentParamType2[(int)c.param_type_2].str); - std::string drawtype(ScriptApiNode::es_DrawType[(int)c.drawtype].str); - std::string liquid_type(ScriptApiNode::es_LiquidType[(int)c.liquid_type].str); + std::string paramtype(enum_to_string(ScriptApiNode::es_ContentParamType, c.param_type)); + std::string paramtype2(enum_to_string(ScriptApiNode::es_ContentParamType2, c.param_type_2)); + std::string drawtype(enum_to_string(ScriptApiNode::es_DrawType, c.drawtype)); + std::string liquid_type(enum_to_string(ScriptApiNode::es_LiquidType, c.liquid_type)); /* Missing "tiles" because I don't see a usecase (at least not yet). */ @@ -1414,21 +1431,6 @@ int getenumfield(lua_State *L, int table, return result; } -/******************************************************************************/ -bool string_to_enum(const EnumString *spec, int &result, - const std::string &str) -{ - const EnumString *esp = spec; - while(esp->str){ - if (!strcmp(str.c_str(), esp->str)) { - result = esp->num; - return true; - } - esp++; - } - return false; -} - /******************************************************************************/ ItemStack read_item(lua_State* L, int index, IItemDefManager *idef) { @@ -1545,7 +1547,7 @@ void push_wear_bar_params(lua_State *L, const WearBarParams ¶ms) { lua_newtable(L); - setstringfield(L, -1, "blend", WearBarParams::es_BlendMode[params.blend].str); + setstringfield(L, -1, "blend", enum_to_string(WearBarParams::es_BlendMode, params.blend)); lua_newtable(L); for (const std::pair item: params.colorStops) { @@ -1683,7 +1685,7 @@ ToolCapabilities read_tool_capabilities( // key at index -2 and value at index -1 int rating = luaL_checkinteger(L, -2); float time = luaL_checknumber(L, -1); - groupcap.times[rating] = time; + groupcap.times.emplace_back(rating, time); // removes value, keeps key for next iteration lua_pop(L, 1); } @@ -2127,12 +2129,11 @@ bool read_tree_def(lua_State *L, int idx, const NodeDefManager *ndef, getstringfield(L, idx, "trunk_type", tree_def.trunk_type); getboolfield(L, idx, "thin_branches", tree_def.thin_branches); tree_def.fruit_chance = 0; + fruit = "air"; getstringfield(L, idx, "fruit", fruit); - if (!fruit.empty()) { + if (!fruit.empty()) getintfield(L, idx, "fruit_chance", tree_def.fruit_chance); - if (tree_def.fruit_chance) - tree_def.m_nodenames.push_back(fruit); - } + tree_def.m_nodenames.push_back(fruit); tree_def.explicit_seed = getintfield(L, idx, "seed", tree_def.seed); // Resolves the node IDs for trunk, leaves, leaves2 and fruit at runtime, @@ -2408,7 +2409,7 @@ void push_hud_element(lua_State *L, HudElement *elem) { lua_newtable(L); - lua_pushstring(L, es_HudElementType[(u8)elem->type].str); + lua_pushstring(L, enum_to_string(es_HudElementType, elem->type)); lua_setfield(L, -2, "type"); push_v2f(L, elem->pos); diff --git a/src/script/common/c_content.h b/src/script/common/c_content.h index 3c8780c1a..011aa355e 100644 --- a/src/script/common/c_content.h +++ b/src/script/common/c_content.h @@ -25,7 +25,6 @@ extern "C" { #include "itemgroup.h" #include "itemdef.h" #include "util/pointabilities.h" -#include "c_types.h" // We do an explicit path include because by default c_content.h include src/client/hud.h // prior to the src/hud.h, which is not good on server only build #include "../../hud.h" @@ -58,134 +57,101 @@ struct collisionMoveResult; namespace treegen { struct TreeDef; } extern struct EnumString es_TileAnimationType[]; +extern struct EnumString es_ItemType[]; +extern struct EnumString es_TouchInteractionMode[]; extern const std::array object_property_keys; -void read_content_features (lua_State *L, ContentFeatures &f, - int index); -void push_content_features (lua_State *L, - const ContentFeatures &c); +void read_content_features(lua_State *L, ContentFeatures &f, int index); +void push_content_features(lua_State *L, const ContentFeatures &c); -void push_nodebox (lua_State *L, - const NodeBox &box); -void push_palette (lua_State *L, - const std::vector *palette); +void push_nodebox(lua_State *L, const NodeBox &box); +void push_palette(lua_State *L, const std::vector *palette); -TileDef read_tiledef (lua_State *L, int index, - u8 drawtype, bool special); +TileDef read_tiledef(lua_State *L, int index, u8 drawtype, bool special); -void read_simplesoundspec (lua_State *L, int index, - SoundSpec &spec); -NodeBox read_nodebox (lua_State *L, int index); +void read_simplesoundspec(lua_State *L, int index, SoundSpec &spec); +NodeBox read_nodebox(lua_State *L, int index); -void read_server_sound_params (lua_State *L, int index, - ServerPlayingSound ¶ms); +void read_server_sound_params(lua_State *L, int index, + ServerPlayingSound ¶ms); -void push_dig_params (lua_State *L, - const DigParams ¶ms); -void push_hit_params (lua_State *L, - const HitParams ¶ms); +void push_dig_params(lua_State *L, const DigParams ¶ms); +void push_hit_params(lua_State *L, const HitParams ¶ms); -ItemStack read_item (lua_State *L, int index, IItemDefManager *idef); +ItemStack read_item(lua_State *L, int index, IItemDefManager *idef); struct TileAnimationParams read_animation_definition(lua_State *L, int index); -PointabilityType read_pointability_type (lua_State *L, int index); -Pointabilities read_pointabilities (lua_State *L, int index); -void push_pointability_type (lua_State *L, PointabilityType pointable); -void push_pointabilities (lua_State *L, const Pointabilities &pointabilities); +PointabilityType read_pointability_type(lua_State *L, int index); +Pointabilities read_pointabilities(lua_State *L, int index); +void push_pointability_type(lua_State *L, PointabilityType pointable); +void push_pointabilities(lua_State *L, const Pointabilities &pointabilities); -ToolCapabilities read_tool_capabilities (lua_State *L, int table); -void push_tool_capabilities (lua_State *L, - const ToolCapabilities &prop); -WearBarParams read_wear_bar_params (lua_State *L, int table); -void push_wear_bar_params (lua_State *L, - const WearBarParams &prop); +ToolCapabilities read_tool_capabilities(lua_State *L, int table); +void push_tool_capabilities(lua_State *L, const ToolCapabilities &prop); +WearBarParams read_wear_bar_params(lua_State *L, int table); +void push_wear_bar_params(lua_State *L, const WearBarParams &prop); -void read_item_definition (lua_State *L, int index, const ItemDefinition &default_def, - ItemDefinition &def); -void push_item_definition (lua_State *L, - const ItemDefinition &i); -void push_item_definition_full (lua_State *L, - const ItemDefinition &i); +void read_item_definition(lua_State *L, int index, + const ItemDefinition &default_def, ItemDefinition &def); +void push_item_definition(lua_State *L, const ItemDefinition &i); +void push_item_definition_full(lua_State *L, const ItemDefinition &i); -void read_object_properties (lua_State *L, int index, - ServerActiveObject *sao, - ObjectProperties *prop, - IItemDefManager *idef); +void read_object_properties(lua_State *L, int index, + ServerActiveObject *sao, + ObjectProperties *prop, + IItemDefManager *idef); -void push_object_properties (lua_State *L, - const ObjectProperties *prop); +void push_object_properties(lua_State *L, const ObjectProperties *prop); -void push_inventory_list (lua_State *L, - const InventoryList &invlist); -void push_inventory_lists (lua_State *L, - const Inventory &inv); -void read_inventory_list (lua_State *L, int tableindex, - Inventory *inv, const char *name, - IGameDef *gdef, int forcesize=-1); +void push_inventory_list(lua_State *L, const InventoryList &invlist); +void push_inventory_lists(lua_State *L, const Inventory &inv); +void read_inventory_list(lua_State *L, int tableindex, + Inventory *inv, const char *name, + IGameDef *gdef, int forcesize=-1); -MapNode readnode (lua_State *L, int index); -void pushnode (lua_State *L, const MapNode &n); +MapNode readnode(lua_State *L, int index); +void pushnode(lua_State *L, const MapNode &n); -void read_groups (lua_State *L, int index, - ItemGroupList &result); +void read_groups(lua_State *L, int index, ItemGroupList &result); -void push_groups (lua_State *L, - const ItemGroupList &groups); +void push_groups(lua_State *L, const ItemGroupList &groups); //TODO rename to "read_enum_field" -int getenumfield (lua_State *L, int table, - const char *fieldname, - const EnumString *spec, - int default_); +int getenumfield(lua_State *L, int table, const char *fieldname, + const EnumString *spec, int default_); -bool getflagsfield (lua_State *L, int table, - const char *fieldname, - FlagDesc *flagdesc, - u32 *flags, u32 *flagmask); +bool getflagsfield(lua_State *L, int table, const char *fieldname, + FlagDesc *flagdesc, u32 *flags, u32 *flagmask); -bool read_flags (lua_State *L, int index, - FlagDesc *flagdesc, - u32 *flags, u32 *flagmask); +bool read_flags(lua_State *L, int index, FlagDesc *flagdesc, + u32 *flags, u32 *flagmask); -void push_flags_string (lua_State *L, FlagDesc *flagdesc, - u32 flags, u32 flagmask); +void push_flags_string(lua_State *L, FlagDesc *flagdesc, + u32 flags, u32 flagmask); -u32 read_flags_table (lua_State *L, int table, - FlagDesc *flagdesc, u32 *flagmask); +u32 read_flags_table(lua_State *L, int table, + FlagDesc *flagdesc, u32 *flagmask); -void push_items (lua_State *L, - const std::vector &items); +void push_items(lua_State *L, const std::vector &items); -std::vector read_items (lua_State *L, - int index, - IGameDef* gdef); +std::vector read_items(lua_State *L, int index, IGameDef* gdef); -void push_simplesoundspec (lua_State *L, - const SoundSpec &spec); +void push_simplesoundspec(lua_State *L, const SoundSpec &spec); -bool string_to_enum (const EnumString *spec, - int &result, - const std::string &str); +bool read_noiseparams(lua_State *L, int index, NoiseParams *np); +void push_noiseparams(lua_State *L, NoiseParams *np); -bool read_noiseparams (lua_State *L, int index, - NoiseParams *np); -void push_noiseparams (lua_State *L, NoiseParams *np); +bool read_tree_def(lua_State *L, int idx, + const NodeDefManager *ndef, treegen::TreeDef &tree_def); -bool read_tree_def (lua_State *L, int idx, - const NodeDefManager *ndef, - treegen::TreeDef &tree_def); +void luaentity_get(lua_State *L,u16 id); -void luaentity_get (lua_State *L,u16 id); - -bool push_json_value (lua_State *L, - const Json::Value &value, - int nullindex); -void read_json_value (lua_State *L, Json::Value &root, - int index, u16 max_depth); +bool push_json_value(lua_State *L, const Json::Value &value, int nullindex); +void read_json_value(lua_State *L, Json::Value &root, int index, u16 max_depth); /*! * Pushes a Lua `pointed_thing` to the given Lua stack. @@ -195,13 +161,13 @@ void read_json_value (lua_State *L, Json::Value &root, void push_pointed_thing(lua_State *L, const PointedThing &pointed, bool csm = false, bool hitpoint = false); -void push_objectRef (lua_State *L, const u16 id); +void push_objectRef(lua_State *L, const u16 id); -void read_hud_element (lua_State *L, HudElement *elem); +void read_hud_element(lua_State *L, HudElement *elem); -void push_hud_element (lua_State *L, HudElement *elem); +void push_hud_element(lua_State *L, HudElement *elem); -bool read_hud_change (lua_State *L, HudElementStat &stat, HudElement *elem, void **value); +bool read_hud_change(lua_State *L, HudElementStat &stat, HudElement *elem, void **value); void push_collision_move_result(lua_State *L, const collisionMoveResult &res); diff --git a/src/script/common/c_converter.cpp b/src/script/common/c_converter.cpp index 0326cfb9b..076e8e847 100644 --- a/src/script/common/c_converter.cpp +++ b/src/script/common/c_converter.cpp @@ -16,6 +16,7 @@ extern "C" { #include "constants.h" #include #include +#include "common/c_types.h" #define CHECK_TYPE(index, name, type) do { \ @@ -386,7 +387,8 @@ bool is_color_table(lua_State *L, int index) aabb3f read_aabb3f(lua_State *L, int index, f32 scale) { - aabb3f box; + // default value for accidental/historical reasons + aabb3f box{-1.0f, -1.0f, -1.0f, 1.0f, 1.0f, 1.0f}; if(lua_istable(L, index)){ lua_rawgeti(L, index, 1); box.MinEdge.X = lua_tonumber(L, -1) * scale; diff --git a/src/script/common/c_converter.h b/src/script/common/c_converter.h index 1806e2b07..2b10fb083 100644 --- a/src/script/common/c_converter.h +++ b/src/script/common/c_converter.h @@ -15,26 +15,24 @@ #include #include "irrlichttypes_bloated.h" -#include "common/c_types.h" extern "C" { #include } -std::string getstringfield_default(lua_State *L, int table, - const char *fieldname, const std::string &default_); -bool getboolfield_default(lua_State *L, int table, - const char *fieldname, bool default_); -float getfloatfield_default(lua_State *L, int table, - const char *fieldname, float default_); -int getintfield_default(lua_State *L, int table, - const char *fieldname, int default_); +std::string getstringfield_default(lua_State *L, int table, + const char *fieldname, const std::string &default_); +bool getboolfield_default(lua_State *L, int table, + const char *fieldname, bool default_); +float getfloatfield_default(lua_State *L, int table, + const char *fieldname, float default_); +int getintfield_default(lua_State *L, int table, + const char *fieldname, int default_); bool check_field_or_nil(lua_State *L, int index, int type, const char *fieldname); template -bool getintfield(lua_State *L, int table, - const char *fieldname, T &result) +bool getintfield(lua_State *L, int table, const char *fieldname, T &result) { lua_getfield(L, table, fieldname); bool got = false; @@ -47,112 +45,77 @@ bool getintfield(lua_State *L, int table, } // Retrieve an v3s16 where all components are optional (falls back to default) -v3s16 getv3s16field_default(lua_State *L, int table, - const char *fieldname, v3s16 default_); -v3pos_t getv3pos_tfield_default(lua_State *L, int table, - const char *fieldname, v3pos_t default_); +v3s16 getv3s16field_default(lua_State *L, int table, + const char *fieldname, v3s16 default_); -bool getstringfield(lua_State *L, int table, - const char *fieldname, std::string &result); -bool getstringfield(lua_State *L, int table, - const char *fieldname, std::string_view &result); -size_t getstringlistfield(lua_State *L, int table, - const char *fieldname, - std::vector *result); -bool getboolfield(lua_State *L, int table, - const char *fieldname, bool &result); -bool getfloatfield(lua_State *L, int table, - const char *fieldname, float &result); -bool getfloatfield(lua_State *L, int table, - const char *fieldname, double &result); +bool getstringfield(lua_State *L, int table, + const char *fieldname, std::string &result); +bool getstringfield(lua_State *L, int table, + const char *fieldname, std::string_view &result); +size_t getstringlistfield(lua_State *L, int table, + const char *fieldname, std::vector *result); +bool getboolfield(lua_State *L, int table, + const char *fieldname, bool &result); +bool getfloatfield(lua_State *L, int table, + const char *fieldname, float &result); -void setstringfield(lua_State *L, int table, - const char *fieldname, const std::string &value); -void setintfield(lua_State *L, int table, - const char *fieldname, int value); -void setfloatfield(lua_State *L, int table, - const char *fieldname, float value); -void setboolfield(lua_State *L, int table, - const char *fieldname, bool value); +void setstringfield(lua_State *L, int table, + const char *fieldname, const std::string &value); +void setintfield(lua_State *L, int table, + const char *fieldname, int value); +void setfloatfield(lua_State *L, int table, + const char *fieldname, float value); +void setboolfield(lua_State *L, int table, + const char *fieldname, bool value); -v3f checkFloatPos (lua_State *L, int index); -v2f check_v2f (lua_State *L, int index); -v3f check_v3f (lua_State *L, int index); -v3s16 check_v3s16 (lua_State *L, int index); -v3pos_t check_v3pos (lua_State *L, int index); -v3opos_t check_v3o (lua_State *L, int index); -v3opos_t checkOposPos (lua_State *L, int index); +v3f checkFloatPos(lua_State *L, int index); +v2f check_v2f(lua_State *L, int index); +v3f check_v3f(lua_State *L, int index); +v3s16 check_v3s16(lua_State *L, int index); -v3f read_v3f (lua_State *L, int index); -v3opos_t read_v3o (lua_State *L, int index); -v2f read_v2f (lua_State *L, int index); -v2s16 read_v2s16 (lua_State *L, int index); -v2s32 read_v2s32 (lua_State *L, int index); -inline v2pos_t read_v2pos (lua_State *L, int index) { - #if USE_POS32 - return read_v2s32(L, index); - #else - return read_v2s16(L, index); - #endif -} +v3f read_v3f(lua_State *L, int index); +v2f read_v2f(lua_State *L, int index); +v2s16 read_v2s16(lua_State *L, int index); +v2s32 read_v2s32(lua_State *L, int index); +video::SColor read_ARGB8(lua_State *L, int index); +bool read_color(lua_State *L, int index, video::SColor *color); +bool is_color_table (lua_State *L, int index); -video::SColor read_ARGB8 (lua_State *L, int index); -bool read_color (lua_State *L, int index, - video::SColor *color); -bool is_color_table (lua_State *L, int index); - -aabb3f read_aabb3f (lua_State *L, int index, f32 scale); -v3s16 read_v3s16 (lua_State *L, int index); -v3s32 read_v3s32 (lua_State *L, int index); -v3pos_t read_v3pos (lua_State *L, int index); +/** + * Read a floating-point axis-aligned box from Lua. + * + * @param L the Lua state + * @param index the index of the Lua variable to read the box from. The + * variable must contain a table of the form + * {minx, miny, minz, maxx, maxy, maxz}. + * @param scale factor to scale the bounding box by + * + * @return the box corresponding to lua table + */ +aabb3f read_aabb3f(lua_State *L, int index, f32 scale); +v3s16 read_v3s16(lua_State *L, int index); std::vector read_aabb3f_vector (lua_State *L, int index, f32 scale); -size_t read_stringlist (lua_State *L, int index, - std::vector *result); +size_t read_stringlist(lua_State *L, int index, + std::vector *result); -void push_v2s16 (lua_State *L, v2s16 p); -void push_v2s32 (lua_State *L, v2s32 p); -inline void push_v2pos (lua_State *L, v2pos_t p) { - #if USE_POS32 - return push_v2s32(L, p); - #else - return push_v2s16(L, p); - #endif -} +void push_v2s16(lua_State *L, v2s16 p); +void push_v2s32(lua_State *L, v2s32 p); +void push_v2u32(lua_State *L, v2u32 p); +void push_v3s16(lua_State *L, v3s16 p); +void push_aabb3f(lua_State *L, aabb3f box, f32 divisor = 1.0f); +void push_ARGB8(lua_State *L, video::SColor color); +void pushFloatPos(lua_State *L, v3f p); +void push_v3f(lua_State *L, v3f p); +void push_v2f(lua_State *L, v2f p); +void push_aabb3f_vector(lua_State *L, const std::vector &boxes, + f32 divisor = 1.0f); -void push_v2u32 (lua_State *L, v2u32 p); -void push_v3s16 (lua_State *L, v3s16 p); -void push_v3s32 (lua_State *L, v3s32 p); -inline void push_v3pos (lua_State *L, v3pos_t p) { - #if USE_POS32 - return push_v3s32(L, p); - #else - return push_v3s16(L, p); - #endif -} -void push_aabb3f (lua_State *L, aabb3f box, f32 divisor = 1.0f); -void push_ARGB8 (lua_State *L, video::SColor color); -void pushFloatPos (lua_State *L, v3f p); -void pushFloatPos (lua_State *L, v3d p); -void push_v3f (lua_State *L, v3f p); -void push_v3f (lua_State *L, v3d p); -void push_v2f (lua_State *L, v2f p); -void push_aabb3f_vector (lua_State *L, const std::vector &boxes, - f32 divisor = 1.0f); - -void warn_if_field_exists(lua_State *L, int table, - const char *fieldname, - std::string_view name, - std::string_view message); +void warn_if_field_exists(lua_State *L, int table, const char *fieldname, + std::string_view name, std::string_view message); size_t write_array_slice_float(lua_State *L, int table_index, float *data, - v3u16 data_size, v3u16 slice_offset, v3u16 slice_size); - -v3pos_t check_v3pos (lua_State *L, int index); -v2pos_t read_v2pos (lua_State *L, int index); -v3pos_t read_v3pos (lua_State *L, int index); -void push_v3pos (lua_State *L, v3pos_t p); - + v3u16 data_size, v3u16 slice_offset, v3u16 slice_size); // This must match the implementation in builtin/game/misc_s.lua // Note that this returns a floating point result as Lua integers are 32-bit @@ -162,3 +125,53 @@ inline lua_Number hash_node_position(v3s16 pos) | (((s64)pos.Y + 0x8000L) << 16) | ((s64)pos.X + 0x8000L); } + + + + + +// fm: +v3pos_t getv3pos_tfield_default( + lua_State *L, int table, const char *fieldname, v3pos_t default_); +bool getfloatfield(lua_State *L, int table, const char *fieldname, double &result); +v3pos_t check_v3pos(lua_State *L, int index); +v3opos_t check_v3o(lua_State *L, int index); +v3opos_t checkOposPos(lua_State *L, int index); +v3opos_t read_v3o(lua_State *L, int index); +inline v2pos_t read_v2pos(lua_State *L, int index) +{ +#if USE_POS32 +return read_v2s32(L, index); +#else +return read_v2s16(L, index); +#endif +} +v3s32 read_v3s32(lua_State *L, int index); +v3pos_t read_v3pos(lua_State *L, int index); + +inline void push_v2pos(lua_State *L, v2pos_t p) +{ +#if USE_POS32 +return push_v2s32(L, p); +#else +return push_v2s16(L, p); +#endif +} +void push_v3s32(lua_State *L, v3s32 p); +inline void push_v3pos(lua_State *L, v3pos_t p) +{ +#if USE_POS32 +return push_v3s32(L, p); +#else +return push_v3s16(L, p); +#endif +} +void pushFloatPos(lua_State *L, v3d p); +void push_v3f(lua_State *L, v3d p); + +v3pos_t check_v3pos(lua_State *L, int index); +v2pos_t read_v2pos(lua_State *L, int index); +v3pos_t read_v3pos(lua_State *L, int index); +void push_v3pos(lua_State *L, v3pos_t p); +// === + diff --git a/src/script/common/c_internal.cpp b/src/script/common/c_internal.cpp index 1539c807b..232de2330 100644 --- a/src/script/common/c_internal.cpp +++ b/src/script/common/c_internal.cpp @@ -3,12 +3,14 @@ // Copyright (C) 2013 celeron55, Perttu Ahola #include "common/c_internal.h" +#include "cpp_api/s_security.h" #include "util/numeric.h" #include "debug.h" #include "log.h" #include "porting.h" #include "settings.h" #include // std::find +#include "common/c_types.h" // LuaError std::string script_get_backtrace(lua_State *L) { @@ -185,12 +187,9 @@ void log_deprecated(lua_State *L, std::string_view message, int stack_depth, boo void call_string_dump(lua_State *L, int idx) { - // Retrieve string.dump from insecure env to avoid it being tampered with - lua_rawgeti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_GLOBALS_BACKUP); - if (!lua_isnil(L, -1)) - lua_getfield(L, -1, "string"); - else - lua_getglobal(L, "string"); + // Retrieve string.dump from untampered env + ScriptApiSecurity::getGlobalsBackup(L); + lua_getfield(L, -1, "string"); lua_getfield(L, -1, "dump"); lua_remove(L, -2); // remove _G lua_remove(L, -2); // remove 'string' table diff --git a/src/script/common/c_internal.h b/src/script/common/c_internal.h index e0b30044b..e5b33f9eb 100644 --- a/src/script/common/c_internal.h +++ b/src/script/common/c_internal.h @@ -19,7 +19,7 @@ extern "C" { } #include "config.h" -#include "common/c_types.h" +#include "util/enum_string.h" /* @@ -39,6 +39,7 @@ enum { #endif CUSTOM_RIDX_SCRIPTAPI, + /// @warning don't use directly, `ScriptApiSecurity` has wrappers CUSTOM_RIDX_GLOBALS_BACKUP, CUSTOM_RIDX_CURRENT_MOD_NAME, CUSTOM_RIDX_ERROR_HANDLER, diff --git a/src/script/common/c_packer.cpp b/src/script/common/c_packer.cpp index 0a4045e1b..7083e3f4a 100644 --- a/src/script/common/c_packer.cpp +++ b/src/script/common/c_packer.cpp @@ -13,6 +13,7 @@ #include "log.h" #include "debug.h" #include "threading/mutex_auto_lock.h" +#include "common/c_types.h" // LuaError extern "C" { #include diff --git a/src/script/common/c_types.cpp b/src/script/common/c_types.cpp deleted file mode 100644 index 57d6c4244..000000000 --- a/src/script/common/c_types.cpp +++ /dev/null @@ -1,27 +0,0 @@ -// Luanti -// SPDX-License-Identifier: LGPL-2.1-or-later -// Copyright (C) 2013 celeron55, Perttu Ahola - -#include - -#include "common/c_types.h" -#include "common/c_internal.h" -#include "itemdef.h" - - -struct EnumString es_ItemType[] = - { - {ITEM_NONE, "none"}, - {ITEM_NODE, "node"}, - {ITEM_CRAFT, "craft"}, - {ITEM_TOOL, "tool"}, - {0, NULL}, - }; - -struct EnumString es_TouchInteractionMode[] = - { - {LONG_DIG_SHORT_PLACE, "long_dig_short_place"}, - {SHORT_DIG_LONG_PLACE, "short_dig_long_place"}, - {TouchInteractionMode_USER, "user"}, - {0, NULL}, - }; diff --git a/src/script/common/c_types.h b/src/script/common/c_types.h index 6560524b8..160b29eb5 100644 --- a/src/script/common/c_types.h +++ b/src/script/common/c_types.h @@ -9,15 +9,8 @@ extern "C" { } #include - #include "exceptions.h" -struct EnumString -{ - int num; - const char *str; -}; - class StackUnroller { private: @@ -41,7 +34,3 @@ class LuaError : public ModError public: LuaError(const std::string &s) : ModError(s) {} }; - - -extern EnumString es_ItemType[]; -extern EnumString es_TouchInteractionMode[]; diff --git a/src/script/cpp_api/CMakeLists.txt b/src/script/cpp_api/CMakeLists.txt index d9d157d5f..123364141 100644 --- a/src/script/cpp_api/CMakeLists.txt +++ b/src/script/cpp_api/CMakeLists.txt @@ -16,6 +16,8 @@ set(common_SCRIPT_CPP_API_SRCS set(client_SCRIPT_CPP_API_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/s_client.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/s_client_common.cpp ${CMAKE_CURRENT_SOURCE_DIR}/s_mainmenu.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/s_pause_menu.cpp PARENT_SCOPE) diff --git a/src/script/cpp_api/s_async.cpp b/src/script/cpp_api/s_async.cpp index a88513fbd..a9a31f86d 100644 --- a/src/script/cpp_api/s_async.cpp +++ b/src/script/cpp_api/s_async.cpp @@ -14,10 +14,14 @@ extern "C" { #include "server.h" #include "s_async.h" #include "log.h" +#include "config.h" #include "filesys.h" #include "porting.h" #include "common/c_internal.h" #include "common/c_packer.h" +#if CHECK_CLIENT_BUILD() +#include "script/scripting_mainmenu.h" +#endif #include "lua_api/l_base.h" /******************************************************************************/ @@ -256,7 +260,6 @@ bool AsyncEngine::prepareEnvironment(lua_State* L, int top) return true; } -/******************************************************************************/ AsyncWorkerThread::AsyncWorkerThread(AsyncEngine* jobDispatcher, const std::string &name) : ScriptApiBase(ScriptingType::Async), @@ -270,6 +273,8 @@ AsyncWorkerThread::AsyncWorkerThread(AsyncEngine* jobDispatcher, if (g_settings->getBool("secure.enable_security")) initializeSecurity(); + } else { + initializeSecurity(); } // Prepare job lua environment @@ -287,13 +292,27 @@ AsyncWorkerThread::AsyncWorkerThread(AsyncEngine* jobDispatcher, lua_pop(L, 1); } -/******************************************************************************/ AsyncWorkerThread::~AsyncWorkerThread() { sanity_check(!isRunning()); } -/******************************************************************************/ +bool AsyncWorkerThread::checkPathInternal(const std::string &abs_path, + bool write_required, bool *write_allowed) +{ + auto *L = getStack(); + // dispatch to the right implementation. this should be refactored some day... + if (jobDispatcher->server) { + return ScriptApiSecurity::checkPathWithGamedef(L, abs_path, write_required, write_allowed); + } else { +#if CHECK_CLIENT_BUILD() + return MainMenuScripting::checkPathAccess(abs_path, write_required, write_allowed); +#else + FATAL_ERROR("should never get here"); +#endif + } +} + void* AsyncWorkerThread::run() { if (isErrored) diff --git a/src/script/cpp_api/s_async.h b/src/script/cpp_api/s_async.h index 3dc339821..d2a6913ef 100644 --- a/src/script/cpp_api/s_async.h +++ b/src/script/cpp_api/s_async.h @@ -50,11 +50,14 @@ class AsyncWorkerThread : public Thread, public: virtual ~AsyncWorkerThread(); - void *run(); + void *run() override; protected: AsyncWorkerThread(AsyncEngine* jobDispatcher, const std::string &name); + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override; + private: AsyncEngine *jobDispatcher = nullptr; bool isErrored = false; diff --git a/src/script/cpp_api/s_base.cpp b/src/script/cpp_api/s_base.cpp index f70657500..c3804a612 100644 --- a/src/script/cpp_api/s_base.cpp +++ b/src/script/cpp_api/s_base.cpp @@ -203,9 +203,13 @@ void ScriptApiBase::checkSetByBuiltin() { lua_State *L = getStack(); - if (m_gamedef) { - CHECK(CUSTOM_RIDX_READ_VECTOR, "read_vector"); - CHECK(CUSTOM_RIDX_PUSH_VECTOR, "push_vector"); + CHECK(CUSTOM_RIDX_READ_VECTOR, "read_vector"); + CHECK(CUSTOM_RIDX_PUSH_VECTOR, "push_vector"); + + if (getType() == ScriptingType::Server || + (getType() == ScriptingType::Async && m_gamedef) || + getType() == ScriptingType::Emerge || + getType() == ScriptingType::Client) { CHECK(CUSTOM_RIDX_READ_NODE, "read_node"); CHECK(CUSTOM_RIDX_PUSH_NODE, "push_node"); } @@ -225,37 +229,6 @@ std::string ScriptApiBase::getCurrentModNameInsecure(lua_State *L) return ret; } -std::string ScriptApiBase::getCurrentModName(lua_State *L) -{ - auto script = ModApiBase::getScriptApiBase(L); - if (script->getType() == ScriptingType::Async || - script->getType() == ScriptingType::Emerge) - { - // As a precaution never return a "secure" mod name in the async and - // emerge environment, because these currently do not track mod origins - // in a spoof-safe way (see l_register_async_dofile and l_register_mapgen_script). - return ""; - } - - // We have to make sure that this function is being called directly by - // a mod, otherwise a malicious mod could override a function and - // steal its return value. (e.g. request_insecure_environment) - lua_Debug info; - - // Make sure there's only one item below this function on the stack... - if (lua_getstack(L, 2, &info)) - return ""; - FATAL_ERROR_IF(!lua_getstack(L, 1, &info), "lua_getstack() failed"); - FATAL_ERROR_IF(!lua_getinfo(L, "S", &info), "lua_getinfo() failed"); - - // ...and that that item is the main file scope. - if (strcmp(info.what, "main") != 0) - return ""; - - // at this point we can trust this value: - return getCurrentModNameInsecure(L); -} - void ScriptApiBase::loadMod(const std::string &script_path, const std::string &mod_name) { @@ -273,7 +246,7 @@ void ScriptApiBase::loadScript(const std::string &script_path) int error_handler = PUSH_ERROR_HANDLER(L); bool ok; - if (m_secure) { + if (ScriptApiSecurity::isSecure(L)) { ok = ScriptApiSecurity::safeLoadFile(L, script_path.c_str()); } else { ok = !luaL_loadfile(L, script_path.c_str()); diff --git a/src/script/cpp_api/s_base.h b/src/script/cpp_api/s_base.h index 3d6f2c1cd..c8f6da097 100644 --- a/src/script/cpp_api/s_base.h +++ b/src/script/cpp_api/s_base.h @@ -18,7 +18,6 @@ extern "C" { } #include "irrlichttypes.h" -#include "common/c_types.h" #include "common/c_internal.h" #include "debug.h" #include "config.h" @@ -50,7 +49,8 @@ enum class ScriptingType: u8 { Client, MainMenu, Server, - Emerge + Emerge, + PauseMenu, }; class Server; @@ -104,17 +104,15 @@ public: void setOriginDirect(const char *origin); void setOriginFromTableRaw(int index, const char *fxn); - // Returns the currently running mod, only during init time. - // The reason this is "insecure" is that mods can mess with each others code, - // so the boundary of who is responsible is fuzzy. - // Note: checking this against BUILTIN_MOD_NAME is always safe (not spoofable). - // returns "" on error + /** + * Returns the currently running mod, only during init time. + * The reason this is insecure is that mods can mess with each others code, + * so the boundary of who is responsible is fuzzy. + * @note Checking this against BUILTIN_MOD_NAME is always safe (not spoofable). + * @note See ScriptApiSecurity::getCurrentModName() for the secure equivalent. + * @return mod name or "" on error + */ static std::string getCurrentModNameInsecure(lua_State *L); - // Returns the currently running mod, only during init time. - // This checks the Lua stack to only permit direct calls in the file - // scope. That way it is assured that it's really the mod it claims to be. - // returns "" on error - static std::string getCurrentModName(lua_State *L); #if !CHECK_CLIENT_BUILD() inline void clientOpenLibs(lua_State *L) { assert(false); } @@ -176,7 +174,7 @@ public: std::recursive_mutex m_luastackmutex; protected: std::string m_last_run_mod; - bool m_secure = false; + #ifdef SCRIPTAPI_LOCK_DEBUG int m_lock_recursion_count{}; std::thread::id m_owning_thread; diff --git a/src/script/cpp_api/s_client.cpp b/src/script/cpp_api/s_client.cpp index 772bc2412..f383d8172 100644 --- a/src/script/cpp_api/s_client.cpp +++ b/src/script/cpp_api/s_client.cpp @@ -126,34 +126,6 @@ void ScriptApiClient::environment_step(float dtime) } } -void ScriptApiClient::on_formspec_input(const std::string &formname, - const StringMap &fields) -{ - SCRIPTAPI_PRECHECKHEADER - - // Get core.registered_on_chat_messages - lua_getglobal(L, "core"); - lua_getfield(L, -1, "registered_on_formspec_input"); - // Call callbacks - // param 1 - lua_pushstring(L, formname.c_str()); - // param 2 - lua_newtable(L); - StringMap::const_iterator it; - for (it = fields.begin(); it != fields.end(); ++it) { - const std::string &name = it->first; - const std::string &value = it->second; - lua_pushstring(L, name.c_str()); - lua_pushlstring(L, value.c_str(), value.size()); - lua_settable(L, -3); - } - try { - runCallbacks(2, RUN_CALLBACKS_MODE_OR_SC); - } catch (LuaError &e) { - getClient()->setFatalError(e); - } -} - bool ScriptApiClient::on_dignode(v3s16 p, MapNode node) { SCRIPTAPI_PRECHECKHEADER diff --git a/src/script/cpp_api/s_client.h b/src/script/cpp_api/s_client.h index 89a065752..2308e13f4 100644 --- a/src/script/cpp_api/s_client.h +++ b/src/script/cpp_api/s_client.h @@ -35,7 +35,6 @@ public: void on_damage_taken(int32_t damage_amount); void on_hp_modification(int32_t newhp); void environment_step(float dtime); - void on_formspec_input(const std::string &formname, const StringMap &fields); bool on_dignode(v3s16 p, MapNode node); bool on_punchnode(v3s16 p, MapNode node); diff --git a/src/script/cpp_api/s_client_common.cpp b/src/script/cpp_api/s_client_common.cpp new file mode 100644 index 000000000..7e5909fae --- /dev/null +++ b/src/script/cpp_api/s_client_common.cpp @@ -0,0 +1,39 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 celeron55, Perttu Ahola +// Copyright (C) 2017 nerzhul, Loic Blot +// Copyright (C) 2025 grorp + +#include "s_client_common.h" +#include "s_internal.h" +#include "client/client.h" + +bool ScriptApiClientCommon::on_formspec_input(const std::string &formname, + const StringMap &fields) +{ + SCRIPTAPI_PRECHECKHEADER + + // Get core.registered_on_formspec_inputs + lua_getglobal(L, "core"); + lua_getfield(L, -1, "registered_on_formspec_input"); + // Call callbacks + // param 1 + lua_pushstring(L, formname.c_str()); + // param 2 + lua_newtable(L); + StringMap::const_iterator it; + for (it = fields.begin(); it != fields.end(); ++it) { + const std::string &name = it->first; + const std::string &value = it->second; + lua_pushstring(L, name.c_str()); + lua_pushlstring(L, value.c_str(), value.size()); + lua_settable(L, -3); + } + try { + runCallbacks(2, RUN_CALLBACKS_MODE_OR_SC); + } catch (LuaError &e) { + getClient()->setFatalError(e); + return true; + } + return readParam(L, -1); +} diff --git a/src/script/cpp_api/s_client_common.h b/src/script/cpp_api/s_client_common.h new file mode 100644 index 000000000..b75ce53e1 --- /dev/null +++ b/src/script/cpp_api/s_client_common.h @@ -0,0 +1,16 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 celeron55, Perttu Ahola +// Copyright (C) 2017 nerzhul, Loic Blot +// Copyright (C) 2025 grorp + +#pragma once + +#include "cpp_api/s_base.h" +#include "util/string.h" + +class ScriptApiClientCommon : virtual public ScriptApiBase +{ +public: + bool on_formspec_input(const std::string &formname, const StringMap &fields); +}; diff --git a/src/script/cpp_api/s_internal.h b/src/script/cpp_api/s_internal.h index 941fe6fa3..82e956531 100644 --- a/src/script/cpp_api/s_internal.h +++ b/src/script/cpp_api/s_internal.h @@ -24,6 +24,7 @@ #endif */ #include "threading/mutex_auto_lock.h" +#include "common/c_types.h" #ifdef SCRIPTAPI_LOCK_DEBUG #include diff --git a/src/script/cpp_api/s_pause_menu.cpp b/src/script/cpp_api/s_pause_menu.cpp new file mode 100644 index 000000000..9f4cdfb94 --- /dev/null +++ b/src/script/cpp_api/s_pause_menu.cpp @@ -0,0 +1,20 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#include "s_pause_menu.h" +#include "cpp_api/s_internal.h" + +void ScriptApiPauseMenu::open_settings() +{ + SCRIPTAPI_PRECHECKHEADER + + int error_handler = PUSH_ERROR_HANDLER(L); + + lua_getglobal(L, "core"); + lua_getfield(L, -1, "open_settings"); + + PCALL_RES(lua_pcall(L, 0, 0, error_handler)); + + lua_pop(L, 2); // Pop core, error handler +} diff --git a/src/script/cpp_api/s_pause_menu.h b/src/script/cpp_api/s_pause_menu.h new file mode 100644 index 000000000..b8feac81a --- /dev/null +++ b/src/script/cpp_api/s_pause_menu.h @@ -0,0 +1,13 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#pragma once + +#include "cpp_api/s_base.h" + +class ScriptApiPauseMenu : virtual public ScriptApiBase +{ +public: + void open_settings(); +}; diff --git a/src/script/cpp_api/s_security.cpp b/src/script/cpp_api/s_security.cpp index b23e94cd2..685403b4b 100644 --- a/src/script/cpp_api/s_security.cpp +++ b/src/script/cpp_api/s_security.cpp @@ -66,6 +66,7 @@ void ScriptApiSecurity::initializeSecurity() "core", "collectgarbage", "DIR_DELIM", + "PLATFORM", "error", "getfenv", "getmetatable", @@ -260,6 +261,8 @@ void ScriptApiSecurity::initializeSecurity() lua_pop(L, 1); // Pop empty string } +#if CHECK_CLIENT_BUILD() + void ScriptApiSecurity::initializeSecurityClient() { static const char *whitelist[] = { @@ -375,6 +378,8 @@ void ScriptApiSecurity::initializeSecurityClient() setLuaEnv(L, thread); } +#endif + int ScriptApiSecurity::getThread(lua_State *L) { #if LUA_VERSION_NUM <= 501 @@ -408,19 +413,24 @@ void ScriptApiSecurity::setLuaEnv(lua_State *L, int thread) bool ScriptApiSecurity::isSecure(lua_State *L) { -#if CHECK_CLIENT_BUILD() - auto script = ModApiBase::getScriptApiBase(L); - // CSM keeps no globals backup but is always secure - if (script->getType() == ScriptingType::Client) - return true; -#endif - lua_rawgeti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_GLOBALS_BACKUP); - bool secure = !lua_isnil(L, -1); - lua_pop(L, 1); - return secure; + auto *script = ModApiBase::getScriptApiBase(L); + if (auto *sec = dynamic_cast(script)) + return sec->m_secure; + return false; } -bool ScriptApiSecurity::safeLoadString(lua_State *L, const std::string &code, const char *chunk_name) +void ScriptApiSecurity::getGlobalsBackup(lua_State *L) +{ + if (!ScriptApiSecurity::isSecure(L)) { + lua_getglobal(L, "_G"); + return; + } + lua_rawgeti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_GLOBALS_BACKUP); + // We cannot fulfill the callers wish securely if they don't exist. + FATAL_ERROR_IF(lua_isnil(L, -1), "Globals backup requested, but it is not available. Cannot proceed securely."); +} + +bool ScriptApiSecurity::safeLoadString(lua_State *L, std::string_view code, const char *chunk_name) { if (code.size() > 0 && code[0] == LUA_SIGNATURE[0]) { lua_pushliteral(L, "Bytecode prohibited when mod security is enabled."); @@ -441,7 +451,7 @@ bool ScriptApiSecurity::safeLoadFile(lua_State *L, const char *path, const char fp = stdin; chunk_name = const_cast("=stdin"); } else { - fp = fopen(path, "rb"); + fp = std::fopen(path, "rb"); if (!fp) { lua_pushfstring(L, "%s: %s", path, strerror(errno)); return false; @@ -500,7 +510,35 @@ bool ScriptApiSecurity::safeLoadFile(lua_State *L, const char *path, const char } -bool checkModNameWhitelisted(const std::string &mod_name, const std::string &setting) +std::string ScriptApiSecurity::getCurrentModName(lua_State *L) +{ + auto *script = ModApiBase::getScriptApiBase(L); + + auto *sec = dynamic_cast(script); + if (sec && !sec->modNamesAreTrusted()) + return ""; + + // We have to make sure that this function is being called directly by + // a mod, otherwise a malicious mod could override a function and + // steal its return value. (e.g. request_insecure_environment) + lua_Debug info; + + // Make sure there's only one item below this function on the stack... + if (lua_getstack(L, 2, &info)) + return ""; + FATAL_ERROR_IF(!lua_getstack(L, 1, &info), "lua_getstack() failed"); + FATAL_ERROR_IF(!lua_getinfo(L, "S", &info), "lua_getinfo() failed"); + + // ...and that that item is the main file scope. + if (strcmp(info.what, "main") != 0) + return ""; + + // at this point we can trust this value: + return getCurrentModNameInsecure(L); +} + + +static bool checkModNameWhitelisted(const std::string &mod_name, const std::string &setting) { assert(str_starts_with(setting, "secure.")); @@ -517,7 +555,7 @@ bool checkModNameWhitelisted(const std::string &mod_name, const std::string &set bool ScriptApiSecurity::checkWhitelisted(lua_State *L, const std::string &setting) { - std::string mod_name = ScriptApiBase::getCurrentModName(L); + std::string mod_name = getCurrentModName(L); return checkModNameWhitelisted(mod_name, setting); } @@ -528,93 +566,95 @@ bool ScriptApiSecurity::checkPath(lua_State *L, const char *path, if (write_allowed) *write_allowed = false; - std::string str; // Transient + // We can't use AbsolutePath() here since we want to allow creating paths that + // do not yet exist. But RemoveRelativePathComponents() would also be incorrect + // since that wouldn't normalize subpaths that *do* exist. + // This is required so that comparisons with other normalized paths work correctly. + std::string abs_path = fs::AbsolutePathPartial(path); + tracestream << "ScriptApiSecurity: path \"" << path << "\" resolved to \"" + << abs_path << "\"" << std::endl; - std::string abs_path = fs::AbsolutePath(path); - - if (!abs_path.empty()) { - // Don't allow accessing the settings file - str = fs::AbsolutePath(g_settings_path); - if (str == abs_path) return false; - } - - // If we couldn't find the absolute path (path doesn't exist) then - // try removing the last components until it works (to allow - // non-existent files/folders for mkdir). - std::string cur_path = path; - std::string removed; - while (abs_path.empty() && !cur_path.empty()) { - std::string component; - cur_path = fs::RemoveLastPathComponent(cur_path, &component); - if (component == "..") { - // Parent components can't be allowed or we could allow something like - // /home/user/minetest/worlds/foo/noexist/../../../../../../etc/passwd. - // If we have previous non-relative elements in the path we might be - // able to remove them so that things like worlds/foo/noexist/../auth.txt - // could be allowed, but those paths will be interpreted as nonexistent - // by the operating system anyways. - return false; - } - removed = component + (removed.empty() ? "" : DIR_DELIM + removed); - abs_path = fs::AbsolutePath(cur_path); - } if (abs_path.empty()) return false; - // Add the removed parts back so that you can't, eg, create a - // directory in worldmods if worldmods doesn't exist. - if (!removed.empty()) - abs_path += DIR_DELIM + removed; - // Get gamedef from registry - ScriptApiBase *script = ModApiBase::getScriptApiBase(L); - const IGameDef *gamedef = script->getGameDef(); + // Note: abs_path can be a valid path while path isn't, e.g. + // abs_path = "/home/user/.luanti" + // path = "/home/user/.luanti/noexist/.." + // Letting this through the sandbox isn't a concern as any actual attempts to + // use the path would fail. + + // Ask the environment-specific implementation + auto *sec = ModApiBase::getScriptApi(L); + return sec->checkPathInternal(abs_path, write_required, write_allowed); +} + + +bool ScriptApiSecurity::checkPathWithGamedef(lua_State *L, + const std::string &abs_path, bool write_required, bool *write_allowed) +{ + const auto &set_write_allowed = [&] (bool v) { + if (write_allowed) + *write_allowed = v; + }; + std::string str; // Transient + + auto *gamedef = ModApiBase::getGameDef(L); if (!gamedef) return false; + assert(!abs_path.empty()); + + if (!g_settings_path.empty()) { + // Don't allow accessing the settings file + str = fs::AbsolutePathPartial(g_settings_path); + if (str == abs_path) + return false; + } + // Get mod name std::string mod_name = ScriptApiBase::getCurrentModNameInsecure(L); if (!mod_name.empty()) { // Builtin can access anything if (mod_name == BUILTIN_MOD_NAME) { - if (write_allowed) *write_allowed = true; + set_write_allowed(true); return true; } + } - // Allow paths in mod path - // Don't bother if write access isn't important, since it will be handled later - if (write_required || write_allowed != NULL) { - const ModSpec *mod = gamedef->getModSpec(mod_name); - if (mod) { - str = fs::AbsolutePath(mod->path); - if (!str.empty() && fs::PathStartsWith(abs_path, str)) { - // `mod_name` cannot be trusted here, so we catch the scenarios where this becomes a problem: - bool is_trusted = checkModNameWhitelisted(mod_name, "secure.trusted_mods") || - checkModNameWhitelisted(mod_name, "secure.http_mods"); - std::string filename = lowercase(fs::GetFilenameFromPath(abs_path.c_str())); - // By writing to any of these a malicious mod could turn itself into - // an existing trusted mod by renaming or becoming a modpack. - bool is_dangerous_file = filename == "mod.conf" || - filename == "modpack.conf" || - filename == "modpack.txt"; - if (write_required) { - if (is_trusted) { - throw LuaError( - "Unable to write to a trusted or http mod's directory. " - "For data storage consider minetest.get_mod_data_path() or minetest.get_worldpath() instead."); - } else if (is_dangerous_file) { - throw LuaError( - "Unable to write to special file for security reasons"); - } else { - const char *message = - "Writing to mod directories is deprecated, as any changes " - "will be overwritten when updating content. " - "For data storage consider minetest.get_mod_data_path() or minetest.get_worldpath() instead."; - log_deprecated(L, message, 1); - } + // Allow paths in mod path + // Don't bother if write access isn't important, since it will be handled later + if (write_required || write_allowed) { + const ModSpec *mod = gamedef->getModSpec(mod_name); + if (mod) { + str = fs::AbsolutePath(mod->path); + if (!str.empty() && fs::PathStartsWith(abs_path, str)) { + // `mod_name` cannot be trusted here, so we catch the scenarios where this becomes a problem: + bool is_trusted = checkModNameWhitelisted(mod_name, "secure.trusted_mods") || + checkModNameWhitelisted(mod_name, "secure.http_mods"); + std::string filename = lowercase(fs::GetFilenameFromPath(abs_path.c_str())); + // By writing to any of these a malicious mod could turn itself into + // an existing trusted mod by renaming or becoming a modpack. + bool is_dangerous_file = filename == "mod.conf" || + filename == "modpack.conf" || + filename == "modpack.txt"; + if (write_required) { + if (is_trusted) { + throw LuaError( + "Unable to write to a trusted or http mod's directory. " + "For data storage consider minetest.get_mod_data_path() or minetest.get_worldpath() instead."); + } else if (is_dangerous_file) { + throw LuaError( + "Unable to write to special file for security reasons"); + } else { + const char *message = + "Writing to mod directories is deprecated, as any changes " + "will be overwritten when updating content. " + "For data storage consider minetest.get_mod_data_path() or minetest.get_worldpath() instead."; + log_deprecated(L, message, 1); } - if (write_allowed) *write_allowed = !is_trusted && !is_dangerous_file; - return true; } + set_write_allowed(!is_trusted && !is_dangerous_file); + return true; } } } @@ -624,9 +664,8 @@ bool ScriptApiSecurity::checkPath(lua_State *L, const char *path, const SubgameSpec *game_spec = gamedef->getGameSpec(); if (game_spec && !game_spec->path.empty()) { str = fs::AbsolutePath(game_spec->path); - if (!str.empty() && fs::PathStartsWith(abs_path, str)) { + if (!str.empty() && fs::PathStartsWith(abs_path, str)) return true; - } } } @@ -635,16 +674,15 @@ bool ScriptApiSecurity::checkPath(lua_State *L, const char *path, const std::vector &mods = gamedef->getMods(); for (const ModSpec &mod : mods) { str = fs::AbsolutePath(mod.path); - if (!str.empty() && fs::PathStartsWith(abs_path, str)) { + if (!str.empty() && fs::PathStartsWith(abs_path, str)) return true; - } } } // Allow read/write access to all mod common dirs str = fs::AbsolutePath(gamedef->getModDataPath()); if (!str.empty() && fs::PathStartsWith(abs_path, str)) { - if (write_allowed) *write_allowed = true; + set_write_allowed(true); return true; } @@ -662,12 +700,11 @@ bool ScriptApiSecurity::checkPath(lua_State *L, const char *path, } // Allow all other paths in world path if (fs::PathStartsWith(abs_path, str)) { - if (write_allowed) *write_allowed = true; + set_write_allowed(true); return true; } } - // Default to disallowing return false; } @@ -736,7 +773,7 @@ int ScriptApiSecurity::sl_g_loadfile(lua_State *L) std::string path = readParam(L, 1); const std::string *contents = script->getClient()->getModFile(path); if (!contents) { - std::string error_msg = "Coudln't find script called: " + path; + std::string error_msg = "Couldn't find script called: " + path; lua_pushnil(L); lua_pushstring(L, error_msg.c_str()); return 2; diff --git a/src/script/cpp_api/s_security.h b/src/script/cpp_api/s_security.h index 91d5dce54..1241b0b06 100644 --- a/src/script/cpp_api/s_security.h +++ b/src/script/cpp_api/s_security.h @@ -12,10 +12,12 @@ throw LuaError(std::string("Mod security: Blocked attempted ") + \ (write_required ? "write to " : "read from ") + path); \ } + #define CHECK_SECURE_PATH(L, path, write_required) \ if (ScriptApiSecurity::isSecure(L)) { \ - CHECK_SECURE_PATH_INTERNAL(L, path, write_required, NULL); \ + CHECK_SECURE_PATH_INTERNAL(L, path, write_required, nullptr); \ } + #define CHECK_SECURE_PATH_POSSIBLE_WRITE(L, path, ptr) \ if (ScriptApiSecurity::isSecure(L)) { \ CHECK_SECURE_PATH_INTERNAL(L, path, false, ptr); \ @@ -27,19 +29,65 @@ class ScriptApiSecurity : virtual public ScriptApiBase public: // Sets up security on the ScriptApi's Lua state void initializeSecurity(); +#if CHECK_CLIENT_BUILD() void initializeSecurityClient(); +#else + inline void initializeSecurityClient() { assert(0); } +#endif + // Checks if the Lua state has been secured static bool isSecure(lua_State *L); - // Loads a string as Lua code safely (doesn't allow bytecode). - static bool safeLoadString(lua_State *L, const std::string &code, const char *chunk_name); - // Loads a file as Lua code safely (doesn't allow bytecode). - static bool safeLoadFile(lua_State *L, const char *path, const char *display_name = NULL); - // Check if mod is whitelisted in the given setting - // This additionally checks that the mod's main file scope is executing. + // Leaves the untampered globals (table) on top of the stack + static void getGlobalsBackup(lua_State *L); + + /// Loads a string as Lua code safely (doesn't allow bytecode). + static bool safeLoadString(lua_State *L, std::string_view code, const char *chunk_name); + /// Loads a file as Lua code safely (doesn't allow bytecode). + /// @warning path is not validated in any way + static bool safeLoadFile(lua_State *L, const char *path, const char *display_name = nullptr); + + /** + * Returns the currently running mod, only during init time. + * This checks the Lua stack to only permit direct calls in the file + * scope. That way it is assured that it's really the mod it claims to be. + * @return mod name or "" on error + */ + static std::string getCurrentModName(lua_State *L); + /// Check if mod is whitelisted in the given setting. + /// This additionally does main scope checks (see above method). + /// @note check is performed even in non-secured Lua state static bool checkWhitelisted(lua_State *L, const std::string &setting); - // Checks if mods are allowed to read (and optionally write) to the path + + /// Checks if mods are allowed to read (and optionally write) to the path + /// @note invalid to call in non-secured Lua state static bool checkPath(lua_State *L, const char *path, bool write_required, - bool *write_allowed=NULL); + bool *write_allowed = nullptr); + +protected: + // To be implemented by descendants: + + /** + * Specify if the mod names during init time(!) can be trusted. + * It needs to be assured that no tampering happens before any call to `loadMod()`. + * @note disabling this implies that mod whitelisting never works + * @return boolean value + */ + virtual bool modNamesAreTrusted() { return false; } + + /** + * Should check if the given path may be accessed. + * If `write_required` is true test for write access, if false test for read access. + * @param abs_path absolute file/directory path, may not exist + * @param write_required was write access requested? + * @param write_allowed output parameter (nullable): set to true if writing is allowed + * @return true if access is allowed + */ + virtual bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) = 0; + + // Ready-made implementation of `checkPathInternal` suitable for server-related uses + static bool checkPathWithGamedef(lua_State *L, const std::string &abs_path, + bool write_required, bool *write_allowed); private: int getThread(lua_State *L); @@ -48,6 +96,8 @@ private: // creates an empty Lua environment void createEmptyEnv(lua_State *L); + bool m_secure = false; + // Syntax: "sl_" '_' // (sl stands for Secure Lua) diff --git a/src/script/lua_api/CMakeLists.txt b/src/script/lua_api/CMakeLists.txt index 3b17ac420..f942cb566 100644 --- a/src/script/lua_api/CMakeLists.txt +++ b/src/script/lua_api/CMakeLists.txt @@ -31,11 +31,14 @@ set(common_SCRIPT_LUA_API_SRCS set(client_SCRIPT_LUA_API_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/l_camera.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_client.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/l_client_common.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_client_sound.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_localplayer.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_mainmenu.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_mainmenu_sound.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/l_menu_common.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_minimap.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_particles_local.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/l_pause_menu.cpp ${CMAKE_CURRENT_SOURCE_DIR}/l_storage.cpp PARENT_SCOPE) diff --git a/src/script/lua_api/l_client.cpp b/src/script/lua_api/l_client.cpp index 7735bff92..2aef6d470 100644 --- a/src/script/lua_api/l_client.cpp +++ b/src/script/lua_api/l_client.cpp @@ -127,21 +127,6 @@ int ModApiClient::l_get_player_names(lua_State *L) return 1; } -// show_formspec(formspec) -int ModApiClient::l_show_formspec(lua_State *L) -{ - if (!lua_isstring(L, 1) || !lua_isstring(L, 2)) - return 0; - - ClientEvent *event = new ClientEvent(); - event->type = CE_SHOW_LOCAL_FORMSPEC; - event->show_formspec.formname = new std::string(luaL_checkstring(L, 1)); - event->show_formspec.formspec = new std::string(luaL_checkstring(L, 2)); - getClient(L)->pushToEventQueue(event); - lua_pushboolean(L, true); - return 1; -} - // disconnect() int ModApiClient::l_disconnect(lua_State *L) { @@ -325,7 +310,6 @@ void ModApiClient::Initialize(lua_State *L, int top) API_FCT(send_chat_message); API_FCT(clear_out_chat_queue); API_FCT(get_player_names); - API_FCT(show_formspec); API_FCT(gettext); API_FCT(get_node_or_nil); API_FCT(disconnect); diff --git a/src/script/lua_api/l_client.h b/src/script/lua_api/l_client.h index fb5c53171..777b128cc 100644 --- a/src/script/lua_api/l_client.h +++ b/src/script/lua_api/l_client.h @@ -33,9 +33,6 @@ private: // get_player_names() static int l_get_player_names(lua_State *L); - // show_formspec(name, formspec) - static int l_show_formspec(lua_State *L); - // disconnect() static int l_disconnect(lua_State *L); diff --git a/src/script/lua_api/l_client_common.cpp b/src/script/lua_api/l_client_common.cpp new file mode 100644 index 000000000..21d040fa1 --- /dev/null +++ b/src/script/lua_api/l_client_common.cpp @@ -0,0 +1,33 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 celeron55, Perttu Ahola +// Copyright (C) 2017 nerzhul, Loic Blot +// Copyright (C) 2025 grorp + +#include "l_client_common.h" + +#include "client/client.h" +#include "client/clientevent.h" +#include "cpp_api/s_base.h" +#include "lua_api/l_internal.h" + + +// show_formspec(formspec) +int ModApiClientCommon::l_show_formspec(lua_State *L) +{ + ClientEvent *event = new ClientEvent(); + event->type = getScriptApiBase(L)->getType() == ScriptingType::PauseMenu + ? CE_SHOW_PAUSE_MENU_FORMSPEC + : CE_SHOW_CSM_FORMSPEC; + event->show_formspec.formname = new std::string(luaL_checkstring(L, 1)); + event->show_formspec.formspec = new std::string(luaL_checkstring(L, 2)); + getClient(L)->pushToEventQueue(event); + lua_pushboolean(L, true); + return 1; +} + + +void ModApiClientCommon::Initialize(lua_State *L, int top) +{ + API_FCT(show_formspec); +} diff --git a/src/script/lua_api/l_client_common.h b/src/script/lua_api/l_client_common.h new file mode 100644 index 000000000..5063032ab --- /dev/null +++ b/src/script/lua_api/l_client_common.h @@ -0,0 +1,19 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 celeron55, Perttu Ahola +// Copyright (C) 2017 nerzhul, Loic Blot +// Copyright (C) 2025 grorp + +#pragma once + +#include "lua_api/l_base.h" + +class ModApiClientCommon : public ModApiBase +{ +private: + // show_formspec(name, formspec) + static int l_show_formspec(lua_State *L); + +public: + static void Initialize(lua_State *L, int top); +}; diff --git a/src/script/lua_api/l_env.cpp b/src/script/lua_api/l_env.cpp index 8d8160cad..231dff4b4 100644 --- a/src/script/lua_api/l_env.cpp +++ b/src/script/lua_api/l_env.cpp @@ -917,9 +917,8 @@ int ModApiEnv::l_find_node_near(lua_State *L) void ModApiEnvBase::checkArea(v3s16 &minp, v3s16 &maxp) { auto volume = VoxelArea(minp, maxp).getVolume(); - // Volume limit equal to 8 default mapchunks, (80 * 2) ^ 3 = 4,096,000 - if (volume > 4096000) { - throw LuaError("Area volume exceeds allowed value of 4096000"); + if (volume > MAX_WORKING_VOLUME) { + throw LuaError("Area volume exceeds allowed value of " + std::to_string(MAX_WORKING_VOLUME)); } // Clamp to map range to avoid problems @@ -1377,11 +1376,7 @@ int ModApiEnv::l_spawn_tree(lua_State *L) ServerMap *map = &env->getServerMap(); treegen::error e; if ((e = treegen::spawn_ltree (map, p0, tree_def)) != treegen::SUCCESS) { - if (e == treegen::UNBALANCED_BRACKETS) { - luaL_error(L, "spawn_tree(): closing ']' has no matching opening bracket"); - } else { - luaL_error(L, "spawn_tree(): unknown error"); - } + throw LuaError("spawn_tree(): " + treegen::error_to_string(e)); } lua_pushboolean(L, true); @@ -1695,11 +1690,7 @@ int ModApiEnvVM::l_spawn_tree(lua_State *L) treegen::error e; if ((e = treegen::make_ltree(*vm, p0, tree_def)) != treegen::SUCCESS) { - if (e == treegen::UNBALANCED_BRACKETS) { - throw LuaError("spawn_tree(): closing ']' has no matching opening bracket"); - } else { - throw LuaError("spawn_tree(): unknown error"); - } + throw LuaError("spawn_tree(): " + treegen::error_to_string(e)); } lua_pushboolean(L, true); diff --git a/src/script/lua_api/l_inventory.cpp b/src/script/lua_api/l_inventory.cpp index d1c357329..f5c5e4d54 100644 --- a/src/script/lua_api/l_inventory.cpp +++ b/src/script/lua_api/l_inventory.cpp @@ -96,38 +96,37 @@ int InvRef::l_set_size(lua_State *L) NO_MAP_LOCK_REQUIRED; InvRef *ref = checkObject(L, 1); const char *listname = luaL_checkstring(L, 2); + Inventory *inv; + InventoryList *list; int newsize = luaL_checknumber(L, 3); - if (newsize < 0) { - lua_pushboolean(L, false); - return 1; + if (newsize < 0) + goto fail; + + inv = getinv(L, ref); + if (!inv) + goto fail; + + if (newsize == 0) { + inv->deleteList(listname); + goto done; } - Inventory *inv = getinv(L, ref); - if(inv == NULL){ - lua_pushboolean(L, false); - return 1; - } - if(newsize == 0){ - inv->deleteList(listname); - reportInventoryChange(L, ref); - lua_pushboolean(L, true); - return 1; - } - InventoryList *list = inv->getList(listname); - if(list){ + list = inv->getList(listname); + if (list) { list->setSize(newsize); } else { list = inv->addList(listname, newsize); if (!list) - { - lua_pushboolean(L, false); - return 1; - } + goto fail; } +done: reportInventoryChange(L, ref); lua_pushboolean(L, true); return 1; +fail: + lua_pushboolean(L, false); + return 1; } // set_width(self, listname, size) @@ -136,28 +135,28 @@ int InvRef::l_set_width(lua_State *L) NO_MAP_LOCK_REQUIRED; InvRef *ref = checkObject(L, 1); const char *listname = luaL_checkstring(L, 2); + Inventory *inv; + InventoryList *list; int newwidth = luaL_checknumber(L, 3); - if (newwidth < 0) { - lua_pushboolean(L, false); - return 1; - } + if (newwidth < 0) + goto fail; - Inventory *inv = getinv(L, ref); - if(inv == NULL){ - lua_pushboolean(L, false); - return 1; - } - InventoryList *list = inv->getList(listname); - if(list){ - list->setWidth(newwidth); - } else { - lua_pushboolean(L, false); - return 1; - } + inv = getinv(L, ref); + if (!inv) + goto fail; + + list = inv->getList(listname); + if (!list) + goto fail; + + list->setWidth(newwidth); reportInventoryChange(L, ref); lua_pushboolean(L, true); return 1; +fail: + lua_pushboolean(L, false); + return 1; } // get_stack(self, listname, i) -> itemstack diff --git a/src/script/lua_api/l_item.cpp b/src/script/lua_api/l_item.cpp index 37e23e59f..04182041e 100644 --- a/src/script/lua_api/l_item.cpp +++ b/src/script/lua_api/l_item.cpp @@ -445,13 +445,13 @@ int LuaItemStack::l_equals(lua_State *L) NO_MAP_LOCK_REQUIRED; LuaItemStack *o1 = checkObject(L, 1); - // checks for non-userdata argument + // checks for non-userdata argument if (!lua_isuserdata(L, 2)) { lua_pushboolean(L, false); return 1; } - // check that the argument is an ItemStack + // check that the argument is an ItemStack if (!lua_getmetatable(L, 2)) { lua_pushboolean(L, false); return 1; diff --git a/src/script/lua_api/l_mainmenu.cpp b/src/script/lua_api/l_mainmenu.cpp index 29e317bfa..ef113a0e6 100644 --- a/src/script/lua_api/l_mainmenu.cpp +++ b/src/script/lua_api/l_mainmenu.cpp @@ -2,6 +2,8 @@ // SPDX-License-Identifier: LGPL-2.1-or-later // Copyright (C) 2013 sapier +#include "server/serverlist.h" + #include "lua_api/l_mainmenu.h" #include "lua_api/l_internal.h" #include "common/c_content.h" @@ -11,7 +13,7 @@ #include "gui/guiMainMenu.h" #include "gui/guiKeyChangeMenu.h" #include "gui/guiPathSelectMenu.h" -#include "server/serverlist.h" +#include "gui/touchscreeneditor.h" #include "version.h" #include "porting.h" #include "filesys.h" @@ -29,6 +31,7 @@ #include "threading/mutex_auto_lock.h" #include "common/c_converter.h" #include "gui/guiOpenURL.h" +#include "gettext.h" /******************************************************************************/ @@ -345,6 +348,8 @@ int ModApiMainMenu::l_get_content_info(lua_State *L) { std::string path = luaL_checkstring(L, 1); + CHECK_SECURE_PATH(L, path.c_str(), false) + ContentSpec spec; spec.path = path; parseContentInfo(spec); @@ -422,6 +427,8 @@ int ModApiMainMenu::l_check_mod_configuration(lua_State *L) { std::string worldpath = luaL_checkstring(L, 1); + CHECK_SECURE_PATH(L, worldpath.c_str(), false) + ModConfiguration modmgr; // Add all game mods @@ -543,6 +550,22 @@ int ModApiMainMenu::l_show_keys_menu(lua_State *L) return 0; } +/******************************************************************************/ +int ModApiMainMenu::l_show_touchscreen_layout(lua_State *L) +{ + GUIEngine *engine = getGuiEngine(L); + sanity_check(engine != NULL); + + GUITouchscreenLayout *gui = new GUITouchscreenLayout( + engine->m_rendering_engine->get_gui_env(), + engine->m_parent, + -1, + engine->m_menumanager, + engine->m_texture_source.get()); + gui->drop(); + return 0; +} + /******************************************************************************/ int ModApiMainMenu::l_create_world(lua_State *L) { @@ -744,15 +767,13 @@ int ModApiMainMenu::l_get_temp_path(lua_State *L) } /******************************************************************************/ -int ModApiMainMenu::l_create_dir(lua_State *L) { +int ModApiMainMenu::l_create_dir(lua_State *L) +{ const char *path = luaL_checkstring(L, 1); - if (ModApiMainMenu::mayModifyPath(path)) { - lua_pushboolean(L, fs::CreateAllDirs(path)); - return 1; - } + CHECK_SECURE_PATH(L, path, true) - lua_pushboolean(L, false); + lua_pushboolean(L, fs::CreateAllDirs(path)); return 1; } @@ -761,14 +782,9 @@ int ModApiMainMenu::l_delete_dir(lua_State *L) { const char *path = luaL_checkstring(L, 1); - std::string absolute_path = fs::RemoveRelativePathComponents(path); + CHECK_SECURE_PATH(L, path, true) - if (ModApiMainMenu::mayModifyPath(absolute_path)) { - lua_pushboolean(L, fs::RecursiveDelete(absolute_path)); - return 1; - } - - lua_pushboolean(L, false); + lua_pushboolean(L, fs::RecursiveDelete(path)); return 1; } @@ -778,24 +794,16 @@ int ModApiMainMenu::l_copy_dir(lua_State *L) const char *source = luaL_checkstring(L, 1); const char *destination = luaL_checkstring(L, 2); - bool keep_source = true; - if (!lua_isnoneornil(L, 3)) - keep_source = readParam(L, 3); + bool keep_source = readParam(L, 3, true); - std::string abs_destination = fs::RemoveRelativePathComponents(destination); - std::string abs_source = fs::RemoveRelativePathComponents(source); - - if (!ModApiMainMenu::mayModifyPath(abs_destination) || - (!keep_source && !ModApiMainMenu::mayModifyPath(abs_source))) { - lua_pushboolean(L, false); - return 1; - } + CHECK_SECURE_PATH(L, source, !keep_source) + CHECK_SECURE_PATH(L, destination, true) bool retval; if (keep_source) - retval = fs::CopyDir(abs_source, abs_destination); + retval = fs::CopyDir(source, destination); else - retval = fs::MoveDir(abs_source, abs_destination); + retval = fs::MoveDir(source, destination); lua_pushboolean(L, retval); return 1; } @@ -805,6 +813,8 @@ int ModApiMainMenu::l_is_dir(lua_State *L) { const char *path = luaL_checkstring(L, 1); + CHECK_SECURE_PATH(L, path, false) + lua_pushboolean(L, fs::IsDir(path)); return 1; } @@ -815,16 +825,12 @@ int ModApiMainMenu::l_extract_zip(lua_State *L) const char *zipfile = luaL_checkstring(L, 1); const char *destination = luaL_checkstring(L, 2); - std::string absolute_destination = fs::RemoveRelativePathComponents(destination); + CHECK_SECURE_PATH(L, zipfile, false) + CHECK_SECURE_PATH(L, destination, true) - if (ModApiMainMenu::mayModifyPath(absolute_destination)) { - auto fs = RenderingEngine::get_raw_device()->getFileSystem(); - bool ok = fs::extractZipFile(fs, zipfile, destination); - lua_pushboolean(L, ok); - return 1; - } - - lua_pushboolean(L,false); + auto fs = RenderingEngine::get_raw_device()->getFileSystem(); + bool ok = fs::extractZipFile(fs, zipfile, destination); + lua_pushboolean(L, ok); return 1; } @@ -838,40 +844,13 @@ int ModApiMainMenu::l_get_mainmenu_path(lua_State *L) return 1; } -/******************************************************************************/ -bool ModApiMainMenu::mayModifyPath(std::string path) -{ - path = fs::RemoveRelativePathComponents(path); - - if (fs::PathStartsWith(path, fs::TempPath())) - return true; - - std::string path_user = fs::RemoveRelativePathComponents(porting::path_user); - - if (fs::PathStartsWith(path, path_user + DIR_DELIM "client")) - return true; - if (fs::PathStartsWith(path, path_user + DIR_DELIM "games" + GAMES_VERSION)) - return true; - if (fs::PathStartsWith(path, path_user + DIR_DELIM "mods")) - return true; - if (fs::PathStartsWith(path, path_user + DIR_DELIM "textures")) - return true; - if (fs::PathStartsWith(path, path_user + DIR_DELIM "worlds")) - return true; - - if (fs::PathStartsWith(path, fs::RemoveRelativePathComponents(porting::path_cache))) - return true; - - return false; -} - - /******************************************************************************/ int ModApiMainMenu::l_may_modify_path(lua_State *L) { const char *target = luaL_checkstring(L, 1); - std::string absolute_destination = fs::RemoveRelativePathComponents(target); - lua_pushboolean(L, ModApiMainMenu::mayModifyPath(absolute_destination)); + bool write_allowed = false; + bool ok = ScriptApiSecurity::checkPath(L, target, false, &write_allowed); + lua_pushboolean(L, ok && write_allowed); return 1; } @@ -904,40 +883,9 @@ int ModApiMainMenu::l_download_file(lua_State *L) const char *url = luaL_checkstring(L, 1); const char *target = luaL_checkstring(L, 2); - //check path - std::string absolute_destination = fs::RemoveRelativePathComponents(target); - - if (ModApiMainMenu::mayModifyPath(absolute_destination)) { - if (GUIEngine::downloadFile(url,absolute_destination)) { - lua_pushboolean(L,true); - return 1; - } - } else { - errorstream << "DOWNLOAD denied: " << absolute_destination - << " isn't an allowed path" << std::endl; - } - lua_pushboolean(L,false); - return 1; -} - -/******************************************************************************/ -int ModApiMainMenu::l_get_video_drivers(lua_State *L) -{ - auto drivers = RenderingEngine::getSupportedVideoDrivers(); - - lua_newtable(L); - for (u32 i = 0; i != drivers.size(); i++) { - auto &info = RenderingEngine::getVideoDriverInfo(drivers[i]); - - lua_newtable(L); - lua_pushstring(L, info.name.c_str()); - lua_setfield(L, -2, "name"); - lua_pushstring(L, info.friendly_name.c_str()); - lua_setfield(L, -2, "friendly_name"); - - lua_rawseti(L, -2, i + 1); - } + CHECK_SECURE_PATH(L, target, true) + lua_pushboolean(L, GUIEngine::downloadFile(url, target)); return 1; } @@ -952,16 +900,6 @@ int ModApiMainMenu::l_get_language(lua_State *L) return 1; } -/******************************************************************************/ -int ModApiMainMenu::l_gettext(lua_State *L) -{ - const char *srctext = luaL_checkstring(L, 1); - const char *text = *srctext ? gettext(srctext) : ""; - lua_pushstring(L, text); - - return 1; -} - /******************************************************************************/ int ModApiMainMenu::l_get_window_info(lua_State *L) { @@ -994,14 +932,6 @@ int ModApiMainMenu::l_get_window_info(lua_State *L) } /******************************************************************************/ -int ModApiMainMenu::l_get_active_driver(lua_State *L) -{ - auto drivertype = RenderingEngine::get_video_driver()->getDriverType(); - lua_pushstring(L, RenderingEngine::getVideoDriverInfo(drivertype).name.c_str()); - return 1; -} - - int ModApiMainMenu::l_get_active_renderer(lua_State *L) { lua_pushstring(L, RenderingEngine::get_video_driver()->getName()); @@ -1025,14 +955,6 @@ int ModApiMainMenu::l_get_active_irrlicht_device(lua_State *L) return 1; } -/******************************************************************************/ -int ModApiMainMenu::l_irrlicht_device_supports_touch(lua_State *L) -{ - lua_pushboolean(L, RenderingEngine::get_raw_device()->supportsTouchEvents()); - return 1; -} - - /******************************************************************************/ int ModApiMainMenu::l_get_min_supp_proto(lua_State *L) { @@ -1080,16 +1002,22 @@ int ModApiMainMenu::l_open_url_dialog(lua_State *L) /******************************************************************************/ int ModApiMainMenu::l_open_dir(lua_State *L) { - std::string path = luaL_checkstring(L, 1); - lua_pushboolean(L, porting::open_directory(path)); + const char *target = luaL_checkstring(L, 1); + + CHECK_SECURE_PATH(L, target, false) + + lua_pushboolean(L, porting::open_directory(target)); return 1; } /******************************************************************************/ int ModApiMainMenu::l_share_file(lua_State *L) { + const char *path = luaL_checkstring(L, 1); + + CHECK_SECURE_PATH(L, path, false) + #ifdef __ANDROID__ - std::string path = luaL_checkstring(L, 1); porting::shareFileAndroid(path); lua_pushboolean(L, true); #else @@ -1103,19 +1031,20 @@ int ModApiMainMenu::l_do_async_callback(lua_State *L) { MainMenuScripting *script = getScriptApi(L); - size_t func_length, param_length; - const char* serialized_func_raw = luaL_checklstring(L, 1, &func_length); - const char* serialized_param_raw = luaL_checklstring(L, 2, ¶m_length); + luaL_checktype(L, 1, LUA_TFUNCTION); + call_string_dump(L, 1); + size_t func_length; + const char *serialized_func_raw = lua_tolstring(L, -1, &func_length); - sanity_check(serialized_func_raw != NULL); - sanity_check(serialized_param_raw != NULL); + size_t param_length; + const char* serialized_param_raw = luaL_checklstring(L, 2, ¶m_length); u32 jobId = script->queueAsync( std::string(serialized_func_raw, func_length), std::string(serialized_param_raw, param_length)); + lua_settop(L, 0); lua_pushinteger(L, jobId); - return 1; } @@ -1190,6 +1119,7 @@ void ModApiMainMenu::Initialize(lua_State *L, int top) API_FCT(start); API_FCT(close); API_FCT(show_keys_menu); + API_FCT(show_touchscreen_layout); API_FCT(create_world); API_FCT(delete_world); API_FCT(set_background); @@ -1214,13 +1144,9 @@ void ModApiMainMenu::Initialize(lua_State *L, int top) API_FCT(show_path_select_dialog); API_FCT(download_file); API_FCT(get_language); - API_FCT(gettext); - API_FCT(get_video_drivers); API_FCT(get_window_info); - API_FCT(get_active_driver); API_FCT(get_active_renderer); API_FCT(get_active_irrlicht_device); - API_FCT(irrlicht_device_supports_touch); API_FCT(get_min_supp_proto); API_FCT(get_max_supp_proto); API_FCT(get_formspec_version); @@ -1261,6 +1187,5 @@ void ModApiMainMenu::InitializeAsync(lua_State *L, int top) API_FCT(get_max_supp_proto); API_FCT(get_formspec_version); API_FCT(get_language); - API_FCT(gettext); } diff --git a/src/script/lua_api/l_mainmenu.h b/src/script/lua_api/l_mainmenu.h index 0fc567797..49fabb684 100644 --- a/src/script/lua_api/l_mainmenu.h +++ b/src/script/lua_api/l_mainmenu.h @@ -37,18 +37,11 @@ private: */ static int getBoolData(lua_State *L, const std::string &name ,bool& valid); - /** - * Checks if a path may be modified. Paths in the temp directory or the user - * games, mods, textures, or worlds directories may be modified. - * @param path path to check - * @return true if the path may be modified - */ - static bool mayModifyPath(std::string path); - - //fm: + // fm: static int l_ask_lan_servers(lua_State *L); static int l_get_lan_servers(lua_State *L); + // === //api calls @@ -66,8 +59,6 @@ private: static int l_get_language(lua_State *L); - static int l_gettext(lua_State *L); - //packages static int l_get_games(lua_State *L); @@ -82,6 +73,8 @@ private: static int l_show_keys_menu(lua_State *L); + static int l_show_touchscreen_layout(lua_State *L); + static int l_show_path_select_dialog(lua_State *L); static int l_set_topleft_text(lua_State *L); @@ -100,14 +93,10 @@ private: static int l_get_window_info(lua_State *L); - static int l_get_active_driver(lua_State *L); - static int l_get_active_renderer(lua_State *L); static int l_get_active_irrlicht_device(lua_State *L); - static int l_irrlicht_device_supports_touch(lua_State *L); - //filesystem static int l_get_mainmenu_path(lua_State *L); @@ -144,8 +133,6 @@ private: static int l_download_file(lua_State *L); - static int l_get_video_drivers(lua_State *L); - //version compatibility static int l_get_min_supp_proto(lua_State *L); diff --git a/src/script/lua_api/l_mapgen.cpp b/src/script/lua_api/l_mapgen.cpp index 85b74aaf5..40d8e0548 100644 --- a/src/script/lua_api/l_mapgen.cpp +++ b/src/script/lua_api/l_mapgen.cpp @@ -366,21 +366,19 @@ Biome *read_biome_def(lua_State *L, int index, const NodeDefManager *ndef) ModApiMapgen::es_BiomeTerrainType, BIOMETYPE_NORMAL); Biome *b = BiomeManager::create(biometype); - b->name = getstringfield_default(L, index, "name", ""); - b->depth_top = getintfield_default(L, index, "depth_top", 0); - b->depth_filler = getintfield_default(L, index, "depth_filler", -31000); - b->depth_water_top = getintfield_default(L, index, "depth_water_top", 0); - b->depth_riverbed = getintfield_default(L, index, "depth_riverbed", 0); - b->heat_point = getfloatfield_default(L, index, "heat_point", 0.f); - b->humidity_point = getfloatfield_default(L, index, "humidity_point", 0.f); - b->vertical_blend = getintfield_default(L, index, "vertical_blend", 0); - b->flags = 0; // reserved + getstringfield(L, index, "name", b->name); + getintfield(L, index, "depth_top", b->depth_top); + getintfield(L, index, "depth_filler", b->depth_filler); + getintfield(L, index, "depth_water_top", b->depth_water_top); + getintfield(L, index, "depth_riverbed", b->depth_riverbed); + getfloatfield(L, index, "heat_point", b->heat_point); + getfloatfield(L, index, "humidity_point", b->humidity_point); + getintfield(L, index, "vertical_blend", b->vertical_blend); + getfloatfield(L, index, "weight", b->weight); - b->min_pos = getv3s16field_default( - L, index, "min_pos", v3s16(-31000, -31000, -31000)); + b->min_pos = getv3s16field_default(L, index, "min_pos", b->min_pos); getintfield(L, index, "y_min", b->min_pos.Y); - b->max_pos = getv3s16field_default( - L, index, "max_pos", v3s16(31000, 31000, 31000)); + b->max_pos = getv3s16field_default(L, index, "max_pos", b->max_pos); getintfield(L, index, "y_max", b->max_pos.Y); std::vector &nn = b->m_nodenames; @@ -571,24 +569,33 @@ int ModApiMapgen::l_get_biome_data(lua_State *L) if (!biomegen) return 0; - const Biome *biome = biomegen->calcBiomeAtPoint(pos); - if (!biome || biome->index == OBJDEF_INVALID_INDEX) - return 0; - - lua_newtable(L); - - lua_pushinteger(L, biome->index); - lua_setfield(L, -2, "biome"); - if (biomegen->getType() == BIOMEGEN_ORIGINAL) { float heat = ((BiomeGenOriginal*) biomegen)->calcHeatAtPoint(pos); float humidity = ((BiomeGenOriginal*) biomegen)->calcHumidityAtPoint(pos); + const Biome *biome = ((BiomeGenOriginal*) biomegen)->calcBiomeFromNoise(heat, humidity, pos); + if (!biome || biome->index == OBJDEF_INVALID_INDEX) + return 0; + + lua_newtable(L); + + lua_pushinteger(L, biome->index); + lua_setfield(L, -2, "biome"); lua_pushnumber(L, heat); lua_setfield(L, -2, "heat"); lua_pushnumber(L, humidity); lua_setfield(L, -2, "humidity"); + + } else { + const Biome *biome = biomegen->calcBiomeAtPoint(pos); + if (!biome || biome->index == OBJDEF_INVALID_INDEX) + return 0; + + lua_newtable(L); + + lua_pushinteger(L, biome->index); + lua_setfield(L, -2, "biome"); } return 1; @@ -919,7 +926,7 @@ int ModApiMapgen::l_get_mapgen_setting_noiseparams(lua_State *L) getEmergeManager(L)->map_settings_mgr; const char *name = luaL_checkstring(L, 1); - if (!settingsmgr->getMapSettingNoiseParams(name, &np)) + if (!settingsmgr->getNoiseParams(name, &np)) return 0; push_noiseparams(L, &np); @@ -1347,20 +1354,20 @@ int ModApiMapgen::l_register_ore(lua_State *L) BiomeManager *bmgr = emerge->getWritableBiomeManager(); OreManager *oremgr = emerge->getWritableOreManager(); - enum OreType oretype = (OreType)getenumfield(L, index, - "ore_type", es_OreType, ORE_SCATTER); - Ore *ore = oremgr->create(oretype); - if (!ore) { - errorstream << "register_ore: ore_type " << oretype << " not implemented\n"; - return 0; + int oretype_int; + std::string oretype_string = getstringfield_default(L, index, "ore_type", "nil"); + if (!string_to_enum(es_OreType, oretype_int, oretype_string)) { + throw LuaError("register_ore: unknown oretype \"" + oretype_string + "\""); } + enum OreType oretype = (OreType) oretype_int; + std::unique_ptr ore(oremgr->create(oretype)); ore->name = getstringfield_default(L, index, "name", ""); ore->ore_param2 = (u8)getintfield_default(L, index, "ore_param2", 0); ore->clust_scarcity = getintfield_default(L, index, "clust_scarcity", 1); ore->clust_num_ores = getintfield_default(L, index, "clust_num_ores", 1); ore->clust_size = getintfield_default(L, index, "clust_size", 0); - ore->noise = NULL; + ore->noise = nullptr; ore->flags = 0; //// Get noise_threshold @@ -1392,12 +1399,11 @@ int ModApiMapgen::l_register_ore(lua_State *L) if (ore->clust_scarcity <= 0 || ore->clust_num_ores <= 0) { errorstream << "register_ore: clust_scarcity and clust_num_ores" "must be greater than 0" << std::endl; - delete ore; return 0; } //// Get flags - getflagsfield(L, index, "flags", flagdesc_ore, &ore->flags, NULL); + getflagsfield(L, index, "flags", flagdesc_ore, &ore->flags, nullptr); //// Get biomes associated with this decoration (if any) lua_getfield(L, index, "biomes"); @@ -1418,7 +1424,7 @@ int ModApiMapgen::l_register_ore(lua_State *L) //// Get type-specific parameters switch (oretype) { case ORE_SHEET: { - OreSheet *oresheet = (OreSheet *)ore; + OreSheet *oresheet = (OreSheet *)ore.get(); oresheet->column_height_min = getintfield_default(L, index, "column_height_min", 1); @@ -1430,7 +1436,7 @@ int ModApiMapgen::l_register_ore(lua_State *L) break; } case ORE_PUFF: { - OrePuff *orepuff = (OrePuff *)ore; + OrePuff *orepuff = (OrePuff *)ore.get(); lua_getfield(L, index, "np_puff_top"); read_noiseparams(L, -1, &orepuff->np_puff_top); @@ -1443,7 +1449,7 @@ int ModApiMapgen::l_register_ore(lua_State *L) break; } case ORE_VEIN: { - OreVein *orevein = (OreVein *)ore; + OreVein *orevein = (OreVein *)ore.get(); orevein->random_factor = getfloatfield_default(L, index, "random_factor", 1.f); @@ -1451,7 +1457,7 @@ int ModApiMapgen::l_register_ore(lua_State *L) break; } case ORE_STRATUM: { - OreStratum *orestratum = (OreStratum *)ore; + OreStratum *orestratum = (OreStratum *)ore.get(); lua_getfield(L, index, "np_stratum_thickness"); if (read_noiseparams(L, -1, &orestratum->np_stratum_thickness)) @@ -1467,9 +1473,8 @@ int ModApiMapgen::l_register_ore(lua_State *L) break; } - ObjDefHandle handle = oremgr->add(ore); + ObjDefHandle handle = oremgr->add(ore.get()); if (handle == OBJDEF_INVALID_HANDLE) { - delete ore; return 0; } @@ -1478,7 +1483,10 @@ int ModApiMapgen::l_register_ore(lua_State *L) size_t nnames = getstringlistfield(L, index, "wherein", &ore->m_nodenames); ore->m_nnlistsizes.push_back(nnames); - ndef->pendNodeResolve(ore); + ndef->pendNodeResolve(ore.get()); + + // We passed ownership of the ore object to oremgr earlier. + ore.release(); lua_pushinteger(L, handle); return 1; @@ -1798,6 +1806,27 @@ int ModApiMapgen::l_place_schematic_on_vmanip(lua_State *L) return 1; } +// spawn_tree_on_vmanip(vmanip, pos, treedef) +int ModApiMapgen::l_spawn_tree_on_vmanip(lua_State *L) +{ + NO_MAP_LOCK_REQUIRED; + + MMVManip *vm = checkObject(L, 1)->vm; + v3s16 p0 = read_v3s16(L, 2); + treegen::TreeDef tree_def; + const NodeDefManager *ndef = getGameDef(L)->ndef(); + if (!read_tree_def(L, 3, ndef, tree_def)) + return 0; + + treegen::error e = treegen::make_ltree(*vm, p0, tree_def); + if (e != treegen::SUCCESS) { + throw LuaError("spawn_tree_on_vmanip(): " + treegen::error_to_string(e)); + } + + lua_pushboolean(L, true); + return 1; +} + // serialize_schematic(schematic, format, options={...}) int ModApiMapgen::l_serialize_schematic(lua_State *L) @@ -2050,6 +2079,7 @@ void ModApiMapgen::Initialize(lua_State *L, int top) API_FCT(create_schematic); API_FCT(place_schematic); API_FCT(place_schematic_on_vmanip); + API_FCT(spawn_tree_on_vmanip); API_FCT(serialize_schematic); API_FCT(read_schematic); } @@ -2076,6 +2106,7 @@ void ModApiMapgen::InitializeEmerge(lua_State *L, int top) API_FCT(generate_ores); API_FCT(generate_decorations); API_FCT(place_schematic_on_vmanip); + API_FCT(spawn_tree_on_vmanip); API_FCT(serialize_schematic); API_FCT(read_schematic); } diff --git a/src/script/lua_api/l_mapgen.h b/src/script/lua_api/l_mapgen.h index d72cbcbad..860daa7e8 100644 --- a/src/script/lua_api/l_mapgen.h +++ b/src/script/lua_api/l_mapgen.h @@ -131,6 +131,9 @@ private: // replacements, force_placement, flagstring) static int l_place_schematic_on_vmanip(lua_State *L); + // spawn_tree_on_vmanip(vmanip, pos, treedef) + static int l_spawn_tree_on_vmanip(lua_State *L); + // serialize_schematic(schematic, format, options={...}) static int l_serialize_schematic(lua_State *L); diff --git a/src/script/lua_api/l_menu_common.cpp b/src/script/lua_api/l_menu_common.cpp new file mode 100644 index 000000000..19c97c042 --- /dev/null +++ b/src/script/lua_api/l_menu_common.cpp @@ -0,0 +1,49 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 sapier +// Copyright (C) 2025 grorp + +#include "l_menu_common.h" + +#include "client/renderingengine.h" +#include "gettext.h" +#include "lua_api/l_internal.h" + + +int ModApiMenuCommon::l_gettext(lua_State *L) +{ + const char *srctext = luaL_checkstring(L, 1); + const char *text = *srctext ? gettext(srctext) : ""; + lua_pushstring(L, text); + + return 1; +} + + +int ModApiMenuCommon::l_get_active_driver(lua_State *L) +{ + auto drivertype = RenderingEngine::get_video_driver()->getDriverType(); + lua_pushstring(L, RenderingEngine::getVideoDriverInfo(drivertype).name.c_str()); + return 1; +} + + +int ModApiMenuCommon::l_irrlicht_device_supports_touch(lua_State *L) +{ + lua_pushboolean(L, RenderingEngine::get_raw_device()->supportsTouchEvents()); + return 1; +} + + +void ModApiMenuCommon::Initialize(lua_State *L, int top) +{ + API_FCT(gettext); + API_FCT(get_active_driver); + API_FCT(irrlicht_device_supports_touch); +} + + +void ModApiMenuCommon::InitializeAsync(lua_State *L, int top) +{ + API_FCT(gettext); +} diff --git a/src/script/lua_api/l_menu_common.h b/src/script/lua_api/l_menu_common.h new file mode 100644 index 000000000..e94e562e1 --- /dev/null +++ b/src/script/lua_api/l_menu_common.h @@ -0,0 +1,20 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2013 sapier +// Copyright (C) 2025 grorp + +#pragma once + +#include "l_base.h" + +class ModApiMenuCommon: public ModApiBase +{ +private: + static int l_gettext(lua_State *L); + static int l_get_active_driver(lua_State *L); + static int l_irrlicht_device_supports_touch(lua_State *L); + +public: + static void Initialize(lua_State *L, int top); + static void InitializeAsync(lua_State *L, int top); +}; diff --git a/src/script/lua_api/l_particleparams.h b/src/script/lua_api/l_particleparams.h index 7303081db..0e508148f 100644 --- a/src/script/lua_api/l_particleparams.h +++ b/src/script/lua_api/l_particleparams.h @@ -118,13 +118,14 @@ namespace LuaParticleParams {(int)BlendMode::add, "add"}, {(int)BlendMode::sub, "sub"}, {(int)BlendMode::screen, "screen"}, + {(int)BlendMode::clip, "clip"}, {0, nullptr}, }; luaL_checktype(L, -1, LUA_TSTRING); int v = (int)BlendMode::alpha; if (!string_to_enum(opts, v, lua_tostring(L, -1))) { - throw LuaError("blend mode must be one of ('alpha', 'add', 'sub', 'screen')"); + throw LuaError("blend mode must be one of ('alpha', 'clip', 'add', 'sub', 'screen')"); } ret = (BlendMode)v; } diff --git a/src/script/lua_api/l_particles.cpp b/src/script/lua_api/l_particles.cpp index 80c3f27c2..efcf3725e 100644 --- a/src/script/lua_api/l_particles.cpp +++ b/src/script/lua_api/l_particles.cpp @@ -3,6 +3,7 @@ // Copyright (C) 2013 celeron55, Perttu Ahola #include "lua_api/l_particles.h" +#include "common/c_types.h" #include "lua_api/l_object.h" #include "lua_api/l_internal.h" #include "lua_api/l_particleparams.h" @@ -280,6 +281,9 @@ int ModApiParticles::l_add_particlespawner(lua_State *L) p.node_tile = getintfield_default(L, 1, "node_tile", p.node_tile); } + if (p.time < 0) + throw LuaError("particle spawner 'time' must be >= 0"); + u32 id = getServer(L)->addParticleSpawner(p, attached, playername); lua_pushnumber(L, id); diff --git a/src/script/lua_api/l_pause_menu.cpp b/src/script/lua_api/l_pause_menu.cpp new file mode 100644 index 000000000..4fc17766d --- /dev/null +++ b/src/script/lua_api/l_pause_menu.cpp @@ -0,0 +1,28 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#include "l_pause_menu.h" +#include "gui/mainmenumanager.h" +#include "lua_api/l_internal.h" + + +int ModApiPauseMenu::l_show_keys_menu(lua_State *L) +{ + g_gamecallback->keyConfig(); + return 0; +} + + +int ModApiPauseMenu::l_show_touchscreen_layout(lua_State *L) +{ + g_gamecallback->touchscreenLayout(); + return 0; +} + + +void ModApiPauseMenu::Initialize(lua_State *L, int top) +{ + API_FCT(show_keys_menu); + API_FCT(show_touchscreen_layout); +} diff --git a/src/script/lua_api/l_pause_menu.h b/src/script/lua_api/l_pause_menu.h new file mode 100644 index 000000000..507c1c4b7 --- /dev/null +++ b/src/script/lua_api/l_pause_menu.h @@ -0,0 +1,17 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#pragma once + +#include "l_base.h" + +class ModApiPauseMenu: public ModApiBase +{ +private: + static int l_show_keys_menu(lua_State *L); + static int l_show_touchscreen_layout(lua_State *L); + +public: + static void Initialize(lua_State *L, int top); +}; diff --git a/src/script/lua_api/l_server.cpp b/src/script/lua_api/l_server.cpp index 061dbb206..74ee5e5c9 100644 --- a/src/script/lua_api/l_server.cpp +++ b/src/script/lua_api/l_server.cpp @@ -239,6 +239,10 @@ int ModApiServer::l_get_player_information(lua_State *L) lua_pushstring(L, info.lang_code.c_str()); lua_settable(L, table); + lua_pushstring(L, "version_string"); + lua_pushstring(L, info.vers_string.c_str()); + lua_settable(L, table); + #ifndef NDEBUG lua_pushstring(L,"serialization_version"); lua_pushnumber(L, info.ser_vers); @@ -256,10 +260,6 @@ int ModApiServer::l_get_player_information(lua_State *L) lua_pushnumber(L, info.patch); lua_settable(L, table); - lua_pushstring(L,"version_string"); - lua_pushstring(L, info.vers_string.c_str()); - lua_settable(L, table); - lua_pushstring(L,"state"); lua_pushstring(L, ClientInterface::state2Name(info.state).c_str()); lua_settable(L, table); diff --git a/src/script/lua_api/l_settings.cpp b/src/script/lua_api/l_settings.cpp index fb4b7a218..d0597eed8 100644 --- a/src/script/lua_api/l_settings.cpp +++ b/src/script/lua_api/l_settings.cpp @@ -10,13 +10,15 @@ #include "settings.h" #include "noise.h" #include "log.h" +#include "common/c_converter.h" -/* This protects the following from being set: - * 'secure.*' settings - * some security-relevant settings +/* + * This protects the following from being set: + * - 'secure.*' settings + * - some security-relevant settings * (better solution pending) - * some mapgen settings + * - some mapgen settings * (not security-criticial, just to avoid messing up user configs) */ #define CHECK_SETTING_SECURITY(L, name) \ @@ -27,14 +29,17 @@ static inline int checkSettingSecurity(lua_State* L, const std::string &name) { +#if CHECK_CLIENT_BUILD() + // Main menu and pause menu are allowed everything + auto context = ModApiBase::getScriptApiBase(L)->getType(); + if (context == ScriptingType::MainMenu || context == ScriptingType::PauseMenu) + return 0; +#endif + if (ScriptApiSecurity::isSecure(L) && name.compare(0, 7, "secure.") == 0) throw LuaError("Attempted to set secure setting."); - bool is_mainmenu = false; -#if CHECK_CLIENT_BUILD() - is_mainmenu = ModApiBase::getGuiEngine(L) != nullptr; -#endif - if (!is_mainmenu && (name == "mg_name" || name == "mg_flags")) { + if (name == "mg_name" || name == "mg_flags") { errorstream << "Tried to set global setting " << name << ", ignoring. " "minetest.set_mapgen_setting() should be used instead." << std::endl; infostream << script_get_backtrace(L) << std::endl; @@ -45,11 +50,9 @@ static inline int checkSettingSecurity(lua_State* L, const std::string &name) "main_menu_script", "shader_path", "texture_path", "screenshot_path", "serverlist_file", "serverlist_url", "map-dir", "contentdb_url", }; - if (!is_mainmenu) { - for (const char *name2 : disallowed) { - if (name == name2) - throw LuaError("Attempted to set disallowed setting."); - } + for (const char *name2 : disallowed) { + if (name == name2) + throw LuaError("Attempted to set disallowed setting."); } return 0; @@ -176,6 +179,21 @@ int LuaSettings::l_get_flags(lua_State *L) return 1; } +// get_pos(self, key) -> vector or nil +int LuaSettings::l_get_pos(lua_State *L) +{ + NO_MAP_LOCK_REQUIRED; + LuaSettings *o = checkObject(L, 1); + std::string key = luaL_checkstring(L, 2); + + std::optional pos; + if (o->m_settings->getV3FNoEx(key, pos) && pos.has_value()) + push_v3f(L, *pos); + else + lua_pushnil(L); + return 1; +} + // set(self, key, value) int LuaSettings::l_set(lua_State* L) { @@ -226,6 +244,22 @@ int LuaSettings::l_set_np_group(lua_State *L) return 0; } +// set_pos(self, key, value) +int LuaSettings::l_set_pos(lua_State *L) +{ + NO_MAP_LOCK_REQUIRED; + LuaSettings *o = checkObject(L, 1); + + std::string key = luaL_checkstring(L, 2); + v3f value = check_v3f(L, 3); + + CHECK_SETTING_SECURITY(L, key); + + o->m_settings->setV3F(key, value); + + return 0; +} + // remove(self, key) -> success int LuaSettings::l_remove(lua_State* L) { @@ -355,9 +389,11 @@ const luaL_Reg LuaSettings::methods[] = { luamethod(LuaSettings, get_bool), luamethod(LuaSettings, get_np_group), luamethod(LuaSettings, get_flags), + luamethod(LuaSettings, get_pos), luamethod(LuaSettings, set), luamethod(LuaSettings, set_bool), luamethod(LuaSettings, set_np_group), + luamethod(LuaSettings, set_pos), luamethod(LuaSettings, remove), luamethod(LuaSettings, get_names), luamethod(LuaSettings, has), diff --git a/src/script/lua_api/l_settings.h b/src/script/lua_api/l_settings.h index ca609fc1f..d4f48d037 100644 --- a/src/script/lua_api/l_settings.h +++ b/src/script/lua_api/l_settings.h @@ -29,6 +29,9 @@ private: // get_flags(self, key) -> key/value table static int l_get_flags(lua_State *L); + // get_pos(self, key) -> vector or nil + static int l_get_pos(lua_State *L); + // set(self, key, value) static int l_set(lua_State *L); @@ -38,6 +41,9 @@ private: // set_np_group(self, key, value) static int l_set_np_group(lua_State *L); + // set_pos(self, key, value) + static int l_set_pos(lua_State *L); + // remove(self, key) -> success static int l_remove(lua_State *L); diff --git a/src/script/lua_api/l_util.cpp b/src/script/lua_api/l_util.cpp index 8775f6077..86d3de316 100644 --- a/src/script/lua_api/l_util.cpp +++ b/src/script/lua_api/l_util.cpp @@ -2,7 +2,6 @@ // SPDX-License-Identifier: LGPL-2.1-or-later // Copyright (C) 2013 celeron55, Perttu Ahola -#include "irrlichttypes_extrabloated.h" #include "lua_api/l_util.h" #include "lua_api/l_internal.h" #include "lua_api/l_settings.h" @@ -27,8 +26,7 @@ #include "config.h" #include "version.h" #include "util/hex.h" -#include "util/sha1.h" -#include "my_sha256.h" +#include "util/hashing.h" #include "util/png.h" #include "player.h" #include "daynightratio.h" @@ -494,18 +492,13 @@ int ModApiUtil::l_request_insecure_environment(lua_State *L) { NO_MAP_LOCK_REQUIRED; - // Just return _G if security is disabled - if (!ScriptApiSecurity::isSecure(L)) { - lua_getglobal(L, "_G"); - return 1; - } - - if (!ScriptApiSecurity::checkWhitelisted(L, "secure.trusted_mods")) { - return 0; + if (ScriptApiSecurity::isSecure(L)) { + if (!ScriptApiSecurity::checkWhitelisted(L, "secure.trusted_mods")) + return 0; } // Push insecure environment - lua_rawgeti(L, LUA_REGISTRYINDEX, CUSTOM_RIDX_GLOBALS_BACKUP); + ScriptApiSecurity::getGlobalsBackup(L); return 1; } @@ -545,12 +538,7 @@ int ModApiUtil::l_sha1(lua_State *L) bool hex = !lua_isboolean(L, 2) || !readParam(L, 2); // Compute actual checksum of data - std::string data_sha1; - { - class SHA1 ctx; - ctx.addBytes(data); - data_sha1 = ctx.getDigest(); - } + std::string data_sha1 = hashing::sha1(data); if (hex) { std::string sha1_hex = hex_encode(data_sha1); @@ -569,10 +557,7 @@ int ModApiUtil::l_sha256(lua_State *L) auto data = readParam(L, 1); bool hex = !lua_isboolean(L, 2) || !readParam(L, 2); - std::string data_sha256; - data_sha256.resize(SHA256_DIGEST_LENGTH); - mt_SHA256(reinterpret_cast(data.data()), data.size(), - reinterpret_cast(data_sha256.data())); + std::string data_sha256 = hashing::sha256(data); if (hex) { lua_pushstring(L, hex_encode(data_sha256).c_str()); diff --git a/src/script/scripting_client.cpp b/src/script/scripting_client.cpp index dc9b6212c..45a80bba9 100644 --- a/src/script/scripting_client.cpp +++ b/src/script/scripting_client.cpp @@ -7,6 +7,7 @@ #include "client/client.h" #include "cpp_api/s_internal.h" #include "lua_api/l_client.h" +#include "lua_api/l_client_common.h" #include "lua_api/l_env.h" #include "lua_api/l_item.h" #include "lua_api/l_itemstackmeta.h" @@ -63,6 +64,7 @@ void ClientScripting::InitializeModApi(lua_State *L, int top) ClientSoundHandle::Register(L); ModApiUtil::InitializeClient(L, top); + ModApiClientCommon::Initialize(L, top); ModApiClient::Initialize(L, top); ModApiItem::InitializeClient(L, top); ModApiStorage::Initialize(L, top); diff --git a/src/script/scripting_client.h b/src/script/scripting_client.h index cfe4133c7..75636ded1 100644 --- a/src/script/scripting_client.h +++ b/src/script/scripting_client.h @@ -5,8 +5,11 @@ #pragma once +#include + #include "cpp_api/s_base.h" #include "cpp_api/s_client.h" +#include "cpp_api/s_client_common.h" #include "cpp_api/s_modchannels.h" #include "cpp_api/s_security.h" @@ -18,6 +21,7 @@ class Minimap; class ClientScripting: virtual public ScriptApiBase, public ScriptApiSecurity, + public ScriptApiClientCommon, public ScriptApiClient, public ScriptApiModChannels { @@ -27,6 +31,16 @@ public: void on_camera_ready(Camera *camera); void on_minimap_ready(Minimap *minimap); +protected: + // from ScriptApiSecurity: + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override { + warningstream << "IO API called in client scripting" << std::endl; + assert(0); + return false; + } + bool modNamesAreTrusted() override { return true; } + private: virtual void InitializeModApi(lua_State *L, int top); }; diff --git a/src/script/scripting_emerge.h b/src/script/scripting_emerge.h index 8f3c7c348..8e645fd9d 100644 --- a/src/script/scripting_emerge.h +++ b/src/script/scripting_emerge.h @@ -17,6 +17,13 @@ class EmergeScripting: public: EmergeScripting(EmergeThread *parent); +protected: + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override { + return ScriptApiSecurity::checkPathWithGamedef(getStack(), + abs_path, write_required, write_allowed); + }; + private: void InitializeModApi(lua_State *L, int top); }; diff --git a/src/script/scripting_mainmenu.cpp b/src/script/scripting_mainmenu.cpp index 17e2ebb1e..f91eae599 100644 --- a/src/script/scripting_mainmenu.cpp +++ b/src/script/scripting_mainmenu.cpp @@ -9,14 +9,18 @@ #include "lua_api/l_http.h" #include "lua_api/l_mainmenu.h" #include "lua_api/l_mainmenu_sound.h" +#include "lua_api/l_menu_common.h" #include "lua_api/l_util.h" #include "lua_api/l_settings.h" #include "log.h" +#include "filesys.h" +#include "porting.h" extern "C" { #include "lualib.h" } -#define MAINMENU_NUM_ASYNC_THREADS 4 + +#define MAINMENU_NUM_ASYNC_THREADS 2 MainMenuScripting::MainMenuScripting(GUIEngine* guiengine): @@ -26,6 +30,8 @@ MainMenuScripting::MainMenuScripting(GUIEngine* guiengine): SCRIPTAPI_PRECHECKHEADER + initializeSecurity(); + lua_getglobal(L, "core"); int top = lua_gettop(L); @@ -48,12 +54,14 @@ void MainMenuScripting::initializeModApi(lua_State *L, int top) registerLuaClasses(L, top); // Initialize mod API modules + ModApiMenuCommon::Initialize(L, top); ModApiMainMenu::Initialize(L, top); ModApiUtil::Initialize(L, top); ModApiMainMenuSound::Initialize(L, top); ModApiHttp::Initialize(L, top); asyncEngine.registerStateInitializer(registerLuaClasses); + asyncEngine.registerStateInitializer(ModApiMenuCommon::InitializeAsync); asyncEngine.registerStateInitializer(ModApiMainMenu::InitializeAsync); asyncEngine.registerStateInitializer(ModApiUtil::InitializeAsync); asyncEngine.registerStateInitializer(ModApiHttp::InitializeAsync); @@ -69,6 +77,43 @@ void MainMenuScripting::registerLuaClasses(lua_State *L, int top) MainMenuSoundHandle::Register(L); } +bool MainMenuScripting::mayModifyPath(const std::string &path) +{ + std::string path_temp = fs::AbsolutePathPartial(fs::TempPath()); + if (fs::PathStartsWith(path, path_temp)) + return true; + + std::string path_user = fs::AbsolutePathPartial(porting::path_user); + + if (fs::PathStartsWith(path, path_user + DIR_DELIM "client")) + return true; + if (fs::PathStartsWith(path, path_user + DIR_DELIM "games" + GAMES_VERSION)) + return true; + if (fs::PathStartsWith(path, path_user + DIR_DELIM "mods")) + return true; + if (fs::PathStartsWith(path, path_user + DIR_DELIM "textures")) + return true; + if (fs::PathStartsWith(path, path_user + DIR_DELIM "worlds")) + return true; + + if (fs::PathStartsWith(path, fs::AbsolutePathPartial(porting::path_cache))) + return true; + + return false; +} + +bool MainMenuScripting::checkPathAccess(const std::string &abs_path, bool write_required, + bool *write_allowed) +{ + if (mayModifyPath(abs_path)) { + if (write_allowed) + *write_allowed = true; + return true; + } + // TODO?: global read access sounds too broad + return !write_required; +} + void MainMenuScripting::beforeClose() { SCRIPTAPI_PRECHECKHEADER diff --git a/src/script/scripting_mainmenu.h b/src/script/scripting_mainmenu.h index 8b7c0cfe8..f56c67727 100644 --- a/src/script/scripting_mainmenu.h +++ b/src/script/scripting_mainmenu.h @@ -6,6 +6,7 @@ #include "cpp_api/s_base.h" #include "cpp_api/s_mainmenu.h" +#include "cpp_api/s_security.h" #include "cpp_api/s_async.h" /*****************************************************************************/ @@ -14,7 +15,8 @@ class MainMenuScripting : virtual public ScriptApiBase, - public ScriptApiMainMenu + public ScriptApiMainMenu, + public ScriptApiSecurity { public: MainMenuScripting(GUIEngine* guiengine); @@ -29,6 +31,19 @@ public: u32 queueAsync(std::string &&serialized_func, std::string &&serialized_param); + // Is the main menu allowed writeable access to this path? + static bool mayModifyPath(const std::string &path); + + // (public implementation so it can be used from AsyncEngine) + static bool checkPathAccess(const std::string &abs_path, bool write_required, + bool *write_allowed); + +protected: + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override { + return checkPathAccess(abs_path, write_required, write_allowed); + } + private: void initializeModApi(lua_State *L, int top); static void registerLuaClasses(lua_State *L, int top); diff --git a/src/script/scripting_pause_menu.cpp b/src/script/scripting_pause_menu.cpp new file mode 100644 index 000000000..b86510bcd --- /dev/null +++ b/src/script/scripting_pause_menu.cpp @@ -0,0 +1,70 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#include "scripting_pause_menu.h" +#include "client/client.h" +#include "cpp_api/s_internal.h" +#include "filesys.h" +#include "lua_api/l_client_common.h" +#include "lua_api/l_menu_common.h" +#include "lua_api/l_pause_menu.h" +#include "lua_api/l_settings.h" +#include "lua_api/l_util.h" +#include "porting.h" + +PauseMenuScripting::PauseMenuScripting(Client *client): + ScriptApiBase(ScriptingType::PauseMenu) +{ + setGameDef(client); + + SCRIPTAPI_PRECHECKHEADER + + initializeSecurity(); + + lua_getglobal(L, "core"); + int top = lua_gettop(L); + + // Initialize our lua_api modules + initializeModApi(L, top); + lua_pop(L, 1); + + // Push builtin initialization type + lua_pushstring(L, "pause_menu"); + lua_setglobal(L, "INIT"); + + infostream << "SCRIPTAPI: Initialized pause menu modules" << std::endl; +} + +void PauseMenuScripting::initializeModApi(lua_State *L, int top) +{ + // Register reference classes (userdata) + LuaSettings::Register(L); + + // Initialize mod API modules + ModApiPauseMenu::Initialize(L, top); + ModApiMenuCommon::Initialize(L, top); + ModApiClientCommon::Initialize(L, top); + ModApiUtil::Initialize(L, top); +} + +void PauseMenuScripting::loadBuiltin() +{ + loadScript(Client::getBuiltinLuaPath() + DIR_DELIM "init.lua"); + checkSetByBuiltin(); +} + +bool PauseMenuScripting::checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) +{ + // NOTE: The pause menu env is on the same level of trust as the mainmenu env. + // However, since it doesn't need anything else at the moment, there's no + // reason to give it access to anything else. + // See also: `MainMenuScripting::mayModifyPath` for similar, but less restricted checks. + + if (write_required) + return false; + + std::string path_builtin = fs::AbsolutePath(Client::getBuiltinLuaPath()); + return !path_builtin.empty() && fs::PathStartsWith(abs_path, path_builtin); +} diff --git a/src/script/scripting_pause_menu.h b/src/script/scripting_pause_menu.h new file mode 100644 index 000000000..aeb1e65b6 --- /dev/null +++ b/src/script/scripting_pause_menu.h @@ -0,0 +1,28 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 grorp + +#pragma once + +#include "cpp_api/s_base.h" +#include "cpp_api/s_client_common.h" +#include "cpp_api/s_pause_menu.h" +#include "cpp_api/s_security.h" + +class PauseMenuScripting: + virtual public ScriptApiBase, + public ScriptApiPauseMenu, + public ScriptApiClientCommon, + public ScriptApiSecurity +{ +public: + PauseMenuScripting(Client *client); + void loadBuiltin(); + +protected: + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override; + +private: + void initializeModApi(lua_State *L, int top); +}; diff --git a/src/script/scripting_server.h b/src/script/scripting_server.h index 54093e84a..6c0583553 100644 --- a/src/script/scripting_server.h +++ b/src/script/scripting_server.h @@ -50,6 +50,15 @@ public: u32 queueAsync(std::string &&serialized_func, PackedValue *param, const std::string &mod_origin); +protected: + // from ScriptApiSecurity: + bool checkPathInternal(const std::string &abs_path, bool write_required, + bool *write_allowed) override { + return ScriptApiSecurity::checkPathWithGamedef(getStack(), + abs_path, write_required, write_allowed); + } + bool modNamesAreTrusted() override { return true; } + private: void InitializeModApi(lua_State *L, int top); diff --git a/src/serialization.h b/src/serialization.h index ce841ee9f..9da974e52 100644 --- a/src/serialization.h +++ b/src/serialization.h @@ -50,23 +50,30 @@ 28: Added "private" flag to NodeMetadata 29: Switched compression to zstd, a bit of reorganization */ + // This represents an uninitialized or invalid format -#define SER_FMT_VER_INVALID 255 +constexpr u8 SER_FMT_VER_INVALID = 255; // Highest supported serialization version -#define SER_FMT_VER_HIGHEST_READ 29 +constexpr u8 SER_FMT_VER_HIGHEST_READ = 29; // Saved on disk version -#define SER_FMT_VER_HIGHEST_WRITE 29 +constexpr u8 SER_FMT_VER_HIGHEST_WRITE = 29; // Lowest supported serialization version -#define SER_FMT_VER_LOWEST_READ 0 +constexpr u8 SER_FMT_VER_LOWEST_READ = 0; // Lowest serialization version for writing // Can't do < 24 anymore; we have 16-bit dynamically allocated node IDs // in memory; conversion just won't work in this direction. -#define SER_FMT_VER_LOWEST_WRITE 24 +constexpr u8 SER_FMT_VER_LOWEST_WRITE = 24; -inline bool ser_ver_supported(s32 v) { +inline bool ser_ver_supported_read(s32 v) +{ return v >= SER_FMT_VER_LOWEST_READ && v <= SER_FMT_VER_HIGHEST_READ; } +inline bool ser_ver_supported_write(s32 v) +{ + return v >= SER_FMT_VER_LOWEST_WRITE && v <= SER_FMT_VER_HIGHEST_WRITE; +} + /* Compression functions */ diff --git a/src/server.cpp b/src/server.cpp index 287a66551..53178cf1c 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -11,6 +11,7 @@ #include "irr_v3d.h" #include "irr_v2d.h" #include "network/connection.h" +#include "network/networkpacket.h" #include "network/networkprotocol.h" #include "network/serveropcodes.h" #include "server/ban.h" @@ -24,6 +25,7 @@ #include "filesys.h" #include "mapblock.h" #include "server/serveractiveobject.h" +#include "serialization.h" // SER_FMT_VER_INVALID #include "settings.h" #include "profiler.h" #include "log.h" @@ -46,7 +48,7 @@ #include "defaultsettings.h" #include "server/mods.h" #include "util/base64.h" -#include "util/sha1.h" +#include "util/hashing.h" #include "util/hex.h" #include "database/database.h" #include "chatmessage.h" @@ -819,6 +821,11 @@ void Server::AsyncRunStep(float dtime, bool initial_step) ZoneScoped; auto framemarker = FrameMarker("Server::AsyncRunStep()-frame").started(); + if (!m_async_fatal_error.get().empty()) { + infostream << "Refusing server step in error state" << std::endl; + return; + } + if (!m_sendblocks_thead) { TimeTaker timer_step("Server step: SendBlocks"); @@ -856,9 +863,10 @@ void Server::AsyncRunStep(float dtime, bool initial_step) Send to clients at constant intervals */ + static const float time_send_interval = 5.0f; m_time_of_day_send_timer -= dtime; - if (m_time_of_day_send_timer < 0.0) { - m_time_of_day_send_timer = g_settings->getFloat("time_send_interval"); + if (m_time_of_day_send_timer < 0) { + m_time_of_day_send_timer = time_send_interval; u16 time = m_env->getTimeOfDay(); float time_speed = g_settings->getFloat("time_speed"); SendTimeOfDay(PEER_ID_INEXISTENT, time, time_speed); @@ -1481,24 +1489,25 @@ void Server::yieldToOtherThreads(float dtime) g_profiler->avg("Server::yieldTo...() progress [#]", qs_initial - qs); } -PlayerSAO* Server::StageTwoClientInit(session_t peer_id) +PlayerSAO *Server::StageTwoClientInit(session_t peer_id) { std::string playername; - PlayerSAO *playersao = NULL; + std::unique_ptr sao; { ClientInterface::AutoLock clientlock(m_clients); RemoteClient* client = m_clients.lockedGetClientNoEx(peer_id, CS_InitDone); if (client) { playername = client->getName(); - playersao = emergePlayer(playername.c_str(), peer_id, client->net_proto_version); + sao = emergePlayer(playername.c_str(), peer_id, client->net_proto_version); } } - RemotePlayer *player = m_env->getPlayer(playername, true); + RemotePlayer *player = sao ? sao->getPlayer() : nullptr; // If failed, cancel - if (!playersao || !player) { - if (player && player->getPeerId() != PEER_ID_INEXISTENT) { + if (!player) { + RemotePlayer *joined = m_env->getPlayer(playername.c_str()); + if (joined && joined->getPeerId() != PEER_ID_INEXISTENT) { actionstream << "Server: Failed to emerge player \"" << playername << "\" (player allocated to another client)" << std::endl; DenyAccess(peer_id, SERVER_ACCESSDENIED_ALREADY_CONNECTED); @@ -1510,6 +1519,19 @@ PlayerSAO* Server::StageTwoClientInit(session_t peer_id) return nullptr; } + // Add player to environment + m_env->addPlayer(player); + + /* Clean up old HUD elements from previous sessions */ + player->clearHud(); + + /* Add object to environment */ + PlayerSAO *playersao = sao.get(); + m_env->addActiveObject(std::move(sao)); + + if (playersao->isNewPlayer()) + m_script->on_newplayer(playersao); + /* Send complete position information */ @@ -2922,11 +2944,13 @@ size_t Server::addMediaFile(const std::string &filename, } // If name is not in a supported format, ignore it const char *supported_ext[] = { - ".png", ".jpg", ".bmp", ".tga", + ".png", ".jpg", ".tga", ".ogg", ".x", ".b3d", ".obj", ".gltf", ".glb", // Translation file formats ".tr", ".po", ".mo", + // Fonts + ".ttf", ".woff", NULL }; if (removeStringEnd(filename, supported_ext).empty()) { @@ -2948,21 +2972,11 @@ size_t Server::addMediaFile(const std::string &filename, return false; } - const char *deprecated_ext[] = { ".bmp", nullptr }; - if (!removeStringEnd(filename, deprecated_ext).empty()) - { - warningstream << "Media file \"" << filename << "\" is using a" - " deprecated format and will stop working in the future." << std::endl; - } - - class SHA1 sha1; - sha1.addBytes(filedata); - - std::string digest = sha1.getDigest(); - std::string sha1_base64 = base64_encode(digest); - std::string sha1_hex = hex_encode(digest); + std::string sha1 = hashing::sha1(filedata); + std::string sha1_base64 = base64_encode(sha1); + std::string sha1_hex = hex_encode(sha1); if (digest_to) - *digest_to = digest; + *digest_to = sha1; // Put in list m_media[filename] = MediaInfo(filepath, sha1_base64); @@ -3019,9 +3033,9 @@ void Server::sendMediaAnnouncement(session_t peer_id, const std::string &lang_co std::string lang_suffixes[3]; for (size_t i = 0; i < 3; i++) { lang_suffixes[i].append(".").append(lang_code).append(translation_formats[i]); - } + } - auto include = [&] (const std::string &name, const MediaInfo &info) -> bool { + auto include = [&] (const std::string &name, const MediaInfo &info) -> bool { if (info.no_announce) return false; for (size_t j = 0; j < 3; j++) { @@ -3670,9 +3684,7 @@ void Server::reportPrivsModified(const std::string &name) PlayerSAO *sao = player->getPlayerSAO(); if(!sao) return; - sao->updatePrivileges( - getPlayerEffectivePrivs(name), - isSingleplayer()); + sao->updatePrivileges(getPlayerEffectivePrivs(name)); } } @@ -4284,6 +4296,14 @@ std::string Server::getBuiltinLuaPath() return porting::path_share + DIR_DELIM + "builtin"; } +void Server::setAsyncFatalError(const std::string &error) +{ + m_async_fatal_error.set(error); + // make sure server steps stop happening immediately + if (m_thread) + m_thread->stop(); +} + // Not thread-safe. void Server::addShutdownError(const ModError &e) { @@ -4305,14 +4325,24 @@ void Server::addShutdownError(const ModError &e) v3f Server::findSpawnPos(const std::string &player_name) { ServerMap &map = m_env->getServerMap(); + + std::optional staticSpawnPoint; + if (g_settings->getV3FNoEx("static_spawnpoint", staticSpawnPoint) && staticSpawnPoint.has_value()) + { + return *staticSpawnPoint * BS; + } + v3f nodeposf; pos_t find = 0; g_settings->getPosNoEx("static_spawnpoint_find", find); - if (g_settings->getV3FNoEx("static_spawnpoint_" + player_name, nodeposf)) { + std::optional nodeposfo; + if (g_settings->getV3FNoEx("static_spawnpoint_" + player_name, nodeposfo)) { + nodeposf = *nodeposfo; if (!find) return nodeposf * BS; - } else if (g_settings->getV3FNoEx("static_spawnpoint", nodeposf)) { + } else if (g_settings->getV3FNoEx("static_spawnpoint", nodeposfo)) { + nodeposf = *nodeposfo; if (!find) return nodeposf * BS; } @@ -4386,9 +4416,6 @@ v3f Server::findSpawnPos(const std::string &player_name) } } - return nodeposf; - - if (is_good) return nodeposf; @@ -4509,7 +4536,8 @@ void Server::requestShutdown(const std::string &msg, bool reconnect, float delay m_shutdown_state.trigger(delay, msg, reconnect); } -PlayerSAO* Server::emergePlayer(const char *name, session_t peer_id, u16 proto_version) +std::unique_ptr Server::emergePlayer(const char *name, session_t peer_id, + u16 proto_version) { /* Try to get an existing player @@ -4559,20 +4587,13 @@ PlayerSAO* Server::emergePlayer(const char *name, session_t peer_id, u16 proto_v player = new RemotePlayer(name, idef()); } - bool newplayer = false; - // Load player - PlayerSAO *playersao = m_env->loadPlayer(player, &newplayer, peer_id, isSingleplayer()); + auto playersao = m_env->loadPlayer(player, peer_id); // Complete init with server parts playersao->finalize(player, getPlayerEffectivePrivs(player->getName())); player->protocol_version = proto_version; - /* Run scripts */ - if (newplayer) { - m_script->on_newplayer(playersao); - } - return playersao; } @@ -4769,7 +4790,7 @@ ModStorageDatabase *Server::openModStorageDatabase(const std::string &world_path warningstream << "/!\\ You are using the old mod storage files backend. " << "This backend is deprecated and may be removed in a future release /!\\" << std::endl << "Switching to SQLite3 is advised, " - << "please read http://wiki.minetest.net/Database_backends." << std::endl; + << "please read https://wiki.luanti.org/Database_backends." << std::endl; return openModStorageDatabase(backend, world_path, world_mt); } diff --git a/src/server.h b/src/server.h index 2001375fd..7cbed2c12 100644 --- a/src/server.h +++ b/src/server.h @@ -8,6 +8,7 @@ #include "stat.h" #include "network/fm_lan.h" #include +#include "network/fm_networkprotocol.h" //== @@ -15,7 +16,6 @@ #include "map.h" #include "hud.h" #include "gamedef.h" -#include "serialization.h" // For SER_FMT_VER_INVALID #include "content/mods.h" #include "inventorymanager.h" #include "content/subgames.h" @@ -31,6 +31,7 @@ #include "chatmessage.h" #include "sound.h" #include "translation.h" +#include "script/common/c_types.h" // LuaError #include #include #include @@ -228,7 +229,9 @@ public: u16 Receive(float min_time); void yieldToOtherThreads(float dtime); - PlayerSAO* StageTwoClientInit(session_t peer_id); + // Full player initialization after they processed all static media + // This is a helper function for TOSERVER_CLIENT_READY + PlayerSAO *StageTwoClientInit(session_t peer_id); /* * Command Handlers @@ -376,8 +379,7 @@ public: void setStepSettings(StepSettings spdata) { m_step_settings.store(spdata); } StepSettings getStepSettings() { return m_step_settings.load(); } - inline void setAsyncFatalError(const std::string &error) - { m_async_fatal_error.set(error); } + void setAsyncFatalError(const std::string &error); inline void setAsyncFatalError(const LuaError &e) { setAsyncFatalError(std::string("Lua: ") + e.what()); @@ -667,7 +669,8 @@ private: Call with env and con locked. */ - PlayerSAO *emergePlayer(const char *name, session_t peer_id, u16 proto_version); + std::unique_ptr emergePlayer(const char *name, session_t peer_id, + u16 proto_version); /* Variables diff --git a/src/server/ban.cpp b/src/server/ban.cpp index 737f5a57e..e63c4708f 100644 --- a/src/server/ban.cpp +++ b/src/server/ban.cpp @@ -7,11 +7,11 @@ #include #include "threading/mutex_auto_lock.h" #include -#include #include "util/strfnd.h" #include "util/string.h" #include "log.h" #include "filesys.h" +#include "exceptions.h" BanManager::BanManager(const std::string &banfilepath): m_banfilepath(banfilepath) @@ -68,13 +68,13 @@ void BanManager::save() m_modified = false; } -bool BanManager::isIpBanned(const std::string &ip) +bool BanManager::isIpBanned(const std::string &ip) const { MutexAutoLock lock(m_mutex); return m_ips.find(ip) != m_ips.end(); } -std::string BanManager::getBanDescription(const std::string &ip_or_name) +std::string BanManager::getBanDescription(const std::string &ip_or_name) const { MutexAutoLock lock(m_mutex); std::string s; @@ -88,10 +88,10 @@ std::string BanManager::getBanDescription(const std::string &ip_or_name) return s; } -std::string BanManager::getBanName(const std::string &ip) +std::string BanManager::getBanName(const std::string &ip) const { MutexAutoLock lock(m_mutex); - StringMap::iterator it = m_ips.find(ip); + StringMap::const_iterator it = m_ips.find(ip); if (it == m_ips.end()) return ""; return it->second; @@ -118,9 +118,8 @@ void BanManager::remove(const std::string &ip_or_name) } -bool BanManager::isModified() +bool BanManager::isModified() const { MutexAutoLock lock(m_mutex); return m_modified; } - diff --git a/src/server/ban.h b/src/server/ban.h index 2e2c56d00..8f7f8d36e 100644 --- a/src/server/ban.h +++ b/src/server/ban.h @@ -7,9 +7,6 @@ #include #include #include "util/string.h" -#include "threading/thread.h" -#include "exceptions.h" -#include #include #include @@ -20,16 +17,16 @@ public: ~BanManager(); void load(); void save(); - bool isIpBanned(const std::string &ip); + bool isIpBanned(const std::string &ip) const; // Supplying ip_or_name = "" lists all bans. - std::string getBanDescription(const std::string &ip_or_name); - std::string getBanName(const std::string &ip); + std::string getBanDescription(const std::string &ip_or_name) const; + std::string getBanName(const std::string &ip) const; void add(const std::string &ip, const std::string &name); void remove(const std::string &ip_or_name); - bool isModified(); + bool isModified() const; private: - std::mutex m_mutex; + mutable std::mutex m_mutex; std::string m_banfilepath = ""; StringMap m_ips; bool m_modified = false; diff --git a/src/server/clientiface.cpp b/src/server/clientiface.cpp index 8090f94f7..aee0df1ab 100644 --- a/src/server/clientiface.cpp +++ b/src/server/clientiface.cpp @@ -6,9 +6,11 @@ #include "clientiface.h" #include "debug.h" #include "network/connection.h" +#include "network/networkpacket.h" #include "network/serveropcodes.h" #include "profiler.h" #include "remoteplayer.h" +#include "serialization.h" // SER_FMT_VER_INVALID #include "settings.h" #include "mapblock.h" #include "serverenvironment.h" @@ -52,6 +54,8 @@ std::string ClientInterface::state2Name(ClientState state) } RemoteClient::RemoteClient() : + serialization_version(SER_FMT_VER_INVALID), + m_pending_serialization_version(SER_FMT_VER_INVALID), m_max_simul_sends(g_settings->getU16("max_simultaneous_block_sends_per_client")), m_min_time_from_building( g_settings->getFloat("full_block_send_enable_min_time_from_building")), diff --git a/src/server/clientiface.h b/src/server/clientiface.h index 9eebb98ff..3de58e77a 100644 --- a/src/server/clientiface.h +++ b/src/server/clientiface.h @@ -16,26 +16,25 @@ #include "irr_v3d.h" // for irrlicht datatypes -#include "constants.h" -#include "serialization.h" // for SER_FMT_VER_INVALID -#include "network/networkpacket.h" -#include "network/networkprotocol.h" #include "network/address.h" +#include "network/networkprotocol.h" // session_t #include "porting.h" #include "threading/mutex_auto_lock.h" #include "clientdynamicinfo.h" #include -#include -#include -#include -#include #include #include +#include +#include +#include +#include +#include -class MapBlock; -class ServerEnvironment; class EmergeManager; +class MapBlock; +class NetworkPacket; +class ServerEnvironment; /* * State Transitions @@ -230,7 +229,7 @@ public: // Also, the client must be moved to some other container. session_t peer_id = PEER_ID_INEXISTENT; // The serialization version to use with the client - u8 serialization_version = SER_FMT_VER_INVALID; + u8 serialization_version; // std::atomic_ushort net_proto_version = 0; @@ -371,7 +370,7 @@ public: private: // Version is stored in here after INIT before INIT2 - u8 m_pending_serialization_version = SER_FMT_VER_INVALID; + u8 m_pending_serialization_version; /* current state of client */ std::atomic m_state = CS_Created; diff --git a/src/server/luaentity_sao.cpp b/src/server/luaentity_sao.cpp index 71013e32e..6d4d558d8 100644 --- a/src/server/luaentity_sao.cpp +++ b/src/server/luaentity_sao.cpp @@ -160,12 +160,11 @@ void LuaEntitySAO::step(float dtime, bool send_recommended) aabb3f box = m_prop.collisionbox; box.MinEdge *= BS; box.MaxEdge *= BS; - f32 pos_max_d = BS*0.25; // Distance per iteration v3f p_pos = getBasePosition(); v3f p_velocity = m_velocity; v3f p_acceleration = m_acceleration; moveresult = collisionMoveSimple(m_env, m_env->getGameDef(), - pos_max_d, box, m_prop.stepheight, dtime, + box, m_prop.stepheight, dtime, &p_pos, &p_velocity, p_acceleration, this, m_prop.collideWithObjects); moveresult_p = &moveresult; diff --git a/src/server/mods.cpp b/src/server/mods.cpp index 66e93c6d5..54904ed42 100644 --- a/src/server/mods.cpp +++ b/src/server/mods.cpp @@ -93,5 +93,6 @@ void ServerModManager::getModsMediaPaths(std::vector &paths) const fs::GetRecursiveDirs(paths, spec.path + DIR_DELIM + "media"); fs::GetRecursiveDirs(paths, spec.path + DIR_DELIM + "models"); fs::GetRecursiveDirs(paths, spec.path + DIR_DELIM + "locale"); + fs::GetRecursiveDirs(paths, spec.path + DIR_DELIM + "fonts"); } } diff --git a/src/server/player_sao.cpp b/src/server/player_sao.cpp index 76f85f64c..9f79252e3 100644 --- a/src/server/player_sao.cpp +++ b/src/server/player_sao.cpp @@ -34,7 +34,6 @@ PlayerSAO::PlayerSAO(ServerEnvironment *env_, RemotePlayer *player_, session_t p m_prop.textures.emplace_back("player.png"); m_prop.textures.emplace_back("player_back.png"); m_prop.colors.clear(); - m_prop.colors.emplace_back(255, 255, 255, 255); m_prop.spritediv = v2s16(1,1); m_prop.eye_height = 1.625f; // End of default appearance diff --git a/src/server/player_sao.h b/src/server/player_sao.h index 1f6b3ed00..bde44f336 100644 --- a/src/server/player_sao.h +++ b/src/server/player_sao.h @@ -169,12 +169,14 @@ public: // Other - void updatePrivileges(const std::set &privs, bool is_singleplayer) + void updatePrivileges(const std::set &privs) { m_privs = privs; - m_is_singleplayer = is_singleplayer; } + inline void setNewPlayer() { m_is_new_player = true; } + inline bool isNewPlayer() { return m_is_new_player; } + bool getCollisionBox(aabb3f *toset) const override; bool getSelectionBox(aabb3f *toset) const override; bool collideWithObjects() const override { return true; } @@ -216,7 +218,8 @@ public: // Cached privileges for enforcement std::set m_privs; - bool m_is_singleplayer; + const bool m_is_singleplayer; + bool m_is_new_player = false; std::atomic_uint16_t m_breath = PLAYER_MAX_BREATH_DEFAULT; std::atomic m_pitch {0.0f}; diff --git a/src/server/rollback.cpp b/src/server/rollback.cpp index 8b71da45a..13c942ff4 100644 --- a/src/server/rollback.cpp +++ b/src/server/rollback.cpp @@ -234,7 +234,12 @@ bool RollbackManager::createTables() " FOREIGN KEY (`oldNode`) REFERENCES `node`(`id`),\n" " FOREIGN KEY (`newNode`) REFERENCES `node`(`id`)\n" ");\n" - "CREATE INDEX IF NOT EXISTS `actionIndex` ON `action`(`x`,`y`,`z`,`timestamp`,`actor`);\n", + // We run queries with the following filters: + // - `timestamp` >= ? AND `actor` = ? + // - `timestamp` >= ? + // - `timestamp` >= ? AND + "CREATE INDEX IF NOT EXISTS `actionIndex` ON `action`(`x`,`y`,`z`,`timestamp`,`actor`);\n" + "CREATE INDEX IF NOT EXISTS `actionTimestampActorIndex` ON `action`(`timestamp`,`actor`);\n", NULL, NULL, NULL)); verbosestream << "SQL Rollback: SQLite3 database structure was created" << std::endl; diff --git a/src/serverenvironment.cpp b/src/serverenvironment.cpp index 545705494..1b353bb11 100644 --- a/src/serverenvironment.cpp +++ b/src/serverenvironment.cpp @@ -587,14 +587,14 @@ void ServerEnvironment::init() warningstream << "/!\\ You are using old player file backend. " << "This backend is deprecated and will be removed in a future release /!\\" << std::endl << "Switching to SQLite3 or PostgreSQL is advised, " - << "please read http://wiki.minetest.net/Database_backends." << std::endl; + << "please read https://wiki.luanti.org/Database_backends." << std::endl; } if (auth_backend_name == "files") { warningstream << "/!\\ You are using old auth file backend. " << "This backend is deprecated and will be removed in a future release /!\\" << std::endl << "Switching to SQLite3 is advised, " - << "please read http://wiki.minetest.net/Database_backends." << std::endl; + << "please read https://wiki.luanti.org/Database_backends." << std::endl; } m_player_database = openPlayerDatabase(player_backend_name, world_path, conf); @@ -744,13 +744,13 @@ void ServerEnvironment::savePlayer(RemotePlayer *player) } } -PlayerSAO *ServerEnvironment::loadPlayer(RemotePlayer *player, bool *new_player, - session_t peer_id, bool is_singleplayer) +std::unique_ptr ServerEnvironment::loadPlayer(RemotePlayer *player, session_t peer_id) { - auto playersao = std::make_unique(this, player, peer_id, is_singleplayer); + auto playersao = std::make_unique(this, player, peer_id, m_server->isSingleplayer()); // Create player if it doesn't exist if (!m_player_database->loadPlayer(player, playersao.get())) { - *new_player = true; + playersao->setNewPlayer(); + // Set player position infostream << "Server: Finding spawn place for player \"" << player->getName() << "\"" << std::endl; @@ -769,20 +769,10 @@ PlayerSAO *ServerEnvironment::loadPlayer(RemotePlayer *player, bool *new_player, } } - // Add player to environment - addPlayer(player); - - /* Clean up old HUD elements from previous sessions */ - player->clearHud(); - - /* Add object to environment */ - PlayerSAO *ret = playersao.get(); - addActiveObject(std::move(playersao)); - // Update active blocks quickly for a bit so objects in those blocks appear on the client m_fast_active_block_divider = 10; - return ret; + return playersao; } void ServerEnvironment::saveMeta() @@ -1577,35 +1567,13 @@ void ServerEnvironment::step(float dtime, double uptime, unsigned int max_cycle_ } } - /* - Handle players + + /* + Update circuit */ - { -#if !NDEBUG - ScopeProfiler sp(g_profiler, "ServerEnv: move players", SPT_AVG); -#endif - const auto lock = m_players.lock_shared_rec(); - for (RemotePlayer *player : m_players) { - // Ignore disconnected players - if (!player || player->getPeerId() == PEER_ID_INEXISTENT) - continue; - - // Move - player->move(dtime, this, 100 * BS); - } - } - - /* - * Update circuit - */ - m_circuit.update(dtime); - -#if !ENABLE_THREADS - auto lockmap = m_map->m_nothread_locker.try_lock_unique_rec(); - if (!lockmap->owns_lock()) - return; -#endif + m_circuit.update(dtime); + /* Manage active block list */ @@ -2223,7 +2191,7 @@ void ServerEnvironment::getSelectedActiveObjects( auto process = [&] (ServerActiveObjectPtr obj) -> bool { if (obj->isGone()) return false; - aabb3f selection_box; + aabb3f selection_box{{0.0f, 0.0f, 0.0f}}; if (!obj->getSelectionBox(&selection_box)) return false; diff --git a/src/serverenvironment.h b/src/serverenvironment.h index e0959c32e..60775a2ee 100644 --- a/src/serverenvironment.h +++ b/src/serverenvironment.h @@ -269,8 +269,7 @@ public: // Save players void saveLoadedPlayers(bool force = false); void savePlayer(RemotePlayer *player); - PlayerSAO *loadPlayer(RemotePlayer *player, bool *new_player, session_t peer_id, - bool is_singleplayer); + std::unique_ptr loadPlayer(RemotePlayer *player, session_t peer_id); void addPlayer(RemotePlayer *player); void removePlayer(RemotePlayer *player); bool removePlayerFromDatabase(const std::string &name); diff --git a/src/servermap.h b/src/servermap.h index 588e7a5c1..317625894 100644 --- a/src/servermap.h +++ b/src/servermap.h @@ -12,8 +12,8 @@ #include #include "map.h" -#include "util/container.h" -#include "util/metricsbackend.h" +#include "util/container.h" // UniqueQueue +#include "util/metricsbackend.h" // ptr typedefs #include "map_settings_manager.h" #include "util/unordered_map_hash.h" diff --git a/src/settings.cpp b/src/settings.cpp index e31f6a50d..1c6a5acc9 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -559,7 +559,7 @@ v2f Settings::getV2F(const std::string &name) const } -v3f Settings::getV3F(const std::string &name) const +std::optional Settings::getV3F(const std::string &name) const { return str_to_v3f(get(name)); } @@ -657,7 +657,11 @@ bool Settings::getNoiseParamsFromGroup(const std::string &name, group->getFloatNoEx("offset", np.offset); group->getFloatNoEx("scale", np.scale); - group->getV3FNoEx("spread", np.spread); + + std::optional spread; + if (group->getV3FNoEx("spread", spread) && spread.has_value()) + np.spread = *spread; + group->getS32NoEx("seed", np.seed); group->getU16NoEx("octaves", np.octaves); group->getFloatNoEx("persistence", np.persist); @@ -840,7 +844,7 @@ bool Settings::getV2FNoEx(const std::string &name, v2f &val) const } -bool Settings::getV3FNoEx(const std::string &name, v3f &val) const +bool Settings::getV3FNoEx(const std::string &name, std::optional &val) const { try { val = getV3F(name); diff --git a/src/settings.h b/src/settings.h index 8ef2de00f..73385890e 100644 --- a/src/settings.h +++ b/src/settings.h @@ -158,7 +158,7 @@ public: float getFloat(const std::string &name) const; float getFloat(const std::string &name, float min, float max) const; v2f getV2F(const std::string &name) const; - v3f getV3F(const std::string &name) const; + std::optional getV3F(const std::string &name) const; u32 getFlagStr(const std::string &name, const FlagDesc *flagdesc, u32 *flagmask) const; bool getNoiseParams(const std::string &name, NoiseParams &np) const; @@ -190,7 +190,7 @@ public: bool getFloatNoEx(const std::string &name, float &val) const; bool getFloatNoEx(const std::string &name, double &val) const; bool getV2FNoEx(const std::string &name, v2f &val) const; - bool getV3FNoEx(const std::string &name, v3f &val) const; + bool getV3FNoEx(const std::string &name, std::optional &val) const; // Like other getters, but handling each flag individualy: // 1) Read default flags (or 0) diff --git a/src/settings_translation_file.cpp b/src/settings_translation_file.cpp index 8ee6c78d0..4935a2e1d 100644 --- a/src/settings_translation_file.cpp +++ b/src/settings_translation_file.cpp @@ -76,10 +76,10 @@ fake_function() { gettext("Viewing range"); gettext("View distance in nodes."); gettext("Undersampling"); - gettext("Undersampling is similar to using a lower screen resolution, but it applies\nto the game world only, keeping the GUI intact.\nIt should give a significant performance boost at the cost of less detailed image.\nHigher values result in a less detailed image."); + gettext("Undersampling is similar to using a lower screen resolution, but it applies\nto the game world only, keeping the GUI intact.\nIt should give a significant performance boost at the cost of less detailed image.\nHigher values result in a less detailed image.\nNote: Undersampling is currently not supported if the \"3d_mode\" setting is set\nto a non-default value."); gettext("3D"); gettext("3D mode"); - gettext("3D support.\nCurrently supported:\n- none: no 3d output.\n- anaglyph: cyan/magenta color 3d.\n- interlaced: odd/even line based polarization screen support.\n- topbottom: split screen top/bottom.\n- sidebyside: split screen side by side.\n- crossview: Cross-eyed 3d\nNote that the interlaced mode requires shaders to be enabled."); + gettext("3D support.\nCurrently supported:\n- none: no 3d output.\n- anaglyph: cyan/magenta color 3d.\n- interlaced: odd/even line based polarization screen support.\n- topbottom: split screen top/bottom.\n- sidebyside: split screen side by side.\n- crossview: Cross-eyed 3d"); gettext("3D mode parallax strength"); gettext("Strength of 3D mode parallax."); gettext("Bobbing"); @@ -124,10 +124,8 @@ fake_function() { gettext("Fog start"); gettext("Fraction of the visible distance at which fog starts to be rendered"); gettext("Clouds"); - gettext("Clouds"); - gettext("Clouds are a client-side effect."); gettext("3D clouds"); - gettext("Use 3D cloud look instead of flat."); + gettext("Allow clouds to look 3D instead of flat."); gettext("Soft clouds"); gettext("Use smooth cloud shading."); gettext("Filtering and Antialiasing"); @@ -138,9 +136,9 @@ fake_function() { gettext("Trilinear filtering"); gettext("Use trilinear filtering when scaling textures.\nIf both bilinear and trilinear filtering are enabled, trilinear filtering\nis applied."); gettext("Anisotropic filtering"); - gettext("Use anisotropic filtering when looking at textures from an angle."); + gettext("Use anisotropic filtering when looking at textures from an angle.\nThis provides a significant improvement when used together with mipmapping."); gettext("Antialiasing method"); - gettext("Select the antialiasing method to apply.\n\n* None - No antialiasing (default)\n\n* FSAA - Hardware-provided full-screen antialiasing\n(incompatible with Post Processing and Undersampling)\nA.K.A multi-sample antialiasing (MSAA)\nSmoothens out block edges but does not affect the insides of textures.\nA restart is required to change this option.\n\n* FXAA - Fast approximate antialiasing (requires shaders)\nApplies a post-processing filter to detect and smoothen high-contrast edges.\nProvides balance between speed and image quality.\n\n* SSAA - Super-sampling antialiasing (requires shaders)\nRenders higher-resolution image of the scene, then scales down to reduce\nthe aliasing effects. This is the slowest and the most accurate method."); + gettext("Select the antialiasing method to apply.\n\n* None - No antialiasing (default)\n\n* FSAA - Hardware-provided full-screen antialiasing\nA.K.A multi-sample antialiasing (MSAA)\nSmoothens out block edges but does not affect the insides of textures.\n\nIf Post Processing is disabled, changing FSAA requires a restart.\nAlso, if Post Processing is disabled, FSAA will not work together with\nundersampling or a non-default \"3d_mode\" setting.\n\n* FXAA - Fast approximate antialiasing\nApplies a post-processing filter to detect and smoothen high-contrast edges.\nProvides balance between speed and image quality.\n\n* SSAA - Super-sampling antialiasing\nRenders higher-resolution image of the scene, then scales down to reduce\nthe aliasing effects. This is the slowest and the most accurate method."); gettext("Anti-aliasing scale"); gettext("Defines the size of the sampling grid for FSAA and SSAA antialiasing methods.\nValue of 2 means taking 2x2 = 4 samples."); gettext("Occlusion Culling"); @@ -159,8 +157,6 @@ fake_function() { gettext("Enable smooth lighting with simple ambient occlusion."); gettext("Tradeoffs for performance"); gettext("Enables tradeoffs that reduce CPU load or increase rendering performance\nat the expense of minor visual glitches that do not impact game playability."); - gettext("Digging particles"); - gettext("Adds particles when digging a node."); gettext("Waving Nodes"); gettext("Waving leaves"); gettext("Set to true to enable waving leaves."); @@ -185,14 +181,10 @@ fake_function() { gettext("Texture size to render the shadow map on.\nThis must be a power of two.\nBigger numbers create better shadows but it is also more expensive."); gettext("Shadow map texture in 32 bits"); gettext("Sets shadow texture quality to 32 bits.\nOn false, 16 bits texture will be used.\nThis can cause much more artifacts in the shadow."); - gettext("Poisson filtering"); - gettext("Enable Poisson disk filtering.\nOn true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF filtering."); gettext("Shadow filter quality"); gettext("Define shadow filtering quality.\nThis simulates the soft shadows effect by applying a PCF or Poisson disk\nbut also uses more resources."); gettext("Colored shadows"); - gettext("Enable colored shadows.\nOn true translucent nodes cast colored shadows. This is expensive."); - gettext("Map shadows update frames"); - gettext("Spread a complete update of shadow map over given number of frames.\nHigher values might make shadows laggy, lower values\nwill consume more resources.\nMinimum value: 1; maximum value: 16"); + gettext("Enable colored shadows for transculent nodes.\nThis is expensive."); gettext("Soft shadow radius"); gettext("Set the soft shadow radius size.\nLower values mean sharper shadows, bigger values mean softer shadows.\nMinimum value: 1.0; maximum value: 15.0"); gettext("Sky Body Orbit Tilt"); @@ -225,7 +217,7 @@ fake_function() { gettext("Volume when unfocused"); gettext("Volume multiplier when the window is unfocused."); gettext("Mute sound"); - gettext("Whether to mute sounds. You can unmute sounds at any time, unless the\nsound system is disabled (enable_sound=false).\nIn-game, you can toggle the mute state with the mute key or by using the\npause menu."); + gettext("Whether to mute sounds. You can unmute sounds at any time.\nIn-game, you can toggle the mute state with the mute key or by using the\npause menu."); gettext("User Interfaces"); gettext("Language"); gettext("Set the language. By default, the system language is used.\nA restart is required after changing this."); @@ -244,8 +236,6 @@ fake_function() { gettext("Formspec full-screen background color (R,G,B)."); gettext("GUI scaling filter"); gettext("When gui_scaling_filter is true, all GUI images need to be\nfiltered in software, but some images are generated directly\nto hardware (e.g. render-to-texture for nodes in inventory)."); - gettext("GUI scaling filter txr2img"); - gettext("When gui_scaling_filter_txr2img is true, copy those images\nfrom hardware to software for scaling. When false, fall back\nto the old scaling method, for video drivers that don't\nproperly support downloading textures back from hardware."); gettext("Tooltip delay"); gettext("Delay showing tooltips, stated in milliseconds."); gettext("Append item name"); @@ -284,7 +274,7 @@ fake_function() { gettext("Enable updates available indicator on content tab"); gettext("If enabled and you have ContentDB packages installed, Luanti may contact ContentDB to\ncheck for package updates when opening the mainmenu."); gettext("ContentDB Flag Blacklist"); - gettext("Comma-separated list of flags to hide in the content repository.\n\"nonfree\" can be used to hide packages which do not qualify as 'free software',\nas defined by the Free Software Foundation.\nYou can also specify content ratings.\nThese flags are independent from Luanti versions,\nso see a full list at https://content.minetest.net/help/content_flags/"); + gettext("Comma-separated list of flags to hide in the content repository.\n\"nonfree\" can be used to hide packages which do not qualify as 'free software',\nas defined by the Free Software Foundation.\nYou can also specify content ratings.\nThese flags are independent from Luanti versions,\nso see a full list at https://content.luanti.org/help/content_flags/"); gettext("ContentDB Max Concurrent Downloads"); gettext("Maximum number of concurrent downloads. Downloads exceeding this limit will be queued.\nThis should be lower than curl_parallel_limit."); gettext("Client and Server"); @@ -294,12 +284,12 @@ fake_function() { gettext("Serverlist URL"); gettext("URL to the server list displayed in the Multiplayer Tab."); gettext("Enable split login/register"); - gettext("If enabled, account registration is separate from login in the UI.\nIf disabled, new accounts will be registered automatically when logging in."); + gettext("If enabled, server account registration is separate from login in the UI.\nIf disabled, connecting to a server will automatically register a new account."); gettext("Update information URL"); gettext("URL to JSON file which provides information about the newest Luanti release.\nIf this is empty the engine will never check for updates."); gettext("Server"); gettext("Admin name"); - gettext("Name of the player.\nWhen running a server, clients connecting with this name are admins.\nWhen starting from the main menu, this is overridden."); + gettext("Name of the player.\nWhen running a server, a client connecting with this name is admin.\nWhen starting from the main menu, this is overridden."); gettext("Serverlist and MOTD"); gettext("Server name"); gettext("Name of the server, to be displayed when players join and in the serverlist."); @@ -333,7 +323,7 @@ fake_function() { gettext("Remote media"); gettext("Specifies URL from which client fetches media instead of using UDP.\n$filename should be accessible from $remote_media$filename via cURL\n(obviously, remote_media should end with a slash).\nFiles that are not present will be fetched the usual way."); gettext("IPv6 server"); - gettext("Enable/disable running an IPv6 server.\nIgnored if bind_address is set.\nNeeds enable_ipv6 to be enabled."); + gettext("Enable/disable running an IPv6 server.\nIgnored if bind_address is set."); gettext("Server Security"); gettext("Default password"); gettext("New users need to input this password."); @@ -851,24 +841,24 @@ fake_function() { gettext("Ignore world errors"); gettext("If enabled, invalid world data won't cause the server to shut down.\nOnly enable this if you know what you are doing."); gettext("Graphics"); - gettext("Shaders"); - gettext("Shaders are a fundamental part of rendering and enable advanced visual effects."); + gettext("OpenGL debug"); + gettext("Enables debug and error-checking in the OpenGL driver."); gettext("Shader path"); gettext("Path to shader directory. If no path is defined, default location will be used."); gettext("Video driver"); gettext("The rendering back-end.\nNote: A restart is required after changing this!\nOpenGL is the default for desktop, and OGLES2 for Android."); gettext("Transparency Sorting Distance"); gettext("Distance in nodes at which transparency depth sorting is enabled.\nUse this to limit the performance impact of transparency depth sorting.\nSet to 0 to disable it entirely."); + gettext("Transparency Sorting Group by Buffers"); + gettext("Draw transparency sorted triangles grouped by their mesh buffers.\nThis breaks transparency sorting between mesh buffers, but avoids situations\nwhere transparency sorting would be very slow otherwise."); gettext("Cloud radius"); gettext("Radius of cloud area stated in number of 64 node cloud squares.\nValues larger than 26 will start to produce sharp cutoffs at cloud area corners."); - gettext("Desynchronize block animation"); - gettext("Whether node texture animations should be desynchronized per mapblock."); - gettext("Mesh cache"); - gettext("Enables caching of facedir rotated meshes.\nThis is only effective with shaders disabled."); gettext("Mapblock mesh generation delay"); gettext("Delay between mesh updates on the client in ms. Increasing this will slow\ndown the rate of mesh updates, thus reducing jitter on slower clients."); gettext("Mapblock mesh generation threads"); gettext("Number of threads to use for mesh generation.\nValue of 0 (default) will let Luanti autodetect the number of available threads."); + gettext("Minimum vertex count for mesh buffers"); + gettext("All mesh buffers with less than this number of vertices will be merged\nduring map rendering. This improves rendering performance."); gettext("Minimap scan height"); gettext("True = 256\nFalse = 128\nUsable to make minimap smoother on slower machines."); gettext("World-aligned textures mode"); @@ -876,11 +866,15 @@ fake_function() { gettext("Autoscaling mode"); gettext("World-aligned textures may be scaled to span several nodes. However,\nthe server may not send the scale you want, especially if you use\na specially-designed texture pack; with this option, the client tries\nto determine the scale automatically basing on the texture size.\nSee also texture_min_size.\nWarning: This option is EXPERIMENTAL!"); gettext("Base texture size"); - gettext("When using bilinear/trilinear/anisotropic filters, low-resolution textures\ncan be blurred, so automatically upscale them with nearest-neighbor\ninterpolation to preserve crisp pixels. This sets the minimum texture size\nfor the upscaled textures; higher values look sharper, but require more\nmemory. Powers of 2 are recommended. This setting is ONLY applied if\nbilinear/trilinear/anisotropic filtering is enabled.\nThis is also used as the base node texture size for world-aligned\ntexture autoscaling."); + gettext("When using bilinear/trilinear filtering, low-resolution textures\ncan be blurred, so this option automatically upscales them to preserve\ncrisp pixels. This defines the minimum texture size for the upscaled textures;\nhigher values look sharper, but require more memory.\nThis setting is ONLY applied if any of the mentioned filters are enabled.\nThis is also used as the base node texture size for world-aligned\ntexture autoscaling."); gettext("Client Mesh Chunksize"); gettext("Side length of a cube of map blocks that the client will consider together\nwhen generating meshes.\nLarger values increase the utilization of the GPU by reducing the number of\ndraw calls, benefiting especially high-end GPUs.\nSystems with a low-end GPU (or no GPU) would benefit from smaller values."); - gettext("OpenGL debug"); - gettext("Enables debug and error-checking in the OpenGL driver."); + gettext("Color depth for post-processing texture"); + gettext("Decide the color depth of the texture used for the post-processing pipeline.\nReducing this can improve performance, but some effects (e.g. debanding)\nrequire more than 8 bits to work."); + gettext("Poisson filtering"); + gettext("Enable Poisson disk filtering.\nOn true uses Poisson disk to make \"soft shadows\". Otherwise uses PCF filtering."); + gettext("Map shadows update frames"); + gettext("Spread a complete update of the shadow map over a given number of frames.\nHigher values might make shadows laggy, lower values\nwill consume more resources."); gettext("Enable Bloom Debug"); gettext("Set to true to render debugging breakdown of the bloom effect.\nIn debug mode, the screen is split into 4 quadrants:\ntop-left - processed base image, top-right - final image\nbottom-left - raw base image, bottom-right - bloom texture."); gettext("Sound"); @@ -967,8 +961,6 @@ fake_function() { gettext("From how far blocks are sent to clients, stated in mapblocks (16 nodes)."); gettext("Maximum forceloaded blocks"); gettext("Default maximum number of forceloaded mapblocks.\nSet this to -1 to disable the limit."); - gettext("Time send interval"); - gettext("Interval of sending time of day to clients, stated in seconds."); gettext("Map save interval"); gettext("Interval of saving important changes in the world, stated in seconds."); gettext("Unload unused server data"); diff --git a/src/threading/thread.cpp b/src/threading/thread.cpp index 77be93229..8fac9c3d2 100644 --- a/src/threading/thread.cpp +++ b/src/threading/thread.cpp @@ -165,7 +165,7 @@ bool Thread::wait() -bool Thread::getReturnValue(void **ret) +bool Thread::getReturnValue(void **ret) const { if (m_running) return false; diff --git a/src/threading/thread.h b/src/threading/thread.h index a037aebc4..8ac74f04b 100644 --- a/src/threading/thread.h +++ b/src/threading/thread.h @@ -88,12 +88,12 @@ public: /* * Returns true if the calling thread is this Thread object. */ - bool isCurrentThread() { return std::this_thread::get_id() == getThreadId(); } + bool isCurrentThread() const { return std::this_thread::get_id() == getThreadId(); } - bool isRunning() { return m_running; } - bool stopRequested() { return m_request_stop; } + bool isRunning() const { return m_running; } + bool stopRequested() const { return m_request_stop; } - std::thread::id getThreadId() { return m_thread_obj->get_id(); } + std::thread::id getThreadId() const { return m_thread_obj->get_id(); } //fm? std::thread::id getThreadId() { return std::hash()(m_thread_obj->get_id()); } @@ -102,7 +102,7 @@ public: * Returns true if the thread has exited and the return value was available, * or false if the thread has yet to finish. */ - bool getReturnValue(void **ret); + bool getReturnValue(void **ret) const; /* * Binds (if possible, otherwise sets the affinity of) the thread to the @@ -146,7 +146,7 @@ protected: virtual void *run() = 0; private: - std::thread::native_handle_type getThreadHandle() + std::thread::native_handle_type getThreadHandle() const { return m_thread_obj->native_handle(); } static void threadProc(Thread *thr); diff --git a/src/tool.cpp b/src/tool.cpp index dcf3bf33e..d3693e338 100644 --- a/src/tool.cpp +++ b/src/tool.cpp @@ -12,7 +12,6 @@ #include "util/serialize.h" #include "util/numeric.h" #include "util/hex.h" -#include "common/c_content.h" #include @@ -47,7 +46,7 @@ void ToolGroupCap::fromJson(const Json::Value &json) for (Json::ArrayIndex i = 0; i < size; ++i) { if (times_object[i].isDouble()) - times[i] = times_object[i].asFloat(); + times.emplace_back(i, times_object[i].asFloat()); } } @@ -106,7 +105,7 @@ void ToolCapabilities::deSerialize(std::istream &is) for(u32 i = 0; i < times_size; i++) { int level = readS16(is); float time = readF32(is); - cap.times[level] = time; + cap.times.emplace_back(level, time); } groupcaps[name] = cap; } @@ -253,7 +252,7 @@ void WearBarParams::serializeJson(std::ostream &os) const color_stops[ftos(item.first)] = encodeHexColorString(item.second); } root["color_stops"] = color_stops; - root["blend"] = WearBarParams::es_BlendMode[blend].str; + root["blend"] = enum_to_string(WearBarParams::es_BlendMode, blend); fastWriteJson(root, os); } @@ -290,21 +289,11 @@ std::optional WearBarParams::deserializeJson(std::istream &is) return WearBarParams(colorStops, blend); } -video::SColor WearBarParams::getWearBarColor(f32 durabilityPercent) { +video::SColor WearBarParams::getWearBarColor(f32 durabilityPercent) +{ if (colorStops.empty()) return video::SColor(); - /* - * Strategy: - * Find upper bound of durabilityPercent - * - * if it == stops.end() -> return last color in the map - * if it == stops.begin() -> return first color in the map - * - * else: - * lower_bound = it - 1 - * interpolate/do constant - */ auto upper = colorStops.upper_bound(durabilityPercent); if (upper == colorStops.end()) // durability is >= the highest defined color stop @@ -313,6 +302,7 @@ video::SColor WearBarParams::getWearBarColor(f32 durabilityPercent) { if (upper == colorStops.begin()) // durability is <= the lowest defined color stop return upper->second; + // between two values, interpolate auto lower = std::prev(upper); f32 lower_bound = lower->first; video::SColor lower_color = lower->second; diff --git a/src/tool.h b/src/tool.h index 2a004c930..156a67f53 100644 --- a/src/tool.h +++ b/src/tool.h @@ -7,13 +7,13 @@ #include "irrlichttypes.h" #include "itemgroup.h" #include "json-forwards.h" -#include "common/c_types.h" +#include "util/enum_string.h" #include #include #include +#include #include -#include #include struct ItemDefinition; @@ -26,20 +26,26 @@ enum { TOOLGROUPCAP_MAXLEVEL, TOOLGROUPCAP_TIMES }; +/* + * NOTE: these structs intentionally use vector> or map<> over unordered_map<> + * to avoid blowing up the structure sizes. Also because the linear "dumb" approach + * works better if you have just a handful of items. + */ struct ToolGroupCap { - std::unordered_map times; + std::vector> times; int maxlevel = 1; int uses = 20; ToolGroupCap() = default; std::optional getTime(int rating) const { - auto i = times.find(rating); - if (i == times.end()) - return std::nullopt; - return i->second; + for (auto &it : times) { + if (it.first == rating) + return it.second; + } + return std::nullopt; } template @@ -64,8 +70,8 @@ struct ToolGroupCap }; -typedef std::unordered_map ToolGCMap; -typedef std::unordered_map DamageGroup; +typedef std::map ToolGCMap; +typedef std::map DamageGroup; enum { TOOLCAP_FULL_PUNCH_INTERVAL, @@ -78,9 +84,9 @@ struct ToolCapabilities { float full_punch_interval; int max_drop_level; + int punch_attack_uses; ToolGCMap groupcaps; DamageGroup damageGroups; - int punch_attack_uses; ToolCapabilities( float full_punch_interval_ = 1.4f, @@ -91,9 +97,9 @@ struct ToolCapabilities ): full_punch_interval(full_punch_interval_), max_drop_level(max_drop_level_), + punch_attack_uses(punch_attack_uses_), groupcaps(groupcaps_), - damageGroups(damageGroups_), - punch_attack_uses(punch_attack_uses_) + damageGroups(damageGroups_) {} void serialize(std::ostream &os, u16 version) const; @@ -111,17 +117,18 @@ private: struct WearBarParams { - std::map colorStops; enum BlendMode : u8 { BLEND_MODE_CONSTANT, BLEND_MODE_LINEAR, BlendMode_END // Dummy for validity check }; constexpr const static EnumString es_BlendMode[3] = { - {WearBarParams::BLEND_MODE_CONSTANT, "constant"}, - {WearBarParams::BLEND_MODE_LINEAR, "linear"}, + {BLEND_MODE_CONSTANT, "constant"}, + {BLEND_MODE_LINEAR, "linear"}, {0, nullptr} }; + + std::map colorStops; BlendMode blend; WearBarParams(const std::map &colorStops, BlendMode blend): @@ -137,6 +144,7 @@ struct WearBarParams static WearBarParams deserialize(std::istream &is); void serializeJson(std::ostream &os) const; static std::optional deserializeJson(std::istream &is); + video::SColor getWearBarColor(f32 durabilityPercent); }; diff --git a/src/unittest/CMakeLists.txt b/src/unittest/CMakeLists.txt index cee2f4e8c..8df86b860 100644 --- a/src/unittest/CMakeLists.txt +++ b/src/unittest/CMakeLists.txt @@ -19,6 +19,7 @@ set (UNITTEST_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/test_lua.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_map.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_mapblock.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_mapgen.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_map_settings_manager.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_mapnode.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_modchannels.cpp @@ -54,6 +55,7 @@ set (UNITTEST_CLIENT_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/test_eventmanager.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_gameui.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_irr_gltf_mesh_loader.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/test_irr_matrix4.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_mesh_compare.cpp ${CMAKE_CURRENT_SOURCE_DIR}/test_keycode.cpp PARENT_SCOPE) diff --git a/src/unittest/test.cpp b/src/unittest/test.cpp index 8c20b0ed5..8f0eaf855 100644 --- a/src/unittest/test.cpp +++ b/src/unittest/test.cpp @@ -212,8 +212,6 @@ bool run_tests() u64 t1 = porting::getTimeMs(); TestGameDef gamedef; - g_logger.setLevelSilenced(LL_ERROR, true); - u32 num_modules_failed = 0; u32 num_total_tests_failed = 0; u32 num_total_tests_run = 0; @@ -243,11 +241,9 @@ bool run_tests() u64 tdiff = porting::getTimeMs() - t1; - g_logger.setLevelSilenced(LL_ERROR, false); - const char *overall_status = (num_modules_failed == 0) ? "PASSED" : "FAILED"; - rawstream + rawstream << "\n" << "++++++++++++++++++++++++++++++++++++++++" << "++++++++++++++++++++++++++++++++++++++++" << std::endl << "Unit Test Results: " << overall_status << std::endl @@ -283,17 +279,15 @@ bool run_tests(const std::string &module_name) return catch_test_failures == 0; } - g_logger.setLevelSilenced(LL_ERROR, true); u64 t1 = porting::getTimeMs(); bool ok = testmod->testModule(&gamedef); u64 tdiff = porting::getTimeMs() - t1; - g_logger.setLevelSilenced(LL_ERROR, false); const char *overall_status = ok ? "PASSED" : "FAILED"; - rawstream + rawstream << "\n" << "++++++++++++++++++++++++++++++++++++++++" << "++++++++++++++++++++++++++++++++++++++++" << std::endl << "Unit Test Results: " << overall_status << std::endl diff --git a/src/unittest/test.h b/src/unittest/test.h index cc772f670..dcecb9fb4 100644 --- a/src/unittest/test.h +++ b/src/unittest/test.h @@ -9,7 +9,7 @@ #include #include -#include "irrlichttypes_extrabloated.h" +#include "irrlichttypes_bloated.h" #include "porting.h" #include "filesys.h" #include "mapnode.h" diff --git a/src/unittest/test_collision.cpp b/src/unittest/test_collision.cpp index ce2e3933c..42c2276b2 100644 --- a/src/unittest/test_collision.cpp +++ b/src/unittest/test_collision.cpp @@ -3,6 +3,9 @@ // Copyright (C) 2013 celeron55, Perttu Ahola #include "test.h" +#include "dummymap.h" +#include "environment.h" +#include "irrlicht_changes/printing.h" #include "collision.h" @@ -14,6 +17,7 @@ public: void runTests(IGameDef *gamedef); void testAxisAlignedCollision(); + void testCollisionMoveSimple(IGameDef *gamedef); }; static TestCollision g_test_instance; @@ -21,8 +25,42 @@ static TestCollision g_test_instance; void TestCollision::runTests(IGameDef *gamedef) { TEST(testAxisAlignedCollision); + TEST(testCollisionMoveSimple, gamedef); } +namespace { + class TestEnvironment : public Environment { + DummyMap map; + public: + TestEnvironment(IGameDef *gamedef) + : Environment(gamedef), map(gamedef, {-1, -1, -1}, {1, 1, 1}) + { + map.fill({-1, -1, -1}, {1, 1, 1}, MapNode(CONTENT_AIR)); + } + + void step(f32 dtime, double uptime, unsigned int max_cycle_ms) override {} + + Map &getMap() override { return map; } + + void getSelectedActiveObjects(const core::line3d &shootline_on_map, + std::vector &objects, + const std::optional &pointabilities) override {} + }; +} + +#define UASSERTEQ_F(actual, expected) do { \ + f32 a = (actual); \ + f32 e = (expected); \ + UTEST(fabsf(a - e) <= 0.0001f, "actual: %.f expected: %.f", a, e) \ + } while (0) + +#define UASSERTEQ_V3F(actual, expected) do { \ + v3f va = (actual); \ + v3f ve = (expected); \ + UASSERTEQ_F(va.X, ve.X); UASSERTEQ_F(va.Y, ve.Y); UASSERTEQ_F(va.Z, ve.Z); \ + } while (0) + + //////////////////////////////////////////////////////////////////////////////// void TestCollision::testAxisAlignedCollision() @@ -163,3 +201,77 @@ void TestCollision::testAxisAlignedCollision() } } } + +#define fpos(x,y,z) (BS * v3f(x, y, z)) + +void TestCollision::testCollisionMoveSimple(IGameDef *gamedef) +{ + auto env = std::make_unique(gamedef); + g_collision_problems_encountered = false; + + for (s16 x = 0; x < MAP_BLOCKSIZE; x++) + for (s16 z = 0; z < MAP_BLOCKSIZE; z++) + env->getMap().setNode({x, 0, z}, MapNode(t_CONTENT_STONE)); + + v3f pos, speed, accel; + const aabb3f box(fpos(-0.1f, 0, -0.1f), fpos(0.1f, 1.4f, 0.1f)); + collisionMoveResult res; + + /* simple movement with accel */ + pos = fpos(4, 1, 4); + speed = fpos(0, 0, 0); + accel = fpos(0, 1, 0); + res = collisionMoveSimple(env.get(), gamedef, box, 0.0f, 1.0f, + &pos, &speed, accel); + + UASSERT(!res.touching_ground || !res.collides || !res.standing_on_object); + UASSERT(res.collisions.empty()); + // FIXME: it's easy to tell that this should be y=1.5f, but our code does it wrong. + // It's unclear if/how this will be fixed. + UASSERTEQ_V3F(pos, fpos(4, 2, 4)); + UASSERTEQ_V3F(speed, fpos(0, 1, 0)); + + /* standing on ground */ + pos = fpos(0, 0.5f, 0); + speed = fpos(0, 0, 0); + accel = fpos(0, -9.81f, 0); + res = collisionMoveSimple(env.get(), gamedef, box, 0.0f, 0.04f, + &pos, &speed, accel); + + UASSERT(res.collides); + UASSERT(res.touching_ground); + UASSERT(!res.standing_on_object); + UASSERTEQ_V3F(pos, fpos(0, 0.5f, 0)); + UASSERTEQ_V3F(speed, fpos(0, 0, 0)); + UASSERT(res.collisions.size() == 1); + { + auto &ci = res.collisions.front(); + UASSERTEQ(int, ci.type, COLLISION_NODE); + UASSERTEQ(int, ci.axis, COLLISION_AXIS_Y); + UASSERTEQ(v3s16, ci.node_p, v3s16(0, 0, 0)); + } + + /* not moving never collides */ + pos = fpos(0, -100, 0); + speed = fpos(0, 0, 0); + accel = fpos(0, 0, 0); + res = collisionMoveSimple(env.get(), gamedef, box, 0.0f, 1/60.0f, + &pos, &speed, accel); + UASSERT(!res.collides); + + /* collision in ignore */ + pos = fpos(0, -100, 0); + speed = fpos(5, 0, 0); + accel = fpos(0, 0, 0); + res = collisionMoveSimple(env.get(), gamedef, box, 0.0f, 1/60.0f, + &pos, &speed, accel); + UASSERTEQ_V3F(speed, fpos(0, 0, 0)); + UASSERT(!res.collides); // FIXME this is actually inconsistent + UASSERT(res.collisions.empty()); + + // TODO things to test: + // standing_on_object, multiple collisions, bouncy, stepheight + + // No warnings should have been raised during our test. + UASSERT(!g_collision_problems_encountered); +} diff --git a/src/unittest/test_compression.cpp b/src/unittest/test_compression.cpp index ad8dba2fc..35c500a52 100644 --- a/src/unittest/test_compression.cpp +++ b/src/unittest/test_compression.cpp @@ -6,7 +6,6 @@ #include -#include "irrlichttypes_extrabloated.h" #include "log.h" #include "serialization.h" #include "nodedef.h" diff --git a/src/unittest/test_content_mapblock.cpp b/src/unittest/test_content_mapblock.cpp index acc6213a4..68f66eabf 100644 --- a/src/unittest/test_content_mapblock.cpp +++ b/src/unittest/test_content_mapblock.cpp @@ -36,10 +36,12 @@ public: node_mgr()->resolveCrossrefs(); } - MeshMakeData makeSingleNodeMMD(bool smooth_lighting = true, bool for_shaders = true) + MeshMakeData makeSingleNodeMMD(bool smooth_lighting = true) { - MeshMakeData data{ndef(), 1, for_shaders}; - data.setSmoothLighting(smooth_lighting); + MeshMakeData data{ndef(), 1, MeshGrid{1}}; + data.m_generate_minimap = false; + data.m_smooth_lighting = smooth_lighting; + data.m_enable_water_reflections = false; data.m_blockpos = {0, 0, 0}; for (s16 x = -1; x <= 1; x++) for (s16 y = -1; y <= 1; y++) @@ -175,7 +177,7 @@ void TestMapblockMeshGenerator::testSimpleNode() data.m_vmanip.setNode({0, 0, 0}, {stone, 0, 0}); MeshCollector col{{}}; - MapblockMeshGenerator mg{&data, &col, nullptr}; + MapblockMeshGenerator mg{&data, &col}; mg.generate(); UASSERTEQ(std::size_t, col.prebuffers[0].size(), 1); UASSERTEQ(std::size_t, col.prebuffers[1].size(), 0); @@ -197,7 +199,7 @@ void TestMapblockMeshGenerator::testSurroundedNode() data.m_vmanip.setNode({1, 0, 0}, {wood, 0, 0}); MeshCollector col{{}}; - MapblockMeshGenerator mg{&data, &col, nullptr}; + MapblockMeshGenerator mg{&data, &col}; mg.generate(); UASSERTEQ(std::size_t, col.prebuffers[0].size(), 1); UASSERTEQ(std::size_t, col.prebuffers[1].size(), 0); @@ -218,7 +220,7 @@ void TestMapblockMeshGenerator::testInterliquidSame() data.m_vmanip.setNode({1, 0, 0}, {water, 0, 0}); MeshCollector col{{}}; - MapblockMeshGenerator mg{&data, &col, nullptr}; + MapblockMeshGenerator mg{&data, &col}; mg.generate(); UASSERTEQ(std::size_t, col.prebuffers[0].size(), 1); UASSERTEQ(std::size_t, col.prebuffers[1].size(), 0); @@ -240,7 +242,7 @@ void TestMapblockMeshGenerator::testInterliquidDifferent() data.m_vmanip.setNode({0, 0, 1}, {lava, 0, 0}); MeshCollector col{{}}; - MapblockMeshGenerator mg{&data, &col, nullptr}; + MapblockMeshGenerator mg{&data, &col}; mg.generate(); UASSERTEQ(std::size_t, col.prebuffers[0].size(), 1); UASSERTEQ(std::size_t, col.prebuffers[1].size(), 0); diff --git a/src/unittest/test_filesys.cpp b/src/unittest/test_filesys.cpp index 9bab4fb5d..34666f611 100644 --- a/src/unittest/test_filesys.cpp +++ b/src/unittest/test_filesys.cpp @@ -24,6 +24,7 @@ public: void testRemoveLastPathComponent(); void testRemoveLastPathComponentWithTrailingDelimiter(); void testRemoveRelativePathComponent(); + void testAbsolutePath(); void testSafeWriteToFile(); void testCopyFileContents(); void testNonExist(); @@ -39,6 +40,7 @@ void TestFileSys::runTests(IGameDef *gamedef) TEST(testRemoveLastPathComponent); TEST(testRemoveLastPathComponentWithTrailingDelimiter); TEST(testRemoveRelativePathComponent); + TEST(testAbsolutePath); TEST(testSafeWriteToFile); TEST(testCopyFileContents); TEST(testNonExist); @@ -55,7 +57,7 @@ static std::string p(std::string path) for (size_t i = 0; i < path.size(); ++i) { if (path[i] == '/') { path.replace(i, 1, DIR_DELIM); - i += std::string(DIR_DELIM).size() - 1; // generally a no-op + i += strlen(DIR_DELIM) - 1; // generally a no-op } } @@ -259,6 +261,46 @@ void TestFileSys::testRemoveRelativePathComponent() } +void TestFileSys::testAbsolutePath() +{ + const auto dir_path = getTestTempDirectory(); + + /* AbsolutePath */ + UASSERTEQ(auto, fs::AbsolutePath(""), ""); // empty is a not valid path + const auto cwd = fs::AbsolutePath("."); + UASSERTCMP(auto, !=, cwd, ""); + { + const auto dir_path2 = getTestTempFile(); + UASSERTEQ(auto, fs::AbsolutePath(dir_path2), ""); // doesn't exist + fs::CreateDir(dir_path2); + UASSERTCMP(auto, !=, fs::AbsolutePath(dir_path2), ""); // now it does + UASSERTEQ(auto, fs::AbsolutePath(dir_path2 + DIR_DELIM ".."), fs::AbsolutePath(dir_path)); + } + + /* AbsolutePathPartial */ + // equivalent to AbsolutePath if it exists + UASSERTEQ(auto, fs::AbsolutePathPartial("."), cwd); + UASSERTEQ(auto, fs::AbsolutePathPartial(dir_path), fs::AbsolutePath(dir_path)); + // usual usage of the function with a partially existing path + auto expect = cwd + DIR_DELIM + p("does/not/exist"); + UASSERTEQ(auto, fs::AbsolutePathPartial("does/not/exist"), expect); + UASSERTEQ(auto, fs::AbsolutePathPartial(expect), expect); + + // a nonsense combination as you couldn't actually access it, but allowed by function + UASSERTEQ(auto, fs::AbsolutePathPartial("bla/blub/../.."), cwd); + UASSERTEQ(auto, fs::AbsolutePathPartial("./bla/blub/../.."), cwd); + +#ifdef __unix__ + // one way to produce the error case is to remove more components than there are + // but only if the path does not actually exist ("/.." does exist). + UASSERTEQ(auto, fs::AbsolutePathPartial("/.."), "/"); + UASSERTEQ(auto, fs::AbsolutePathPartial("/noexist/../.."), ""); +#endif + // or with an empty path + UASSERTEQ(auto, fs::AbsolutePathPartial(""), ""); +} + + void TestFileSys::testSafeWriteToFile() { const std::string dest_path = getTestTempFile(); diff --git a/src/unittest/test_irr_gltf_mesh_loader.cpp b/src/unittest/test_irr_gltf_mesh_loader.cpp index 2d87db4e3..b1b0d99a1 100644 --- a/src/unittest/test_irr_gltf_mesh_loader.cpp +++ b/src/unittest/test_irr_gltf_mesh_loader.cpp @@ -12,7 +12,7 @@ #include "IFileSystem.h" #include "IReadFile.h" #include "ISceneManager.h" -#include "ISkinnedMesh.h" +#include "SkinnedMesh.h" #include "irrlicht.h" #include "catch.h" @@ -379,14 +379,14 @@ SECTION("simple sparse accessor") // https://github.com/KhronosGroup/glTF-Sample-Models/tree/main/2.0/SimpleSkin SECTION("simple skin") { - using ISkinnedMesh = irr::scene::ISkinnedMesh; + using SkinnedMesh = irr::scene::SkinnedMesh; const auto mesh = loadMesh(model_stem + "simple_skin.gltf"); REQUIRE(mesh != nullptr); - auto csm = dynamic_cast(mesh); + auto csm = dynamic_cast(mesh); const auto joints = csm->getAllJoints(); REQUIRE(joints.size() == 3); - const auto findJoint = [&](const std::function &predicate) { + const auto findJoint = [&](const std::function &predicate) { for (std::size_t i = 0; i < joints.size(); ++i) { if (predicate(joints[i])) { return joints[i]; @@ -420,7 +420,7 @@ SECTION("simple skin") SECTION("weights are correct") { - const auto weights = [&](const ISkinnedMesh::SJoint *joint) { + const auto weights = [&](const SkinnedMesh::SJoint *joint) { std::unordered_map weights; for (std::size_t i = 0; i < joint->Weights.size(); ++i) { const auto weight = joint->Weights[i]; diff --git a/src/unittest/test_irr_matrix4.cpp b/src/unittest/test_irr_matrix4.cpp new file mode 100644 index 000000000..764b0a5b2 --- /dev/null +++ b/src/unittest/test_irr_matrix4.cpp @@ -0,0 +1,86 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later + +#include "catch.h" +#include "irrMath.h" +#include "matrix4.h" +#include "irr_v3d.h" + +using matrix4 = core::matrix4; + +static bool matrix_equals(const matrix4 &a, const matrix4 &b) { + return a.equals(b, 0.00001f); +} + +constexpr v3f x{1, 0, 0}; +constexpr v3f y{0, 1, 0}; +constexpr v3f z{0, 0, 1}; + +TEST_CASE("matrix4") { + +SECTION("setRotationRadians") { + SECTION("rotation order is ZYX (matrix notation)") { + v3f rot{1, 2, 3}; + matrix4 X, Y, Z, ZYX; + X.setRotationRadians({rot.X, 0, 0}); + Y.setRotationRadians({0, rot.Y, 0}); + Z.setRotationRadians({0, 0, rot.Z}); + ZYX.setRotationRadians(rot); + CHECK(!matrix_equals(X * Y * Z, ZYX)); + CHECK(!matrix_equals(X * Z * Y, ZYX)); + CHECK(!matrix_equals(Y * X * Z, ZYX)); + CHECK(!matrix_equals(Y * Z * X, ZYX)); + CHECK(!matrix_equals(Z * X * Y, ZYX)); + CHECK(matrix_equals(Z * Y * X, ZYX)); + } + + const f32 quarter_turn = core::PI / 2; + + // See https://en.wikipedia.org/wiki/Right-hand_rule#/media/File:Cartesian_coordinate_system_handedness.svg + // for a visualization of what handedness means for rotations + + SECTION("rotation is right-handed") { + SECTION("rotation around the X-axis is Z-up, counter-clockwise") { + matrix4 X; + X.setRotationRadians({quarter_turn, 0, 0}); + CHECK(X.transformVect(x).equals(x)); + CHECK(X.transformVect(y).equals(z)); + CHECK(X.transformVect(z).equals(-y)); + } + + SECTION("rotation around the Y-axis is Z-up, clockwise") { + matrix4 Y; + Y.setRotationRadians({0, quarter_turn, 0}); + CHECK(Y.transformVect(y).equals(y)); + CHECK(Y.transformVect(x).equals(-z)); + CHECK(Y.transformVect(z).equals(x)); + } + + SECTION("rotation around the Z-axis is Y-up, counter-clockwise") { + matrix4 Z; + Z.setRotationRadians({0, 0, quarter_turn}); + CHECK(Z.transformVect(z).equals(z)); + CHECK(Z.transformVect(x).equals(y)); + CHECK(Z.transformVect(y).equals(-x)); + } + } +} + +SECTION("getScale") { + SECTION("correctly gets the length of each row of the 3x3 submatrix") { + matrix4 A( + 1, 2, 3, 0, + 4, 5, 6, 0, + 7, 8, 9, 0, + 0, 0, 0, 1 + ); + v3f scale = A.getScale(); + CHECK(scale.equals(v3f( + v3f(1, 2, 3).getLength(), + v3f(4, 5, 6).getLength(), + v3f(7, 8, 9).getLength() + ))); + } +} + +} diff --git a/src/unittest/test_map_settings_manager.cpp b/src/unittest/test_map_settings_manager.cpp index dda64b355..5cde4d2eb 100644 --- a/src/unittest/test_map_settings_manager.cpp +++ b/src/unittest/test_map_settings_manager.cpp @@ -7,7 +7,7 @@ #include "noise.h" #include "settings.h" #include "mapgen/mapgen_v5.h" -#include "util/sha1.h" +#include "util/hashing.h" #include "map_settings_manager.h" class TestMapSettingsManager : public TestBase { @@ -129,7 +129,7 @@ void TestMapSettingsManager::testMapSettingsManager() { NoiseParams dummy; - mgr.getMapSettingNoiseParams("mgv5_np_factor", &dummy); + mgr.getNoiseParams("mgv5_np_factor", &dummy); check_noise_params(&dummy, &script_np_factor); } @@ -171,11 +171,9 @@ void TestMapSettingsManager::testMapSettingsManager() 0x78, 0x56, 0x95, 0x2d, 0xdc, 0x6a, 0xf7, 0x61, 0x36, 0x5f }; - SHA1 ctx; std::string metafile_contents; UASSERT(fs::ReadFile(test_mapmeta_path, metafile_contents)); - ctx.addBytes(metafile_contents); - std::string sha1_result = ctx.getDigest(); + std::string sha1_result = hashing::sha1(metafile_contents); int resultdiff = memcmp(sha1_result.data(), expected_contents_hash, 20); UASSERT(!resultdiff); diff --git a/src/unittest/test_mapblock.cpp b/src/unittest/test_mapblock.cpp index 955e6fe62..5d9877d6f 100644 --- a/src/unittest/test_mapblock.cpp +++ b/src/unittest/test_mapblock.cpp @@ -326,7 +326,7 @@ void TestMapBlock::testLoadNonStd(IGameDef *gamedef) * 2176 IDs (but only the first 128 could use the full range of param2), and * finally 16-bit like today. * The content_width field in MapBlocks was used around that time during the - * transition to 16-bit: + * transition to 16-bit: * A content_width of 1 would normally never appear with a version > 24, but * it is in fact perfectly possible to serialize a block in todays format with * shortened IDs. diff --git a/src/unittest/test_mapgen.cpp b/src/unittest/test_mapgen.cpp new file mode 100644 index 000000000..dc69420e8 --- /dev/null +++ b/src/unittest/test_mapgen.cpp @@ -0,0 +1,125 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2024 Minetest core developers & community + +#include "test.h" + +#include "emerge.h" +#include "mapgen/mapgen.h" +#include "mapgen/mg_biome.h" +#include "mock_server.h" + +class TestMapgen : public TestBase +{ +public: + TestMapgen() { TestManager::registerTestModule(this); } + const char *getName() { return "TestMapgen"; } + + void runTests(IGameDef *gamedef); + + void testBiomeGen(IGameDef *gamedef); +}; + +static TestMapgen g_test_instance; + +namespace { + class MockBiomeManager : public BiomeManager { + public: + MockBiomeManager(Server *server) : BiomeManager(server) {} + + void setNodeDefManager(const NodeDefManager *ndef) + { + m_ndef = ndef; + } + }; +} + +void TestMapgen::runTests(IGameDef *gamedef) +{ + TEST(testBiomeGen, gamedef); +} + +void TestMapgen::testBiomeGen(IGameDef *gamedef) +{ + MockServer server(getTestTempDirectory()); + MockBiomeManager bmgr(&server); + bmgr.setNodeDefManager(gamedef->getNodeDefManager()); + + { + // Add some biomes (equivalent to l_register_biome) + // Taken from minetest_game/mods/default/mapgen.lua + size_t bmgr_count = bmgr.getNumObjects(); // this is 1 ? + + Biome *b = BiomeManager::create(BIOMETYPE_NORMAL); + b->name = "deciduous_forest"; + b->c_top = t_CONTENT_GRASS; + b->depth_top = 1; + b->c_filler = t_CONTENT_BRICK; // dirt + b->depth_filler = 3; + b->c_stone = t_CONTENT_STONE; + b->min_pos.Y = 1; + b->heat_point = 60.0f; + b->humidity_point = 68.0f; + UASSERT(bmgr.add(b) != OBJDEF_INVALID_HANDLE); + + b = BiomeManager::create(BIOMETYPE_NORMAL); + b->name = "deciduous_forest_shore"; + b->c_top = t_CONTENT_BRICK; // dirt + b->depth_top = 1; + b->c_filler = t_CONTENT_BRICK; // dirt + b->depth_filler = 3; + b->c_stone = t_CONTENT_STONE; + b->max_pos.Y = 0; + b->heat_point = 60.0f; + b->humidity_point = 68.0f; + UASSERT(bmgr.add(b) != OBJDEF_INVALID_HANDLE); + UASSERT(bmgr.getNumObjects() - bmgr_count == 2); + } + + + std::unique_ptr params(BiomeManager::createBiomeParams(BIOMEGEN_ORIGINAL)); + + constexpr v3s16 CSIZE(16, 16, 16); // misleading name. measured in nodes. + std::unique_ptr biomegen( + bmgr.createBiomeGen(BIOMEGEN_ORIGINAL, params.get(), CSIZE) + ); + + { + // Test biome transitions + // getBiomeAtIndex (Y only) + // getNextTransitionY + const struct { + s16 check_y; + const char *name; + s16 next_y; + } expected_biomes[] = { + { MAX_MAP_GENERATION_LIMIT, "deciduous_forest", 0 }, + { 1, "deciduous_forest", 0 }, + { 0, "deciduous_forest_shore", S16_MIN }, + { -100, "deciduous_forest_shore", S16_MIN }, + }; + for (const auto expected : expected_biomes) { + Biome *biome = biomegen->getBiomeAtIndex( + (1 * CSIZE.X) + 1, // index in CSIZE 2D noise map + v3s16(2000, expected.check_y, -1000) // absolute coordinates + ); + s16 next_y = biomegen->getNextTransitionY(expected.check_y); + + //UASSERTEQ(auto, biome->name, expected.name); + //UASSERTEQ(auto, next_y, expected.next_y); + if (biome->name != expected.name) { + errorstream << "FIXME " << FUNCTION_NAME << " " << biome->name + << " != " << expected.name << "\nThe test would have failed." + << std::endl; + return; + } + if (next_y != expected.next_y) { + errorstream << "FIXME " << FUNCTION_NAME << " " << next_y + << " != " << expected.next_y << "\nThe test would have failed." + << std::endl; + return; + } + } + } +} + diff --git a/src/unittest/test_settings.cpp b/src/unittest/test_settings.cpp index d4e4a5c77..69f8fb9ca 100644 --- a/src/unittest/test_settings.cpp +++ b/src/unittest/test_settings.cpp @@ -42,6 +42,14 @@ const char *TestSettings::config_text_before = "floaty_thing = 1.1\n" "stringy_thing = asd /( ¤%&(/\" BLÖÄRP\n" "coord = (1, 2, 4.5)\n" + "coord_invalid = (1,2,3\n" + "coord_invalid_2 = 1, 2, 3 test\n" + "coord_invalid_3 = (test, something, stupid)\n" + "coord_invalid_4 = (1, test, 3)\n" + "coord_invalid_5 = ()\n" + "coord_invalid_6 = (1, 2)\n" + "coord_invalid_7 = (1)\n" + "coord_no_parenthesis = 1,2,3\n" " # this is just a comment\n" "this is an invalid line\n" "asdf = {\n" @@ -98,7 +106,15 @@ const char *TestSettings::config_text_after = " farspread = 1\n" "}\n" "zoop = true\n" - "coord2 = (1,2,3.3)\n" + "coord2 = (1,2,3.25)\n" + "coord_invalid = (1,2,3\n" + "coord_invalid_2 = 1, 2, 3 test\n" + "coord_invalid_3 = (test, something, stupid)\n" + "coord_invalid_4 = (1, test, 3)\n" + "coord_invalid_5 = ()\n" + "coord_invalid_6 = (1, 2)\n" + "coord_invalid_7 = (1)\n" + "coord_no_parenthesis = 1,2,3\n" "floaty_thing_2 = 1.25\n" "groupy_thing = {\n" " animals = cute\n" @@ -144,18 +160,33 @@ void TestSettings::testAllSettings() // Not sure if 1.1 is an exact value as a float, but doesn't matter UASSERT(fabs(s.getFloat("floaty_thing") - 1.1) < 0.001); UASSERT(s.get("stringy_thing") == u8"asd /( ¤%&(/\" BLÖÄRP"); - UASSERT(fabs(s.getV3F("coord").X - 1.0) < 0.001); - UASSERT(fabs(s.getV3F("coord").Y - 2.0) < 0.001); - UASSERT(fabs(s.getV3F("coord").Z - 4.5) < 0.001); + UASSERT(s.getV3F("coord").value().X == 1.0); + UASSERT(s.getV3F("coord").value().Y == 2.0); + UASSERT(s.getV3F("coord").value().Z == 4.5); // Test the setting of settings too s.setFloat("floaty_thing_2", 1.25); - s.setV3F("coord2", v3f(1, 2, 3.3)); + s.setV3F("coord2", v3f(1, 2, 3.25)); UASSERT(s.get("floaty_thing_2").substr(0,4) == "1.25"); - UASSERT(fabs(s.getFloat("floaty_thing_2") - 1.25) < 0.001); - UASSERT(fabs(s.getV3F("coord2").X - 1.0) < 0.001); - UASSERT(fabs(s.getV3F("coord2").Y - 2.0) < 0.001); - UASSERT(fabs(s.getV3F("coord2").Z - 3.3) < 0.001); + UASSERT(s.getFloat("floaty_thing_2") == 1.25); + UASSERT(s.getV3F("coord2").value().X == 1.0); + UASSERT(s.getV3F("coord2").value().Y == 2.0); + UASSERT(s.getV3F("coord2").value().Z == 3.25); + + std::optional testNotExist; + UASSERT(!s.getV3FNoEx("coord_not_exist", testNotExist)); + EXCEPTION_CHECK(SettingNotFoundException, s.getV3F("coord_not_exist")); + + UASSERT(!s.getV3F("coord_invalid").has_value()); + UASSERT(!s.getV3F("coord_invalid_2").has_value()); + UASSERT(!s.getV3F("coord_invalid_3").has_value()); + UASSERT(!s.getV3F("coord_invalid_4").has_value()); + UASSERT(!s.getV3F("coord_invalid_5").has_value()); + UASSERT(!s.getV3F("coord_invalid_6").has_value()); + UASSERT(!s.getV3F("coord_invalid_7").has_value()); + + std::optional testNoParenthesis = s.getV3F("coord_no_parenthesis"); + UASSERT(testNoParenthesis.value() == v3f(1, 2, 3)); // Test settings groups auto group = s.getGroup("asdf"); diff --git a/src/unittest/test_threading.cpp b/src/unittest/test_threading.cpp index 0eb9bb7df..77842964b 100644 --- a/src/unittest/test_threading.cpp +++ b/src/unittest/test_threading.cpp @@ -204,10 +204,10 @@ private: which affected only 32-bit MinGW. It was caused by incorrect calling convention and fixed in GCC in 2020. - Occurrences in Minetest: - * (2020) - * (2022) - * (2023) + Occurrences in Luanti: + * (2020) + * (2022) + * (2023) */ void TestThreading::testTLS() { diff --git a/src/unittest/test_translations.cpp b/src/unittest/test_translations.cpp index 37fc78ee4..5bab3e15c 100644 --- a/src/unittest/test_translations.cpp +++ b/src/unittest/test_translations.cpp @@ -25,12 +25,41 @@ TEST_CASE("test translations") { SECTION("Plural-Forms function for translations") { - auto form = GettextPluralForm::parseHeaderLine(L"Plural-Forms: nplurals=3; plural= (n-1+1)<=1 ? n||1?0:1 : 1?(!!2):2;"); - REQUIRE(form); - REQUIRE(form->size() == 3); +#define REQUIRE_FORM_SIZE(x) {REQUIRE(form); REQUIRE(form->size() == (x));} + // Test cases from https://www.gnu.org/software/gettext/manual/html_node/Plural-forms.html + auto form = GettextPluralForm::parseHeaderLine(L"Plural-Forms: nplurals=2; plural=n != 1;"); + REQUIRE_FORM_SIZE(2); + CHECK((*form)(0) == 1); + CHECK((*form)(1) == 0); + CHECK((*form)(2) == 1); + + form = GettextPluralForm::parseHeaderLine(L"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;"); + REQUIRE_FORM_SIZE(3); + CHECK((*form)(0) == 2); + CHECK((*form)(1) == 0); + CHECK((*form)(102) == 1); + CHECK((*form)(111) == 1); + + form = GettextPluralForm::parseHeaderLine(L"Plural-Forms: nplurals=3; " + "plural=n%10==1 && n%100!=11 ? 0 : " + "n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;"); + REQUIRE_FORM_SIZE(3); + CHECK((*form)(0) == 2); + CHECK((*form)(1) == 0); + CHECK((*form)(102) == 1); + CHECK((*form)(104) == 1); + CHECK((*form)(111) == 2); + CHECK((*form)(112) == 2); + CHECK((*form)(121) == 0); + CHECK((*form)(122) == 1); + + // Edge cases + form = GettextPluralForm::parseHeaderLine(L"Plural-Forms: nplurals=3; plural= (n-1+1)<=1 ? n||1?0:1 : 1?(!!2):2;"); + REQUIRE_FORM_SIZE(3); CHECK((*form)(0) == 0); CHECK((*form)(1) == 0); CHECK((*form)(2) == 1); +#undef REQUIRE_FORM_SIZE } SECTION("PO file parser") diff --git a/src/unittest/test_voxelalgorithms.cpp b/src/unittest/test_voxelalgorithms.cpp index 2a98412b4..b8ba11248 100644 --- a/src/unittest/test_voxelalgorithms.cpp +++ b/src/unittest/test_voxelalgorithms.cpp @@ -98,8 +98,8 @@ void TestVoxelAlgorithms::testLighting(IGameDef *gamedef) std::map modified_blocks; MMVManip vm(&map); vm.initialEmerge(bpmin, bpmax, false); - s32 volume = vm.m_area.getVolume(); - for (s32 i = 0; i < volume; i++) + u32 volume = vm.m_area.getVolume(); + for (u32 i = 0; i < volume; i++) vm.m_data[i] = MapNode(CONTENT_AIR); for (s16 z = -10; z <= 10; z++) for (s16 y = -10; y <= 10; y++) diff --git a/src/unittest/test_voxelarea.cpp b/src/unittest/test_voxelarea.cpp index 384fda0d1..d9380caf9 100644 --- a/src/unittest/test_voxelarea.cpp +++ b/src/unittest/test_voxelarea.cpp @@ -98,34 +98,45 @@ void TestVoxelArea::test_addarea() void TestVoxelArea::test_pad() { VoxelArea v1(v3s16(-1447, -9547, -875), v3s16(-147, 8854, 669)); + auto old_extent = v1.getExtent(); v1.pad(v3s16(100, 200, 300)); UASSERT(v1.MinEdge == v3s16(-1547, -9747, -1175)); UASSERT(v1.MaxEdge == v3s16(-47, 9054, 969)); + UASSERT(v1.getExtent() > old_extent); } void TestVoxelArea::test_extent() { VoxelArea v1(v3s16(-1337, -547, -789), v3s16(-147, 447, 669)); - UASSERT(v1.getExtent() == v3s16(1191, 995, 1459)); + UASSERT(v1.getExtent() == v3s32(1191, 995, 1459)); VoxelArea v2(v3s16(32493, -32507, 32752), v3s16(32508, -32492, 32767)); - UASSERT(v2.getExtent() == v3s16(16, 16, 16)); + UASSERT(v2.getExtent() == v3s32(16, 16, 16)); + // side length bigger than S16_MAX + VoxelArea v3({-20000, 12, 34}, {20000, 12, 34}); + UASSERT(v3.getExtent() == v3s32(40001, 1, 1)); + + UASSERT(VoxelArea().hasEmptyExtent()); UASSERT(VoxelArea({2,3,4}, {1,2,3}).hasEmptyExtent()); - UASSERT(VoxelArea({2,3,4}, {2,2,3}).hasEmptyExtent() == false); + UASSERT(VoxelArea({2,3,4}, {2,2,3}).hasEmptyExtent()); } void TestVoxelArea::test_volume() { VoxelArea v1(v3s16(-1337, -547, -789), v3s16(-147, 447, 669)); - UASSERTEQ(s32, v1.getVolume(), 1728980655); + UASSERTEQ(u32, v1.getVolume(), 1728980655); VoxelArea v2(v3s16(32493, -32507, 32752), v3s16(32508, -32492, 32767)); - UASSERTEQ(s32, v2.getVolume(), 4096); + UASSERTEQ(u32, v2.getVolume(), 4096); - UASSERTEQ(s32, VoxelArea({2,3,4}, {1,2,3}).getVolume(), 0); - UASSERTEQ(s32, VoxelArea({2,3,4}, {2,2,3}).getVolume(), 0); + // volume bigger than S32_MAX + VoxelArea v3({1, 1, 1}, {1337, 1337, 1337}); + UASSERTEQ(u32, v3.getVolume(), 2389979753U); + + UASSERTEQ(u32, VoxelArea({2,3,4}, {1,2,3}).getVolume(), 0); + UASSERTEQ(u32, VoxelArea({2,3,4}, {2,2,3}).getVolume(), 0); } void TestVoxelArea::test_contains_voxelarea() @@ -156,6 +167,12 @@ void TestVoxelArea::test_contains_point() UASSERTEQ(bool, v1.contains(v3s16(-100, 100, 10000)), false); UASSERTEQ(bool, v1.contains(v3s16(-100, 100, -10000)), false); UASSERTEQ(bool, v1.contains(v3s16(10000, 100, 10)), false); + + VoxelArea v2; + UASSERTEQ(bool, v2.contains(v3s16(-200, 10, 10)), false); + UASSERTEQ(bool, v2.contains(v3s16(0, 0, 0)), false); + UASSERTEQ(bool, v2.contains(v3s16(1, 1, 1)), false); + UASSERTEQ(bool, v2.contains(v3s16(-1, -1, -1)), false); } void TestVoxelArea::test_contains_i() @@ -171,6 +188,12 @@ void TestVoxelArea::test_contains_i() UASSERTEQ(bool, v2.contains(10), true); UASSERTEQ(bool, v2.contains(0), true); UASSERTEQ(bool, v2.contains(-1), false); + + VoxelArea v3; + UASSERTEQ(bool, v3.contains(0), false); + UASSERTEQ(bool, v3.contains(-1), false); + UASSERTEQ(bool, v3.contains(1), false); + UASSERTEQ(bool, v3.contains(2), false); } void TestVoxelArea::test_equal() @@ -235,6 +258,7 @@ void TestVoxelArea::test_intersect() VoxelArea v3({11, 11, 11}, {11, 11, 11}); VoxelArea v4({-11, -2, -10}, {10, 2, 11}); UASSERT(v2.intersect(v1) == v2); + UASSERT(!v2.intersect(v1).hasEmptyExtent()); UASSERT(v1.intersect(v2) == v2.intersect(v1)); UASSERT(v1.intersect(v3).hasEmptyExtent()); UASSERT(v3.intersect(v1) == v1.intersect(v3)); @@ -388,7 +412,7 @@ void TestVoxelArea::test_index_v3s16_all_neg() void TestVoxelArea::test_add_x() { - v3s16 extent; + v3s32 extent; u32 i = 4; VoxelArea::add_x(extent, i, 8); UASSERTEQ(u32, i, 12) @@ -396,7 +420,7 @@ void TestVoxelArea::test_add_x() void TestVoxelArea::test_add_y() { - v3s16 extent(740, 16, 87); + v3s32 extent(740, 16, 87); u32 i = 8; VoxelArea::add_y(extent, i, 88); UASSERTEQ(u32, i, 65128) @@ -404,7 +428,7 @@ void TestVoxelArea::test_add_y() void TestVoxelArea::test_add_z() { - v3s16 extent(114, 80, 256); + v3s32 extent(114, 80, 256); u32 i = 4; VoxelArea::add_z(extent, i, 8); UASSERTEQ(u32, i, 72964) @@ -412,7 +436,7 @@ void TestVoxelArea::test_add_z() void TestVoxelArea::test_add_p() { - v3s16 extent(33, 14, 742); + v3s32 extent(33, 14, 742); v3s16 a(15, 12, 369); u32 i = 4; VoxelArea::add_p(extent, i, a); diff --git a/src/util/CMakeLists.txt b/src/util/CMakeLists.txt index 761e51a4a..7d5ac48fb 100644 --- a/src/util/CMakeLists.txt +++ b/src/util/CMakeLists.txt @@ -1,10 +1,11 @@ set(util_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/areastore.cpp ${CMAKE_CURRENT_SOURCE_DIR}/auth.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/colorize.cpp ${CMAKE_CURRENT_SOURCE_DIR}/base64.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/colorize.cpp ${CMAKE_CURRENT_SOURCE_DIR}/directiontables.cpp ${CMAKE_CURRENT_SOURCE_DIR}/enriched_string.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/hashing.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ieee_float.cpp ${CMAKE_CURRENT_SOURCE_DIR}/metricsbackend.cpp ${CMAKE_CURRENT_SOURCE_DIR}/numeric.cpp @@ -17,4 +18,5 @@ set(util_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/srp.cpp ${CMAKE_CURRENT_SOURCE_DIR}/timetaker.cpp ${CMAKE_CURRENT_SOURCE_DIR}/png.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/enum_string.cpp PARENT_SCOPE) diff --git a/src/util/auth.cpp b/src/util/auth.cpp index 3c8e5763a..040d15bf9 100644 --- a/src/util/auth.cpp +++ b/src/util/auth.cpp @@ -6,7 +6,7 @@ #include #include "auth.h" #include "base64.h" -#include "sha1.h" +#include "util/hashing.h" #include "srp.h" #include "util/string.h" #include "debug.h" @@ -23,9 +23,7 @@ std::string translate_password(const std::string &name, return ""; std::string slt = name + password; - SHA1 sha1; - sha1.addBytes(slt); - std::string digest = sha1.getDigest(); + std::string digest = hashing::sha1(slt); std::string pwd = base64_encode(digest); return pwd; } diff --git a/src/util/enum_string.cpp b/src/util/enum_string.cpp new file mode 100644 index 000000000..5b35053d8 --- /dev/null +++ b/src/util/enum_string.cpp @@ -0,0 +1,31 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 cx384 + +#include "util/enum_string.h" +#include + +bool string_to_enum(const EnumString *spec, int &result, std::string_view str) +{ + const EnumString *esp = spec; + while (esp->str) { + if (str == esp->str) { + assert(esp->num >= 0); + result = esp->num; + return true; + } + esp++; + } + return false; +} + +const char *enum_to_string(const EnumString *spec, int num) +{ + if (num < 0) + return nullptr; + // assume array order matches enum order + auto *p = &spec[num]; + assert(p->num == num); + assert(p->str); + return p->str; +} diff --git a/src/util/enum_string.h b/src/util/enum_string.h new file mode 100644 index 000000000..c4f84ee09 --- /dev/null +++ b/src/util/enum_string.h @@ -0,0 +1,17 @@ +// Luanti +// SPDX-License-Identifier: LGPL-2.1-or-later +// Copyright (C) 2025 cx384 + +#pragma once + +#include + +struct EnumString +{ + int num; + const char *str; +}; + +bool string_to_enum(const EnumString *spec, int &result, std::string_view str); + +const char *enum_to_string(const EnumString *spec, int num); diff --git a/src/util/hashing.cpp b/src/util/hashing.cpp new file mode 100644 index 000000000..452cd6818 --- /dev/null +++ b/src/util/hashing.cpp @@ -0,0 +1,50 @@ +// SPDX-FileCopyrightText: 2024 Luanti Contributors +// +// SPDX-License-Identifier: LGPL-2.1-or-later + +#include "hashing.h" + +#include "debug.h" +#include "config.h" +#if USE_OPENSSL +#include +#include +#else +#include "util/sha1.h" +#include "my_sha256.h" +#endif + +namespace hashing +{ + +std::string sha1(std::string_view data) +{ +#if USE_OPENSSL + std::string digest(SHA1_DIGEST_SIZE, '\000'); + auto src = reinterpret_cast(data.data()); + auto dst = reinterpret_cast(digest.data()); + SHA1(src, data.size(), dst); + return digest; +#else + SHA1 sha1; + sha1.addBytes(data); + return sha1.getDigest(); +#endif +} + +std::string sha256(std::string_view data) +{ + std::string digest(SHA256_DIGEST_SIZE, '\000'); + auto src = reinterpret_cast(data.data()); + auto dst = reinterpret_cast(digest.data()); +#if USE_OPENSSL + // can't call SHA256(), because it's defined by our sha256.c fallback + auto success = EVP_Digest(src, data.size(), dst, nullptr, EVP_sha256(), nullptr) == 1; + FATAL_ERROR_IF(!success, "sha256 failed"); +#else + SHA256(src, data.size(), dst); +#endif + return digest; +} + +} diff --git a/src/util/hashing.h b/src/util/hashing.h new file mode 100644 index 000000000..3e9a0fee7 --- /dev/null +++ b/src/util/hashing.h @@ -0,0 +1,21 @@ +// SPDX-FileCopyrightText: 2024 Luanti Contributors +// +// SPDX-License-Identifier: LGPL-2.1-or-later + +#pragma once + +#include +#include + +namespace hashing +{ + +// Size of raw digest in bytes +constexpr size_t SHA1_DIGEST_SIZE = 20; +constexpr size_t SHA256_DIGEST_SIZE = 32; + +// Returns the digest of data +std::string sha1(std::string_view data); +std::string sha256(std::string_view data); + +} diff --git a/src/util/numeric.h b/src/util/numeric.h index b2031a28e..64a1f182f 100644 --- a/src/util/numeric.h +++ b/src/util/numeric.h @@ -522,9 +522,9 @@ inline void paging(u32 length, u32 page, u32 pagecount, u32 &minindex, u32 &maxi inline float cycle_shift(float value, float by = 0, float max = 1) { - if (value + by < 0) return value + by + max; - if (value + by > max) return value + by - max; - return value + by; + if (value + by < 0) return value + by + max; + if (value + by > max) return value + by - max; + return value + by; } inline unsigned int radius_box(const v3pos_t &a, const v3pos_t &b) diff --git a/src/util/pointer.h b/src/util/pointer.h index 1a4cd3c2a..bfe0815ff 100644 --- a/src/util/pointer.h +++ b/src/util/pointer.h @@ -36,10 +36,11 @@ public: Buffer(unsigned int size) { m_size = size; - if(size != 0) + if (size != 0) { data = new T[size]; - else + } else { data = nullptr; + } } // Disable class copy @@ -49,26 +50,24 @@ public: Buffer(Buffer &&buffer) { m_size = buffer.m_size; - if(m_size != 0) - { + if (m_size != 0) { data = buffer.data; buffer.data = nullptr; buffer.m_size = 0; - } - else + } else { data = nullptr; + } } // Copies whole buffer Buffer(const T *t, unsigned int size) { m_size = size; - if(size != 0) - { + if (size != 0) { data = new T[size]; - memcpy(data, t, size); - } - else + memcpy(data, t, sizeof(T) * size); + } else { data = nullptr; + } } ~Buffer() @@ -78,18 +77,18 @@ public: Buffer& operator=(Buffer &&buffer) { - if(this == &buffer) + if (this == &buffer) { return *this; + } drop(); m_size = buffer.m_size; - if(m_size != 0) - { + if (m_size != 0) { data = buffer.data; buffer.data = nullptr; buffer.m_size = 0; - } - else + } else { data = nullptr; + } return *this; } @@ -99,7 +98,7 @@ public: buffer.m_size = m_size; if (m_size != 0) { buffer.data = new T[m_size]; - memcpy(buffer.data, data, m_size); + memcpy(buffer.data, data, sizeof(T) * m_size); } else { buffer.data = nullptr; } @@ -121,8 +120,9 @@ public: operator std::string_view() const { - if (!data) + if (!data) { return std::string_view(); + } return std::string_view(reinterpret_cast(data), m_size); } @@ -156,14 +156,14 @@ public: SharedBuffer(unsigned int size) { m_size = size; - if(m_size != 0) - { + if (m_size != 0) { data = new T[m_size]; - memset(data,0,sizeof(T)*m_size); - } - else + } else { data = nullptr; + } + refcount = new unsigned int; + memset(data, 0, sizeof(T) * m_size); (*refcount) = 1; } SharedBuffer(const SharedBuffer &buffer) @@ -175,8 +175,10 @@ public: } SharedBuffer & operator=(const SharedBuffer & buffer) { - if(this == &buffer) + if (this == &buffer) { return *this; + } + drop(); m_size = buffer.m_size; data = buffer.data; @@ -184,36 +186,22 @@ public: (*refcount)++; return *this; } - /* - Copies whole buffer - */ + //! Copies whole buffer SharedBuffer(const T *t, unsigned int size) { m_size = size; - if(m_size != 0) - { + if (m_size != 0) { data = new T[m_size]; - memcpy(data, t, m_size); - } - else + memcpy(data, t, sizeof(T) * m_size); + } else { data = nullptr; + } refcount = new unsigned int; (*refcount) = 1; } - /* - Copies whole buffer - */ - SharedBuffer(const Buffer &buffer) + //! Copies whole buffer + SharedBuffer(const Buffer &buffer) : SharedBuffer(*buffer, buffer.getSize()) { - m_size = buffer.getSize(); - if (m_size != 0) { - data = new T[m_size]; - memcpy(data, *buffer, buffer.getSize()); - } - else - data = nullptr; - refcount = new unsigned int; - (*refcount) = 1; } ~SharedBuffer() { @@ -242,8 +230,7 @@ private: if((*refcount) == 0) return; //whoops (*refcount)--; - if(*refcount == 0) - { + if (*refcount == 0) { delete[] data; delete refcount; } diff --git a/src/util/quicktune.cpp b/src/util/quicktune.cpp index a1a3e4465..343301f1b 100644 --- a/src/util/quicktune.cpp +++ b/src/util/quicktune.cpp @@ -13,6 +13,8 @@ std::string QuicktuneValue::getString() return "(none)"; case QVT_FLOAT: return ftos(value_QVT_FLOAT.current); + case QVT_INT: + return itos(value_QVT_INT.current); } return ""; } @@ -22,14 +24,21 @@ void QuicktuneValue::relativeAdd(float amount) switch(type){ case QVT_NONE: break; - case QVT_FLOAT: - value_QVT_FLOAT.current += amount * (value_QVT_FLOAT.max - value_QVT_FLOAT.min); - if(value_QVT_FLOAT.current > value_QVT_FLOAT.max) - value_QVT_FLOAT.current = value_QVT_FLOAT.max; - if(value_QVT_FLOAT.current < value_QVT_FLOAT.min) - value_QVT_FLOAT.current = value_QVT_FLOAT.min; + case QVT_FLOAT: { + float &v = value_QVT_FLOAT.current; + v += amount * (value_QVT_FLOAT.max - value_QVT_FLOAT.min); + v = core::clamp(v, value_QVT_FLOAT.min, value_QVT_FLOAT.max); break; } + case QVT_INT: { + int &v = value_QVT_INT.current; + int diff = std::floor(amount * (value_QVT_INT.max - value_QVT_INT.min)); + if (!diff) + diff = amount < 0 ? -1 : 1; + v = core::clamp(v + diff, value_QVT_INT.min, value_QVT_INT.max); + break; + } + } } static std::map g_values; @@ -44,12 +53,9 @@ const std::vector &getQuicktuneNames() QuicktuneValue getQuicktuneValue(const std::string &name) { MutexAutoLock lock(g_mutex); - std::map::iterator i = g_values.find(name); - if(i == g_values.end()){ - QuicktuneValue val; - val.type = QVT_NONE; - return val; - } + auto i = g_values.find(name); + if (i == g_values.end()) + return QuicktuneValue(); return i->second; } @@ -64,15 +70,15 @@ void updateQuicktuneValue(const std::string &name, QuicktuneValue &val) { MutexAutoLock lock(g_mutex); auto i = g_values.find(name); - if(i == g_values.end()){ + if (i == g_values.end()) { g_values[name] = val; g_names.push_back(name); return; } QuicktuneValue &ref = i->second; - if(ref.modified) + if (ref.modified) { val = ref; - else{ + } else { ref = val; ref.modified = false; } diff --git a/src/util/quicktune.h b/src/util/quicktune.h index caed0f6a2..263fdcee6 100644 --- a/src/util/quicktune.h +++ b/src/util/quicktune.h @@ -37,19 +37,21 @@ #include #include -enum QuicktuneValueType{ +enum QuicktuneValueType { QVT_NONE, - QVT_FLOAT + QVT_FLOAT, + QVT_INT }; struct QuicktuneValue { QuicktuneValueType type = QVT_NONE; - union{ - struct{ - float current; - float min; - float max; + union { + struct { + float current, min, max; } value_QVT_FLOAT; + struct { + int current, min, max; + } value_QVT_INT; }; bool modified = false; @@ -65,19 +67,15 @@ void setQuicktuneValue(const std::string &name, const QuicktuneValue &val); void updateQuicktuneValue(const std::string &name, QuicktuneValue &val); -#ifndef NDEBUG - #define QUICKTUNE(type_, var, min_, max_, name){\ - QuicktuneValue qv;\ - qv.type = type_;\ - qv.value_##type_.current = var;\ - qv.value_##type_.min = min_;\ - qv.value_##type_.max = max_;\ - updateQuicktuneValue(name, qv);\ - var = qv.value_##type_.current;\ - } -#else // NDEBUG - #define QUICKTUNE(type, var, min_, max_, name){} -#endif +#define QUICKTUNE(type_, var, min_, max_, name) do { \ + QuicktuneValue qv; \ + qv.type = type_; \ + qv.value_##type_.current = var; \ + qv.value_##type_.min = min_; \ + qv.value_##type_.max = max_; \ + updateQuicktuneValue(name, qv); \ + var = qv.value_##type_.current; \ + } while (0) #define QUICKTUNE_AUTONAME(type_, var, min_, max_)\ QUICKTUNE(type_, var, min_, max_, #var) diff --git a/src/util/string.cpp b/src/util/string.cpp index f18d9756f..37f37b64a 100644 --- a/src/util/string.cpp +++ b/src/util/string.cpp @@ -1238,14 +1238,41 @@ void safe_print_string(std::ostream &os, std::string_view str) os.setf(flags); } - -v3f str_to_v3f(std::string_view str) +std::optional str_to_v3f(std::string_view str) { + str = trim(str); + + if (str.empty()) + return std::nullopt; + + // Strip parentheses if they exist + if (str.front() == '(' && str.back() == ')') { + str.remove_prefix(1); + str.remove_suffix(1); + str = trim(str); + } + + std::istringstream iss((std::string(str))); + + const auto expect_delimiter = [&]() { + const auto c = iss.get(); + return c == ' ' || c == ','; + }; + v3f value; - Strfnd f(str); - f.next("("); - value.X = stof(f.next(",")); - value.Y = stof(f.next(",")); - value.Z = stof(f.next(")")); + if (!(iss >> value.X)) + return std::nullopt; + if (!expect_delimiter()) + return std::nullopt; + if (!(iss >> value.Y)) + return std::nullopt; + if (!expect_delimiter()) + return std::nullopt; + if (!(iss >> value.Z)) + return std::nullopt; + + if (!iss.eof()) + return std::nullopt; + return value; } diff --git a/src/util/string.h b/src/util/string.h index 88c5ea492..2b5dca9bc 100644 --- a/src/util/string.h +++ b/src/util/string.h @@ -21,6 +21,7 @@ #include #include #include +#include class Translations; @@ -760,9 +761,9 @@ inline std::string stringw_to_utf8(const irr::core::stringw &input) return wide_to_utf8(sv); } - /** - * Create an irr::core:stringw from a UTF8 std::string. - */ +/** + * Create an irr::core:stringw from a UTF8 std::string. + */ inline irr::core::stringw utf8_to_stringw(std::string_view input) { std::wstring str = utf8_to_wide(input); @@ -797,9 +798,9 @@ std::string sanitize_untrusted(std::string_view str, bool keep_escapes = true); void safe_print_string(std::ostream &os, std::string_view str); /** - * Parses a string of form `(1, 2, 3)` to a v3f + * Parses a string of form `(1, 2, 3)` or `1, 2, 4` to a v3f * * @param str string * @return float vector */ -v3f str_to_v3f(std::string_view str); +std::optional str_to_v3f(std::string_view str); diff --git a/src/voxel.cpp b/src/voxel.cpp index fe1c3cd16..03758d92e 100644 --- a/src/voxel.cpp +++ b/src/voxel.cpp @@ -40,7 +40,7 @@ void VoxelManipulator::clear() void VoxelManipulator::print(std::ostream &o, const NodeDefManager *ndef, VoxelPrintMode mode) const { - const v3s16 &em = m_area.getExtent(); + auto &em = m_area.getExtent(); v3s16 of = m_area.MinEdge; o<<"size: "< 2^16 + u64 real_volume = static_cast(a.getExtent().X) * a.getExtent().Y * a.getExtent().Z; + + static_assert(MAX_WORKING_VOLUME < S32_MAX); // hard limit is somewhere here + if (real_volume > MAX_WORKING_VOLUME) { + throw BaseException("VoxelManipulator: " + "Area volume exceeds allowed value of " + std::to_string(MAX_WORKING_VOLUME)); + } +} + void VoxelManipulator::addArea(const VoxelArea &area) { // Cancel if requested area has zero volume @@ -128,20 +140,12 @@ void VoxelManipulator::addArea(const VoxelArea &area) TimeTaker timer("addArea"); // Calculate new area - VoxelArea new_area; - // New area is the requested area if m_area has zero volume - if(m_area.hasEmptyExtent()) - { - new_area = area; - } - // Else add requested area to m_area - else - { - new_area = m_area; - new_area.addArea(area); - } + VoxelArea new_area = m_area; + new_area.addArea(area); - s32 new_size = new_area.getVolume(); + checkArea(new_area); + + u32 new_size = new_area.getVolume(); // Allocate new data and clear flags MapNode *new_data = new MapNode[new_size]; @@ -156,7 +160,7 @@ void VoxelManipulator::addArea(const VoxelArea &area) memset(new_flags, VOXELFLAG_NO_DATA, new_size); // Copy old data - s32 old_x_width = m_area.MaxEdge.X - m_area.MinEdge.X + 1; + u32 old_x_width = m_area.getExtent().X; for(s32 z=m_area.MinEdge.Z; z<=m_area.MaxEdge.Z; z++) for(s32 y=m_area.MinEdge.Y; y<=m_area.MaxEdge.Y; y++) { diff --git a/src/voxel.h b/src/voxel.h index f090d17b5..389cbfd96 100644 --- a/src/voxel.h +++ b/src/voxel.h @@ -104,27 +104,27 @@ public: { MinEdge -= d; MaxEdge += d; + cacheExtent(); } /* const methods */ - const v3s16 &getExtent() const + const v3s32 &getExtent() const { return m_cache_extent; } - /// @note `getVolume() == 0` and `getEmptyExtent()` are not identical. bool hasEmptyExtent() const { - // FIXME: shouldn't this actually be a component-wise check? - return m_cache_extent == v3s16(0,0,0); + return !m_cache_extent.X || !m_cache_extent.Y || !m_cache_extent.Z; } - s32 getVolume() const + u32 getVolume() const { - return (s32)m_cache_extent.X * (s32)m_cache_extent.Y * (s32)m_cache_extent.Z; + // FIXME: possible integer overflow here + return (u32)m_cache_extent.X * (u32)m_cache_extent.Y * (u32)m_cache_extent.Z; } bool contains(const VoxelArea &a) const @@ -150,8 +150,9 @@ public: } bool contains(s32 i) const { - return (i >= 0 && i < getVolume()); + return i >= 0 && static_cast(i) < getVolume(); } + bool operator==(const VoxelArea &other) const { return (MinEdge == other.MinEdge @@ -189,6 +190,7 @@ public: ret.MaxEdge.Y = std::min(a.MaxEdge.Y, MaxEdge.Y); ret.MinEdge.Z = std::max(a.MinEdge.Z, MinEdge.Z); ret.MaxEdge.Z = std::min(a.MaxEdge.Z, MaxEdge.Z); + ret.cacheExtent(); return ret; } @@ -207,7 +209,7 @@ public: if(a.hasEmptyExtent()) { VoxelArea b = *this; - if (b.getVolume() != 0) + if (!b.hasEmptyExtent()) result.push_back(b); return; } @@ -216,7 +218,7 @@ public: const auto &take = [&result] (v3s16 min, v3s16 max) { VoxelArea b(min, max); - if (b.getVolume() != 0) + if (!b.hasEmptyExtent()) result.push_back(b); }; @@ -281,15 +283,16 @@ public: /** * Translate index in the X coordinate */ - static void add_x(const v3s16 &extent, u32 &i, s16 a) + static void add_x(const v3s32 &extent, u32 &i, s16 a) { + (void)extent; i += a; } /** * Translate index in the Y coordinate */ - static void add_y(const v3s16 &extent, u32 &i, s16 a) + static void add_y(const v3s32 &extent, u32 &i, s16 a) { i += a * extent.X; } @@ -297,7 +300,7 @@ public: /** * Translate index in the Z coordinate */ - static void add_z(const v3s16 &extent, u32 &i, s16 a) + static void add_z(const v3s32 &extent, u32 &i, s16 a) { i += a * extent.X * extent.Y; } @@ -305,7 +308,7 @@ public: /** * Translate index in space */ - static void add_p(const v3s16 &extent, u32 &i, v3s16 a) + static void add_p(const v3s32 &extent, u32 &i, v3s16 a) { i += a.Z * extent.X * extent.Y + a.Y * extent.X + a.X; } @@ -330,15 +333,20 @@ public: private: void cacheExtent() { - m_cache_extent = MaxEdge - MinEdge + v3s16(1,1,1); + m_cache_extent = { + MaxEdge.X - MinEdge.X + 1, + MaxEdge.Y - MinEdge.Y + 1, + MaxEdge.Z - MinEdge.Z + 1 + }; // If positions were sorted correctly this must always hold. // Note that this still permits empty areas (where MinEdge = MaxEdge + 1). - assert(m_cache_extent.X >= 0); - assert(m_cache_extent.Y >= 0); - assert(m_cache_extent.Z >= 0); + assert(m_cache_extent.X >= 0 && m_cache_extent.X <= MAX_EXTENT); + assert(m_cache_extent.Y >= 0 && m_cache_extent.Y <= MAX_EXTENT); + assert(m_cache_extent.Z >= 0 && m_cache_extent.Z <= MAX_EXTENT); } - v3s16 m_cache_extent = v3s16(0,0,0); + static constexpr s32 MAX_EXTENT = S16_MAX - S16_MIN + 1; + v3s32 m_cache_extent; }; enum : u8 { @@ -452,7 +460,9 @@ public: { if(!m_area.contains(p)) return false; - m_data[m_area.index(p)] = n; + const s32 index = m_area.index(p); + m_data[index] = n; + m_flags[index] &= ~VOXELFLAG_NO_DATA; return true; } diff --git a/src/voxelalgorithms.cpp b/src/voxelalgorithms.cpp index 044ef0f7e..c593caf98 100644 --- a/src/voxelalgorithms.cpp +++ b/src/voxelalgorithms.cpp @@ -788,7 +788,7 @@ void fill_with_sunlight(MMVManip *vm, const NodeDefManager *ndef, v2s16 offset, bool light[MAP_BLOCKSIZE][MAP_BLOCKSIZE]) { // Distance in array between two nodes on top of each other. - s16 ystride = vm->m_area.getExtent().X; + s32 ystride = vm->m_area.getExtent().X; // Cache the ignore node. MapNode ignore = MapNode(CONTENT_IGNORE); // For each column of nodes: diff --git a/textures/base/pack/cdb_update_cropped.png b/textures/base/pack/cdb_update_cropped.png index 8161dd7e4..2285c8ffc 100644 Binary files a/textures/base/pack/cdb_update_cropped.png and b/textures/base/pack/cdb_update_cropped.png differ diff --git a/textures/base/pack/checkbox_16.png b/textures/base/pack/checkbox_16.png index 567151860..fa84ff0e3 100644 Binary files a/textures/base/pack/checkbox_16.png and b/textures/base/pack/checkbox_16.png differ diff --git a/textures/base/pack/checkbox_32.png b/textures/base/pack/checkbox_32.png index 00208a0f1..bc6b2721b 100644 Binary files a/textures/base/pack/checkbox_32.png and b/textures/base/pack/checkbox_32.png differ diff --git a/textures/base/pack/down.png b/textures/base/pack/down.png index 7183ee536..594863dba 100644 Binary files a/textures/base/pack/down.png and b/textures/base/pack/down.png differ diff --git a/textures/base/pack/jump_btn.png b/textures/base/pack/jump_btn.png index 17b7cb586..dbb455b95 100644 Binary files a/textures/base/pack/jump_btn.png and b/textures/base/pack/jump_btn.png differ diff --git a/textures/base/pack/server_url.png b/textures/base/pack/server_url.png new file mode 100644 index 000000000..3f0490083 Binary files /dev/null and b/textures/base/pack/server_url.png differ diff --git a/textures/base/pack/server_url_unavailable.png b/textures/base/pack/server_url_unavailable.png new file mode 100644 index 000000000..8010ad469 Binary files /dev/null and b/textures/base/pack/server_url_unavailable.png differ diff --git a/textures/base/pack/server_view_clients.png b/textures/base/pack/server_view_clients.png new file mode 100644 index 000000000..120067074 Binary files /dev/null and b/textures/base/pack/server_view_clients.png differ diff --git a/textures/base/pack/server_view_clients_unavailable.png b/textures/base/pack/server_view_clients_unavailable.png new file mode 100644 index 000000000..964efcde1 Binary files /dev/null and b/textures/base/pack/server_view_clients_unavailable.png differ diff --git a/textures/base/pack/server_view_mods.png b/textures/base/pack/server_view_mods.png new file mode 100644 index 000000000..a2611d92d Binary files /dev/null and b/textures/base/pack/server_view_mods.png differ diff --git a/textures/base/pack/server_view_mods_unavailable.png b/textures/base/pack/server_view_mods_unavailable.png new file mode 100644 index 000000000..4238bb786 Binary files /dev/null and b/textures/base/pack/server_view_mods_unavailable.png differ diff --git a/util/buildbot/common.sh b/util/buildbot/common.sh index 32434abdd..048707c4a 100644 --- a/util/buildbot/common.sh +++ b/util/buildbot/common.sh @@ -1,4 +1,4 @@ -CORE_GIT=https://github.com/minetest/minetest +CORE_GIT=https://github.com/luanti-org/luanti CORE_BRANCH=master CORE_NAME=minetest diff --git a/util/ci/check_png_optimized.sh b/util/ci/check_png_optimized.sh new file mode 100755 index 000000000..856262797 --- /dev/null +++ b/util/ci/check_png_optimized.sh @@ -0,0 +1,31 @@ +#!/bin/bash -e + +# Only warn if decrease is more than 3% +optimization_requirement=3 + +git ls-files "*.png" | sort -u | ( + optimized=1 + temp_file=$(mktemp) + echo "Optimizing png files:" + while read file; do + # Does only run a fuzzy check without -o7 -zm1-9 since it would be too slow otherwise + decrease=($(optipng -nc -strip all -out "$temp_file" -clobber "$file" |& \ + sed -n 's/.*(\([0-9]\{1,\}\) bytes\? = \([0-9]\{1,\}\)\.[0-9]\{2\}% decrease).*/\1 \2/p')) + if [[ -n "${decrease[*]}" ]]; then + if [ "${decrease[1]}" -ge "$optimization_requirement" ]; then + echo -en "\033[31m" + optimized=0 + else + echo -en "\033[32m" + fi + echo -e "Decrease: ${decrease[0]}B ${decrease[1]}%\033[0m $file" + fi + done + rm "$temp_file" + + if [ "$optimized" -eq 0 ]; then + echo -e "\033[1;31mWarning: Could optimized png file(s) by more than $optimization_requirement%.\033[0m" \ + "Apply 'optipng -o7 -zm1-9 -nc -strip all -clobber '" + exit 1 + fi +) diff --git a/util/ci/common.sh b/util/ci/common.sh index 2133ac436..3fded7571 100644 --- a/util/ci/common.sh +++ b/util/ci/common.sh @@ -8,6 +8,7 @@ install_linux_deps() { libpng-dev libjpeg-dev libgl1-mesa-dev libxi-dev libfreetype-dev libsqlite3-dev libhiredis-dev libogg-dev libgmp-dev libvorbis-dev libopenal-dev libpq-dev libleveldb-dev libcurl4-openssl-dev libzstd-dev + libssl-dev ) sudo apt-get update diff --git a/util/ci/indent_tab_preprocess.py b/util/ci/indent_tab_preprocess.py new file mode 100644 index 000000000..50d7f7686 --- /dev/null +++ b/util/ci/indent_tab_preprocess.py @@ -0,0 +1,152 @@ +#!/usr/bin/python3 + +import sys +import re + +# preprocess files for indent check + +# Code processing: +# +# Tabs are kept. +# Spaces after tabs are removed if indent is not smaller than in previous line. +# +# Example: +# +# a = 6; +# b = 5; +# if ( +# ) { +# c = 7; +# } +# +# Result: +# +# a = 6; +# b = 5; +# if ( +# ) { +# c = 7; +# } + +# Multiline comments processing: +# +# It is expected that tabs indent from comment begining is +# used as indent on begining of every commented line. +# +# Example: +# +# /* +# A +# B +# C +# D +# */ +# /* +# R +# */ +# +# Result: +# +# /* +# A +# B +# C +# D +# */ +# /* +# *R +# */ + + +def main(): + if len(sys.argv) != 4: + #print("Bad arguments") + #print(sys.argv) + exit() + # multiline comment begining and end from command line + mlc_begin = sys.argv[1] + mlc_end = sys.argv[2] + file_name = sys.argv[3] + + mlc_end_len = len(mlc_end) + re_begin = re.escape(mlc_begin) + re_end = re.escape(mlc_end) + + re_mlc_begin = "^.*{}".format(re_begin) + re_mlc_begin_end = "^.*{}.*{}".format(re_begin, re_end) + re_mlc_end = "^.*{}".format(re_end) + + file = open(file_name, "r") + + lines = [] + + #print(re_mlc_begin) + #print(re_mlc_begin_end) + #print(re_mlc_end) + #print(file) + + # -1 means not in the multiline comment + # other values mean multiline comment indent in the number of tabs + limit = -1 + # this value stores the previous line indent in code mode (not in multiline comment) + prev = 80 + for line in file: + if limit == -1: + find = re.search(re_mlc_begin, line) + if find: + if not re.search(re_mlc_begin_end, line): + # enter in block comment mode + find = re.search("^\\s*", line) + limit = find.end() + find = re.search("^\\t*", line) + end = find.end() + if end < prev: + lines.append(line) + else: + # in this case, there can be allowed extra trailing whitespaces + # up to 3 trailing whitespaces are allowed + #find = re.search("^\\t+[ ]{0,3}", line) + # unlimited number of trailng whitespaces are allowed + find = re.search("^\\t+[ ]*", line) + fend = find.end() if find else 0 + if fend >= end: + find = re.search("^\\t*", line) + lines.append(line[0:find.end()] + line[fend:]) + else: + lines.append(line) + prev = end + else: + # in block comment mode + find = re.search(re_mlc_end, line) + if find: + # erase whitechars enabled for ignore, end in block comment mode + begin = find.end() - mlc_end_len + if begin > limit: + lines.append(line[0:limit] + line[begin:]) + else: + lines.append(line) + limit = -1 + else: + # erase whitechars enabled for ignore + find = re.search("^$", line) + if find: + lines.append(line) + else: + find = re.search("^\\s*", line) + if find: + end = find.end() + if end > limit: + lines.append(line[0:limit] + line[end:]) + else: + lines.append(line) + else: + lines.append(line) + + file.close() + file = open(file_name, "w") + for line in lines: + file.write(line) + file.close() + +if __name__ == "__main__": + main() diff --git a/util/gather_git_credits.py b/util/gather_git_credits.py index d531f81cb..b02275644 100755 --- a/util/gather_git_credits.py +++ b/util/gather_git_credits.py @@ -6,7 +6,7 @@ from collections import defaultdict codefiles = r"(\.[ch](pp)?|\.lua|\.md|\.cmake|\.java|\.gradle|Makefile|CMakeLists\.txt)$" # two minor versions back, for "Active Contributors" -REVS_ACTIVE = "5.8.0..HEAD" +REVS_ACTIVE = "5.9.0..HEAD" # all time, for "Previous Contributors" REVS_PREVIOUS = "HEAD" @@ -14,7 +14,7 @@ CUTOFF_ACTIVE = 3 CUTOFF_PREVIOUS = 21 # For a description of the points system see: -# https://github.com/minetest/minetest/pull/9593#issue-398677198 +# def load(revs): points = defaultdict(int) @@ -27,7 +27,7 @@ def load(revs): p2 = subprocess.Popen(["git", "show", "--numstat", "--pretty=format:", hash], stdout=subprocess.PIPE, universal_newlines=True) for line in p2.stdout: - added, deleted, filename = re.split(r"\s+", line.strip(), 2) + added, deleted, filename = re.split(r"\s+", line.strip(), maxsplit=2) if re.search(codefiles, filename) and added != "-": n += int(added) p2.wait() diff --git a/util/test_multiplayer.sh b/util/test_multiplayer.sh index 16e8fe1f7..5fbb7b3c7 100755 --- a/util/test_multiplayer.sh +++ b/util/test_multiplayer.sh @@ -29,7 +29,7 @@ mkdir -p "$worldpath/worldmods" printf '%s\n' >"$testspath/client1.conf" \ video_driver=null name=client1 viewing_range=10 \ - enable_{sound,minimap,shaders}=false + enable_{sound,minimap,post_processing}=false printf '%s\n' >"$testspath/server.conf" \ max_block_send_distance=1 active_block_range=1 \