Merge branch 'master' of https://github.com/minetest/minetest
@ -29,3 +29,4 @@ AlignAfterOpenBracket: DontAlign
|
|||||||
ContinuationIndentWidth: 16
|
ContinuationIndentWidth: 16
|
||||||
ConstructorInitializerIndentWidth: 16
|
ConstructorInitializerIndentWidth: 16
|
||||||
BreakConstructorInitializers: AfterColon
|
BreakConstructorInitializers: AfterColon
|
||||||
|
AlwaysBreakTemplateDeclarations: Yes
|
||||||
|
5
.github/workflows/build.yml
vendored
@ -124,7 +124,7 @@ jobs:
|
|||||||
- name: Install deps
|
- name: Install deps
|
||||||
run: |
|
run: |
|
||||||
source ./util/ci/common.sh
|
source ./util/ci/common.sh
|
||||||
install_linux_deps clang-9
|
install_linux_deps --old-irr clang-9
|
||||||
|
|
||||||
- name: Build prometheus-cpp
|
- name: Build prometheus-cpp
|
||||||
run: |
|
run: |
|
||||||
@ -213,6 +213,9 @@ jobs:
|
|||||||
msvc:
|
msvc:
|
||||||
name: VS 2019 ${{ matrix.config.arch }}-${{ matrix.type }}
|
name: VS 2019 ${{ matrix.config.arch }}-${{ matrix.type }}
|
||||||
runs-on: windows-2019
|
runs-on: windows-2019
|
||||||
|
#### Disabled due to Irrlicht switch
|
||||||
|
if: false
|
||||||
|
#### Disabled due to Irrlicht switch
|
||||||
env:
|
env:
|
||||||
VCPKG_VERSION: 0bf3923f9fab4001c00f0f429682a0853b5749e0
|
VCPKG_VERSION: 0bf3923f9fab4001c00f0f429682a0853b5749e0
|
||||||
# 2020.11
|
# 2020.11
|
||||||
|
27
.github/workflows/cpp_lint.yml
vendored
@ -24,20 +24,21 @@ on:
|
|||||||
- '.github/workflows/**.yml'
|
- '.github/workflows/**.yml'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
clang_format:
|
|
||||||
runs-on: ubuntu-18.04
|
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
- name: Install clang-format
|
|
||||||
run: |
|
|
||||||
sudo apt-get install clang-format-9 -qyy
|
|
||||||
|
|
||||||
- name: Run clang-format
|
# clang_format:
|
||||||
run: |
|
# runs-on: ubuntu-18.04
|
||||||
source ./util/ci/lint.sh
|
# steps:
|
||||||
perform_lint
|
# - uses: actions/checkout@v2
|
||||||
env:
|
# - name: Install clang-format
|
||||||
CLANG_FORMAT: clang-format-9
|
# run: |
|
||||||
|
# sudo apt-get install clang-format-9 -qyy
|
||||||
|
#
|
||||||
|
# - name: Run clang-format
|
||||||
|
# run: |
|
||||||
|
# source ./util/ci/clang-format.sh
|
||||||
|
# check_format
|
||||||
|
# env:
|
||||||
|
# CLANG_FORMAT: clang-format-9
|
||||||
|
|
||||||
clang_tidy:
|
clang_tidy:
|
||||||
runs-on: ubuntu-18.04
|
runs-on: ubuntu-18.04
|
||||||
|
3
.gitignore
vendored
@ -86,8 +86,7 @@ src/test_config.h
|
|||||||
src/cmake_config.h
|
src/cmake_config.h
|
||||||
src/cmake_config_githash.h
|
src/cmake_config_githash.h
|
||||||
src/unittest/test_world/world.mt
|
src/unittest/test_world/world.mt
|
||||||
src/lua/build/
|
/locale/
|
||||||
locale/
|
|
||||||
.directory
|
.directory
|
||||||
*.cbp
|
*.cbp
|
||||||
*.layout
|
*.layout
|
||||||
|
@ -9,16 +9,24 @@ stages:
|
|||||||
- deploy
|
- deploy
|
||||||
|
|
||||||
variables:
|
variables:
|
||||||
|
IRRLICHT_TAG: "1.9.0mt0"
|
||||||
MINETEST_GAME_REPO: "https://github.com/minetest/minetest_game.git"
|
MINETEST_GAME_REPO: "https://github.com/minetest/minetest_game.git"
|
||||||
CONTAINER_IMAGE: registry.gitlab.com/$CI_PROJECT_PATH
|
CONTAINER_IMAGE: registry.gitlab.com/$CI_PROJECT_PATH
|
||||||
|
|
||||||
.build_template:
|
.build_template:
|
||||||
stage: build
|
stage: build
|
||||||
|
before_script:
|
||||||
|
- apt-get update
|
||||||
|
- apt-get -y install build-essential git cmake libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libleveldb-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
||||||
script:
|
script:
|
||||||
|
- git clone https://github.com/minetest/irrlicht -b $IRRLICHT_TAG
|
||||||
|
- cd irrlicht
|
||||||
|
- cmake . -DBUILD_SHARED_LIBS=OFF
|
||||||
|
- make -j2
|
||||||
|
- cd ..
|
||||||
- mkdir cmakebuild
|
- mkdir cmakebuild
|
||||||
- mkdir -p artifact/minetest/usr/
|
|
||||||
- cd cmakebuild
|
- cd cmakebuild
|
||||||
- cmake -DCMAKE_INSTALL_PREFIX=../artifact/minetest/usr/ -DCMAKE_BUILD_TYPE=Release -DRUN_IN_PLACE=FALSE -DENABLE_GETTEXT=TRUE -DENABLE_SYSTEM_JSONCPP=TRUE -DBUILD_SERVER=TRUE ..
|
- cmake -DIRRLICHT_LIBRARY=$PWD/../irrlicht/lib/Linux/libIrrlicht.a -DIRRLICHT_INCLUDE_DIR=$PWD/../irrlicht/include -DCMAKE_INSTALL_PREFIX=../artifact/minetest/usr/ -DCMAKE_BUILD_TYPE=Release -DRUN_IN_PLACE=FALSE -DENABLE_GETTEXT=TRUE -DBUILD_SERVER=TRUE ..
|
||||||
- make -j2
|
- make -j2
|
||||||
- make install
|
- make install
|
||||||
artifacts:
|
artifacts:
|
||||||
@ -30,7 +38,7 @@ variables:
|
|||||||
.debpkg_template:
|
.debpkg_template:
|
||||||
stage: package
|
stage: package
|
||||||
before_script:
|
before_script:
|
||||||
- apt-get update -y
|
- apt-get update
|
||||||
- apt-get install -y git
|
- apt-get install -y git
|
||||||
- mkdir -p build/deb/minetest/DEBIAN/
|
- mkdir -p build/deb/minetest/DEBIAN/
|
||||||
- cp misc/debpkg-control build/deb/minetest/DEBIAN/control
|
- cp misc/debpkg-control build/deb/minetest/DEBIAN/control
|
||||||
@ -39,6 +47,7 @@ variables:
|
|||||||
- git clone $MINETEST_GAME_REPO build/deb/minetest/usr/share/minetest/games/minetest_game
|
- git clone $MINETEST_GAME_REPO build/deb/minetest/usr/share/minetest/games/minetest_game
|
||||||
- rm -rf build/deb/minetest/usr/share/minetest/games/minetest/.git
|
- rm -rf build/deb/minetest/usr/share/minetest/games/minetest/.git
|
||||||
- sed -i 's/DATEPLACEHOLDER/'$(date +%y.%m.%d)'/g' build/deb/minetest/DEBIAN/control
|
- sed -i 's/DATEPLACEHOLDER/'$(date +%y.%m.%d)'/g' build/deb/minetest/DEBIAN/control
|
||||||
|
- sed -i 's/JPEG_PLACEHOLDER/'$JPEG_PKG'/g' build/deb/minetest/DEBIAN/control
|
||||||
- sed -i 's/LEVELDB_PLACEHOLDER/'$LEVELDB_PKG'/g' build/deb/minetest/DEBIAN/control
|
- sed -i 's/LEVELDB_PLACEHOLDER/'$LEVELDB_PKG'/g' build/deb/minetest/DEBIAN/control
|
||||||
- cd build/deb/ && dpkg-deb -b minetest/ && mv minetest.deb ../../
|
- cd build/deb/ && dpkg-deb -b minetest/ && mv minetest.deb ../../
|
||||||
artifacts:
|
artifacts:
|
||||||
@ -49,7 +58,7 @@ variables:
|
|||||||
.debpkg_install:
|
.debpkg_install:
|
||||||
stage: deploy
|
stage: deploy
|
||||||
before_script:
|
before_script:
|
||||||
- apt-get update -y
|
- apt-get update
|
||||||
script:
|
script:
|
||||||
- apt-get install -y ./*.deb
|
- apt-get install -y ./*.deb
|
||||||
- minetest --version
|
- minetest --version
|
||||||
@ -63,9 +72,6 @@ variables:
|
|||||||
build:debian-9:
|
build:debian-9:
|
||||||
extends: .build_template
|
extends: .build_template
|
||||||
image: debian:9
|
image: debian:9
|
||||||
before_script:
|
|
||||||
- apt-get update -y
|
|
||||||
- apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
|
||||||
|
|
||||||
package:debian-9:
|
package:debian-9:
|
||||||
extends: .debpkg_template
|
extends: .debpkg_template
|
||||||
@ -74,6 +80,7 @@ package:debian-9:
|
|||||||
- build:debian-9
|
- build:debian-9
|
||||||
variables:
|
variables:
|
||||||
LEVELDB_PKG: libleveldb1v5
|
LEVELDB_PKG: libleveldb1v5
|
||||||
|
JPEG_PKG: libjpeg62-turbo
|
||||||
|
|
||||||
deploy:debian-9:
|
deploy:debian-9:
|
||||||
extends: .debpkg_install
|
extends: .debpkg_install
|
||||||
@ -86,9 +93,6 @@ deploy:debian-9:
|
|||||||
build:debian-10:
|
build:debian-10:
|
||||||
extends: .build_template
|
extends: .build_template
|
||||||
image: debian:10
|
image: debian:10
|
||||||
before_script:
|
|
||||||
- apt-get update -y
|
|
||||||
- apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
|
||||||
|
|
||||||
package:debian-10:
|
package:debian-10:
|
||||||
extends: .debpkg_template
|
extends: .debpkg_template
|
||||||
@ -97,6 +101,7 @@ package:debian-10:
|
|||||||
- build:debian-10
|
- build:debian-10
|
||||||
variables:
|
variables:
|
||||||
LEVELDB_PKG: libleveldb1d
|
LEVELDB_PKG: libleveldb1d
|
||||||
|
JPEG_PKG: libjpeg62-turbo
|
||||||
|
|
||||||
deploy:debian-10:
|
deploy:debian-10:
|
||||||
extends: .debpkg_install
|
extends: .debpkg_install
|
||||||
@ -113,9 +118,6 @@ deploy:debian-10:
|
|||||||
build:ubuntu-16.04:
|
build:ubuntu-16.04:
|
||||||
extends: .build_template
|
extends: .build_template
|
||||||
image: ubuntu:xenial
|
image: ubuntu:xenial
|
||||||
before_script:
|
|
||||||
- apt-get update -y
|
|
||||||
- apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
|
||||||
|
|
||||||
package:ubuntu-16.04:
|
package:ubuntu-16.04:
|
||||||
extends: .debpkg_template
|
extends: .debpkg_template
|
||||||
@ -124,6 +126,7 @@ package:ubuntu-16.04:
|
|||||||
- build:ubuntu-16.04
|
- build:ubuntu-16.04
|
||||||
variables:
|
variables:
|
||||||
LEVELDB_PKG: libleveldb1v5
|
LEVELDB_PKG: libleveldb1v5
|
||||||
|
JPEG_PKG: libjpeg-turbo8
|
||||||
|
|
||||||
deploy:ubuntu-16.04:
|
deploy:ubuntu-16.04:
|
||||||
extends: .debpkg_install
|
extends: .debpkg_install
|
||||||
@ -136,9 +139,6 @@ deploy:ubuntu-16.04:
|
|||||||
build:ubuntu-18.04:
|
build:ubuntu-18.04:
|
||||||
extends: .build_template
|
extends: .build_template
|
||||||
image: ubuntu:bionic
|
image: ubuntu:bionic
|
||||||
before_script:
|
|
||||||
- apt-get update -y
|
|
||||||
- apt-get -y install build-essential libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
|
||||||
|
|
||||||
package:ubuntu-18.04:
|
package:ubuntu-18.04:
|
||||||
extends: .debpkg_template
|
extends: .debpkg_template
|
||||||
@ -147,6 +147,7 @@ package:ubuntu-18.04:
|
|||||||
- build:ubuntu-18.04
|
- build:ubuntu-18.04
|
||||||
variables:
|
variables:
|
||||||
LEVELDB_PKG: libleveldb1v5
|
LEVELDB_PKG: libleveldb1v5
|
||||||
|
JPEG_PKG: libjpeg-turbo8
|
||||||
|
|
||||||
deploy:ubuntu-18.04:
|
deploy:ubuntu-18.04:
|
||||||
extends: .debpkg_install
|
extends: .debpkg_install
|
||||||
@ -163,7 +164,7 @@ build:fedora-28:
|
|||||||
extends: .build_template
|
extends: .build_template
|
||||||
image: fedora:28
|
image: fedora:28
|
||||||
before_script:
|
before_script:
|
||||||
- dnf -y install make automake gcc gcc-c++ kernel-devel cmake libcurl-devel openal-soft-devel libvorbis-devel libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel irrlicht-devel gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel spatialindex-devel
|
- dnf -y install make git gcc gcc-c++ kernel-devel cmake libjpeg-devel libpng-devel libcurl-devel openal-soft-devel libvorbis-devel libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel spatialindex-devel
|
||||||
|
|
||||||
##
|
##
|
||||||
## MinGW for Windows
|
## MinGW for Windows
|
||||||
@ -172,7 +173,7 @@ build:fedora-28:
|
|||||||
.generic_win_template:
|
.generic_win_template:
|
||||||
image: ubuntu:bionic
|
image: ubuntu:bionic
|
||||||
before_script:
|
before_script:
|
||||||
- apt-get update -y
|
- apt-get update
|
||||||
- apt-get install -y wget xz-utils unzip git cmake gettext
|
- apt-get install -y wget xz-utils unzip git cmake gettext
|
||||||
- wget -nv http://minetest.kitsunemimi.pw/mingw-w64-${WIN_ARCH}_9.2.0_ubuntu18.04.tar.xz -O mingw.tar.xz
|
- wget -nv http://minetest.kitsunemimi.pw/mingw-w64-${WIN_ARCH}_9.2.0_ubuntu18.04.tar.xz -O mingw.tar.xz
|
||||||
- tar -xaf mingw.tar.xz -C /usr
|
- tar -xaf mingw.tar.xz -C /usr
|
||||||
@ -183,13 +184,13 @@ build:fedora-28:
|
|||||||
artifacts:
|
artifacts:
|
||||||
expire_in: 1h
|
expire_in: 1h
|
||||||
paths:
|
paths:
|
||||||
- build/minetest/_build/*
|
- _build/*
|
||||||
|
|
||||||
.package_win_template:
|
.package_win_template:
|
||||||
extends: .generic_win_template
|
extends: .generic_win_template
|
||||||
stage: package
|
stage: package
|
||||||
script:
|
script:
|
||||||
- unzip build/minetest/_build/minetest-*.zip
|
- unzip _build/minetest-*.zip
|
||||||
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libgcc*.dll minetest-*-win*/bin/
|
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libgcc*.dll minetest-*-win*/bin/
|
||||||
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libstdc++*.dll minetest-*-win*/bin/
|
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libstdc++*.dll minetest-*-win*/bin/
|
||||||
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libwinpthread*.dll minetest-*-win*/bin/
|
- cp -p /usr/${WIN_ARCH}-w64-mingw32/bin/libwinpthread*.dll minetest-*-win*/bin/
|
||||||
@ -201,7 +202,7 @@ build:fedora-28:
|
|||||||
build:win32:
|
build:win32:
|
||||||
extends: .build_win_template
|
extends: .build_win_template
|
||||||
script:
|
script:
|
||||||
- ./util/buildbot/buildwin32.sh build
|
- EXISTING_MINETEST_DIR=$PWD ./util/buildbot/buildwin32.sh build
|
||||||
variables:
|
variables:
|
||||||
WIN_ARCH: "i686"
|
WIN_ARCH: "i686"
|
||||||
|
|
||||||
@ -216,7 +217,7 @@ package:win32:
|
|||||||
build:win64:
|
build:win64:
|
||||||
extends: .build_win_template
|
extends: .build_win_template
|
||||||
script:
|
script:
|
||||||
- ./util/buildbot/buildwin64.sh build
|
- EXISTING_MINETEST_DIR=$PWD ./util/buildbot/buildwin64.sh build
|
||||||
variables:
|
variables:
|
||||||
WIN_ARCH: "x86_64"
|
WIN_ARCH: "x86_64"
|
||||||
|
|
||||||
|
74
.mailmap
@ -1,33 +1,67 @@
|
|||||||
|
# Documentation: https://git-scm.com/docs/git-check-mailmap#_mapping_authors
|
||||||
|
|
||||||
0gb.us <0gb.us@0gb.us> <us_0gb@laptop-0gb-us.0gb.us>
|
0gb.us <0gb.us@0gb.us> <us_0gb@laptop-0gb-us.0gb.us>
|
||||||
Calinou <calinou9999@gmail.com> <calinou9999spam@gmail.com>
|
Calinou <calinou@opmbx.org> <calinou9999@gmail.com>
|
||||||
Perttu Ahola <celeron55@gmail.com> celeron55 <celeron55@gmail.com>
|
Calinou <calinou@opmbx.org> <calinou9999spam@gmail.com>
|
||||||
|
Perttu Ahola <celeron55@gmail.com>
|
||||||
Perttu Ahola <celeron55@gmail.com> celeron55 <celeron55@armada.(none)>
|
Perttu Ahola <celeron55@gmail.com> celeron55 <celeron55@armada.(none)>
|
||||||
Craig Robbins <kde.psych@gmail.com> <crobbins@localhost.localdomain>
|
Zeno- <kde.psych@gmail.com>
|
||||||
|
Zeno- <kde.psych@gmail.com> <crobbins@localhost.localdomain>
|
||||||
|
Diego Martínez <kaeza@users.sf.net>
|
||||||
Diego Martínez <kaeza@users.sf.net> <lkaezadl3@gmail.com>
|
Diego Martínez <kaeza@users.sf.net> <lkaezadl3@gmail.com>
|
||||||
|
Ilya Zhuravlev <zhuravlevilya@ya.ru>
|
||||||
Ilya Zhuravlev <zhuravlevilya@ya.ru> <whatever@xyz.is>
|
Ilya Zhuravlev <zhuravlevilya@ya.ru> <whatever@xyz.is>
|
||||||
kwolekr <kwolekr@minetest.net> <mirrorisim@gmail.com>
|
kwolekr <kwolekr@minetest.net> <mirrorisim@gmail.com>
|
||||||
PilzAdam <pilzadam@minetest.net> PilzAdam <adam-k@outlook.com>
|
PilzAdam <pilzadam@minetest.net> <adam-k@outlook.com>
|
||||||
PilzAdam <pilzadam@minetest.net> Pilz Adam <PilzAdam@gmx.de>
|
PilzAdam <pilzadam@minetest.net> <PilzAdam@gmx.de>
|
||||||
PilzAdam <pilzadam@minetest.net> PilzAdam <PilzAdam@gmx.de>
|
|
||||||
proller <proller@github.com> <proler@github.com>
|
proller <proller@github.com> <proler@github.com>
|
||||||
proller <proller@github.com> <proler@gmail.com>
|
proller <proller@github.com> <proler@gmail.com>
|
||||||
RealBadAngel <maciej.kasatkin@o2.pl> <mk@realbadangel.pl>
|
RealBadAngel <maciej.kasatkin@o2.pl> <mk@realbadangel.pl>
|
||||||
RealBadAngel <maciej.kasatkin@o2.pl> <maciej.kasatkin@yahoo.com>
|
RealBadAngel <maciej.kasatkin@o2.pl> <maciej.kasatkin@yahoo.com>
|
||||||
Selat <LongExampleTestName@gmail.com> <LongExampletestName@gmail.com>
|
Selat <LongExampleTestName@gmail.com> <LongExampletestName@gmail.com>
|
||||||
ShadowNinja <shadowninja@minetest.net> ShadowNinja <noreply@gmail.com>
|
ShadowNinja <shadowninja@minetest.net> ShadowNinja <noreply@gmail.com>
|
||||||
Shen Zheyu <arsdragonfly@gmail.com> arsdragonfly <arsdragonfly@gmail.com>
|
Esteban I. Ruiz Moreno <exio4.com@gmail.com>
|
||||||
Pavel Elagin <elagin.pasha@gmail.com> elagin <elagin.pasha@gmail.com>
|
Esteban I. Ruiz Moreno <exio4.com@gmail.com> <me@exio4.xyz>
|
||||||
Esteban I. Ruiz Moreno <exio4.com@gmail.com> Esteban I. RM <exio4.com@gmail.com>
|
Lord James <neftali_dtctv@hotmail.com>
|
||||||
manuel duarte <ffrogger0@yahoo.com> manuel joaquim <ffrogger0@yahoo.com>
|
BlockMen <nmuelll@web.de>
|
||||||
manuel duarte <ffrogger0@yahoo.com> sweetbomber <ffrogger _zero_ at yahoo dot com>
|
sfan5 <sfan5@live.de>
|
||||||
Diego Martínez <kaeza@users.sf.net> kaeza <kaeza@users.sf.net>
|
DannyDark <the_skeleton_of_a_child@yahoo.co.uk>
|
||||||
Diego Martínez <kaeza@users.sf.net> Diego Martinez <kaeza@users.sf.net>
|
Ilya Pavlov <TTChangeTheWorld@gmail.com>
|
||||||
Lord James <neftali_dtctv@hotmail.com> Lord89James <neftali_dtctv@hotmail.com>
|
|
||||||
BlockMen <nmuelll@web.de> Block Men <nmuelll@web.de>
|
|
||||||
sfan5 <sfan5@live.de> Sfan5 <sfan5@live.de>
|
|
||||||
DannyDark <the_skeleton_of_a_child@yahoo.co.uk> dannydark <the_skeleton_of_a_child@yahoo.co.uk>
|
|
||||||
Ilya Pavlov <TTChangeTheWorld@gmail.com> Ilya <TTChangeTheWorld@gmail.com>
|
|
||||||
Ilya Zhuravlev <zhuravlevilya@ya.ru> xyzz <zhuravlevilya@ya.ru>
|
|
||||||
sapier <Sapier at GMX dot net> sapier <sapier AT gmx DOT net>
|
sapier <Sapier at GMX dot net> sapier <sapier AT gmx DOT net>
|
||||||
sapier <Sapier at GMX dot net> sapier <sapier at gmx dot net>
|
sapier <Sapier at GMX dot net> sapier <sapier at gmx dot net>
|
||||||
|
SmallJoker <SmallJoker@users.noreply.github.com> <mk939@ymail.com>
|
||||||
|
Loïc Blot <nerzhul@users.noreply.github.com>
|
||||||
|
Loïc Blot <nerzhul@users.noreply.github.com> <loic.blot@unix-experience.fr>
|
||||||
|
numzero <numzer0@yandex.ru> Vitaliy <numzer0@yandex.ru>
|
||||||
|
numzero <numzer0@yandex.ru> <silverunicorn2011@yandex.ru>
|
||||||
|
Jean-Patrick Guerrero <kilbith@users.noreply.github.com>
|
||||||
|
Jean-Patrick Guerrero <kilbith@users.noreply.github.com> <jeanpatrick.guerrero@gmail.com>
|
||||||
|
HybridDog <3192173+HybridDog@users.noreply.github.com> <ovvv@web.de>
|
||||||
|
srfqi <muhammadrifqipriyosusanto@gmail.com>
|
||||||
|
Dániel Juhász <juhdanad@gmail.com>
|
||||||
|
rubenwardy <rw@rubenwardy.com>
|
||||||
|
rubenwardy <rw@rubenwardy.com> <rubenwardy@gmail.com>
|
||||||
|
Paul Ouellette <oue.paul18@gmail.com>
|
||||||
|
Vanessa Dannenberg <vanessa.e.dannenberg@gmail.com> <vanessaezekowitz@gmail.com>
|
||||||
|
ClobberXD <ClobberXD@gmail.com>
|
||||||
|
ClobberXD <ClobberXD@gmail.com> <ClobberXD@protonmail.com>
|
||||||
|
ClobberXD <ClobberXD@gmail.com> <36130650+ClobberXD@users.noreply.github.com>
|
||||||
|
Auke Kok <sofar+github@foo-projects.org>
|
||||||
|
Auke Kok <sofar+github@foo-projects.org> <sofar@foo-projects.org>
|
||||||
|
Desour <vorunbekannt75@web.de>
|
||||||
|
Nathanaël Courant <Ekdohibs@users.noreply.github.com> <nathanael.courant@laposte.net>
|
||||||
|
Ezhh <owlecho@live.com>
|
||||||
|
paramat <paramat@users.noreply.github.com>
|
||||||
|
paramat <paramat@users.noreply.github.com> <mat.gregory@virginmedia.com>
|
||||||
|
lhofhansl <lhofhansl@yahoo.com> <larsh@apache.org>
|
||||||
|
red-001 <red-001@outlook.ie> <red-001@openmailbox.org>
|
||||||
|
Wuzzy <wuzzy2@mail.ru> <Wuzzy2@mail.ru>
|
||||||
|
Wuzzy <wuzzy2@mail.ru> <almikes@aol.com>
|
||||||
|
Jordach <jordach.snelling@gmail.com>
|
||||||
|
MoNTE48 <MoNTE48@mail.ua>
|
||||||
|
v-rob <robinsonvincent89@gmail.com>
|
||||||
|
v-rob <robinsonvincent89@gmail.com> <31123645+v-rob@users.noreply.github.com>
|
||||||
|
EvidenceB <49488517+EvidenceBKidscode@users.noreply.github.com>
|
||||||
|
gregorycu <gregory.currie@gmail.com>
|
||||||
|
Rogier <rogier777@gmail.com>
|
||||||
|
Rogier <rogier777@gmail.com> <Rogier-5@users.noreply.github.com>
|
||||||
|
@ -1,7 +1,5 @@
|
|||||||
cmake_minimum_required(VERSION 3.5)
|
cmake_minimum_required(VERSION 3.5)
|
||||||
|
|
||||||
cmake_policy(SET CMP0025 OLD)
|
|
||||||
|
|
||||||
# This can be read from ${PROJECT_NAME} after project() is called
|
# This can be read from ${PROJECT_NAME} after project() is called
|
||||||
project(minetest)
|
project(minetest)
|
||||||
set(PROJECT_NAME_CAPITALIZED "Dragonfire")
|
set(PROJECT_NAME_CAPITALIZED "Dragonfire")
|
||||||
@ -12,9 +10,9 @@ set(CLANG_MINIMUM_VERSION "3.4")
|
|||||||
|
|
||||||
# Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
|
# Also remember to set PROTOCOL_VERSION in network/networkprotocol.h when releasing
|
||||||
set(VERSION_MAJOR 5)
|
set(VERSION_MAJOR 5)
|
||||||
set(VERSION_MINOR 4)
|
set(VERSION_MINOR 5)
|
||||||
set(VERSION_PATCH 0)
|
set(VERSION_PATCH 0)
|
||||||
set(VERSION_EXTRA "-dragonfire" CACHE STRING "Stuff to append to version string")
|
set(VERSION_EXTRA "dragonfire" CACHE STRING "Stuff to append to version string")
|
||||||
|
|
||||||
# Change to false for releases
|
# Change to false for releases
|
||||||
set(DEVELOPMENT_BUILD FALSE)
|
set(DEVELOPMENT_BUILD FALSE)
|
||||||
@ -61,6 +59,29 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
|
|||||||
|
|
||||||
# This is done here so that relative search paths are more reasonable
|
# This is done here so that relative search paths are more reasonable
|
||||||
find_package(Irrlicht)
|
find_package(Irrlicht)
|
||||||
|
if(BUILD_CLIENT AND NOT IRRLICHT_FOUND)
|
||||||
|
message(FATAL_ERROR "Irrlicht is required to build the client, but it was not found.")
|
||||||
|
elseif(IRRLICHT_INCLUDE_DIR STREQUAL "")
|
||||||
|
message(FATAL_ERROR "Irrlicht headers are required to build the server, but none found.")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include(CheckSymbolExists)
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES ${IRRLICHT_INCLUDE_DIR})
|
||||||
|
unset(HAS_FORKED_IRRLICHT CACHE)
|
||||||
|
check_symbol_exists(IRRLICHT_VERSION_MT "IrrCompileConfig.h" HAS_FORKED_IRRLICHT)
|
||||||
|
if(NOT HAS_FORKED_IRRLICHT)
|
||||||
|
string(CONCAT EXPLANATION_MSG
|
||||||
|
"Irrlicht found, but it is not Minetest's Irrlicht fork. "
|
||||||
|
"The Minetest team has forked Irrlicht to make their own customizations. "
|
||||||
|
"It can be found here: https://github.com/minetest/irrlicht")
|
||||||
|
if(BUILD_CLIENT)
|
||||||
|
message(FATAL_ERROR "${EXPLANATION_MSG}\n"
|
||||||
|
"Building the client with upstream Irrlicht is no longer possible.")
|
||||||
|
else()
|
||||||
|
message(WARNING "${EXPLANATION_MSG}\n"
|
||||||
|
"The server can still be built with upstream Irrlicht but this is DISCOURAGED.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
# Installation
|
# Installation
|
||||||
@ -169,7 +190,6 @@ install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/games/devtest" DESTINATION "${SHA
|
|||||||
if(BUILD_CLIENT)
|
if(BUILD_CLIENT)
|
||||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/shaders" DESTINATION "${SHAREDIR}/client")
|
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/shaders" DESTINATION "${SHAREDIR}/client")
|
||||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/textures/base/pack" DESTINATION "${SHAREDIR}/textures/base")
|
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/textures/base/pack" DESTINATION "${SHAREDIR}/textures/base")
|
||||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/fonts" DESTINATION "${SHAREDIR}")
|
|
||||||
if(RUN_IN_PLACE)
|
if(RUN_IN_PLACE)
|
||||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/clientmods" DESTINATION "${SHAREDIR}")
|
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/clientmods" DESTINATION "${SHAREDIR}")
|
||||||
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/serverlist" DESTINATION "${SHAREDIR}/client")
|
install(DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/client/serverlist" DESTINATION "${SHAREDIR}/client")
|
||||||
@ -204,8 +224,8 @@ find_package(GMP REQUIRED)
|
|||||||
find_package(Json REQUIRED)
|
find_package(Json REQUIRED)
|
||||||
find_package(Lua REQUIRED)
|
find_package(Lua REQUIRED)
|
||||||
|
|
||||||
# JsonCPP doesn't compile well on GCC 4.8
|
# JsonCpp doesn't compile well on GCC 4.8
|
||||||
if(NOT ENABLE_SYSTEM_JSONCPP)
|
if(NOT USE_SYSTEM_JSONCPP)
|
||||||
set(GCC_MINIMUM_VERSION "4.9")
|
set(GCC_MINIMUM_VERSION "4.9")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -214,7 +234,7 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
|
|||||||
message(FATAL_ERROR "Insufficient gcc version, found ${CMAKE_CXX_COMPILER_VERSION}. "
|
message(FATAL_ERROR "Insufficient gcc version, found ${CMAKE_CXX_COMPILER_VERSION}. "
|
||||||
"Version ${GCC_MINIMUM_VERSION} or higher is required.")
|
"Version ${GCC_MINIMUM_VERSION} or higher is required.")
|
||||||
endif()
|
endif()
|
||||||
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
|
elseif(CMAKE_CXX_COMPILER_ID MATCHES "(Apple)?Clang")
|
||||||
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "${CLANG_MINIMUM_VERSION}")
|
if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS "${CLANG_MINIMUM_VERSION}")
|
||||||
message(FATAL_ERROR "Insufficient clang version, found ${CMAKE_CXX_COMPILER_VERSION}. "
|
message(FATAL_ERROR "Insufficient clang version, found ${CMAKE_CXX_COMPILER_VERSION}. "
|
||||||
"Version ${CLANG_MINIMUM_VERSION} or higher is required.")
|
"Version ${CLANG_MINIMUM_VERSION} or higher is required.")
|
||||||
|
@ -51,7 +51,7 @@ RUN mkdir build && \
|
|||||||
|
|
||||||
FROM alpine:3.11
|
FROM alpine:3.11
|
||||||
|
|
||||||
RUN apk add --no-cache sqlite-libs curl gmp libstdc++ libgcc libpq luajit && \
|
RUN apk add --no-cache sqlite-libs curl gmp libstdc++ libgcc libpq luajit jsoncpp && \
|
||||||
adduser -D minetest --uid 30000 -h /var/lib/minetest && \
|
adduser -D minetest --uid 30000 -h /var/lib/minetest && \
|
||||||
chown -R minetest:minetest /var/lib/minetest
|
chown -R minetest:minetest /var/lib/minetest
|
||||||
|
|
||||||
|
10
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
|
Textures by Zughy are under CC BY-SA 4.0
|
||||||
https://creativecommons.org/licenses/by-sa/4.0/
|
https://creativecommons.org/licenses/by-sa/4.0/
|
||||||
|
|
||||||
|
textures/base/pack/server_public.png is under CC-BY 4.0, taken from Twitter's Twemoji set
|
||||||
|
https://creativecommons.org/licenses/by/4.0/
|
||||||
|
|
||||||
Authors of media files
|
Authors of media files
|
||||||
-----------------------
|
-----------------------
|
||||||
Everything not listed in here:
|
Everything not listed in here:
|
||||||
@ -39,10 +42,10 @@ EliasFleckenstein03:
|
|||||||
misc/dragonfire.svg
|
misc/dragonfire.svg
|
||||||
textures/base/pack/logo.png
|
textures/base/pack/logo.png
|
||||||
|
|
||||||
JRottm
|
JRottm:
|
||||||
textures/base/pack/player_marker.png
|
textures/base/pack/player_marker.png
|
||||||
|
|
||||||
srifqi
|
srifqi:
|
||||||
textures/base/pack/chat_hide_btn.png
|
textures/base/pack/chat_hide_btn.png
|
||||||
textures/base/pack/chat_show_btn.png
|
textures/base/pack/chat_show_btn.png
|
||||||
textures/base/pack/joystick_bg.png
|
textures/base/pack/joystick_bg.png
|
||||||
@ -58,6 +61,9 @@ Zughy:
|
|||||||
textures/base/pack/cdb_update.png
|
textures/base/pack/cdb_update.png
|
||||||
textures/base/pack/cdb_viewonline.png
|
textures/base/pack/cdb_viewonline.png
|
||||||
|
|
||||||
|
appgurueu:
|
||||||
|
textures/base/pack/server_incompatible.png
|
||||||
|
|
||||||
License of Minetest source code
|
License of Minetest source code
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
|
32
README.md
@ -68,7 +68,7 @@ Some can be changed in the key config dialog in the settings tab.
|
|||||||
| P | Enable/disable pitch move mode |
|
| P | Enable/disable pitch move mode |
|
||||||
| J | Enable/disable fast mode (needs fast privilege) |
|
| J | Enable/disable fast mode (needs fast privilege) |
|
||||||
| H | Enable/disable noclip mode (needs noclip privilege) |
|
| H | Enable/disable noclip mode (needs noclip privilege) |
|
||||||
| E | Move fast in fast mode |
|
| E | Aux1 (Move fast in fast mode. Games may add special features) |
|
||||||
| C | Cycle through camera modes |
|
| C | Cycle through camera modes |
|
||||||
| V | Cycle through minimap modes |
|
| V | Cycle through minimap modes |
|
||||||
| Shift + V | Change minimap orientation |
|
| Shift + V | Change minimap orientation |
|
||||||
@ -134,7 +134,7 @@ Compiling
|
|||||||
|------------|---------|------------|
|
|------------|---------|------------|
|
||||||
| GCC | 4.9+ | Can be replaced with Clang 3.4+ |
|
| GCC | 4.9+ | Can be replaced with Clang 3.4+ |
|
||||||
| CMake | 2.6+ | |
|
| CMake | 2.6+ | |
|
||||||
| Irrlicht | 1.7.3+ | |
|
| Irrlicht | - | Custom version required, see https://github.com/minetest/irrlicht |
|
||||||
| SQLite3 | 3.0+ | |
|
| SQLite3 | 3.0+ | |
|
||||||
| LuaJIT | 2.0+ | Bundled Lua 5.1 is used if not present |
|
| LuaJIT | 2.0+ | Bundled Lua 5.1 is used if not present |
|
||||||
| GMP | 5.0.0+ | Bundled mini-GMP is used if not present |
|
| GMP | 5.0.0+ | Bundled mini-GMP is used if not present |
|
||||||
@ -142,19 +142,19 @@ Compiling
|
|||||||
|
|
||||||
For Debian/Ubuntu users:
|
For Debian/Ubuntu users:
|
||||||
|
|
||||||
sudo apt install g++ make libc6-dev libirrlicht-dev cmake libbz2-dev libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
sudo apt install g++ make libc6-dev cmake libpng-dev libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev libogg-dev libvorbis-dev libopenal-dev libcurl4-gnutls-dev libfreetype6-dev zlib1g-dev libgmp-dev libjsoncpp-dev
|
||||||
|
|
||||||
For Fedora users:
|
For Fedora users:
|
||||||
|
|
||||||
sudo dnf install make automake gcc gcc-c++ kernel-devel cmake libcurl-devel openal-soft-devel libvorbis-devel libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel irrlicht-devel bzip2-libs gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel doxygen spatialindex-devel bzip2-devel
|
sudo dnf install make automake gcc gcc-c++ kernel-devel cmake libcurl-devel openal-soft-devel libvorbis-devel libXxf86vm-devel libogg-devel freetype-devel mesa-libGL-devel zlib-devel jsoncpp-devel gmp-devel sqlite-devel luajit-devel leveldb-devel ncurses-devel spatialindex-devel
|
||||||
|
|
||||||
For Arch users:
|
For Arch users:
|
||||||
|
|
||||||
sudo pacman -S base-devel libcurl-gnutls cmake libxxf86vm irrlicht libpng sqlite libogg libvorbis openal freetype2 jsoncpp gmp luajit leveldb ncurses
|
sudo pacman -S base-devel libcurl-gnutls cmake libxxf86vm libpng sqlite libogg libvorbis openal freetype2 jsoncpp gmp luajit leveldb ncurses
|
||||||
|
|
||||||
For Alpine users:
|
For Alpine users:
|
||||||
|
|
||||||
sudo apk add build-base irrlicht-dev cmake bzip2-dev libpng-dev jpeg-dev libxxf86vm-dev mesa-dev sqlite-dev libogg-dev libvorbis-dev openal-soft-dev curl-dev freetype-dev zlib-dev gmp-dev jsoncpp-dev luajit-dev
|
sudo apk add build-base cmake libpng-dev jpeg-dev libxxf86vm-dev mesa-dev sqlite-dev libogg-dev libvorbis-dev openal-soft-dev curl-dev freetype-dev zlib-dev gmp-dev jsoncpp-dev luajit-dev
|
||||||
|
|
||||||
#### Download
|
#### Download
|
||||||
|
|
||||||
@ -209,8 +209,8 @@ Run it:
|
|||||||
- You can disable the client build by specifying `-DBUILD_CLIENT=FALSE`.
|
- You can disable the client build by specifying `-DBUILD_CLIENT=FALSE`.
|
||||||
- You can select between Release and Debug build by `-DCMAKE_BUILD_TYPE=<Debug or Release>`.
|
- You can select between Release and Debug build by `-DCMAKE_BUILD_TYPE=<Debug or Release>`.
|
||||||
- Debug build is slower, but gives much more useful output in a debugger.
|
- Debug build is slower, but gives much more useful output in a debugger.
|
||||||
- If you build a bare server you don't need to have Irrlicht installed.
|
- If you build a bare server you don't need to have the Irrlicht library installed.
|
||||||
- In that case use `-DIRRLICHT_SOURCE_DIR=/the/irrlicht/source`.
|
- In that case use `-DIRRLICHT_INCLUDE_DIR=/some/where/irrlicht/include`.
|
||||||
|
|
||||||
### CMake options
|
### CMake options
|
||||||
|
|
||||||
@ -238,7 +238,7 @@ General options and their default values:
|
|||||||
ENABLE_LUAJIT=ON - Build with LuaJIT (much faster than non-JIT Lua)
|
ENABLE_LUAJIT=ON - Build with LuaJIT (much faster than non-JIT Lua)
|
||||||
ENABLE_PROMETHEUS=OFF - Build with Prometheus metrics exporter (listens on tcp/30000 by default)
|
ENABLE_PROMETHEUS=OFF - Build with Prometheus metrics exporter (listens on tcp/30000 by default)
|
||||||
ENABLE_SYSTEM_GMP=ON - Use GMP from system (much faster than bundled mini-gmp)
|
ENABLE_SYSTEM_GMP=ON - Use GMP from system (much faster than bundled mini-gmp)
|
||||||
ENABLE_SYSTEM_JSONCPP=OFF - Use JsonCPP from system
|
ENABLE_SYSTEM_JSONCPP=ON - Use JsonCPP from system
|
||||||
OPENGL_GL_PREFERENCE=LEGACY - Linux client build only; See CMake Policy CMP0072 for reference
|
OPENGL_GL_PREFERENCE=LEGACY - Linux client build only; See CMake Policy CMP0072 for reference
|
||||||
RUN_IN_PLACE=FALSE - Create a portable install (worlds, settings etc. in current directory)
|
RUN_IN_PLACE=FALSE - Create a portable install (worlds, settings etc. in current directory)
|
||||||
USE_GPROF=FALSE - Enable profiling using GProf
|
USE_GPROF=FALSE - Enable profiling using GProf
|
||||||
@ -246,8 +246,6 @@ General options and their default values:
|
|||||||
|
|
||||||
Library specific options:
|
Library specific options:
|
||||||
|
|
||||||
BZIP2_INCLUDE_DIR - Linux only; directory where bzlib.h is located
|
|
||||||
BZIP2_LIBRARY - Linux only; path to libbz2.a/libbz2.so
|
|
||||||
CURL_DLL - Only if building with cURL on Windows; path to libcurl.dll
|
CURL_DLL - Only if building with cURL on Windows; path to libcurl.dll
|
||||||
CURL_INCLUDE_DIR - Only if building with cURL; directory where curl.h is located
|
CURL_INCLUDE_DIR - Only if building with cURL; directory where curl.h is located
|
||||||
CURL_LIBRARY - Only if building with cURL; path to libcurl.a/libcurl.so/libcurl.lib
|
CURL_LIBRARY - Only if building with cURL; path to libcurl.a/libcurl.so/libcurl.lib
|
||||||
@ -257,8 +255,7 @@ Library specific options:
|
|||||||
FREETYPE_INCLUDE_DIR_ft2build - Only if building with FreeType 2; directory that contains ft2build.h
|
FREETYPE_INCLUDE_DIR_ft2build - Only if building with FreeType 2; directory that contains ft2build.h
|
||||||
FREETYPE_LIBRARY - Only if building with FreeType 2; path to libfreetype.a/libfreetype.so/freetype.lib
|
FREETYPE_LIBRARY - Only if building with FreeType 2; path to libfreetype.a/libfreetype.so/freetype.lib
|
||||||
FREETYPE_DLL - Only if building with FreeType 2 on Windows; path to libfreetype.dll
|
FREETYPE_DLL - Only if building with FreeType 2 on Windows; path to libfreetype.dll
|
||||||
GETTEXT_DLL - Only when building with gettext on Windows; path to libintl3.dll
|
GETTEXT_DLL - Only when building with gettext on Windows; paths to libintl + libiconv DLLs
|
||||||
GETTEXT_ICONV_DLL - Only when building with gettext on Windows; path to libiconv2.dll
|
|
||||||
GETTEXT_INCLUDE_DIR - Only when building with gettext; directory that contains iconv.h
|
GETTEXT_INCLUDE_DIR - Only when building with gettext; directory that contains iconv.h
|
||||||
GETTEXT_LIBRARY - Only when building with gettext on Windows; path to libintl.dll.a
|
GETTEXT_LIBRARY - Only when building with gettext on Windows; path to libintl.dll.a
|
||||||
GETTEXT_MSGFMT - Only when building with gettext; path to msgfmt/msgfmt.exe
|
GETTEXT_MSGFMT - Only when building with gettext; path to msgfmt/msgfmt.exe
|
||||||
@ -276,7 +273,6 @@ Library specific options:
|
|||||||
SPATIAL_LIBRARY - Only when building with LibSpatial; path to libspatialindex_c.so/spatialindex-32.lib
|
SPATIAL_LIBRARY - Only when building with LibSpatial; path to libspatialindex_c.so/spatialindex-32.lib
|
||||||
LUA_INCLUDE_DIR - Only if you want to use LuaJIT; directory where luajit.h is located
|
LUA_INCLUDE_DIR - Only if you want to use LuaJIT; directory where luajit.h is located
|
||||||
LUA_LIBRARY - Only if you want to use LuaJIT; path to libluajit.a/libluajit.so
|
LUA_LIBRARY - Only if you want to use LuaJIT; path to libluajit.a/libluajit.so
|
||||||
MINGWM10_DLL - Only if compiling with MinGW; path to mingwm10.dll
|
|
||||||
OGG_DLL - Only if building with sound on Windows; path to libogg.dll
|
OGG_DLL - Only if building with sound on Windows; path to libogg.dll
|
||||||
OGG_INCLUDE_DIR - Only if building with sound; directory that contains an ogg directory which contains ogg.h
|
OGG_INCLUDE_DIR - Only if building with sound; directory that contains an ogg directory which contains ogg.h
|
||||||
OGG_LIBRARY - Only if building with sound; path to libogg.a/libogg.so/libogg.dll.a
|
OGG_LIBRARY - Only if building with sound; path to libogg.a/libogg.so/libogg.dll.a
|
||||||
@ -287,9 +283,8 @@ Library specific options:
|
|||||||
OPENGLES2_LIBRARY - Only if building with GLES; path to libGLESv2.a/libGLESv2.so
|
OPENGLES2_LIBRARY - Only if building with GLES; path to libGLESv2.a/libGLESv2.so
|
||||||
SQLITE3_INCLUDE_DIR - Directory that contains sqlite3.h
|
SQLITE3_INCLUDE_DIR - Directory that contains sqlite3.h
|
||||||
SQLITE3_LIBRARY - Path to libsqlite3.a/libsqlite3.so/sqlite3.lib
|
SQLITE3_LIBRARY - Path to libsqlite3.a/libsqlite3.so/sqlite3.lib
|
||||||
VORBISFILE_DLL - Only if building with sound on Windows; path to libvorbisfile-3.dll
|
|
||||||
VORBISFILE_LIBRARY - Only if building with sound; path to libvorbisfile.a/libvorbisfile.so/libvorbisfile.dll.a
|
VORBISFILE_LIBRARY - Only if building with sound; path to libvorbisfile.a/libvorbisfile.so/libvorbisfile.dll.a
|
||||||
VORBIS_DLL - Only if building with sound on Windows; path to libvorbis-0.dll
|
VORBIS_DLL - Only if building with sound on Windows; paths to vorbis DLLs
|
||||||
VORBIS_INCLUDE_DIR - Only if building with sound; directory that contains a directory vorbis with vorbisenc.h inside
|
VORBIS_INCLUDE_DIR - Only if building with sound; directory that contains a directory vorbis with vorbisenc.h inside
|
||||||
VORBIS_LIBRARY - Only if building with sound; path to libvorbis.a/libvorbis.so/libvorbis.dll.a
|
VORBIS_LIBRARY - Only if building with sound; path to libvorbis.a/libvorbis.so/libvorbis.dll.a
|
||||||
XXF86VM_LIBRARY - Only on Linux; path to libXXf86vm.a/libXXf86vm.so
|
XXF86VM_LIBRARY - Only on Linux; path to libXXf86vm.a/libXXf86vm.so
|
||||||
@ -314,9 +309,10 @@ It is highly recommended to use vcpkg as package manager.
|
|||||||
|
|
||||||
After you successfully built vcpkg you can easily install the required libraries:
|
After you successfully built vcpkg you can easily install the required libraries:
|
||||||
```powershell
|
```powershell
|
||||||
vcpkg install irrlicht zlib curl[winssl] openal-soft libvorbis libogg sqlite3 freetype luajit gmp jsoncpp --triplet x64-windows
|
vcpkg install zlib curl[winssl] openal-soft libvorbis libogg sqlite3 freetype luajit gmp jsoncpp --triplet x64-windows
|
||||||
```
|
```
|
||||||
|
|
||||||
|
- **Note that you currently need to build irrlicht on your own**
|
||||||
- `curl` is optional, but required to read the serverlist, `curl[winssl]` is required to use the content store.
|
- `curl` is optional, but required to read the serverlist, `curl[winssl]` is required to use the content store.
|
||||||
- `openal-soft`, `libvorbis` and `libogg` are optional, but required to use sound.
|
- `openal-soft`, `libvorbis` and `libogg` are optional, but required to use sound.
|
||||||
- `freetype` is optional, it allows true-type font rendering.
|
- `freetype` is optional, it allows true-type font rendering.
|
||||||
@ -354,7 +350,7 @@ This is outdated and not recommended. Follow the instructions on https://dev.min
|
|||||||
Run the following script in PowerShell:
|
Run the following script in PowerShell:
|
||||||
|
|
||||||
```powershell
|
```powershell
|
||||||
cmake . -G"Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE=D:/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_GETTEXT=OFF -DENABLE_CURSES=OFF -DENABLE_SYSTEM_JSONCPP=ON
|
cmake . -G"Visual Studio 15 2017 Win64" -DCMAKE_TOOLCHAIN_FILE=D:/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_GETTEXT=OFF -DENABLE_CURSES=OFF
|
||||||
cmake --build . --config Release
|
cmake --build . --config Release
|
||||||
```
|
```
|
||||||
Make sure that the right compiler is selected and the path to the vcpkg toolchain is correct.
|
Make sure that the right compiler is selected and the path to the vcpkg toolchain is correct.
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
// 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("versionMajor", 5) // Version Major
|
||||||
project.ext.set("versionMinor", 4) // Version Minor
|
project.ext.set("versionMinor", 5) // Version Minor
|
||||||
project.ext.set("versionPatch", 0) // Version Patch
|
project.ext.set("versionPatch", 0) // Version Patch
|
||||||
project.ext.set("versionExtra", "-dev") // Version Extra
|
project.ext.set("versionExtra", "-dev") // Version Extra
|
||||||
project.ext.set("versionCode", 30) // Android Version Code
|
project.ext.set("versionCode", 32) // Android Version Code
|
||||||
// NOTE: +2 after each release!
|
// NOTE: +2 after each release!
|
||||||
// +1 for ARM and +1 for ARM64 APK's, because
|
// +1 for ARM and +1 for ARM64 APK's, because
|
||||||
// each APK must have a larger `versionCode` than the previous
|
// each APK must have a larger `versionCode` than the previous
|
||||||
|
143
build/android/icons/aux1_btn.svg
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
inkscape:export-ydpi="24.000002"
|
||||||
|
inkscape:export-xdpi="24.000002"
|
||||||
|
inkscape:export-filename="/home/stu/Desktop/icons/png/aux_btn.png"
|
||||||
|
sodipodi:docname="aux_btn.svg"
|
||||||
|
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
|
||||||
|
id="svg8"
|
||||||
|
version="1.1"
|
||||||
|
viewBox="0 0 135.46666 135.46667"
|
||||||
|
height="512"
|
||||||
|
width="512">
|
||||||
|
<defs
|
||||||
|
id="defs2" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
inkscape:document-rotation="0"
|
||||||
|
inkscape:snap-bbox-midpoints="true"
|
||||||
|
inkscape:snap-others="true"
|
||||||
|
inkscape:snap-object-midpoints="false"
|
||||||
|
inkscape:snap-to-guides="true"
|
||||||
|
inkscape:snap-bbox="true"
|
||||||
|
showguides="true"
|
||||||
|
inkscape:snap-page="true"
|
||||||
|
inkscape:snap-grids="false"
|
||||||
|
inkscape:pagecheckerboard="false"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:window-y="31"
|
||||||
|
inkscape:window-x="0"
|
||||||
|
inkscape:window-height="1024"
|
||||||
|
inkscape:window-width="1920"
|
||||||
|
units="px"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:current-layer="layer2"
|
||||||
|
inkscape:document-units="mm"
|
||||||
|
inkscape:cy="212.91276"
|
||||||
|
inkscape:cx="201.43176"
|
||||||
|
inkscape:zoom="1.4633894"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
borderopacity="1.0"
|
||||||
|
bordercolor="#666666"
|
||||||
|
pagecolor="#404040"
|
||||||
|
id="base">
|
||||||
|
<inkscape:grid
|
||||||
|
empopacity="0.25098039"
|
||||||
|
empcolor="#40ff40"
|
||||||
|
opacity="0.1254902"
|
||||||
|
color="#40ff40"
|
||||||
|
empspacing="4"
|
||||||
|
spacingy="0.26458333"
|
||||||
|
spacingx="0.26458333"
|
||||||
|
id="grid16"
|
||||||
|
type="xygrid" />
|
||||||
|
</sodipodi:namedview>
|
||||||
|
<metadata
|
||||||
|
id="metadata5">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title />
|
||||||
|
<cc:license
|
||||||
|
rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" />
|
||||||
|
</cc:Work>
|
||||||
|
<cc:License
|
||||||
|
rdf:about="http://creativecommons.org/licenses/by-sa/4.0/">
|
||||||
|
<cc:permits
|
||||||
|
rdf:resource="http://creativecommons.org/ns#Reproduction" />
|
||||||
|
<cc:permits
|
||||||
|
rdf:resource="http://creativecommons.org/ns#Distribution" />
|
||||||
|
<cc:requires
|
||||||
|
rdf:resource="http://creativecommons.org/ns#Notice" />
|
||||||
|
<cc:requires
|
||||||
|
rdf:resource="http://creativecommons.org/ns#Attribution" />
|
||||||
|
<cc:permits
|
||||||
|
rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
|
||||||
|
<cc:requires
|
||||||
|
rdf:resource="http://creativecommons.org/ns#ShareAlike" />
|
||||||
|
</cc:License>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
style="display:inline"
|
||||||
|
inkscape:label="Layer 2"
|
||||||
|
id="layer2"
|
||||||
|
inkscape:groupmode="layer">
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path7055"
|
||||||
|
d=""
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path7035"
|
||||||
|
d=""
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path7005"
|
||||||
|
d=""
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||||
|
<path
|
||||||
|
inkscape:connector-curvature="0"
|
||||||
|
id="path5127"
|
||||||
|
d=""
|
||||||
|
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
||||||
|
<text
|
||||||
|
transform="scale(1.0078883,0.99217343)"
|
||||||
|
id="text4716"
|
||||||
|
y="85.59491"
|
||||||
|
x="67.78315"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:48.4785px;line-height:1.25;font-family:'Bitstream Vera Sans';-inkscape-font-specification:'Bitstream Vera Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#d9d9d9;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
xml:space="preserve"><tspan
|
||||||
|
style="fill:#d9d9d9;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
||||||
|
y="85.59491"
|
||||||
|
x="67.78315"
|
||||||
|
id="tspan4714"
|
||||||
|
sodipodi:role="line">Aux1</tspan></text>
|
||||||
|
<flowRoot
|
||||||
|
transform="scale(0.26458333)"
|
||||||
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:1.25;font-family:'Bitstream Vera Sans';-inkscape-font-specification:'Bitstream Vera Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
|
||||||
|
id="flowRoot4718"
|
||||||
|
xml:space="preserve"><flowRegion
|
||||||
|
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
|
||||||
|
id="flowRegion4720"><rect
|
||||||
|
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
|
||||||
|
y="124.10143"
|
||||||
|
x="264.65997"
|
||||||
|
height="136.37059"
|
||||||
|
width="157.5838"
|
||||||
|
id="rect4722" /></flowRegion><flowPara
|
||||||
|
id="flowPara4724" /></flowRoot>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 5.5 KiB |
@ -1,411 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
width="512"
|
|
||||||
height="512"
|
|
||||||
viewBox="0 0 135.46666 135.46667"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8"
|
|
||||||
inkscape:version="0.92.1 r15371"
|
|
||||||
sodipodi:docname="aux_btn.svg"
|
|
||||||
inkscape:export-filename="/home/stu/Desktop/icons/png/aux_btn.png"
|
|
||||||
inkscape:export-xdpi="24.000002"
|
|
||||||
inkscape:export-ydpi="24.000002">
|
|
||||||
<defs
|
|
||||||
id="defs2">
|
|
||||||
<filter
|
|
||||||
style="color-interpolation-filters:sRGB;"
|
|
||||||
inkscape:label="Colorize"
|
|
||||||
id="filter4628">
|
|
||||||
<feComposite
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="arithmetic"
|
|
||||||
k1="0"
|
|
||||||
k2="1"
|
|
||||||
result="composite1"
|
|
||||||
id="feComposite4614" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="composite1"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix1"
|
|
||||||
id="feColorMatrix4616" />
|
|
||||||
<feFlood
|
|
||||||
flood-opacity="1"
|
|
||||||
flood-color="rgb(158,0,0)"
|
|
||||||
result="flood1"
|
|
||||||
id="feFlood4618" />
|
|
||||||
<feBlend
|
|
||||||
in="flood1"
|
|
||||||
in2="colormatrix1"
|
|
||||||
mode="multiply"
|
|
||||||
result="blend1"
|
|
||||||
id="feBlend4620" />
|
|
||||||
<feBlend
|
|
||||||
in2="blend1"
|
|
||||||
mode="screen"
|
|
||||||
result="blend2"
|
|
||||||
id="feBlend4622" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="blend2"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix2"
|
|
||||||
id="feColorMatrix4624" />
|
|
||||||
<feComposite
|
|
||||||
in="colormatrix2"
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="in"
|
|
||||||
k2="1"
|
|
||||||
result="composite2"
|
|
||||||
id="feComposite4626" />
|
|
||||||
</filter>
|
|
||||||
<filter
|
|
||||||
style="color-interpolation-filters:sRGB;"
|
|
||||||
inkscape:label="Sharpen More"
|
|
||||||
id="filter5109"
|
|
||||||
inkscape:menu="Image Effects"
|
|
||||||
inkscape:menu-tooltip="Sharpen edges and boundaries within the object, force=0.3">
|
|
||||||
<feComposite
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="arithmetic"
|
|
||||||
k1="0"
|
|
||||||
k2="1"
|
|
||||||
result="composite1"
|
|
||||||
id="feComposite5095" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="composite1"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix1"
|
|
||||||
id="feColorMatrix5097" />
|
|
||||||
<feFlood
|
|
||||||
flood-opacity="1"
|
|
||||||
flood-color="rgb(158,67,0)"
|
|
||||||
result="flood1"
|
|
||||||
id="feFlood5099" />
|
|
||||||
<feBlend
|
|
||||||
in="flood1"
|
|
||||||
in2="colormatrix1"
|
|
||||||
mode="multiply"
|
|
||||||
result="blend1"
|
|
||||||
id="feBlend5101" />
|
|
||||||
<feBlend
|
|
||||||
in2="blend1"
|
|
||||||
mode="screen"
|
|
||||||
result="blend2"
|
|
||||||
id="feBlend5103" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="blend2"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix2"
|
|
||||||
id="feColorMatrix5105" />
|
|
||||||
<feComposite
|
|
||||||
in="colormatrix2"
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="in"
|
|
||||||
k2="1"
|
|
||||||
result="fbSourceGraphic"
|
|
||||||
id="feComposite5107" />
|
|
||||||
<feColorMatrix
|
|
||||||
result="fbSourceGraphicAlpha"
|
|
||||||
in="fbSourceGraphic"
|
|
||||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
|
||||||
id="feColorMatrix5111" />
|
|
||||||
<feComposite
|
|
||||||
in2="fbSourceGraphic"
|
|
||||||
id="feComposite5113"
|
|
||||||
operator="arithmetic"
|
|
||||||
k1="0"
|
|
||||||
k2="1"
|
|
||||||
result="composite1"
|
|
||||||
in="fbSourceGraphic" />
|
|
||||||
<feColorMatrix
|
|
||||||
id="feColorMatrix5115"
|
|
||||||
in="composite1"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix1" />
|
|
||||||
<feFlood
|
|
||||||
id="feFlood5117"
|
|
||||||
flood-opacity="1"
|
|
||||||
flood-color="rgb(158,0,0)"
|
|
||||||
result="flood1" />
|
|
||||||
<feBlend
|
|
||||||
in2="colormatrix1"
|
|
||||||
id="feBlend5119"
|
|
||||||
in="flood1"
|
|
||||||
mode="multiply"
|
|
||||||
result="blend1" />
|
|
||||||
<feBlend
|
|
||||||
in2="blend1"
|
|
||||||
id="feBlend5121"
|
|
||||||
mode="screen"
|
|
||||||
result="blend2" />
|
|
||||||
<feColorMatrix
|
|
||||||
id="feColorMatrix5123"
|
|
||||||
in="blend2"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix2" />
|
|
||||||
<feComposite
|
|
||||||
in2="fbSourceGraphic"
|
|
||||||
id="feComposite5125"
|
|
||||||
in="colormatrix2"
|
|
||||||
operator="in"
|
|
||||||
k2="1"
|
|
||||||
result="fbSourceGraphic" />
|
|
||||||
<feColorMatrix
|
|
||||||
result="fbSourceGraphicAlpha"
|
|
||||||
in="fbSourceGraphic"
|
|
||||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
|
||||||
id="feColorMatrix7007" />
|
|
||||||
<feConvolveMatrix
|
|
||||||
id="feConvolveMatrix7009"
|
|
||||||
order="3 3"
|
|
||||||
kernelMatrix="0 -0.15 0 -0.15 1.6 -0.15 0 -0.15 0"
|
|
||||||
divisor="1"
|
|
||||||
in="fbSourceGraphic"
|
|
||||||
targetX="1"
|
|
||||||
targetY="1"
|
|
||||||
result="fbSourceGraphic" />
|
|
||||||
<feColorMatrix
|
|
||||||
result="fbSourceGraphicAlpha"
|
|
||||||
in="fbSourceGraphic"
|
|
||||||
values="0 0 0 -1 0 0 0 0 -1 0 0 0 0 -1 0 0 0 0 1 0"
|
|
||||||
id="feColorMatrix7011" />
|
|
||||||
<feConvolveMatrix
|
|
||||||
id="feConvolveMatrix7013"
|
|
||||||
targetY="1"
|
|
||||||
targetX="1"
|
|
||||||
in="fbSourceGraphic"
|
|
||||||
divisor="1"
|
|
||||||
kernelMatrix="0 -0.3 0 -0.3 2.2 -0.3 0 -0.3 0"
|
|
||||||
order="3 3"
|
|
||||||
result="result1" />
|
|
||||||
<feBlend
|
|
||||||
in2="fbSourceGraphic"
|
|
||||||
id="feBlend7015"
|
|
||||||
mode="normal"
|
|
||||||
result="result2" />
|
|
||||||
</filter>
|
|
||||||
<marker
|
|
||||||
style="overflow:visible"
|
|
||||||
refY="0.0"
|
|
||||||
refX="0.0"
|
|
||||||
orient="auto"
|
|
||||||
id="DistanceX">
|
|
||||||
<path
|
|
||||||
id="path7410"
|
|
||||||
style="stroke:#000000; stroke-width:0.5"
|
|
||||||
d="M 3,-3 L -3,3 M 0,-5 L 0,5" />
|
|
||||||
</marker>
|
|
||||||
<pattern
|
|
||||||
y="0"
|
|
||||||
x="0"
|
|
||||||
width="8"
|
|
||||||
patternUnits="userSpaceOnUse"
|
|
||||||
id="Hatch"
|
|
||||||
height="8">
|
|
||||||
<path
|
|
||||||
id="path7413"
|
|
||||||
stroke-width="0.25"
|
|
||||||
stroke="#000000"
|
|
||||||
linecap="square"
|
|
||||||
d="M8 4 l-4,4" />
|
|
||||||
<path
|
|
||||||
id="path7415"
|
|
||||||
stroke-width="0.25"
|
|
||||||
stroke="#000000"
|
|
||||||
linecap="square"
|
|
||||||
d="M6 2 l-4,4" />
|
|
||||||
<path
|
|
||||||
id="path7417"
|
|
||||||
stroke-width="0.25"
|
|
||||||
stroke="#000000"
|
|
||||||
linecap="square"
|
|
||||||
d="M4 0 l-4,4" />
|
|
||||||
</pattern>
|
|
||||||
<symbol
|
|
||||||
id="*Model_Space" />
|
|
||||||
<symbol
|
|
||||||
id="*Paper_Space" />
|
|
||||||
<symbol
|
|
||||||
id="*Paper_Space0" />
|
|
||||||
<filter
|
|
||||||
style="color-interpolation-filters:sRGB;"
|
|
||||||
inkscape:label="Colorize"
|
|
||||||
id="filter4883">
|
|
||||||
<feComposite
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="arithmetic"
|
|
||||||
k1="0"
|
|
||||||
k2="1"
|
|
||||||
result="composite1"
|
|
||||||
id="feComposite4869" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="composite1"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix1"
|
|
||||||
id="feColorMatrix4871" />
|
|
||||||
<feFlood
|
|
||||||
flood-opacity="1"
|
|
||||||
flood-color="rgb(158,21,0)"
|
|
||||||
result="flood1"
|
|
||||||
id="feFlood4873" />
|
|
||||||
<feBlend
|
|
||||||
in="flood1"
|
|
||||||
in2="colormatrix1"
|
|
||||||
mode="multiply"
|
|
||||||
result="blend1"
|
|
||||||
id="feBlend4875" />
|
|
||||||
<feBlend
|
|
||||||
in2="blend1"
|
|
||||||
mode="screen"
|
|
||||||
result="blend2"
|
|
||||||
id="feBlend4877" />
|
|
||||||
<feColorMatrix
|
|
||||||
in="blend2"
|
|
||||||
values="1"
|
|
||||||
type="saturate"
|
|
||||||
result="colormatrix2"
|
|
||||||
id="feColorMatrix4879" />
|
|
||||||
<feComposite
|
|
||||||
in="colormatrix2"
|
|
||||||
in2="SourceGraphic"
|
|
||||||
operator="in"
|
|
||||||
k2="1"
|
|
||||||
result="composite2"
|
|
||||||
id="feComposite4881" />
|
|
||||||
</filter>
|
|
||||||
</defs>
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="base"
|
|
||||||
pagecolor="#404040"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1.0"
|
|
||||||
inkscape:pageopacity="0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:zoom="0.98994949"
|
|
||||||
inkscape:cx="-341.34157"
|
|
||||||
inkscape:cy="210.02973"
|
|
||||||
inkscape:document-units="mm"
|
|
||||||
inkscape:current-layer="layer2"
|
|
||||||
showgrid="true"
|
|
||||||
units="px"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1023"
|
|
||||||
inkscape:window-x="0"
|
|
||||||
inkscape:window-y="34"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:pagecheckerboard="false"
|
|
||||||
inkscape:snap-grids="false"
|
|
||||||
inkscape:snap-page="true"
|
|
||||||
showguides="true"
|
|
||||||
inkscape:snap-bbox="true"
|
|
||||||
inkscape:snap-to-guides="true"
|
|
||||||
inkscape:snap-object-midpoints="false"
|
|
||||||
inkscape:snap-others="true"
|
|
||||||
inkscape:snap-bbox-midpoints="true">
|
|
||||||
<inkscape:grid
|
|
||||||
type="xygrid"
|
|
||||||
id="grid16"
|
|
||||||
spacingx="0.26458333"
|
|
||||||
spacingy="0.26458333"
|
|
||||||
empspacing="4"
|
|
||||||
color="#40ff40"
|
|
||||||
opacity="0.1254902"
|
|
||||||
empcolor="#40ff40"
|
|
||||||
empopacity="0.25098039" />
|
|
||||||
</sodipodi:namedview>
|
|
||||||
<metadata
|
|
||||||
id="metadata5">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title></dc:title>
|
|
||||||
<cc:license
|
|
||||||
rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" />
|
|
||||||
</cc:Work>
|
|
||||||
<cc:License
|
|
||||||
rdf:about="http://creativecommons.org/licenses/by-sa/4.0/">
|
|
||||||
<cc:permits
|
|
||||||
rdf:resource="http://creativecommons.org/ns#Reproduction" />
|
|
||||||
<cc:permits
|
|
||||||
rdf:resource="http://creativecommons.org/ns#Distribution" />
|
|
||||||
<cc:requires
|
|
||||||
rdf:resource="http://creativecommons.org/ns#Notice" />
|
|
||||||
<cc:requires
|
|
||||||
rdf:resource="http://creativecommons.org/ns#Attribution" />
|
|
||||||
<cc:permits
|
|
||||||
rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
|
|
||||||
<cc:requires
|
|
||||||
rdf:resource="http://creativecommons.org/ns#ShareAlike" />
|
|
||||||
</cc:License>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<g
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer2"
|
|
||||||
inkscape:label="Layer 2"
|
|
||||||
style="display:inline">
|
|
||||||
<path
|
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d=""
|
|
||||||
id="path7055"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d=""
|
|
||||||
id="path7035"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d=""
|
|
||||||
id="path7005"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<path
|
|
||||||
style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
d=""
|
|
||||||
id="path5127"
|
|
||||||
inkscape:connector-curvature="0" />
|
|
||||||
<text
|
|
||||||
xml:space="preserve"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:48.47851181px;line-height:1.25;font-family:'Bitstream Vera Sans';-inkscape-font-specification:'Bitstream Vera Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#d9d9d9;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
|
|
||||||
x="67.78315"
|
|
||||||
y="85.59491"
|
|
||||||
id="text4716"
|
|
||||||
transform="scale(1.0078883,0.99217343)"><tspan
|
|
||||||
sodipodi:role="line"
|
|
||||||
id="tspan4714"
|
|
||||||
x="67.78315"
|
|
||||||
y="85.59491"
|
|
||||||
style="fill:#d9d9d9;fill-opacity:1;stroke:#ffffff;stroke-width:1;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1">AUX</tspan></text>
|
|
||||||
<flowRoot
|
|
||||||
xml:space="preserve"
|
|
||||||
id="flowRoot4718"
|
|
||||||
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:40px;line-height:1.25;font-family:'Bitstream Vera Sans';-inkscape-font-specification:'Bitstream Vera Sans';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
|
|
||||||
transform="scale(0.26458333)"><flowRegion
|
|
||||||
id="flowRegion4720"
|
|
||||||
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"><rect
|
|
||||||
id="rect4722"
|
|
||||||
width="157.5838"
|
|
||||||
height="136.37059"
|
|
||||||
x="264.65997"
|
|
||||||
y="124.10143"
|
|
||||||
style="fill:none;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" /></flowRegion><flowPara
|
|
||||||
id="flowPara4724" /></flowRoot> </g>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 12 KiB |
@ -7,7 +7,7 @@ core.register_on_sending_chat_message(function(message)
|
|||||||
|
|
||||||
local first_char = message:sub(1,1)
|
local first_char = message:sub(1,1)
|
||||||
if first_char == "/" or first_char == "." then
|
if first_char == "/" or first_char == "." then
|
||||||
core.display_chat_message(core.gettext("issued command: ") .. message)
|
core.display_chat_message(core.gettext("Issued command: ") .. message)
|
||||||
end
|
end
|
||||||
|
|
||||||
if first_char ~= "." then
|
if first_char ~= "." then
|
||||||
@ -18,7 +18,7 @@ core.register_on_sending_chat_message(function(message)
|
|||||||
param = param or ""
|
param = param or ""
|
||||||
|
|
||||||
if not cmd then
|
if not cmd then
|
||||||
core.display_chat_message(core.gettext("-!- Empty command"))
|
core.display_chat_message("-!- " .. core.gettext("Empty command."))
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -35,7 +35,7 @@ core.register_on_sending_chat_message(function(message)
|
|||||||
core.display_chat_message(result)
|
core.display_chat_message(result)
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
core.display_chat_message(core.gettext("-!- Invalid command: ") .. cmd)
|
core.display_chat_message("-!- " .. core.gettext("Invalid command: ") .. cmd)
|
||||||
end
|
end
|
||||||
|
|
||||||
return true
|
return true
|
||||||
|
@ -11,12 +11,12 @@ core.register_on_death(function()
|
|||||||
if core.settings:get_bool("autorespawn") then
|
if core.settings:get_bool("autorespawn") then
|
||||||
core.send_respawn()
|
core.send_respawn()
|
||||||
else
|
else
|
||||||
core.show_formspec("__builtin__:death", death_formspec)
|
core.show_formspec("bultin:death", death_formspec)
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
core.register_on_formspec_input(function(formname, fields)
|
core.register_on_formspec_input(function(formname, fields)
|
||||||
if formname == "__builtin__:death" then
|
if formname == "bultin:death" then
|
||||||
if fields.btn_ghost_mode then
|
if fields.btn_ghost_mode then
|
||||||
core.display_chat_message("You are in ghost mode. Use .respawn to Respawn.")
|
core.display_chat_message("You are in ghost mode. Use .respawn to Respawn.")
|
||||||
else
|
else
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
-- Minetest: builtin/common/chatcommands.lua
|
-- Minetest: builtin/common/chatcommands.lua
|
||||||
|
|
||||||
|
-- For server-side translations (if INIT == "game")
|
||||||
|
-- Otherwise, use core.gettext
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
|
||||||
core.registered_chatcommands = {}
|
core.registered_chatcommands = {}
|
||||||
|
|
||||||
function core.register_chatcommand(cmd, def)
|
function core.register_chatcommand(cmd, def)
|
||||||
@ -74,25 +78,12 @@ if INIT == "client" then
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local cmd_marker = "/"
|
|
||||||
|
|
||||||
local function gettext(...)
|
|
||||||
return ...
|
|
||||||
end
|
|
||||||
|
|
||||||
local function gettext_replace(text, replace)
|
|
||||||
return text:gsub("$1", replace)
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
if INIT == "client" then
|
|
||||||
cmd_marker = "."
|
|
||||||
gettext = core.gettext
|
|
||||||
gettext_replace = fgettext_ne
|
|
||||||
end
|
|
||||||
|
|
||||||
local function do_help_cmd(name, param)
|
local function do_help_cmd(name, param)
|
||||||
local function format_help_line(cmd, def)
|
local function format_help_line(cmd, def)
|
||||||
|
local cmd_marker = "/"
|
||||||
|
if INIT == "client" then
|
||||||
|
cmd_marker = "."
|
||||||
|
end
|
||||||
local msg = core.colorize("#00ffff", cmd_marker .. cmd)
|
local msg = core.colorize("#00ffff", cmd_marker .. cmd)
|
||||||
if def.params and def.params ~= "" then
|
if def.params and def.params ~= "" then
|
||||||
msg = msg .. " " .. def.params
|
msg = msg .. " " .. def.params
|
||||||
@ -110,9 +101,21 @@ local function do_help_cmd(name, param)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
table.sort(cmds)
|
table.sort(cmds)
|
||||||
return true, gettext("Available commands: ") .. table.concat(cmds, " ") .. "\n"
|
local msg
|
||||||
.. gettext_replace("Use '$1help <cmd>' to get more information,"
|
if INIT == "game" then
|
||||||
.. " or '$1help all' to list everything.", cmd_marker)
|
msg = S("Available commands: @1",
|
||||||
|
table.concat(cmds, " ")) .. "\n"
|
||||||
|
.. S("Use '/help <cmd>' to get more "
|
||||||
|
.. "information, or '/help all' to list "
|
||||||
|
.. "everything.")
|
||||||
|
else
|
||||||
|
msg = core.gettext("Available commands: ")
|
||||||
|
.. table.concat(cmds, " ") .. "\n"
|
||||||
|
.. core.gettext("Use '.help <cmd>' to get more "
|
||||||
|
.. "information, or '.help all' to list "
|
||||||
|
.. "everything.")
|
||||||
|
end
|
||||||
|
return true, msg
|
||||||
elseif param == "all" then
|
elseif param == "all" then
|
||||||
local cmds = {}
|
local cmds = {}
|
||||||
for cmd, def in pairs(core.registered_chatcommands) do
|
for cmd, def in pairs(core.registered_chatcommands) do
|
||||||
@ -121,19 +124,31 @@ local function do_help_cmd(name, param)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
table.sort(cmds)
|
table.sort(cmds)
|
||||||
return true, gettext("Available commands:").."\n"..table.concat(cmds, "\n")
|
local msg
|
||||||
|
if INIT == "game" then
|
||||||
|
msg = S("Available commands:")
|
||||||
|
else
|
||||||
|
msg = core.gettext("Available commands:")
|
||||||
|
end
|
||||||
|
return true, msg.."\n"..table.concat(cmds, "\n")
|
||||||
elseif INIT == "game" and param == "privs" then
|
elseif INIT == "game" and param == "privs" then
|
||||||
local privs = {}
|
local privs = {}
|
||||||
for priv, def in pairs(core.registered_privileges) do
|
for priv, def in pairs(core.registered_privileges) do
|
||||||
privs[#privs + 1] = priv .. ": " .. def.description
|
privs[#privs + 1] = priv .. ": " .. def.description
|
||||||
end
|
end
|
||||||
table.sort(privs)
|
table.sort(privs)
|
||||||
return true, "Available privileges:\n"..table.concat(privs, "\n")
|
return true, S("Available privileges:").."\n"..table.concat(privs, "\n")
|
||||||
else
|
else
|
||||||
local cmd = param
|
local cmd = param
|
||||||
local def = core.registered_chatcommands[cmd]
|
local def = core.registered_chatcommands[cmd]
|
||||||
if not def then
|
if not def then
|
||||||
return false, gettext("Command not available: ")..cmd
|
local msg
|
||||||
|
if INIT == "game" then
|
||||||
|
msg = S("Command not available: @1", cmd)
|
||||||
|
else
|
||||||
|
msg = core.gettext("Command not available: ") .. cmd
|
||||||
|
end
|
||||||
|
return false, msg
|
||||||
else
|
else
|
||||||
return true, format_help_line(cmd, def)
|
return true, format_help_line(cmd, def)
|
||||||
end
|
end
|
||||||
@ -142,16 +157,16 @@ end
|
|||||||
|
|
||||||
if INIT == "client" then
|
if INIT == "client" then
|
||||||
core.register_chatcommand("help", {
|
core.register_chatcommand("help", {
|
||||||
params = gettext("[all | <cmd>]"),
|
params = core.gettext("[all | <cmd>]"),
|
||||||
description = gettext("Get help for commands"),
|
description = core.gettext("Get help for commands"),
|
||||||
func = function(param)
|
func = function(param)
|
||||||
return do_help_cmd(nil, param)
|
return do_help_cmd(nil, param)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
else
|
else
|
||||||
core.register_chatcommand("help", {
|
core.register_chatcommand("help", {
|
||||||
params = "[all | privs | <cmd>]",
|
params = S("[all | privs | <cmd>]"),
|
||||||
description = "Get help for commands or list privileges",
|
description = S("Get help for commands or list privileges"),
|
||||||
func = do_help_cmd,
|
func = do_help_cmd,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
@ -20,7 +20,8 @@ local LIST_FORMSPEC_DESCRIPTION = [[
|
|||||||
button_exit[5,7;3,1;quit;%s]
|
button_exit[5,7;3,1;quit;%s]
|
||||||
]]
|
]]
|
||||||
|
|
||||||
local formspec_escape = core.formspec_escape
|
local F = core.formspec_escape
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
local check_player_privs = core.check_player_privs
|
local check_player_privs = core.check_player_privs
|
||||||
|
|
||||||
|
|
||||||
@ -51,22 +52,23 @@ core.after(0, load_mod_command_tree)
|
|||||||
|
|
||||||
local function build_chatcommands_formspec(name, sel, copy)
|
local function build_chatcommands_formspec(name, sel, copy)
|
||||||
local rows = {}
|
local rows = {}
|
||||||
rows[1] = "#FFF,0,Command,Parameters"
|
rows[1] = "#FFF,0,"..F(S("Command"))..","..F(S("Parameters"))
|
||||||
|
|
||||||
local description = "For more information, click on any entry in the list.\n" ..
|
local description = S("For more information, click on "
|
||||||
"Double-click to copy the entry to the chat history."
|
.. "any entry in the list.").. "\n" ..
|
||||||
|
S("Double-click to copy the entry to the chat history.")
|
||||||
|
|
||||||
for i, data in ipairs(mod_cmds) do
|
for i, data in ipairs(mod_cmds) do
|
||||||
rows[#rows + 1] = COLOR_BLUE .. ",0," .. formspec_escape(data[1]) .. ","
|
rows[#rows + 1] = COLOR_BLUE .. ",0," .. F(data[1]) .. ","
|
||||||
for j, cmds in ipairs(data[2]) do
|
for j, cmds in ipairs(data[2]) do
|
||||||
local has_priv = check_player_privs(name, cmds[2].privs)
|
local has_priv = check_player_privs(name, cmds[2].privs)
|
||||||
rows[#rows + 1] = ("%s,1,%s,%s"):format(
|
rows[#rows + 1] = ("%s,1,%s,%s"):format(
|
||||||
has_priv and COLOR_GREEN or COLOR_GRAY,
|
has_priv and COLOR_GREEN or COLOR_GRAY,
|
||||||
cmds[1], formspec_escape(cmds[2].params))
|
cmds[1], F(cmds[2].params))
|
||||||
if sel == #rows then
|
if sel == #rows then
|
||||||
description = cmds[2].description
|
description = cmds[2].description
|
||||||
if copy then
|
if copy then
|
||||||
core.chat_send_player(name, ("Command: %s %s"):format(
|
core.chat_send_player(name, S("Command: @1 @2",
|
||||||
core.colorize("#0FF", "/" .. cmds[1]), cmds[2].params))
|
core.colorize("#0FF", "/" .. cmds[1]), cmds[2].params))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -74,9 +76,9 @@ local function build_chatcommands_formspec(name, sel, copy)
|
|||||||
end
|
end
|
||||||
|
|
||||||
return LIST_FORMSPEC_DESCRIPTION:format(
|
return LIST_FORMSPEC_DESCRIPTION:format(
|
||||||
"Available commands: (see also: /help <cmd>)",
|
F(S("Available commands: (see also: /help <cmd>)")),
|
||||||
table.concat(rows, ","), sel or 0,
|
table.concat(rows, ","), sel or 0,
|
||||||
description, "Close"
|
F(description), F(S("Close"))
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -91,19 +93,19 @@ local function build_privs_formspec(name)
|
|||||||
table.sort(privs, function(a, b) return a[1] < b[1] end)
|
table.sort(privs, function(a, b) return a[1] < b[1] end)
|
||||||
|
|
||||||
local rows = {}
|
local rows = {}
|
||||||
rows[1] = "#FFF,0,Privilege,Description"
|
rows[1] = "#FFF,0,"..F(S("Privilege"))..","..F(S("Description"))
|
||||||
|
|
||||||
local player_privs = core.get_player_privs(name)
|
local player_privs = core.get_player_privs(name)
|
||||||
for i, data in ipairs(privs) do
|
for i, data in ipairs(privs) do
|
||||||
rows[#rows + 1] = ("%s,0,%s,%s"):format(
|
rows[#rows + 1] = ("%s,0,%s,%s"):format(
|
||||||
player_privs[data[1]] and COLOR_GREEN or COLOR_GRAY,
|
player_privs[data[1]] and COLOR_GREEN or COLOR_GRAY,
|
||||||
data[1], formspec_escape(data[2].description))
|
data[1], F(data[2].description))
|
||||||
end
|
end
|
||||||
|
|
||||||
return LIST_FORMSPEC:format(
|
return LIST_FORMSPEC:format(
|
||||||
"Available privileges:",
|
F(S("Available privileges:")),
|
||||||
table.concat(rows, ","),
|
table.concat(rows, ","),
|
||||||
"Close"
|
F(S("Close"))
|
||||||
)
|
)
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -115,7 +117,7 @@ core.register_on_player_receive_fields(function(player, formname, fields)
|
|||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local event = minetest.explode_table_event(fields.list)
|
local event = core.explode_table_event(fields.list)
|
||||||
if event.type ~= "INV" then
|
if event.type ~= "INV" then
|
||||||
local name = player:get_player_name()
|
local name = player:get_player_name()
|
||||||
core.show_formspec(name, "__builtin:help_cmds",
|
core.show_formspec(name, "__builtin:help_cmds",
|
||||||
|
@ -58,26 +58,20 @@ end
|
|||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
local function get_formspec(self)
|
local function get_formspec(self)
|
||||||
local formspec = ""
|
if self.hidden or (self.parent ~= nil and self.parent.hidden) then
|
||||||
|
return ""
|
||||||
if not self.hidden and (self.parent == nil or not self.parent.hidden) then
|
|
||||||
|
|
||||||
if self.parent == nil then
|
|
||||||
local tsize = self.tablist[self.last_tab_index].tabsize or
|
|
||||||
{width=self.width, height=self.height}
|
|
||||||
formspec = formspec ..
|
|
||||||
string.format("size[%f,%f,%s]",tsize.width,tsize.height,
|
|
||||||
dump(self.fixed_size))
|
|
||||||
end
|
|
||||||
formspec = formspec .. self:tab_header()
|
|
||||||
formspec = formspec ..
|
|
||||||
self.tablist[self.last_tab_index].get_formspec(
|
|
||||||
self,
|
|
||||||
self.tablist[self.last_tab_index].name,
|
|
||||||
self.tablist[self.last_tab_index].tabdata,
|
|
||||||
self.tablist[self.last_tab_index].tabsize
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
local tab = self.tablist[self.last_tab_index]
|
||||||
|
|
||||||
|
local content, prepend = tab.get_formspec(self, tab.name, tab.tabdata, tab.tabsize)
|
||||||
|
|
||||||
|
if self.parent == nil and not prepend then
|
||||||
|
local tsize = tab.tabsize or {width=self.width, height=self.height}
|
||||||
|
prepend = string.format("size[%f,%f,%s]", tsize.width, tsize.height,
|
||||||
|
dump(self.fixed_size))
|
||||||
|
end
|
||||||
|
|
||||||
|
local formspec = (prepend or "") .. self:tab_header() .. content
|
||||||
return formspec
|
return formspec
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -97,14 +91,9 @@ local function handle_buttons(self,fields)
|
|||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
if self.tablist[self.last_tab_index].button_handler ~= nil then
|
local tab = self.tablist[self.last_tab_index]
|
||||||
return
|
if tab.button_handler ~= nil then
|
||||||
self.tablist[self.last_tab_index].button_handler(
|
return tab.button_handler(self, fields, tab.name, tab.tabdata)
|
||||||
self,
|
|
||||||
fields,
|
|
||||||
self.tablist[self.last_tab_index].name,
|
|
||||||
self.tablist[self.last_tab_index].tabdata
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return false
|
return false
|
||||||
@ -122,14 +111,9 @@ local function handle_events(self,event)
|
|||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
if self.tablist[self.last_tab_index].evt_handler ~= nil then
|
local tab = self.tablist[self.last_tab_index]
|
||||||
return
|
if tab.evt_handler ~= nil then
|
||||||
self.tablist[self.last_tab_index].evt_handler(
|
return tab.evt_handler(self, event, tab.name, tab.tabdata)
|
||||||
self,
|
|
||||||
event,
|
|
||||||
self.tablist[self.last_tab_index].name,
|
|
||||||
self.tablist[self.last_tab_index].tabdata
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return false
|
return false
|
||||||
|
@ -665,7 +665,7 @@ end
|
|||||||
-- Item definition defaults
|
-- Item definition defaults
|
||||||
--
|
--
|
||||||
|
|
||||||
local default_stack_max = tonumber(minetest.settings:get("default_stack_max")) or 99
|
local default_stack_max = tonumber(core.settings:get("default_stack_max")) or 99
|
||||||
|
|
||||||
core.nodedef_default = {
|
core.nodedef_default = {
|
||||||
-- Item properties
|
-- Item properties
|
||||||
|
@ -42,5 +42,5 @@ core.register_on_punchplayer(function(player, hitter, time_from_last_punch, tool
|
|||||||
return -- barely noticeable, so don't even send
|
return -- barely noticeable, so don't even send
|
||||||
end
|
end
|
||||||
|
|
||||||
player:add_player_velocity(kdir)
|
player:add_velocity(kdir)
|
||||||
end)
|
end)
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
-- Minetest: builtin/misc.lua
|
-- Minetest: builtin/misc.lua
|
||||||
|
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Misc. API functions
|
-- Misc. API functions
|
||||||
--
|
--
|
||||||
@ -42,15 +44,15 @@ end
|
|||||||
|
|
||||||
function core.send_join_message(player_name)
|
function core.send_join_message(player_name)
|
||||||
if not core.is_singleplayer() then
|
if not core.is_singleplayer() then
|
||||||
core.chat_send_all("*** " .. player_name .. " joined the game.")
|
core.chat_send_all("*** " .. S("@1 joined the game.", player_name))
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
function core.send_leave_message(player_name, timed_out)
|
function core.send_leave_message(player_name, timed_out)
|
||||||
local announcement = "*** " .. player_name .. " left the game."
|
local announcement = "*** " .. S("@1 left the game.", player_name)
|
||||||
if timed_out then
|
if timed_out then
|
||||||
announcement = announcement .. " (timed out)"
|
announcement = "*** " .. S("@1 left the game (timed out).", player_name)
|
||||||
end
|
end
|
||||||
core.chat_send_all(announcement)
|
core.chat_send_all(announcement)
|
||||||
end
|
end
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
-- Minetest: builtin/privileges.lua
|
-- Minetest: builtin/privileges.lua
|
||||||
|
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Privileges
|
-- Privileges
|
||||||
--
|
--
|
||||||
@ -15,7 +17,7 @@ function core.register_privilege(name, param)
|
|||||||
def.give_to_admin = def.give_to_singleplayer
|
def.give_to_admin = def.give_to_singleplayer
|
||||||
end
|
end
|
||||||
if def.description == nil then
|
if def.description == nil then
|
||||||
def.description = "(no description)"
|
def.description = S("(no description)")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
local def
|
local def
|
||||||
@ -28,69 +30,69 @@ function core.register_privilege(name, param)
|
|||||||
core.registered_privileges[name] = def
|
core.registered_privileges[name] = def
|
||||||
end
|
end
|
||||||
|
|
||||||
core.register_privilege("interact", "Can interact with things and modify the world")
|
core.register_privilege("interact", S("Can interact with things and modify the world"))
|
||||||
core.register_privilege("shout", "Can speak in chat")
|
core.register_privilege("shout", S("Can speak in chat"))
|
||||||
core.register_privilege("basic_privs", "Can modify 'shout' and 'interact' privileges")
|
core.register_privilege("basic_privs", S("Can modify 'shout' and 'interact' privileges"))
|
||||||
core.register_privilege("privs", "Can modify privileges")
|
core.register_privilege("privs", S("Can modify privileges"))
|
||||||
|
|
||||||
core.register_privilege("teleport", {
|
core.register_privilege("teleport", {
|
||||||
description = "Can teleport self",
|
description = S("Can teleport self"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("bring", {
|
core.register_privilege("bring", {
|
||||||
description = "Can teleport other players",
|
description = S("Can teleport other players"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("settime", {
|
core.register_privilege("settime", {
|
||||||
description = "Can set the time of day using /time",
|
description = S("Can set the time of day using /time"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("server", {
|
core.register_privilege("server", {
|
||||||
description = "Can do server maintenance stuff",
|
description = S("Can do server maintenance stuff"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
give_to_admin = true,
|
give_to_admin = true,
|
||||||
})
|
})
|
||||||
core.register_privilege("protection_bypass", {
|
core.register_privilege("protection_bypass", {
|
||||||
description = "Can bypass node protection in the world",
|
description = S("Can bypass node protection in the world"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("ban", {
|
core.register_privilege("ban", {
|
||||||
description = "Can ban and unban players",
|
description = S("Can ban and unban players"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
give_to_admin = true,
|
give_to_admin = true,
|
||||||
})
|
})
|
||||||
core.register_privilege("kick", {
|
core.register_privilege("kick", {
|
||||||
description = "Can kick players",
|
description = S("Can kick players"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
give_to_admin = true,
|
give_to_admin = true,
|
||||||
})
|
})
|
||||||
core.register_privilege("give", {
|
core.register_privilege("give", {
|
||||||
description = "Can use /give and /giveme",
|
description = S("Can use /give and /giveme"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("password", {
|
core.register_privilege("password", {
|
||||||
description = "Can use /setpassword and /clearpassword",
|
description = S("Can use /setpassword and /clearpassword"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
give_to_admin = true,
|
give_to_admin = true,
|
||||||
})
|
})
|
||||||
core.register_privilege("fly", {
|
core.register_privilege("fly", {
|
||||||
description = "Can use fly mode",
|
description = S("Can use fly mode"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("fast", {
|
core.register_privilege("fast", {
|
||||||
description = "Can use fast mode",
|
description = S("Can use fast mode"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("noclip", {
|
core.register_privilege("noclip", {
|
||||||
description = "Can fly through solid nodes using noclip mode",
|
description = S("Can fly through solid nodes using noclip mode"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("rollback", {
|
core.register_privilege("rollback", {
|
||||||
description = "Can use the rollback functionality",
|
description = S("Can use the rollback functionality"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
})
|
})
|
||||||
core.register_privilege("debug", {
|
core.register_privilege("debug", {
|
||||||
description = "Allows enabling various debug options that may affect gameplay",
|
description = S("Allows enabling various debug options that may affect gameplay"),
|
||||||
give_to_singleplayer = false,
|
give_to_singleplayer = false,
|
||||||
give_to_admin = true,
|
give_to_admin = true,
|
||||||
})
|
})
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
-- Minetest: builtin/misc_register.lua
|
-- Minetest: builtin/misc_register.lua
|
||||||
|
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Make raw registration functions inaccessible to anyone except this file
|
-- Make raw registration functions inaccessible to anyone except this file
|
||||||
--
|
--
|
||||||
@ -118,10 +120,6 @@ function core.register_item(name, itemdef)
|
|||||||
end
|
end
|
||||||
itemdef.name = name
|
itemdef.name = name
|
||||||
|
|
||||||
-- default short_description to first line of description
|
|
||||||
itemdef.short_description = itemdef.short_description or
|
|
||||||
(itemdef.description or ""):gsub("\n.*","")
|
|
||||||
|
|
||||||
-- Apply defaults and add to registered_* table
|
-- Apply defaults and add to registered_* table
|
||||||
if itemdef.type == "node" then
|
if itemdef.type == "node" then
|
||||||
-- Use the nodebox as selection box if it's not set manually
|
-- Use the nodebox as selection box if it's not set manually
|
||||||
@ -330,7 +328,7 @@ end
|
|||||||
|
|
||||||
core.register_item(":unknown", {
|
core.register_item(":unknown", {
|
||||||
type = "none",
|
type = "none",
|
||||||
description = "Unknown Item",
|
description = S("Unknown Item"),
|
||||||
inventory_image = "unknown_item.png",
|
inventory_image = "unknown_item.png",
|
||||||
on_place = core.item_place,
|
on_place = core.item_place,
|
||||||
on_secondary_use = core.item_secondary_use,
|
on_secondary_use = core.item_secondary_use,
|
||||||
@ -340,7 +338,7 @@ core.register_item(":unknown", {
|
|||||||
})
|
})
|
||||||
|
|
||||||
core.register_node(":air", {
|
core.register_node(":air", {
|
||||||
description = "Air",
|
description = S("Air"),
|
||||||
inventory_image = "air.png",
|
inventory_image = "air.png",
|
||||||
wield_image = "air.png",
|
wield_image = "air.png",
|
||||||
drawtype = "airlike",
|
drawtype = "airlike",
|
||||||
@ -357,7 +355,7 @@ core.register_node(":air", {
|
|||||||
})
|
})
|
||||||
|
|
||||||
core.register_node(":ignore", {
|
core.register_node(":ignore", {
|
||||||
description = "Ignore",
|
description = S("Ignore"),
|
||||||
inventory_image = "ignore.png",
|
inventory_image = "ignore.png",
|
||||||
wield_image = "ignore.png",
|
wield_image = "ignore.png",
|
||||||
drawtype = "airlike",
|
drawtype = "airlike",
|
||||||
@ -370,11 +368,12 @@ core.register_node(":ignore", {
|
|||||||
air_equivalent = true,
|
air_equivalent = true,
|
||||||
drop = "",
|
drop = "",
|
||||||
groups = {not_in_creative_inventory=1},
|
groups = {not_in_creative_inventory=1},
|
||||||
|
node_placement_prediction = "",
|
||||||
on_place = function(itemstack, placer, pointed_thing)
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
core.chat_send_player(
|
core.chat_send_player(
|
||||||
placer:get_player_name(),
|
placer:get_player_name(),
|
||||||
core.colorize("#FF0000",
|
core.colorize("#FF0000",
|
||||||
"You can't place 'ignore' nodes!"))
|
S("You can't place 'ignore' nodes!")))
|
||||||
return ""
|
return ""
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -84,8 +84,8 @@ local function update_builtin_statbars(player)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if hud.id_breathbar and (not show_breathbar or breath == breath_max) then
|
if hud.id_breathbar and (not show_breathbar or breath == breath_max) then
|
||||||
minetest.after(1, function(player_name, breath_bar)
|
core.after(1, function(player_name, breath_bar)
|
||||||
local player = minetest.get_player_by_name(player_name)
|
local player = core.get_player_by_name(player_name)
|
||||||
if player then
|
if player then
|
||||||
player:hud_remove(breath_bar)
|
player:hud_remove(breath_bar)
|
||||||
end
|
end
|
||||||
|
@ -38,9 +38,20 @@ if INIT == "game" then
|
|||||||
dofile(gamepath .. "init.lua")
|
dofile(gamepath .. "init.lua")
|
||||||
elseif INIT == "mainmenu" then
|
elseif INIT == "mainmenu" then
|
||||||
local mm_script = core.settings:get("main_menu_script")
|
local mm_script = core.settings:get("main_menu_script")
|
||||||
|
local custom_loaded = false
|
||||||
if mm_script and mm_script ~= "" then
|
if mm_script and mm_script ~= "" then
|
||||||
dofile(mm_script)
|
local testfile = io.open(mm_script, "r")
|
||||||
else
|
if testfile then
|
||||||
|
testfile:close()
|
||||||
|
dofile(mm_script)
|
||||||
|
custom_loaded = true
|
||||||
|
core.log("info", "Loaded custom main menu script: "..mm_script)
|
||||||
|
else
|
||||||
|
core.log("error", "Failed to load custom main menu script: "..mm_script)
|
||||||
|
core.log("info", "Falling back to default main menu script")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if not custom_loaded then
|
||||||
dofile(core.get_mainmenu_path() .. DIR_DELIM .. "init.lua")
|
dofile(core.get_mainmenu_path() .. DIR_DELIM .. "init.lua")
|
||||||
end
|
end
|
||||||
elseif INIT == "async" then
|
elseif INIT == "async" then
|
||||||
|
225
builtin/locale/__builtin.de.tr
Normal file
@ -0,0 +1,225 @@
|
|||||||
|
# textdomain: __builtin
|
||||||
|
Empty command.=Leerer Befehl.
|
||||||
|
Invalid command: @1=Ungültiger Befehl: @1
|
||||||
|
Invalid command usage.=Ungültige Befehlsverwendung.
|
||||||
|
You don't have permission to run this command (missing privileges: @1).=Sie haben keine Erlaubnis, diesen Befehl auszuführen (fehlende Privilegien: @1).
|
||||||
|
Unable to get position of player @1.=Konnte Position vom Spieler @1 nicht ermitteln.
|
||||||
|
Incorrect area format. Expected: (x1,y1,z1) (x2,y2,z2)=Ungültiges Gebietsformat. Erwartet: (x1,y1,z1) (x2,y2,z2)
|
||||||
|
<action>=<Aktion>
|
||||||
|
Show chat action (e.g., '/me orders a pizza' displays '<player name> orders a pizza')=Chataktion zeigen (z.B. wird „/me isst Pizza“ zu „<Spielername> isst Pizza“)
|
||||||
|
Show the name of the server owner=Den Namen des Servereigentümers zeigen
|
||||||
|
The administrator of this server is @1.=Der Administrator dieses Servers ist @1.
|
||||||
|
There's no administrator named in the config file.=In der Konfigurationsdatei wurde kein Administrator angegeben.
|
||||||
|
[<name>]=[<Name>]
|
||||||
|
Show privileges of yourself or another player=Ihre eigenen Privilegien oder die eines anderen Spielers anzeigen
|
||||||
|
Player @1 does not exist.=Spieler @1 existiert nicht.
|
||||||
|
Privileges of @1: @2=Privilegien von @1: @2
|
||||||
|
<privilege>=<Privileg>
|
||||||
|
Return list of all online players with privilege=Liste aller Spieler mit einem Privileg ausgeben
|
||||||
|
Invalid parameters (see /help haspriv).=Ungültige Parameter (siehe „/help haspriv“).
|
||||||
|
Unknown privilege!=Unbekanntes Privileg!
|
||||||
|
Players online with the "@1" privilege: @2=Derzeit online spielende Spieler mit dem „@1“-Privileg: @2
|
||||||
|
Your privileges are insufficient.=Ihre Privilegien sind unzureichend.
|
||||||
|
Unknown privilege: @1=Unbekanntes Privileg: @1
|
||||||
|
@1 granted you privileges: @2=@1 gewährte Ihnen Privilegien: @2
|
||||||
|
<name> (<privilege> | all)=<Name> (<Privileg> | all)
|
||||||
|
Give privileges to player=Privileg an Spieler vergeben
|
||||||
|
Invalid parameters (see /help grant).=Ungültige Parameter (siehe „/help grant“).
|
||||||
|
<privilege> | all=<Privileg> | all
|
||||||
|
Grant privileges to yourself=Privilegien an Ihnen selbst vergeben
|
||||||
|
Invalid parameters (see /help grantme).=Ungültige Parameter (siehe „/help grantme“).
|
||||||
|
@1 revoked privileges from you: @2=@1 entfernte Privilegien von Ihnen: @2
|
||||||
|
Remove privileges from player=Privilegien von Spieler entfernen
|
||||||
|
Invalid parameters (see /help revoke).=Ungültige Parameter (siehe „/help revoke“).
|
||||||
|
Revoke privileges from yourself=Privilegien von Ihnen selbst entfernen
|
||||||
|
Invalid parameters (see /help revokeme).=Ungültige Parameter (siehe „/help revokeme“).
|
||||||
|
<name> <password>=<Name> <Passwort>
|
||||||
|
Set player's password=Passwort von Spieler setzen
|
||||||
|
Name field required.=Namensfeld benötigt.
|
||||||
|
Your password was cleared by @1.=Ihr Passwort wurde von @1 geleert.
|
||||||
|
Password of player "@1" cleared.=Passwort von Spieler „@1“ geleert.
|
||||||
|
Your password was set by @1.=Ihr Passwort wurde von @1 gesetzt.
|
||||||
|
Password of player "@1" set.=Passwort von Spieler „@1“ gesetzt.
|
||||||
|
<name>=<Name>
|
||||||
|
Set empty password for a player=Leeres Passwort für einen Spieler setzen
|
||||||
|
Reload authentication data=Authentifizierungsdaten erneut laden
|
||||||
|
Done.=Fertig.
|
||||||
|
Failed.=Fehlgeschlagen.
|
||||||
|
Remove a player's data=Daten eines Spielers löschen
|
||||||
|
Player "@1" removed.=Spieler „@1“ gelöscht.
|
||||||
|
No such player "@1" to remove.=Es gibt keinen Spieler „@1“, der gelöscht werden könnte.
|
||||||
|
Player "@1" is connected, cannot remove.=Spieler „@1“ ist verbunden, er kann nicht gelöscht werden.
|
||||||
|
Unhandled remove_player return code @1.=Nicht berücksichtigter remove_player-Rückgabewert @1.
|
||||||
|
Cannot teleport out of map bounds!=Eine Teleportation außerhalb der Kartengrenzen ist nicht möglich!
|
||||||
|
Cannot get player with name @1.=Spieler mit Namen @1 kann nicht gefunden werden.
|
||||||
|
Cannot teleport, @1 is attached to an object!=Teleportation nicht möglich, @1 ist an einem Objekt befestigt!
|
||||||
|
Teleporting @1 to @2.=Teleportation von @1 nach @2
|
||||||
|
One does not teleport to oneself.=Man teleportiert sich doch nicht zu sich selbst.
|
||||||
|
Cannot get teleportee with name @1.=Der zu teleportierende Spieler mit Namen @1 kann nicht gefunden werden.
|
||||||
|
Cannot get target player with name @1.=Zielspieler mit Namen @1 kann nicht gefunden werden.
|
||||||
|
Teleporting @1 to @2 at @3.=Teleportation von @1 zu @2 bei @3
|
||||||
|
<X>,<Y>,<Z> | <to_name> | <name> <X>,<Y>,<Z> | <name> <to_name>=<X>,<Y>,<Z> | <zu_Name> | <Name> <X>,<Y>,<Z> | <Name> <zu_Name>
|
||||||
|
Teleport to position or player=Zu Position oder Spieler teleportieren
|
||||||
|
You don't have permission to teleport other players (missing privilege: @1).=Sie haben nicht die Erlaubnis, andere Spieler zu teleportieren (fehlendes Privileg: @1).
|
||||||
|
([-n] <name> <value>) | <name>=([-n] <Name> <Wert>) | <Name>
|
||||||
|
Set or read server configuration setting=Serverkonfigurationseinstellung setzen oder lesen
|
||||||
|
Failed. Use '/set -n <name> <value>' to create a new setting.=Fehlgeschlagen. Benutzen Sie „/set -n <Name> <Wert>“, um eine neue Einstellung zu erstellen.
|
||||||
|
@1 @= @2=@1 @= @2
|
||||||
|
<not set>=<nicht gesetzt>
|
||||||
|
Invalid parameters (see /help set).=Ungültige Parameter (siehe „/help set“).
|
||||||
|
Finished emerging @1 blocks in @2ms.=Fertig mit Erzeugung von @1 Blöcken in @2 ms.
|
||||||
|
emergeblocks update: @1/@2 blocks emerged (@3%)=emergeblocks-Update: @1/@2 Kartenblöcke geladen (@3%)
|
||||||
|
(here [<radius>]) | (<pos1> <pos2>)=(here [<Radius>]) | (<Pos1> <Pos2>)
|
||||||
|
Load (or, if nonexistent, generate) map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=Lade (oder, wenn nicht existent, generiere) Kartenblöcke im Gebiet zwischen Pos1 und Pos2 (<Pos1> und <Pos2> müssen in Klammern stehen)
|
||||||
|
Started emerge of area ranging from @1 to @2.=Start des Ladevorgangs des Gebiets zwischen @1 und @2.
|
||||||
|
Delete map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=Kartenblöcke innerhalb des Gebiets zwischen Pos1 und Pos2 löschen (<Pos1> und <Pos2> müssen in Klammern stehen)
|
||||||
|
Successfully cleared area ranging from @1 to @2.=Gebiet zwischen @1 und @2 erfolgreich geleert.
|
||||||
|
Failed to clear one or more blocks in area.=Fehlgeschlagen: Ein oder mehrere Kartenblöcke im Gebiet konnten nicht geleert werden.
|
||||||
|
Resets lighting in the area between pos1 and pos2 (<pos1> and <pos2> must be in parentheses)=Setzt das Licht im Gebiet zwischen Pos1 und Pos2 zurück (<Pos1> und <Pos2> müssen in Klammern stehen)
|
||||||
|
Successfully reset light in the area ranging from @1 to @2.=Das Licht im Gebiet zwischen @1 und @2 wurde erfolgreich zurückgesetzt.
|
||||||
|
Failed to load one or more blocks in area.=Fehlgeschlagen: Ein oder mehrere Kartenblöcke im Gebiet konnten nicht geladen werden.
|
||||||
|
List mods installed on the server=Installierte Mods auf dem Server auflisten
|
||||||
|
Cannot give an empty item.=Ein leerer Gegenstand kann nicht gegeben werden.
|
||||||
|
Cannot give an unknown item.=Ein unbekannter Gegenstand kann nicht gegeben werden.
|
||||||
|
Giving 'ignore' is not allowed.=„ignore“ darf nicht gegeben werden.
|
||||||
|
@1 is not a known player.=@1 ist kein bekannter Spieler.
|
||||||
|
@1 partially added to inventory.=@1 teilweise ins Inventar eingefügt.
|
||||||
|
@1 could not be added to inventory.=@1 konnte nicht ins Inventar eingefügt werden.
|
||||||
|
@1 added to inventory.=@1 zum Inventar hinzugefügt.
|
||||||
|
@1 partially added to inventory of @2.=@1 teilweise ins Inventar von @2 eingefügt.
|
||||||
|
@1 could not be added to inventory of @2.=@1 konnte nicht ins Inventar von @2 eingefügt werden.
|
||||||
|
@1 added to inventory of @2.=@1 ins Inventar von @2 eingefügt.
|
||||||
|
<name> <ItemString> [<count> [<wear>]]=<Name> <ItemString> [<Anzahl> [<Abnutzung>]]
|
||||||
|
Give item to player=Gegenstand an Spieler geben
|
||||||
|
Name and ItemString required.=Name und ItemString benötigt.
|
||||||
|
<ItemString> [<count> [<wear>]]=<ItemString> [<Anzahl> [<Abnutzung>]]
|
||||||
|
Give item to yourself=Gegenstand Ihnen selbst geben
|
||||||
|
ItemString required.=ItemString benötigt.
|
||||||
|
<EntityName> [<X>,<Y>,<Z>]=<EntityName> [<X>,<Y>,<Z>]
|
||||||
|
Spawn entity at given (or your) position=Entity an angegebener (oder Ihrer eigenen) Position spawnen
|
||||||
|
EntityName required.=EntityName benötigt.
|
||||||
|
Unable to spawn entity, player is nil.=Entity konnte nicht gespawnt werden, Spieler ist nil.
|
||||||
|
Cannot spawn an unknown entity.=Ein unbekanntes Entity kann nicht gespawnt werden.
|
||||||
|
Invalid parameters (@1).=Ungültige Parameter (@1).
|
||||||
|
@1 spawned.=@1 gespawnt.
|
||||||
|
@1 failed to spawn.=@1 konnte nicht gespawnt werden.
|
||||||
|
Destroy item in hand=Gegenstand in der Hand zerstören
|
||||||
|
Unable to pulverize, no player.=Konnte nicht pulverisieren, kein Spieler.
|
||||||
|
Unable to pulverize, no item in hand.=Konnte nicht pulverisieren, kein Gegenstand in der Hand.
|
||||||
|
An item was pulverized.=Ein Gegenstand wurde pulverisiert.
|
||||||
|
[<range>] [<seconds>] [<limit>]=[<Reichweite>] [<Sekunden>] [<Limit>]
|
||||||
|
Check who last touched a node or a node near it within the time specified by <seconds>. Default: range @= 0, seconds @= 86400 @= 24h, limit @= 5. Set <seconds> to inf for no time limit=Überprüfen, wer als letztes einen Node oder einen Node in der Nähe innerhalb der in <Sekunden> angegebenen Zeitspanne angefasst hat. Standard: Reichweite @= 0, Sekunden @= 86400 @= 24h, Limit @= 5. <Sekunden> auf „inf“ setzen, um Zeitlimit zu deaktivieren.
|
||||||
|
Rollback functions are disabled.=Rollback-Funktionen sind deaktiviert.
|
||||||
|
That limit is too high!=Dieses Limit ist zu hoch!
|
||||||
|
Checking @1 ...=Überprüfe @1 ...
|
||||||
|
Nobody has touched the specified location in @1 seconds.=Niemand hat die angegebene Position seit @1 Sekunden angefasst.
|
||||||
|
@1 @2 @3 -> @4 @5 seconds ago.=@1 @2 @3 -> @4 vor @5 Sekunden.
|
||||||
|
Punch a node (range@=@1, seconds@=@2, limit@=@3).=Hauen Sie einen Node (Reichweite@=@1, Sekunden@=@2, Limit@=@3).
|
||||||
|
(<name> [<seconds>]) | (:<actor> [<seconds>])=(<Name> [<Sekunden>]) | (:<Akteur> [<Sekunden>])
|
||||||
|
Revert actions of a player. Default for <seconds> is 60. Set <seconds> to inf for no time limit=Aktionen eines Spielers zurückrollen. Standard für <Sekunden> ist 60. <Sekunden> auf „inf“ setzen, um Zeitlimit zu deaktivieren
|
||||||
|
Invalid parameters. See /help rollback and /help rollback_check.=Ungültige Parameter. Siehe /help rollback und /help rollback_check.
|
||||||
|
Reverting actions of player '@1' since @2 seconds.=Die Aktionen des Spielers „@1“ seit @2 Sekunden werden rückgängig gemacht.
|
||||||
|
Reverting actions of @1 since @2 seconds.=Die Aktionen von @1 seit @2 Sekunden werden rückgängig gemacht.
|
||||||
|
(log is too long to show)=(Protokoll ist zu lang für die Anzeige)
|
||||||
|
Reverting actions succeeded.=Die Aktionen wurden erfolgreich rückgängig gemacht.
|
||||||
|
Reverting actions FAILED.=FEHLGESCHLAGEN: Die Aktionen konnten nicht rückgängig gemacht werden.
|
||||||
|
Show server status=Serverstatus anzeigen
|
||||||
|
This command was disabled by a mod or game.=Dieser Befehl wurde von einer Mod oder einem Spiel deaktiviert.
|
||||||
|
[<0..23>:<0..59> | <0..24000>]=[<0..23>:<0..59> | <0..24000>]
|
||||||
|
Show or set time of day=Tageszeit anzeigen oder setzen
|
||||||
|
Current time is @1:@2.=Es ist jetzt @1:@2 Uhr.
|
||||||
|
You don't have permission to run this command (missing privilege: @1).=Sie haben nicht die Erlaubnis, diesen Befehl auszuführen (fehlendes Privileg: @1).
|
||||||
|
Invalid time.=Ungültige Zeit.
|
||||||
|
Time of day changed.=Tageszeit geändert.
|
||||||
|
Invalid hour (must be between 0 and 23 inclusive).=Ungültige Stunde (muss zwischen 0 und 23 inklusive liegen).
|
||||||
|
Invalid minute (must be between 0 and 59 inclusive).=Ungültige Minute (muss zwischen 0 und 59 inklusive liegen).
|
||||||
|
Show day count since world creation=Anzahl Tage seit der Erschaffung der Welt anzeigen
|
||||||
|
Current day is @1.=Aktueller Tag ist @1.
|
||||||
|
[<delay_in_seconds> | -1] [reconnect] [<message>]=[<Verzögerung_in_Sekunden> | -1] [reconnect] [<Nachricht>]
|
||||||
|
Shutdown server (-1 cancels a delayed shutdown)=Server herunterfahren (-1 bricht einen verzögerten Abschaltvorgang ab)
|
||||||
|
Server shutting down (operator request).=Server wird heruntergefahren (Betreiberanfrage).
|
||||||
|
Ban the IP of a player or show the ban list=Die IP eines Spielers verbannen oder die Bannliste anzeigen
|
||||||
|
The ban list is empty.=Die Bannliste ist leer.
|
||||||
|
Ban list: @1=Bannliste: @1
|
||||||
|
Player is not online.=Spieler ist nicht online.
|
||||||
|
Failed to ban player.=Konnte Spieler nicht verbannen.
|
||||||
|
Banned @1.=@1 verbannt.
|
||||||
|
<name> | <IP_address>=<Name> | <IP_Adresse>
|
||||||
|
Remove IP ban belonging to a player/IP=Einen IP-Bann auf einen Spieler zurücknehmen
|
||||||
|
Failed to unban player/IP.=Konnte Bann auf Spieler/IP nicht zurücknehmen.
|
||||||
|
Unbanned @1.=Bann auf @1 zurückgenommen.
|
||||||
|
<name> [<reason>]=<Name> [<Grund>]
|
||||||
|
Kick a player=Spieler hinauswerfen
|
||||||
|
Failed to kick player @1.=Spieler @1 konnte nicht hinausgeworfen werden.
|
||||||
|
Kicked @1.=@1 hinausgeworfen.
|
||||||
|
[full | quick]=[full | quick]
|
||||||
|
Clear all objects in world=Alle Objekte in der Welt löschen
|
||||||
|
Invalid usage, see /help clearobjects.=Ungültige Verwendung, siehe /help clearobjects.
|
||||||
|
Clearing all objects. This may take a long time. You may experience a timeout. (by @1)=Lösche alle Objekte. Dies kann eine lange Zeit dauern. Eine Netzwerkzeitüberschreitung könnte für Sie auftreten. (von @1)
|
||||||
|
Objects cleared.=Objekte gelöscht.
|
||||||
|
Cleared all objects.=Alle Objekte gelöscht.
|
||||||
|
<name> <message>=<Name> <Nachricht>
|
||||||
|
Send a direct message to a player=Eine Direktnachricht an einen Spieler senden
|
||||||
|
Invalid usage, see /help msg.=Ungültige Verwendung, siehe /help msg.
|
||||||
|
The player @1 is not online.=Der Spieler @1 ist nicht online.
|
||||||
|
DM from @1: @2=DN von @1: @2
|
||||||
|
Message sent.=Nachricht gesendet.
|
||||||
|
Get the last login time of a player or yourself=Den letzten Loginzeitpunkt eines Spielers oder Ihren eigenen anfragen
|
||||||
|
@1's last login time was @2.=Letzter Loginzeitpunkt von @1 war @2.
|
||||||
|
@1's last login time is unknown.=Letzter Loginzeitpunkt von @1 ist unbekannt.
|
||||||
|
Clear the inventory of yourself or another player=Das Inventar von Ihnen oder einem anderen Spieler leeren
|
||||||
|
You don't have permission to clear another player's inventory (missing privilege: @1).=Sie haben nicht die Erlaubnis, das Inventar eines anderen Spielers zu leeren (fehlendes Privileg: @1).
|
||||||
|
@1 cleared your inventory.=@1 hat Ihr Inventar geleert.
|
||||||
|
Cleared @1's inventory.=Inventar von @1 geleert.
|
||||||
|
Player must be online to clear inventory!=Spieler muss online sein, um das Inventar leeren zu können!
|
||||||
|
Players can't be killed, damage has been disabled.=Spieler können nicht getötet werden, Schaden ist deaktiviert.
|
||||||
|
Player @1 is not online.=Spieler @1 ist nicht online.
|
||||||
|
You are already dead.=Sie sind schon tot.
|
||||||
|
@1 is already dead.=@1 ist bereits tot.
|
||||||
|
@1 has been killed.=@1 wurde getötet.
|
||||||
|
Kill player or yourself=Einen Spieler oder Sie selbst töten
|
||||||
|
Available commands: @1=Verfügbare Befehle: @1
|
||||||
|
Use '/help <cmd>' to get more information, or '/help all' to list everything.=„/help <Befehl>“ benutzen, um mehr Informationen zu erhalten, oder „/help all“, um alles aufzulisten.
|
||||||
|
Available commands:=Verfügbare Befehle:
|
||||||
|
Command not available: @1=Befehl nicht verfügbar: @1
|
||||||
|
[all | privs | <cmd>]=[all | privs | <Befehl>]
|
||||||
|
Get help for commands or list privileges=Hilfe für Befehle erhalten oder Privilegien auflisten
|
||||||
|
Available privileges:=Verfügbare Privilegien:
|
||||||
|
Command=Befehl
|
||||||
|
Parameters=Parameter
|
||||||
|
For more information, click on any entry in the list.=Für mehr Informationen klicken Sie auf einen beliebigen Eintrag in der Liste.
|
||||||
|
Double-click to copy the entry to the chat history.=Doppelklicken, um den Eintrag in die Chathistorie einzufügen.
|
||||||
|
Command: @1 @2=Befehl: @1 @2
|
||||||
|
Available commands: (see also: /help <cmd>)=Verfügbare Befehle: (siehe auch: /help <Befehl>)
|
||||||
|
Close=Schließen
|
||||||
|
Privilege=Privileg
|
||||||
|
Description=Beschreibung
|
||||||
|
print [<filter>] | dump [<filter>] | save [<format> [<filter>]] | reset=print [<Filter>] | dump [<Filter>] | save [<Format> [<Filter>]]
|
||||||
|
Handle the profiler and profiling data=Den Profiler und Profilingdaten verwalten
|
||||||
|
Statistics written to action log.=Statistiken zum Aktionsprotokoll geschrieben.
|
||||||
|
Statistics were reset.=Statistiken wurden zurückgesetzt.
|
||||||
|
Usage: @1=Verwendung: @1
|
||||||
|
Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).=Format kann entweder „txt“, „csv“, „lua“, „json“ oder „json_pretty“ sein (die Struktur kann sich in Zukunft ändern).
|
||||||
|
(no description)=(keine Beschreibung)
|
||||||
|
Can interact with things and modify the world=Kann mit Dingen interagieren und die Welt verändern
|
||||||
|
Can speak in chat=Kann im Chat sprechen
|
||||||
|
Can modify 'shout' and 'interact' privileges=Kann die „shout“- und „interact“-Privilegien anpassen
|
||||||
|
Can modify privileges=Kann Privilegien anpassen
|
||||||
|
Can teleport self=Kann sich selbst teleportieren
|
||||||
|
Can teleport other players=Kann andere Spieler teleportieren
|
||||||
|
Can set the time of day using /time=Kann die Tageszeit mit /time setzen
|
||||||
|
Can do server maintenance stuff=Kann Serverwartungsdinge machen
|
||||||
|
Can bypass node protection in the world=Kann den Schutz auf Blöcken in der Welt umgehen
|
||||||
|
Can ban and unban players=Kann Spieler verbannen und entbannen
|
||||||
|
Can kick players=Kann Spieler hinauswerfen
|
||||||
|
Can use /give and /giveme=Kann /give und /giveme benutzen
|
||||||
|
Can use /setpassword and /clearpassword=Kann /setpassword und /clearpassword benutzen
|
||||||
|
Can use fly mode=Kann den Flugmodus benutzen
|
||||||
|
Can use fast mode=Kann den Schnellmodus benutzen
|
||||||
|
Can fly through solid nodes using noclip mode=Kann durch feste Blöcke mit dem Geistmodus fliegen
|
||||||
|
Can use the rollback functionality=Kann die Rollback-Funktionalität benutzen
|
||||||
|
Allows enabling various debug options that may affect gameplay=Erlaubt die Aktivierung diverser Debugoptionen, die das Spielgeschehen beeinflussen könnten
|
||||||
|
Unknown Item=Unbekannter Gegenstand
|
||||||
|
Air=Luft
|
||||||
|
Ignore=Ignorieren
|
||||||
|
You can't place 'ignore' nodes!=Sie können keine „ignore“-Blöcke platzieren!
|
224
builtin/locale/__builtin.it.tr
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
# textdomain: __builtin
|
||||||
|
Empty command.=Comando vuoto.
|
||||||
|
Invalid command: @1=Comando non valido: @1
|
||||||
|
Invalid command usage.=Utilizzo del comando non valido.
|
||||||
|
You don't have permission to run this command (missing privileges: @1).=Non hai il permesso di eseguire questo comando (privilegi mancanti: @1).
|
||||||
|
Unable to get position of player @1.=Impossibile ottenere la posizione del giocatore @1.
|
||||||
|
Incorrect area format. Expected: (x1,y1,z1) (x2,y2,z2)=Formato dell'area non corretto. Richiesto: (x1,y1,z1) (x2,y2,z2)
|
||||||
|
<action>=<azione>
|
||||||
|
Show chat action (e.g., '/me orders a pizza' displays '<player name> orders a pizza')=Mostra un'azione in chat (es. `/me ordina una pizza` mostra `<nome giocatore> ordina una pizza`)
|
||||||
|
Show the name of the server owner=Mostra il nome del proprietario del server
|
||||||
|
The administrator of this server is @1.=L'amministratore di questo server è @1.
|
||||||
|
There's no administrator named in the config file.=Non c'è nessun amministratore nel file di configurazione.
|
||||||
|
[<name>]=[<nome>]
|
||||||
|
Show privileges of yourself or another player=Mostra i privilegi propri o di un altro giocatore
|
||||||
|
Player @1 does not exist.=Il giocatore @1 non esiste.
|
||||||
|
Privileges of @1: @2=Privilegi di @1: @2
|
||||||
|
<privilege>=<privilegio>
|
||||||
|
Return list of all online players with privilege=Ritorna una lista di tutti i giocatori connessi col tale privilegio
|
||||||
|
Invalid parameters (see /help haspriv).=Parametri non validi (vedi /help haspriv).
|
||||||
|
Unknown privilege!=Privilegio sconosciuto!
|
||||||
|
Players online with the "@1" privilege: @2=Giocatori connessi con il privilegio "@1": @2
|
||||||
|
Your privileges are insufficient.=I tuoi privilegi sono insufficienti.
|
||||||
|
Unknown privilege: @1=Privilegio sconosciuto: @1
|
||||||
|
@1 granted you privileges: @2=@1 ti ha assegnato i seguenti privilegi: @2
|
||||||
|
<name> (<privilege> | all)=<nome> (<privilegio> | all)
|
||||||
|
Give privileges to player=Dà privilegi al giocatore
|
||||||
|
Invalid parameters (see /help grant).=Parametri non validi (vedi /help grant).
|
||||||
|
<privilege> | all=<privilegio> | all
|
||||||
|
Grant privileges to yourself=Assegna dei privilegi a te stessǝ
|
||||||
|
Invalid parameters (see /help grantme).=Parametri non validi (vedi /help grantme).
|
||||||
|
@1 revoked privileges from you: @2=@1 ti ha revocato i seguenti privilegi: @2
|
||||||
|
Remove privileges from player=Rimuove privilegi dal giocatore
|
||||||
|
Invalid parameters (see /help revoke).=Parametri non validi (vedi /help revoke).
|
||||||
|
Revoke privileges from yourself=Revoca privilegi a te stessǝ
|
||||||
|
Invalid parameters (see /help revokeme).=Parametri non validi (vedi /help revokeme).
|
||||||
|
<name> <password>=<nome> <password>
|
||||||
|
Set player's password=Imposta la password del giocatore
|
||||||
|
Name field required.=Campo "nome" richiesto.
|
||||||
|
Your password was cleared by @1.=La tua password è stata resettata da @1.
|
||||||
|
Password of player "@1" cleared.=Password del giocatore "@1" resettata.
|
||||||
|
Your password was set by @1.=La tua password è stata impostata da @1.
|
||||||
|
Password of player "@1" set.=Password del giocatore "@1" impostata.
|
||||||
|
<name>=<nome>
|
||||||
|
Set empty password for a player=Imposta una password vuota a un giocatore
|
||||||
|
Reload authentication data=Ricarica i dati d'autenticazione
|
||||||
|
Done.=Fatto.
|
||||||
|
Failed.=Errore.
|
||||||
|
Remove a player's data=Rimuove i dati di un giocatore
|
||||||
|
Player "@1" removed.=Giocatore "@1" rimosso.
|
||||||
|
No such player "@1" to remove.=Non è presente nessun giocatore "@1" da rimuovere.
|
||||||
|
Player "@1" is connected, cannot remove.=Il giocatore "@1" è connesso, non può essere rimosso.
|
||||||
|
Unhandled remove_player return code @1.=Codice ritornato da remove_player non gestito (@1).
|
||||||
|
Cannot teleport out of map bounds!=Non ci si può teletrasportare fuori dai limiti della mappa!
|
||||||
|
Cannot get player with name @1.=Impossibile trovare il giocatore chiamato @1.
|
||||||
|
Cannot teleport, @1 is attached to an object!=Impossibile teletrasportare, @1 è attaccato a un oggetto!
|
||||||
|
Teleporting @1 to @2.=Teletrasportando @1 da @2.
|
||||||
|
One does not teleport to oneself.=Non ci si può teletrasportare su se stessi.
|
||||||
|
Cannot get teleportee with name @1.=Impossibile trovare il giocatore chiamato @1 per il teletrasporto
|
||||||
|
Cannot get target player with name @1.=Impossibile trovare il giocatore chiamato @1 per il teletrasporto
|
||||||
|
Teleporting @1 to @2 at @3.=Teletrasportando @1 da @2 a @3
|
||||||
|
<X>,<Y>,<Z> | <to_name> | <name> <X>,<Y>,<Z> | <name> <to_name>=<X>,<Y>,<Z> | <da_nome> | <nome> <X>,<Y>,<Z> | <nome> <da_nome>
|
||||||
|
Teleport to position or player=Teletrasporta a una posizione o da un giocatore
|
||||||
|
You don't have permission to teleport other players (missing privilege: @1).=Non hai il permesso di teletrasportare altri giocatori (privilegio mancante: @1).
|
||||||
|
([-n] <name> <value>) | <name>=([-n] <nome> <valore>) | <nome>
|
||||||
|
Set or read server configuration setting=Imposta o ottieni le configurazioni del server
|
||||||
|
Failed. Use '/set -n <name> <value>' to create a new setting.=Errore. Usa 'set -n <nome> <valore>' per creare una nuova impostazione
|
||||||
|
@1 @= @2=@1 @= @2
|
||||||
|
<not set>=<non impostato>
|
||||||
|
Invalid parameters (see /help set).=Parametri non validi (vedi /help set).
|
||||||
|
Finished emerging @1 blocks in @2ms.=Finito di emergere @1 blocchi in @2ms
|
||||||
|
emergeblocks update: @1/@2 blocks emerged (@3%)=aggiornamento emergeblocks: @1/@2 blocchi emersi (@3%)
|
||||||
|
(here [<radius>]) | (<pos1> <pos2>)=(here [<raggio>]) | (<pos1> <pos2>)
|
||||||
|
Load (or, if nonexistent, generate) map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=Carica (o, se non esiste, genera) blocchi mappa contenuti nell'area tra pos1 e pos2 (<pos1> e <pos2> vanno tra parentesi)
|
||||||
|
Started emerge of area ranging from @1 to @2.=Iniziata emersione dell'area tra @1 e @2.
|
||||||
|
Delete map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=Cancella i blocchi mappa contenuti nell'area tra pos1 e pos2 (<pos1> e <pos2> vanno tra parentesi)
|
||||||
|
Successfully cleared area ranging from @1 to @2.=Area tra @1 e @2 ripulita con successo.
|
||||||
|
Failed to clear one or more blocks in area.=Errore nel ripulire uno o più blocchi mappa nell'area
|
||||||
|
Resets lighting in the area between pos1 and pos2 (<pos1> and <pos2> must be in parentheses)=Reimposta l'illuminazione nell'area tra pos1 e po2 (<pos1> e <pos2> vanno tra parentesi)
|
||||||
|
Successfully reset light in the area ranging from @1 to @2.=Luce nell'area tra @1 e @2 reimpostata con successo.
|
||||||
|
Failed to load one or more blocks in area.=Errore nel caricare uno o più blocchi mappa nell'area.
|
||||||
|
List mods installed on the server=Elenca le mod installate nel server
|
||||||
|
Cannot give an empty item.=Impossibile dare un oggetto vuoto.
|
||||||
|
Cannot give an unknown item.=Impossibile dare un oggetto sconosciuto.
|
||||||
|
Giving 'ignore' is not allowed.=Non è permesso dare 'ignore'.
|
||||||
|
@1 is not a known player.=@1 non è un giocatore conosciuto.
|
||||||
|
@1 partially added to inventory.=@1 parzialmente aggiunto all'inventario.
|
||||||
|
@1 could not be added to inventory.=@1 non può essere aggiunto all'inventario.
|
||||||
|
@1 added to inventory.=@1 aggiunto all'inventario.
|
||||||
|
@1 partially added to inventory of @2.=@1 parzialmente aggiunto all'inventario di @2.
|
||||||
|
@1 could not be added to inventory of @2.=Non è stato possibile aggiungere @1 all'inventario di @2.
|
||||||
|
@1 added to inventory of @2.=@1 aggiunto all'inventario di @2.
|
||||||
|
<name> <ItemString> [<count> [<wear>]]=<nome> <NomeOggetto> [<quantità> [<usura>]]
|
||||||
|
Give item to player=Dà oggetti ai giocatori
|
||||||
|
Name and ItemString required.=Richiesti nome e NomeOggetto.
|
||||||
|
<ItemString> [<count> [<wear>]]=<NomeOggetto> [<quantità> [<usura>]]
|
||||||
|
Give item to yourself=Dà oggetti a te stessǝ
|
||||||
|
ItemString required.=Richiesto NomeOggetto.
|
||||||
|
<EntityName> [<X>,<Y>,<Z>]=<NomeEntità> [<X>,<Y>,<Z>]
|
||||||
|
Spawn entity at given (or your) position=Genera un'entità alla data coordinata (o la tua)
|
||||||
|
EntityName required.=Richiesto NomeEntità
|
||||||
|
Unable to spawn entity, player is nil.=Impossibile generare l'entità, il giocatore è nil.
|
||||||
|
Cannot spawn an unknown entity.=Impossibile generare un'entità sconosciuta.
|
||||||
|
Invalid parameters (@1).=Parametri non validi (@1).
|
||||||
|
@1 spawned.=Generata entità @1.
|
||||||
|
@1 failed to spawn.=Errore nel generare @1
|
||||||
|
Destroy item in hand=Distrugge l'oggetto in mano
|
||||||
|
Unable to pulverize, no player.=Impossibile polverizzare, nessun giocatore.
|
||||||
|
Unable to pulverize, no item in hand.=Impossibile polverizzare, nessun oggetto in mano.
|
||||||
|
An item was pulverized.=Un oggetto è stato polverizzato.
|
||||||
|
[<range>] [<seconds>] [<limit>]=[<raggio>] [<secondi>] [<limite>]
|
||||||
|
Check who last touched a node or a node near it within the time specified by <seconds>. Default: range @= 0, seconds @= 86400 @= 24h, limit @= 5. Set <seconds> to inf for no time limit=Controlla chi è l'ultimo giocatore che ha toccato un nodo o un nodo nelle sue vicinanze, negli ultimi secondi indicati. Di base: raggio @= 0, secondi @= 86400 @= 24h, limite @= 5.
|
||||||
|
Rollback functions are disabled.=Le funzioni di rollback sono disabilitate.
|
||||||
|
That limit is too high!=Il limite è troppo alto!
|
||||||
|
Checking @1 ...=Controllando @1 ...
|
||||||
|
Nobody has touched the specified location in @1 seconds.=Nessuno ha toccato il punto specificato negli ultimi @1 secondi.
|
||||||
|
@1 @2 @3 -> @4 @5 seconds ago.=@1 @2 @3 -> @4 @5 secondi fa.
|
||||||
|
Punch a node (range@=@1, seconds@=@2, limit@=@3).=Colpisce un nodo (raggio@=@1, secondi@=@2, limite@=@3)
|
||||||
|
(<name> [<seconds>]) | (:<actor> [<seconds>])=(<nome> [<secondi>]) | (:<attore> [<secondi>])
|
||||||
|
Revert actions of a player. Default for <seconds> is 60. Set <seconds> to inf for no time limit=Riavvolge le azioni di un giocatore. Di base, <secondi> è 60. Imposta <secondi> a inf per nessun limite di tempo
|
||||||
|
Invalid parameters. See /help rollback and /help rollback_check.=Parametri non validi. Vedi /help rollback e /help rollback_check.
|
||||||
|
Reverting actions of player '@1' since @2 seconds.=Riavvolge le azioni del giocatore '@1' avvenute negli ultimi @2 secondi.
|
||||||
|
Reverting actions of @1 since @2 seconds.=Riavvolge le azioni di @1 avvenute negli ultimi @2 secondi.
|
||||||
|
(log is too long to show)=(il log è troppo lungo per essere mostrato)
|
||||||
|
Reverting actions succeeded.=Riavvolgimento azioni avvenuto con successo.
|
||||||
|
Reverting actions FAILED.=Errore nel riavvolgere le azioni.
|
||||||
|
Show server status=Mostra lo stato del server
|
||||||
|
This command was disabled by a mod or game.=Questo comando è stato disabilitato da una mod o dal gioco.
|
||||||
|
[<0..23>:<0..59> | <0..24000>]=[<0..23>:<0..59> | <0..24000>]
|
||||||
|
Show or set time of day=Mostra o imposta l'orario della giornata
|
||||||
|
Current time is @1:@2.=Orario corrente: @1:@2.
|
||||||
|
You don't have permission to run this command (missing privilege: @1).=Non hai il permesso di eseguire questo comando (privilegio mancante: @1)
|
||||||
|
Invalid time.=Orario non valido.
|
||||||
|
Time of day changed.=Orario della giornata cambiato.
|
||||||
|
Invalid hour (must be between 0 and 23 inclusive).=Ora non valida (deve essere tra 0 e 23 inclusi)
|
||||||
|
Invalid minute (must be between 0 and 59 inclusive).=Minuto non valido (deve essere tra 0 e 59 inclusi)
|
||||||
|
Show day count since world creation=Mostra il conteggio dei giorni da quando il mondo è stato creato
|
||||||
|
Current day is @1.=Giorno attuale: @1.
|
||||||
|
[<delay_in_seconds> | -1] [reconnect] [<message>]=[<ritardo_in_secondi> | -1] [reconnect] [<messaggio>]
|
||||||
|
Shutdown server (-1 cancels a delayed shutdown)=Arresta il server (-1 annulla un arresto programmato)
|
||||||
|
Server shutting down (operator request).=Arresto del server in corso (per richiesta dell'operatore)
|
||||||
|
Ban the IP of a player or show the ban list=Bandisce l'IP del giocatore o mostra la lista di quelli banditi
|
||||||
|
The ban list is empty.=La lista banditi è vuota.
|
||||||
|
Ban list: @1=Lista banditi: @1
|
||||||
|
Player is not online.=Il giocatore non è connesso.
|
||||||
|
Failed to ban player.=Errore nel bandire il giocatore.
|
||||||
|
Banned @1.=@1 banditǝ.
|
||||||
|
<name> | <IP_address>=<nome> | <indirizzo_IP>
|
||||||
|
Remove IP ban belonging to a player/IP=Perdona l'IP appartenente a un giocatore/IP
|
||||||
|
Failed to unban player/IP.=Errore nel perdonare il giocatore/IP
|
||||||
|
Unbanned @1.=@1 perdonatǝ
|
||||||
|
<name> [<reason>]=<nome> [<ragione>]
|
||||||
|
Kick a player=Caccia un giocatore
|
||||||
|
Failed to kick player @1.=Errore nel cacciare il giocatore @1.
|
||||||
|
Kicked @1.=@1 cacciatǝ.
|
||||||
|
[full | quick]=[full | quick]
|
||||||
|
Clear all objects in world=Elimina tutti gli oggetti/entità nel mondo
|
||||||
|
Invalid usage, see /help clearobjects.=Uso incorretto, vedi /help clearobjects.
|
||||||
|
Clearing all objects. This may take a long time. You may experience a timeout. (by @1)=Eliminando tutti gli oggetti/entità. Questo potrebbe richiedere molto tempo e farti eventualmente crashare. (di @1)
|
||||||
|
Cleared all objects.=Tutti gli oggetti sono stati eliminati.
|
||||||
|
<name> <message>=<nome> <messaggio>
|
||||||
|
Send a direct message to a player=Invia un messaggio privato al giocatore
|
||||||
|
Invalid usage, see /help msg.=Uso incorretto, vedi /help msg
|
||||||
|
The player @1 is not online.=Il giocatore @1 non è connesso.
|
||||||
|
DM from @1: @2=Messaggio privato da @1: @2
|
||||||
|
Message sent.=Messaggio inviato.
|
||||||
|
Get the last login time of a player or yourself=Ritorna l'ultimo accesso di un giocatore o di te stessǝ
|
||||||
|
@1's last login time was @2.=L'ultimo accesso di @1 è avvenuto il @2
|
||||||
|
@1's last login time is unknown.=L'ultimo accesso di @1 non è conosciuto
|
||||||
|
Clear the inventory of yourself or another player=Svuota l'inventario tuo o di un altro giocatore
|
||||||
|
You don't have permission to clear another player's inventory (missing privilege: @1).=Non hai il permesso di svuotare l'inventario di un altro giocatore (privilegio mancante: @1).
|
||||||
|
@1 cleared your inventory.=@1 ha svuotato il tuo inventario.
|
||||||
|
Cleared @1's inventory.=L'inventario di @1 è stato svuotato.
|
||||||
|
Player must be online to clear inventory!=Il giocatore deve essere connesso per svuotarne l'inventario!
|
||||||
|
Players can't be killed, damage has been disabled.=I giocatori non possono essere uccisi, il danno è disabilitato.
|
||||||
|
Player @1 is not online.=Il giocatore @1 non è connesso.
|
||||||
|
You are already dead.=Sei già mortǝ.
|
||||||
|
@1 is already dead.=@1 è già mortǝ.
|
||||||
|
@1 has been killed.=@1 è stato uccisǝ.
|
||||||
|
Kill player or yourself=Uccide un giocatore o te stessǝ
|
||||||
|
Available commands: @1=Comandi disponibili: @1
|
||||||
|
Use '/help <cmd>' to get more information, or '/help all' to list everything.=Usa '/help <comando>' per ottenere più informazioni, o '/help all' per elencare tutti i comandi.
|
||||||
|
Available commands:=Comandi disponibili:
|
||||||
|
Command not available: @1=Comando non disponibile: @1
|
||||||
|
[all | privs | <cmd>]=[all | privs | <comando>]
|
||||||
|
Get help for commands or list privileges=Richiama la finestra d'aiuto dei comandi o dei privilegi
|
||||||
|
Available privileges:=Privilegi disponibili:
|
||||||
|
Command=Comando
|
||||||
|
Parameters=Parametri
|
||||||
|
For more information, click on any entry in the list.=Per più informazioni, clicca su una qualsiasi voce dell'elenco.
|
||||||
|
Double-click to copy the entry to the chat history.=Doppio click per copiare la voce nella cronologia della chat.
|
||||||
|
Command: @1 @2=Comando: @1 @2
|
||||||
|
Available commands: (see also: /help <cmd>)=Comandi disponibili: (vedi anche /help <comando>)
|
||||||
|
Close=Chiudi
|
||||||
|
Privilege=Privilegio
|
||||||
|
Description=Descrizione
|
||||||
|
print [<filter>] | dump [<filter>] | save [<format> [<filter>]] | reset=print [<filtro>] | dump [<filtro>] | save [<formato> [<filtro>]] | reset
|
||||||
|
Handle the profiler and profiling data=Gestisce il profiler e i dati da esso elaborati
|
||||||
|
Statistics written to action log.=Statistiche scritte nel log delle azioni.
|
||||||
|
Statistics were reset.=Le statistiche sono state resettate.
|
||||||
|
Usage: @1=Utilizzo: @1
|
||||||
|
Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).=I formati supportati sono txt, csv, lua, json e json_pretty (le strutture potrebbero essere soggetti a cambiamenti).
|
||||||
|
(no description)=(nessuna descrizione)
|
||||||
|
Can interact with things and modify the world=Si può interagire con le cose e modificare il mondo
|
||||||
|
Can speak in chat=Si può parlare in chat
|
||||||
|
Can modify 'shout' and 'interact' privileges=Si possono modificare i privilegi 'shout' e 'interact'
|
||||||
|
Can modify privileges=Si possono modificare i privilegi
|
||||||
|
Can teleport self=Si può teletrasportare se stessз
|
||||||
|
Can teleport other players=Si possono teletrasportare gli altri giocatori
|
||||||
|
Can set the time of day using /time=Si può impostate l'orario della giornata tramite /time
|
||||||
|
Can do server maintenance stuff=Si possono eseguire operazioni di manutenzione del server
|
||||||
|
Can bypass node protection in the world=Si può aggirare la protezione dei nodi nel mondo
|
||||||
|
Can ban and unban players=Si possono bandire e perdonare i giocatori
|
||||||
|
Can kick players=Si possono cacciare i giocatori
|
||||||
|
Can use /give and /giveme=Si possono usare /give e /give me
|
||||||
|
Can use /setpassword and /clearpassword=Si possono usare /setpassword e /clearpassword
|
||||||
|
Can use fly mode=Si può usare la modalità volo
|
||||||
|
Can use fast mode=Si può usare la modalità rapida
|
||||||
|
Can fly through solid nodes using noclip mode=Si può volare attraverso i nodi solidi con la modalità incorporea
|
||||||
|
Can use the rollback functionality=Si può usare la funzione di rollback
|
||||||
|
Allows enabling various debug options that may affect gameplay=Permette di abilitare varie opzioni di debug che potrebbero influenzare l'esperienza di gioco
|
||||||
|
Unknown Item=Oggetto sconosciuto
|
||||||
|
Air=Aria
|
||||||
|
Ignore=Ignora
|
||||||
|
You can't place 'ignore' nodes!=Non puoi piazzare nodi 'ignore'!
|
224
builtin/locale/template.txt
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
# textdomain: __builtin
|
||||||
|
Empty command.=
|
||||||
|
Invalid command: @1=
|
||||||
|
Invalid command usage.=
|
||||||
|
You don't have permission to run this command (missing privileges: @1).=
|
||||||
|
Unable to get position of player @1.=
|
||||||
|
Incorrect area format. Expected: (x1,y1,z1) (x2,y2,z2)=
|
||||||
|
<action>=
|
||||||
|
Show chat action (e.g., '/me orders a pizza' displays '<player name> orders a pizza')=
|
||||||
|
Show the name of the server owner=
|
||||||
|
The administrator of this server is @1.=
|
||||||
|
There's no administrator named in the config file.=
|
||||||
|
[<name>]=
|
||||||
|
Show privileges of yourself or another player=
|
||||||
|
Player @1 does not exist.=
|
||||||
|
Privileges of @1: @2=
|
||||||
|
<privilege>=
|
||||||
|
Return list of all online players with privilege=
|
||||||
|
Invalid parameters (see /help haspriv).=
|
||||||
|
Unknown privilege!=
|
||||||
|
Players online with the "@1" privilege: @2=
|
||||||
|
Your privileges are insufficient.=
|
||||||
|
Unknown privilege: @1=
|
||||||
|
@1 granted you privileges: @2=
|
||||||
|
<name> (<privilege> | all)=
|
||||||
|
Give privileges to player=
|
||||||
|
Invalid parameters (see /help grant).=
|
||||||
|
<privilege> | all=
|
||||||
|
Grant privileges to yourself=
|
||||||
|
Invalid parameters (see /help grantme).=
|
||||||
|
@1 revoked privileges from you: @2=
|
||||||
|
Remove privileges from player=
|
||||||
|
Invalid parameters (see /help revoke).=
|
||||||
|
Revoke privileges from yourself=
|
||||||
|
Invalid parameters (see /help revokeme).=
|
||||||
|
<name> <password>=
|
||||||
|
Set player's password=
|
||||||
|
Name field required.=
|
||||||
|
Your password was cleared by @1.=
|
||||||
|
Password of player "@1" cleared.=
|
||||||
|
Your password was set by @1.=
|
||||||
|
Password of player "@1" set.=
|
||||||
|
<name>=
|
||||||
|
Set empty password for a player=
|
||||||
|
Reload authentication data=
|
||||||
|
Done.=
|
||||||
|
Failed.=
|
||||||
|
Remove a player's data=
|
||||||
|
Player "@1" removed.=
|
||||||
|
No such player "@1" to remove.=
|
||||||
|
Player "@1" is connected, cannot remove.=
|
||||||
|
Unhandled remove_player return code @1.=
|
||||||
|
Cannot teleport out of map bounds!=
|
||||||
|
Cannot get player with name @1.=
|
||||||
|
Cannot teleport, @1 is attached to an object!=
|
||||||
|
Teleporting @1 to @2.=
|
||||||
|
One does not teleport to oneself.=
|
||||||
|
Cannot get teleportee with name @1.=
|
||||||
|
Cannot get target player with name @1.=
|
||||||
|
Teleporting @1 to @2 at @3.=
|
||||||
|
<X>,<Y>,<Z> | <to_name> | <name> <X>,<Y>,<Z> | <name> <to_name>=
|
||||||
|
Teleport to position or player=
|
||||||
|
You don't have permission to teleport other players (missing privilege: @1).=
|
||||||
|
([-n] <name> <value>) | <name>=
|
||||||
|
Set or read server configuration setting=
|
||||||
|
Failed. Use '/set -n <name> <value>' to create a new setting.=
|
||||||
|
@1 @= @2=
|
||||||
|
<not set>=
|
||||||
|
Invalid parameters (see /help set).=
|
||||||
|
Finished emerging @1 blocks in @2ms.=
|
||||||
|
emergeblocks update: @1/@2 blocks emerged (@3%)=
|
||||||
|
(here [<radius>]) | (<pos1> <pos2>)=
|
||||||
|
Load (or, if nonexistent, generate) map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=
|
||||||
|
Started emerge of area ranging from @1 to @2.=
|
||||||
|
Delete map blocks contained in area pos1 to pos2 (<pos1> and <pos2> must be in parentheses)=
|
||||||
|
Successfully cleared area ranging from @1 to @2.=
|
||||||
|
Failed to clear one or more blocks in area.=
|
||||||
|
Resets lighting in the area between pos1 and pos2 (<pos1> and <pos2> must be in parentheses)=
|
||||||
|
Successfully reset light in the area ranging from @1 to @2.=
|
||||||
|
Failed to load one or more blocks in area.=
|
||||||
|
List mods installed on the server=
|
||||||
|
Cannot give an empty item.=
|
||||||
|
Cannot give an unknown item.=
|
||||||
|
Giving 'ignore' is not allowed.=
|
||||||
|
@1 is not a known player.=
|
||||||
|
@1 partially added to inventory.=
|
||||||
|
@1 could not be added to inventory.=
|
||||||
|
@1 added to inventory.=
|
||||||
|
@1 partially added to inventory of @2.=
|
||||||
|
@1 could not be added to inventory of @2.=
|
||||||
|
@1 added to inventory of @2.=
|
||||||
|
<name> <ItemString> [<count> [<wear>]]=
|
||||||
|
Give item to player=
|
||||||
|
Name and ItemString required.=
|
||||||
|
<ItemString> [<count> [<wear>]]=
|
||||||
|
Give item to yourself=
|
||||||
|
ItemString required.=
|
||||||
|
<EntityName> [<X>,<Y>,<Z>]=
|
||||||
|
Spawn entity at given (or your) position=
|
||||||
|
EntityName required.=
|
||||||
|
Unable to spawn entity, player is nil.=
|
||||||
|
Cannot spawn an unknown entity.=
|
||||||
|
Invalid parameters (@1).=
|
||||||
|
@1 spawned.=
|
||||||
|
@1 failed to spawn.=
|
||||||
|
Destroy item in hand=
|
||||||
|
Unable to pulverize, no player.=
|
||||||
|
Unable to pulverize, no item in hand.=
|
||||||
|
An item was pulverized.=
|
||||||
|
[<range>] [<seconds>] [<limit>]=
|
||||||
|
Check who last touched a node or a node near it within the time specified by <seconds>. Default: range @= 0, seconds @= 86400 @= 24h, limit @= 5. Set <seconds> to inf for no time limit=
|
||||||
|
Rollback functions are disabled.=
|
||||||
|
That limit is too high!=
|
||||||
|
Checking @1 ...=
|
||||||
|
Nobody has touched the specified location in @1 seconds.=
|
||||||
|
@1 @2 @3 -> @4 @5 seconds ago.=
|
||||||
|
Punch a node (range@=@1, seconds@=@2, limit@=@3).=
|
||||||
|
(<name> [<seconds>]) | (:<actor> [<seconds>])=
|
||||||
|
Revert actions of a player. Default for <seconds> is 60. Set <seconds> to inf for no time limit=
|
||||||
|
Invalid parameters. See /help rollback and /help rollback_check.=
|
||||||
|
Reverting actions of player '@1' since @2 seconds.=
|
||||||
|
Reverting actions of @1 since @2 seconds.=
|
||||||
|
(log is too long to show)=
|
||||||
|
Reverting actions succeeded.=
|
||||||
|
Reverting actions FAILED.=
|
||||||
|
Show server status=
|
||||||
|
This command was disabled by a mod or game.=
|
||||||
|
[<0..23>:<0..59> | <0..24000>]=
|
||||||
|
Show or set time of day=
|
||||||
|
Current time is @1:@2.=
|
||||||
|
You don't have permission to run this command (missing privilege: @1).=
|
||||||
|
Invalid time.=
|
||||||
|
Time of day changed.=
|
||||||
|
Invalid hour (must be between 0 and 23 inclusive).=
|
||||||
|
Invalid minute (must be between 0 and 59 inclusive).=
|
||||||
|
Show day count since world creation=
|
||||||
|
Current day is @1.=
|
||||||
|
[<delay_in_seconds> | -1] [reconnect] [<message>]=
|
||||||
|
Shutdown server (-1 cancels a delayed shutdown)=
|
||||||
|
Server shutting down (operator request).=
|
||||||
|
Ban the IP of a player or show the ban list=
|
||||||
|
The ban list is empty.=
|
||||||
|
Ban list: @1=
|
||||||
|
Player is not online.=
|
||||||
|
Failed to ban player.=
|
||||||
|
Banned @1.=
|
||||||
|
<name> | <IP_address>=
|
||||||
|
Remove IP ban belonging to a player/IP=
|
||||||
|
Failed to unban player/IP.=
|
||||||
|
Unbanned @1.=
|
||||||
|
<name> [<reason>]=
|
||||||
|
Kick a player=
|
||||||
|
Failed to kick player @1.=
|
||||||
|
Kicked @1.=
|
||||||
|
[full | quick]=
|
||||||
|
Clear all objects in world=
|
||||||
|
Invalid usage, see /help clearobjects.=
|
||||||
|
Clearing all objects. This may take a long time. You may experience a timeout. (by @1)=
|
||||||
|
Cleared all objects.=
|
||||||
|
<name> <message>=
|
||||||
|
Send a direct message to a player=
|
||||||
|
Invalid usage, see /help msg.=
|
||||||
|
The player @1 is not online.=
|
||||||
|
DM from @1: @2=
|
||||||
|
Message sent.=
|
||||||
|
Get the last login time of a player or yourself=
|
||||||
|
@1's last login time was @2.=
|
||||||
|
@1's last login time is unknown.=
|
||||||
|
Clear the inventory of yourself or another player=
|
||||||
|
You don't have permission to clear another player's inventory (missing privilege: @1).=
|
||||||
|
@1 cleared your inventory.=
|
||||||
|
Cleared @1's inventory.=
|
||||||
|
Player must be online to clear inventory!=
|
||||||
|
Players can't be killed, damage has been disabled.=
|
||||||
|
Player @1 is not online.=
|
||||||
|
You are already dead.=
|
||||||
|
@1 is already dead.=
|
||||||
|
@1 has been killed.=
|
||||||
|
Kill player or yourself=
|
||||||
|
Available commands: @1=
|
||||||
|
Use '/help <cmd>' to get more information, or '/help all' to list everything.=
|
||||||
|
Available commands:=
|
||||||
|
Command not available: @1=
|
||||||
|
[all | privs | <cmd>]=
|
||||||
|
Get help for commands or list privileges=
|
||||||
|
Available privileges:=
|
||||||
|
Command=
|
||||||
|
Parameters=
|
||||||
|
For more information, click on any entry in the list.=
|
||||||
|
Double-click to copy the entry to the chat history.=
|
||||||
|
Command: @1 @2=
|
||||||
|
Available commands: (see also: /help <cmd>)=
|
||||||
|
Close=
|
||||||
|
Privilege=
|
||||||
|
Description=
|
||||||
|
print [<filter>] | dump [<filter>] | save [<format> [<filter>]] | reset=
|
||||||
|
Handle the profiler and profiling data=
|
||||||
|
Statistics written to action log.=
|
||||||
|
Statistics were reset.=
|
||||||
|
Usage: @1=
|
||||||
|
Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).=
|
||||||
|
(no description)=
|
||||||
|
Can interact with things and modify the world=
|
||||||
|
Can speak in chat=
|
||||||
|
Can modify 'shout' and 'interact' privileges=
|
||||||
|
Can modify privileges=
|
||||||
|
Can teleport self=
|
||||||
|
Can teleport other players=
|
||||||
|
Can set the time of day using /time=
|
||||||
|
Can do server maintenance stuff=
|
||||||
|
Can bypass node protection in the world=
|
||||||
|
Can ban and unban players=
|
||||||
|
Can kick players=
|
||||||
|
Can use /give and /giveme=
|
||||||
|
Can use /setpassword and /clearpassword=
|
||||||
|
Can use fly mode=
|
||||||
|
Can use fast mode=
|
||||||
|
Can fly through solid nodes using noclip mode=
|
||||||
|
Can use the rollback functionality=
|
||||||
|
Allows enabling various debug options that may affect gameplay=
|
||||||
|
Unknown Item=
|
||||||
|
Air=
|
||||||
|
Ignore=
|
||||||
|
You can't place 'ignore' nodes!=
|
@ -14,14 +14,11 @@
|
|||||||
--You should have received a copy of the GNU Lesser General Public License along
|
--You should have received a copy of the GNU Lesser General Public License along
|
||||||
--with this program; if not, write to the Free Software Foundation, Inc.,
|
--with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
-- Global menu data
|
-- Global menu data
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
menudata = {}
|
menudata = {}
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
-- Local cached values
|
-- Local cached values
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
local min_supp_proto, max_supp_proto
|
local min_supp_proto, max_supp_proto
|
||||||
|
|
||||||
function common_update_cached_supp_proto()
|
function common_update_cached_supp_proto()
|
||||||
@ -29,14 +26,12 @@ function common_update_cached_supp_proto()
|
|||||||
max_supp_proto = core.get_max_supp_proto()
|
max_supp_proto = core.get_max_supp_proto()
|
||||||
end
|
end
|
||||||
common_update_cached_supp_proto()
|
common_update_cached_supp_proto()
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
-- Menu helper functions
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
-- Menu helper functions
|
||||||
|
|
||||||
local function render_client_count(n)
|
local function render_client_count(n)
|
||||||
if n > 99 then return '99+'
|
if n > 999 then return '99+'
|
||||||
elseif n >= 0 then return tostring(n)
|
elseif n >= 0 then return tostring(n)
|
||||||
else return '?' end
|
else return '?' end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -50,21 +45,7 @@ local function configure_selected_world_params(idx)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
function render_serverlist_row(spec)
|
||||||
function image_column(tooltip, flagname)
|
|
||||||
return "image,tooltip=" .. core.formspec_escape(tooltip) .. "," ..
|
|
||||||
"0=" .. core.formspec_escape(defaulttexturedir .. "blank.png") .. "," ..
|
|
||||||
"1=" .. core.formspec_escape(defaulttexturedir ..
|
|
||||||
(flagname and "server_flags_" .. flagname .. ".png" or "blank.png")) .. "," ..
|
|
||||||
"2=" .. core.formspec_escape(defaulttexturedir .. "server_ping_4.png") .. "," ..
|
|
||||||
"3=" .. core.formspec_escape(defaulttexturedir .. "server_ping_3.png") .. "," ..
|
|
||||||
"4=" .. core.formspec_escape(defaulttexturedir .. "server_ping_2.png") .. "," ..
|
|
||||||
"5=" .. core.formspec_escape(defaulttexturedir .. "server_ping_1.png")
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function render_serverlist_row(spec, is_favorite)
|
|
||||||
local text = ""
|
local text = ""
|
||||||
if spec.name then
|
if spec.name then
|
||||||
text = text .. core.formspec_escape(spec.name:trim())
|
text = text .. core.formspec_escape(spec.name:trim())
|
||||||
@ -75,31 +56,29 @@ function render_serverlist_row(spec, is_favorite)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local grey_out = not is_server_protocol_compat(spec.proto_min, spec.proto_max)
|
local grey_out = not spec.is_compatible
|
||||||
|
|
||||||
local details
|
local details = {}
|
||||||
if is_favorite then
|
|
||||||
details = "1,"
|
|
||||||
else
|
|
||||||
details = "0,"
|
|
||||||
end
|
|
||||||
|
|
||||||
if spec.ping then
|
if spec.lag or spec.ping then
|
||||||
local ping = spec.ping * 1000
|
local lag = (spec.lag or 0) * 1000 + (spec.ping or 0) * 250
|
||||||
if ping <= 50 then
|
if lag <= 125 then
|
||||||
details = details .. "2,"
|
table.insert(details, "1")
|
||||||
elseif ping <= 100 then
|
elseif lag <= 175 then
|
||||||
details = details .. "3,"
|
table.insert(details, "2")
|
||||||
elseif ping <= 250 then
|
elseif lag <= 250 then
|
||||||
details = details .. "4,"
|
table.insert(details, "3")
|
||||||
else
|
else
|
||||||
details = details .. "5,"
|
table.insert(details, "4")
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
details = details .. "0,"
|
table.insert(details, "0")
|
||||||
end
|
end
|
||||||
|
|
||||||
if spec.clients and spec.clients_max then
|
table.insert(details, ",")
|
||||||
|
|
||||||
|
local color = (grey_out and "#aaaaaa") or ((spec.is_favorite and "#ddddaa") or "#ffffff")
|
||||||
|
if spec.clients and (spec.clients_max or 0) > 0 then
|
||||||
local clients_percent = 100 * spec.clients / spec.clients_max
|
local clients_percent = 100 * spec.clients / spec.clients_max
|
||||||
|
|
||||||
-- Choose a color depending on how many clients are connected
|
-- Choose a color depending on how many clients are connected
|
||||||
@ -110,38 +89,35 @@ function render_serverlist_row(spec, is_favorite)
|
|||||||
elseif clients_percent <= 60 then clients_color = '#a1e587' -- 0-60%: green
|
elseif clients_percent <= 60 then clients_color = '#a1e587' -- 0-60%: green
|
||||||
elseif clients_percent <= 90 then clients_color = '#ffdc97' -- 60-90%: yellow
|
elseif clients_percent <= 90 then clients_color = '#ffdc97' -- 60-90%: yellow
|
||||||
elseif clients_percent == 100 then clients_color = '#dd5b5b' -- full server: red (darker)
|
elseif clients_percent == 100 then clients_color = '#dd5b5b' -- full server: red (darker)
|
||||||
else clients_color = '#ffba97' -- 90-100%: orange
|
else clients_color = '#ffba97' -- 90-100%: orange
|
||||||
end
|
end
|
||||||
|
|
||||||
details = details .. clients_color .. ',' ..
|
table.insert(details, clients_color)
|
||||||
render_client_count(spec.clients) .. ',/,' ..
|
table.insert(details, render_client_count(spec.clients) .. " / " ..
|
||||||
render_client_count(spec.clients_max) .. ','
|
render_client_count(spec.clients_max))
|
||||||
|
|
||||||
elseif grey_out then
|
|
||||||
details = details .. '#aaaaaa,?,/,?,'
|
|
||||||
else
|
else
|
||||||
details = details .. ',?,/,?,'
|
table.insert(details, color)
|
||||||
|
table.insert(details, "?")
|
||||||
end
|
end
|
||||||
|
|
||||||
if spec.creative then
|
if spec.creative then
|
||||||
details = details .. "1,"
|
table.insert(details, "1") -- creative icon
|
||||||
else
|
else
|
||||||
details = details .. "0,"
|
table.insert(details, "0")
|
||||||
end
|
|
||||||
|
|
||||||
if spec.damage then
|
|
||||||
details = details .. "1,"
|
|
||||||
else
|
|
||||||
details = details .. "0,"
|
|
||||||
end
|
end
|
||||||
|
|
||||||
if spec.pvp then
|
if spec.pvp then
|
||||||
details = details .. "1,"
|
table.insert(details, "2") -- pvp icon
|
||||||
|
elseif spec.damage then
|
||||||
|
table.insert(details, "1") -- heart icon
|
||||||
else
|
else
|
||||||
details = details .. "0,"
|
table.insert(details, "0")
|
||||||
end
|
end
|
||||||
|
|
||||||
return details .. (grey_out and '#aaaaaa,' or ',') .. text
|
table.insert(details, color)
|
||||||
|
table.insert(details, text)
|
||||||
|
|
||||||
|
return table.concat(details, ",")
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
@ -150,14 +126,13 @@ os.tempfolder = function()
|
|||||||
return temp .. DIR_DELIM .. "MT_" .. math.random(0, 10000)
|
return temp .. DIR_DELIM .. "MT_" .. math.random(0, 10000)
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
os.tmpname = function()
|
os.tmpname = function()
|
||||||
local path = os.tempfolder()
|
local path = os.tempfolder()
|
||||||
io.open(path, "w"):close()
|
io.open(path, "w"):close()
|
||||||
return path
|
return path
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
|
|
||||||
function menu_render_worldlist()
|
function menu_render_worldlist()
|
||||||
local retval = ""
|
local retval = ""
|
||||||
local current_worldlist = menudata.worldlist:get_list()
|
local current_worldlist = menudata.worldlist:get_list()
|
||||||
@ -171,7 +146,6 @@ function menu_render_worldlist()
|
|||||||
return retval
|
return retval
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function menu_handle_key_up_down(fields, textlist, settingname)
|
function menu_handle_key_up_down(fields, textlist, settingname)
|
||||||
local oldidx, newidx = core.get_textlist_index(textlist), 1
|
local oldidx, newidx = core.get_textlist_index(textlist), 1
|
||||||
if fields.key_up or fields.key_down then
|
if fields.key_up or fields.key_down then
|
||||||
@ -188,7 +162,6 @@ function menu_handle_key_up_down(fields, textlist, settingname)
|
|||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function text2textlist(xpos, ypos, width, height, tl_name, textlen, text, transparency)
|
function text2textlist(xpos, ypos, width, height, tl_name, textlen, text, transparency)
|
||||||
local textlines = core.wrap_text(text, textlen, true)
|
local textlines = core.wrap_text(text, textlen, true)
|
||||||
local retval = "textlist[" .. xpos .. "," .. ypos .. ";" .. width ..
|
local retval = "textlist[" .. xpos .. "," .. ypos .. ";" .. width ..
|
||||||
@ -206,7 +179,6 @@ function text2textlist(xpos, ypos, width, height, tl_name, textlen, text, transp
|
|||||||
return retval
|
return retval
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function is_server_protocol_compat(server_proto_min, server_proto_max)
|
function is_server_protocol_compat(server_proto_min, server_proto_max)
|
||||||
if (not server_proto_min) or (not server_proto_max) then
|
if (not server_proto_min) or (not server_proto_max) then
|
||||||
-- There is no info. Assume the best and act as if we would be compatible.
|
-- There is no info. Assume the best and act as if we would be compatible.
|
||||||
@ -214,7 +186,7 @@ function is_server_protocol_compat(server_proto_min, server_proto_max)
|
|||||||
end
|
end
|
||||||
return min_supp_proto <= server_proto_max and max_supp_proto >= server_proto_min
|
return min_supp_proto <= server_proto_max and max_supp_proto >= server_proto_min
|
||||||
end
|
end
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function is_server_protocol_compat_or_error(server_proto_min, server_proto_max)
|
function is_server_protocol_compat_or_error(server_proto_min, server_proto_max)
|
||||||
if not is_server_protocol_compat(server_proto_min, server_proto_max) then
|
if not is_server_protocol_compat(server_proto_min, server_proto_max) then
|
||||||
local server_prot_ver_info, client_prot_ver_info
|
local server_prot_ver_info, client_prot_ver_info
|
||||||
@ -242,7 +214,7 @@ function is_server_protocol_compat_or_error(server_proto_min, server_proto_max)
|
|||||||
|
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
function menu_worldmt(selected, setting, value)
|
function menu_worldmt(selected, setting, value)
|
||||||
local world = menudata.worldlist:get_list()[selected]
|
local world = menudata.worldlist:get_list()[selected]
|
||||||
if world then
|
if world then
|
||||||
|
@ -74,7 +74,7 @@ local function get_formspec(data)
|
|||||||
"label[1.75,0;" .. data.worldspec.name .. "]"
|
"label[1.75,0;" .. data.worldspec.name .. "]"
|
||||||
|
|
||||||
if mod.is_modpack or mod.type == "game" then
|
if mod.is_modpack or mod.type == "game" then
|
||||||
local info = minetest.formspec_escape(
|
local info = core.formspec_escape(
|
||||||
core.get_content_info(mod.path).description)
|
core.get_content_info(mod.path).description)
|
||||||
if info == "" then
|
if info == "" then
|
||||||
if mod.is_modpack then
|
if mod.is_modpack then
|
||||||
|
@ -15,7 +15,7 @@
|
|||||||
--with this program; if not, write to the Free Software Foundation, Inc.,
|
--with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
if not minetest.get_http_api then
|
if not core.get_http_api then
|
||||||
function create_store_dlg()
|
function create_store_dlg()
|
||||||
return messagebox("store",
|
return messagebox("store",
|
||||||
fgettext("ContentDB is not available when Minetest was compiled without cURL"))
|
fgettext("ContentDB is not available when Minetest was compiled without cURL"))
|
||||||
@ -27,7 +27,7 @@ end
|
|||||||
-- before the package list is ordered based on installed state.
|
-- before the package list is ordered based on installed state.
|
||||||
local store = { packages = {}, packages_full = {}, packages_full_unordered = {} }
|
local store = { packages = {}, packages_full = {}, packages_full_unordered = {} }
|
||||||
|
|
||||||
local http = minetest.get_http_api()
|
local http = core.get_http_api()
|
||||||
|
|
||||||
-- Screenshot
|
-- Screenshot
|
||||||
local screenshot_dir = core.get_cache_path() .. DIR_DELIM .. "cdb"
|
local screenshot_dir = core.get_cache_path() .. DIR_DELIM .. "cdb"
|
||||||
@ -152,7 +152,7 @@ local function start_install(package)
|
|||||||
end
|
end
|
||||||
|
|
||||||
local function queue_download(package)
|
local function queue_download(package)
|
||||||
local max_concurrent_downloads = tonumber(minetest.settings:get("contentdb_max_concurrent_downloads"))
|
local max_concurrent_downloads = tonumber(core.settings:get("contentdb_max_concurrent_downloads"))
|
||||||
if number_downloading < max_concurrent_downloads then
|
if number_downloading < max_concurrent_downloads then
|
||||||
start_install(package)
|
start_install(package)
|
||||||
else
|
else
|
||||||
@ -320,7 +320,7 @@ function install_dialog.get_formspec()
|
|||||||
selected_game_idx = i
|
selected_game_idx = i
|
||||||
end
|
end
|
||||||
|
|
||||||
games[i] = minetest.formspec_escape(games[i].name)
|
games[i] = core.formspec_escape(games[i].name)
|
||||||
end
|
end
|
||||||
|
|
||||||
local selected_game = pkgmgr.games[selected_game_idx]
|
local selected_game = pkgmgr.games[selected_game_idx]
|
||||||
@ -331,7 +331,7 @@ function install_dialog.get_formspec()
|
|||||||
local formatted_deps = {}
|
local formatted_deps = {}
|
||||||
for _, dep in pairs(install_dialog.dependencies) do
|
for _, dep in pairs(install_dialog.dependencies) do
|
||||||
formatted_deps[#formatted_deps + 1] = "#fff"
|
formatted_deps[#formatted_deps + 1] = "#fff"
|
||||||
formatted_deps[#formatted_deps + 1] = minetest.formspec_escape(dep.name)
|
formatted_deps[#formatted_deps + 1] = core.formspec_escape(dep.name)
|
||||||
if dep.installed then
|
if dep.installed then
|
||||||
formatted_deps[#formatted_deps + 1] = "#ccf"
|
formatted_deps[#formatted_deps + 1] = "#ccf"
|
||||||
formatted_deps[#formatted_deps + 1] = fgettext("Already installed")
|
formatted_deps[#formatted_deps + 1] = fgettext("Already installed")
|
||||||
@ -402,7 +402,7 @@ function install_dialog.handle_submit(this, fields)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if fields.will_install_deps ~= nil then
|
if fields.will_install_deps ~= nil then
|
||||||
install_dialog.will_install_deps = minetest.is_yes(fields.will_install_deps)
|
install_dialog.will_install_deps = core.is_yes(fields.will_install_deps)
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -553,7 +553,7 @@ function store.load()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
local timeout = tonumber(minetest.settings:get("curl_file_download_timeout"))
|
local timeout = tonumber(core.settings:get("curl_file_download_timeout"))
|
||||||
local response = http.fetch_sync({ url = url, timeout = timeout })
|
local response = http.fetch_sync({ url = url, timeout = timeout })
|
||||||
if not response.succeeded then
|
if not response.succeeded then
|
||||||
return
|
return
|
||||||
@ -793,8 +793,8 @@ function store.get_formspec(dlgdata)
|
|||||||
-- title
|
-- title
|
||||||
formspec[#formspec + 1] = "label[1.875,0.1;"
|
formspec[#formspec + 1] = "label[1.875,0.1;"
|
||||||
formspec[#formspec + 1] = core.formspec_escape(
|
formspec[#formspec + 1] = core.formspec_escape(
|
||||||
minetest.colorize(mt_color_green, package.title) ..
|
core.colorize(mt_color_green, package.title) ..
|
||||||
minetest.colorize("#BFBFBF", " by " .. package.author))
|
core.colorize("#BFBFBF", " by " .. package.author))
|
||||||
formspec[#formspec + 1] = "]"
|
formspec[#formspec + 1] = "]"
|
||||||
|
|
||||||
-- buttons
|
-- buttons
|
||||||
|
@ -443,7 +443,7 @@ local function create_world_buttonhandler(this, fields)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if fields["mgv6_biomes"] then
|
if fields["mgv6_biomes"] then
|
||||||
local entry = minetest.formspec_escape(fields["mgv6_biomes"])
|
local entry = core.formspec_escape(fields["mgv6_biomes"])
|
||||||
for b=1, #mgv6_biomes do
|
for b=1, #mgv6_biomes do
|
||||||
if entry == mgv6_biomes[b][1] then
|
if entry == mgv6_biomes[b][1] then
|
||||||
local ftable = core.settings:get_flags("mgv6_spflags")
|
local ftable = core.settings:get_flags("mgv6_spflags")
|
||||||
|
@ -90,7 +90,7 @@ local function load_texture_packs(txtpath, retval)
|
|||||||
retval[#retval + 1] = {
|
retval[#retval + 1] = {
|
||||||
name = item,
|
name = item,
|
||||||
author = conf:get("author"),
|
author = conf:get("author"),
|
||||||
release = tonumber(conf:get("release") or "0"),
|
release = tonumber(conf:get("release")) or 0,
|
||||||
list_name = name,
|
list_name = name,
|
||||||
type = "txp",
|
type = "txp",
|
||||||
path = path,
|
path = path,
|
||||||
@ -135,7 +135,7 @@ function get_mods(path,retval,modpack)
|
|||||||
-- Read from config
|
-- Read from config
|
||||||
toadd.name = name
|
toadd.name = name
|
||||||
toadd.author = mod_conf.author
|
toadd.author = mod_conf.author
|
||||||
toadd.release = tonumber(mod_conf.release or "0")
|
toadd.release = tonumber(mod_conf.release) or 0
|
||||||
toadd.path = prefix
|
toadd.path = prefix
|
||||||
toadd.type = "mod"
|
toadd.type = "mod"
|
||||||
|
|
||||||
@ -413,18 +413,7 @@ function pkgmgr.is_modpack_entirely_enabled(data, name)
|
|||||||
end
|
end
|
||||||
|
|
||||||
---------- toggles or en/disables a mod or modpack and its dependencies --------
|
---------- toggles or en/disables a mod or modpack and its dependencies --------
|
||||||
function pkgmgr.enable_mod(this, toset)
|
local function toggle_mod_or_modpack(list, toggled_mods, enabled_mods, toset, mod)
|
||||||
local list = this.data.list:get_list()
|
|
||||||
local mod = list[this.data.selected_mod]
|
|
||||||
|
|
||||||
-- Game mods can't be enabled or disabled
|
|
||||||
if mod.is_game_content then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local toggled_mods = {}
|
|
||||||
|
|
||||||
local enabled_mods = {}
|
|
||||||
if not mod.is_modpack then
|
if not mod.is_modpack then
|
||||||
-- Toggle or en/disable the mod
|
-- Toggle or en/disable the mod
|
||||||
if toset == nil then
|
if toset == nil then
|
||||||
@ -443,23 +432,29 @@ function pkgmgr.enable_mod(this, toset)
|
|||||||
-- interleaved unsupported
|
-- interleaved unsupported
|
||||||
for i = 1, #list do
|
for i = 1, #list do
|
||||||
if list[i].modpack == mod.name then
|
if list[i].modpack == mod.name then
|
||||||
if toset == nil then
|
toggle_mod_or_modpack(list, toggled_mods, enabled_mods, toset, list[i])
|
||||||
toset = not list[i].enabled
|
|
||||||
end
|
|
||||||
if list[i].enabled ~= toset then
|
|
||||||
list[i].enabled = toset
|
|
||||||
toggled_mods[#toggled_mods+1] = list[i].name
|
|
||||||
end
|
|
||||||
if toset then
|
|
||||||
enabled_mods[list[i].name] = true
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function pkgmgr.enable_mod(this, toset)
|
||||||
|
local list = this.data.list:get_list()
|
||||||
|
local mod = list[this.data.selected_mod]
|
||||||
|
|
||||||
|
-- Game mods can't be enabled or disabled
|
||||||
|
if mod.is_game_content then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local toggled_mods = {}
|
||||||
|
local enabled_mods = {}
|
||||||
|
toggle_mod_or_modpack(list, toggled_mods, enabled_mods, toset, mod)
|
||||||
|
|
||||||
if not toset then
|
if not toset then
|
||||||
-- Mod(s) were disabled, so no dependencies need to be enabled
|
-- Mod(s) were disabled, so no dependencies need to be enabled
|
||||||
table.sort(toggled_mods)
|
table.sort(toggled_mods)
|
||||||
minetest.log("info", "Following mods were disabled: " ..
|
core.log("info", "Following mods were disabled: " ..
|
||||||
table.concat(toggled_mods, ", "))
|
table.concat(toggled_mods, ", "))
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
@ -496,7 +491,7 @@ function pkgmgr.enable_mod(this, toset)
|
|||||||
enabled_mods[name] = true
|
enabled_mods[name] = true
|
||||||
local mod_to_enable = list[mod_ids[name]]
|
local mod_to_enable = list[mod_ids[name]]
|
||||||
if not mod_to_enable then
|
if not mod_to_enable then
|
||||||
minetest.log("warning", "Mod dependency \"" .. name ..
|
core.log("warning", "Mod dependency \"" .. name ..
|
||||||
"\" not found!")
|
"\" not found!")
|
||||||
else
|
else
|
||||||
if mod_to_enable.enabled == false then
|
if mod_to_enable.enabled == false then
|
||||||
@ -517,7 +512,7 @@ function pkgmgr.enable_mod(this, toset)
|
|||||||
|
|
||||||
-- Log the list of enabled mods
|
-- Log the list of enabled mods
|
||||||
table.sort(toggled_mods)
|
table.sort(toggled_mods)
|
||||||
minetest.log("info", "Following mods were enabled: " ..
|
core.log("info", "Following mods were enabled: " ..
|
||||||
table.concat(toggled_mods, ", "))
|
table.concat(toggled_mods, ", "))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -205,16 +205,28 @@ local function get_formspec(tabview, name, tabdata)
|
|||||||
return retval
|
return retval
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
local function handle_doubleclick(pkg, pkg_name)
|
||||||
|
if pkg.type == "txp" then
|
||||||
|
if core.settings:get("texture_path") == pkg.path then
|
||||||
|
core.settings:set("texture_path", "")
|
||||||
|
else
|
||||||
|
core.settings:set("texture_path", pkg.path)
|
||||||
|
end
|
||||||
|
packages = nil
|
||||||
|
elseif pkg.is_clientside then
|
||||||
|
pkgmgr.enable_mod({data = {list = packages, selected_mod = pkg_name}})
|
||||||
|
packages = nil
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
local function handle_buttons(tabview, fields, tabname, tabdata)
|
local function handle_buttons(tabview, fields, tabname, tabdata)
|
||||||
if fields["pkglist"] ~= nil then
|
if fields["pkglist"] ~= nil then
|
||||||
local event = core.explode_table_event(fields["pkglist"])
|
local event = core.explode_table_event(fields["pkglist"])
|
||||||
tabdata.selected_pkg = event.row
|
tabdata.selected_pkg = event.row
|
||||||
local mod = packages:get_list()[tabdata.selected_pkg]
|
if event.type == "DCL" then
|
||||||
|
handle_doubleclick(packages:get_list()[tabdata.selected_pkg], tabdata.selected_pkg)
|
||||||
if event.type == "DCL" and mod.is_clientside then
|
|
||||||
pkgmgr.enable_mod({data = {list = packages, selected_mod = tabdata.selected_pkg}})
|
|
||||||
packages = nil
|
|
||||||
end
|
end
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
@ -33,28 +33,37 @@ local core_developers = {
|
|||||||
"Nathanaël Courant (Nore/Ekdohibs) <nore@mesecons.net>",
|
"Nathanaël Courant (Nore/Ekdohibs) <nore@mesecons.net>",
|
||||||
"Loic Blot (nerzhul/nrz) <loic.blot@unix-experience.fr>",
|
"Loic Blot (nerzhul/nrz) <loic.blot@unix-experience.fr>",
|
||||||
"paramat",
|
"paramat",
|
||||||
"Auke Kok (sofar) <sofar@foo-projects.org>",
|
|
||||||
"Andrew Ward (rubenwardy) <rw@rubenwardy.com>",
|
"Andrew Ward (rubenwardy) <rw@rubenwardy.com>",
|
||||||
"Krock/SmallJoker <mk939@ymail.com>",
|
"Krock/SmallJoker <mk939@ymail.com>",
|
||||||
"Lars Hofhansl <larsh@apache.org>",
|
"Lars Hofhansl <larsh@apache.org>",
|
||||||
|
"Pierre-Yves Rollo <dev@pyrollo.com>",
|
||||||
|
"v-rob <robinsonvincent89@gmail.com>",
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-- For updating active/previous contributors, see the script in ./util/gather_git_credits.py
|
||||||
|
|
||||||
local active_contributors = {
|
local active_contributors = {
|
||||||
"Hugues Ross [Formspecs]",
|
"Wuzzy [devtest game, visual corrections]",
|
||||||
|
"Zughy [Visual improvements, various fixes]",
|
||||||
"Maksim (MoNTE48) [Android]",
|
"Maksim (MoNTE48) [Android]",
|
||||||
"DS [Formspecs]",
|
"numzero [Graphics and rendering]",
|
||||||
"pyrollo [Formspecs: Hypertext]",
|
"appgurueu [Various internal fixes]",
|
||||||
"v-rob [Formspecs]",
|
"Desour [Formspec and vector API changes]",
|
||||||
"Jordach [set_sky]",
|
"HybridDog [Rendering fixes and documentation]",
|
||||||
"random-geek [Formspecs]",
|
"Hugues Ross [Graphics-related improvements]",
|
||||||
"Wuzzy [Pathfinder, builtin, translations]",
|
"ANAND (ClobberXD) [Mouse buttons rebinding]",
|
||||||
"ANAND (ClobberXD) [Fixes, per-player FOV]",
|
"luk3yx [Fixes]",
|
||||||
"Warr1024 [Fixes]",
|
"hecks [Audiovisuals, Lua API]",
|
||||||
"Paul Ouellette (pauloue) [Fixes, Script API]",
|
"LoneWolfHT [Object crosshair, documentation fixes]",
|
||||||
"Jean-Patrick G (kilbith) <jeanpatrick.guerrero@gmail.com> [Audiovisuals]",
|
"Lejo [Server-related improvements]",
|
||||||
"HybridDog [Script API]",
|
"EvidenceB [Compass HUD element]",
|
||||||
|
"Paul Ouellette (pauloue) [Lua API, documentation]",
|
||||||
|
"TheTermos [Collision detection, physics]",
|
||||||
|
"David CARLIER [Unix & Haiku build fixes]",
|
||||||
"dcbrwn [Object shading]",
|
"dcbrwn [Object shading]",
|
||||||
"srifqi [Fixes]",
|
"Elias Fleckenstein [API features/fixes]",
|
||||||
|
"Jean-Patrick Guerrero (kilbith) [model element, visual fixes]",
|
||||||
|
"k.h.lai [Memory leak fixes, documentation]",
|
||||||
}
|
}
|
||||||
|
|
||||||
local previous_core_developers = {
|
local previous_core_developers = {
|
||||||
@ -70,30 +79,23 @@ local previous_core_developers = {
|
|||||||
"sapier",
|
"sapier",
|
||||||
"Zeno",
|
"Zeno",
|
||||||
"ShadowNinja <shadowninja@minetest.net>",
|
"ShadowNinja <shadowninja@minetest.net>",
|
||||||
|
"Auke Kok (sofar) <sofar@foo-projects.org>",
|
||||||
}
|
}
|
||||||
|
|
||||||
local previous_contributors = {
|
local previous_contributors = {
|
||||||
"Nils Dagsson Moskopp (erlehmann) <nils@dieweltistgarnichtso.net> [Minetest Logo]",
|
"Nils Dagsson Moskopp (erlehmann) <nils@dieweltistgarnichtso.net> [Minetest Logo]",
|
||||||
"Dániel Juhász (juhdanad) <juhdanad@gmail.com>",
|
|
||||||
"red-001 <red-001@outlook.ie>",
|
"red-001 <red-001@outlook.ie>",
|
||||||
"numberZero [Audiovisuals: meshgen]",
|
|
||||||
"Giuseppe Bilotta",
|
"Giuseppe Bilotta",
|
||||||
|
"Dániel Juhász (juhdanad) <juhdanad@gmail.com>",
|
||||||
"MirceaKitsune <mirceakitsune@gmail.com>",
|
"MirceaKitsune <mirceakitsune@gmail.com>",
|
||||||
"Constantin Wenger (SpeedProg)",
|
"Constantin Wenger (SpeedProg)",
|
||||||
"Ciaran Gultnieks (CiaranG)",
|
"Ciaran Gultnieks (CiaranG)",
|
||||||
"stujones11 [Android UX improvements]",
|
"stujones11 [Android UX improvements]",
|
||||||
"Jeija <jeija@mesecons.net> [HTTP, particles]",
|
|
||||||
"Vincent Glize (Dumbeldor) [Cleanups, CSM APIs]",
|
|
||||||
"Ben Deutsch [Rendering, Fixes, SQLite auth]",
|
|
||||||
"TeTpaAka [Hand overriding, nametag colors]",
|
|
||||||
"Rui [Sound Pitch]",
|
|
||||||
"Duane Robertson <duane@duanerobertson.com> [MGValleys]",
|
|
||||||
"Raymoo [Tool Capabilities]",
|
|
||||||
"Rogier <rogier777@gmail.com> [Fixes]",
|
"Rogier <rogier777@gmail.com> [Fixes]",
|
||||||
"Gregory Currie (gregorycu) [optimisation]",
|
"Gregory Currie (gregorycu) [optimisation]",
|
||||||
"TriBlade9 <triblade9@mail.com> [Audiovisuals]",
|
"srifqi [Fixes]",
|
||||||
"T4im [Profiler]",
|
"JacobF",
|
||||||
"Jurgen Doser (doserj) <jurgen.doser@gmail.com>",
|
"Jeija <jeija@mesecons.net> [HTTP, particles]",
|
||||||
}
|
}
|
||||||
|
|
||||||
local function buildCreditList(source)
|
local function buildCreditList(source)
|
||||||
|
@ -15,17 +15,50 @@
|
|||||||
--with this program; if not, write to the Free Software Foundation, Inc.,
|
--with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
local function get_sorted_servers()
|
||||||
|
local servers = {
|
||||||
|
fav = {},
|
||||||
|
public = {},
|
||||||
|
incompatible = {}
|
||||||
|
}
|
||||||
|
|
||||||
|
local favs = serverlistmgr.get_favorites()
|
||||||
|
local taken_favs = {}
|
||||||
|
local result = menudata.search_result or serverlistmgr.servers
|
||||||
|
for _, server in ipairs(result) do
|
||||||
|
server.is_favorite = false
|
||||||
|
for index, fav in ipairs(favs) do
|
||||||
|
if server.address == fav.address and server.port == fav.port then
|
||||||
|
taken_favs[index] = true
|
||||||
|
server.is_favorite = true
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
server.is_compatible = is_server_protocol_compat(server.proto_min, server.proto_max)
|
||||||
|
if server.is_favorite then
|
||||||
|
table.insert(servers.fav, server)
|
||||||
|
elseif server.is_compatible then
|
||||||
|
table.insert(servers.public, server)
|
||||||
|
else
|
||||||
|
table.insert(servers.incompatible, server)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if not menudata.search_result then
|
||||||
|
for index, fav in ipairs(favs) do
|
||||||
|
if not taken_favs[index] then
|
||||||
|
table.insert(servers.fav, fav)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return servers
|
||||||
|
end
|
||||||
|
|
||||||
local function get_formspec(tabview, name, tabdata)
|
local function get_formspec(tabview, name, tabdata)
|
||||||
-- Update the cached supported proto info,
|
-- Update the cached supported proto info,
|
||||||
-- it may have changed after a change by the settings menu.
|
-- it may have changed after a change by the settings menu.
|
||||||
common_update_cached_supp_proto()
|
common_update_cached_supp_proto()
|
||||||
local selected
|
|
||||||
if menudata.search_result then
|
|
||||||
selected = menudata.search_result[tabdata.selected]
|
|
||||||
else
|
|
||||||
selected = serverlistmgr.servers[tabdata.selected]
|
|
||||||
end
|
|
||||||
|
|
||||||
if not tabdata.search_for then
|
if not tabdata.search_for then
|
||||||
tabdata.search_for = ""
|
tabdata.search_for = ""
|
||||||
@ -33,128 +66,221 @@ local function get_formspec(tabview, name, tabdata)
|
|||||||
|
|
||||||
local retval =
|
local retval =
|
||||||
-- Search
|
-- Search
|
||||||
"field[0.15,0.075;5.91,1;te_search;;" .. core.formspec_escape(tabdata.search_for) .. "]" ..
|
"field[0.25,0.25;7,0.75;te_search;;" .. core.formspec_escape(tabdata.search_for) .. "]" ..
|
||||||
"image_button[5.63,-.165;.83,.83;" .. core.formspec_escape(defaulttexturedir .. "search.png") .. ";btn_mp_search;]" ..
|
"container[7.25,0.25]" ..
|
||||||
"image_button[6.3,-.165;.83,.83;" .. core.formspec_escape(defaulttexturedir .. "clear.png") .. ";btn_mp_clear;]" ..
|
"image_button[0,0;0.75,0.75;" .. core.formspec_escape(defaulttexturedir .. "search.png") .. ";btn_mp_search;]" ..
|
||||||
"image_button[6.97,-.165;.83,.83;" .. core.formspec_escape(defaulttexturedir .. "refresh.png")
|
"image_button[0.75,0;0.75,0.75;" .. core.formspec_escape(defaulttexturedir .. "clear.png") .. ";btn_mp_clear;]" ..
|
||||||
.. ";btn_mp_refresh;]" ..
|
"image_button[1.5,0;0.75,0.75;" .. core.formspec_escape(defaulttexturedir .. "refresh.png") .. ";btn_mp_refresh;]" ..
|
||||||
|
"tooltip[btn_mp_clear;" .. fgettext("Clear") .. "]" ..
|
||||||
|
"tooltip[btn_mp_search;" .. fgettext("Search") .. "]" ..
|
||||||
|
"tooltip[btn_mp_refresh;" .. fgettext("Refresh") .. "]" ..
|
||||||
|
"container_end[]" ..
|
||||||
|
|
||||||
|
"container[9.75,0]" ..
|
||||||
|
"box[0,0;5.75,7;#666666]" ..
|
||||||
|
|
||||||
-- Address / Port
|
-- Address / Port
|
||||||
"label[7.75,-0.25;" .. fgettext("Address / Port") .. "]" ..
|
"label[0.25,0.35;" .. fgettext("Address") .. "]" ..
|
||||||
"field[8,0.65;3.25,0.5;te_address;;" ..
|
"label[4.25,0.35;" .. fgettext("Port") .. "]" ..
|
||||||
|
"field[0.25,0.5;4,0.75;te_address;;" ..
|
||||||
core.formspec_escape(core.settings:get("address")) .. "]" ..
|
core.formspec_escape(core.settings:get("address")) .. "]" ..
|
||||||
"field[11.1,0.65;1.4,0.5;te_port;;" ..
|
"field[4.25,0.5;1.25,0.75;te_port;;" ..
|
||||||
core.formspec_escape(core.settings:get("remote_port")) .. "]" ..
|
core.formspec_escape(core.settings:get("remote_port")) .. "]" ..
|
||||||
|
|
||||||
-- Name / Password
|
-- Name / Password
|
||||||
"label[7.75,0.95;" .. fgettext("Name / Password") .. "]" ..
|
"label[0.25,1.55;" .. fgettext("Name") .. "]" ..
|
||||||
"field[8,1.85;2.9,0.5;te_name;;" ..
|
"label[3,1.55;" .. fgettext("Password") .. "]" ..
|
||||||
|
"field[0.25,1.75;2.75,0.75;te_name;;" ..
|
||||||
core.formspec_escape(core.settings:get("name")) .. "]" ..
|
core.formspec_escape(core.settings:get("name")) .. "]" ..
|
||||||
"pwdfield[10.73,1.85;1.77,0.5;te_pwd;]" ..
|
"pwdfield[3,1.75;2.5,0.75;te_pwd;]" ..
|
||||||
|
|
||||||
-- Description Background
|
-- Description Background
|
||||||
"box[7.73,2.25;4.25,2.6;#999999]"..
|
"label[0.25,2.75;" .. fgettext("Server Description") .. "]" ..
|
||||||
|
"box[0.25,3;5.25,2.75;#999999]"..
|
||||||
|
|
||||||
-- Connect
|
-- Connect
|
||||||
"button[9.88,4.9;2.3,1;btn_mp_connect;" .. fgettext("Connect") .. "]"
|
"button[3,6;2.5,0.75;btn_mp_connect;" .. fgettext("Connect") .. "]"
|
||||||
|
|
||||||
if tabdata.selected and selected then
|
if tabdata.selected then
|
||||||
if gamedata.fav then
|
if gamedata.fav then
|
||||||
retval = retval .. "button[7.73,4.9;2.3,1;btn_delete_favorite;" ..
|
retval = retval .. "button[0.25,6;2.5,0.75;btn_delete_favorite;" ..
|
||||||
fgettext("Del. Favorite") .. "]"
|
fgettext("Del. Favorite") .. "]"
|
||||||
end
|
end
|
||||||
if selected.description then
|
if gamedata.serverdescription then
|
||||||
retval = retval .. "textarea[8.1,2.3;4.23,2.9;;;" ..
|
retval = retval .. "textarea[0.25,3;5.25,2.75;;;" ..
|
||||||
core.formspec_escape((gamedata.serverdescription or ""), true) .. "]"
|
core.formspec_escape(gamedata.serverdescription) .. "]"
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
--favorites
|
retval = retval .. "container_end[]"
|
||||||
|
|
||||||
|
-- Table
|
||||||
retval = retval .. "tablecolumns[" ..
|
retval = retval .. "tablecolumns[" ..
|
||||||
image_column(fgettext("Favorite"), "favorite") .. ";" ..
|
"image,tooltip=" .. fgettext("Ping") .. "," ..
|
||||||
image_column(fgettext("Ping")) .. ",padding=0.25;" ..
|
"0=" .. core.formspec_escape(defaulttexturedir .. "blank.png") .. "," ..
|
||||||
"color,span=3;" ..
|
"1=" .. core.formspec_escape(defaulttexturedir .. "server_ping_4.png") .. "," ..
|
||||||
"text,align=right;" .. -- clients
|
"2=" .. core.formspec_escape(defaulttexturedir .. "server_ping_3.png") .. "," ..
|
||||||
"text,align=center,padding=0.25;" .. -- "/"
|
"3=" .. core.formspec_escape(defaulttexturedir .. "server_ping_2.png") .. "," ..
|
||||||
"text,align=right,padding=0.25;" .. -- clients_max
|
"4=" .. core.formspec_escape(defaulttexturedir .. "server_ping_1.png") .. "," ..
|
||||||
image_column(fgettext("Creative mode"), "creative") .. ",padding=1;" ..
|
"5=" .. core.formspec_escape(defaulttexturedir .. "server_favorite.png") .. "," ..
|
||||||
image_column(fgettext("Damage enabled"), "damage") .. ",padding=0.25;" ..
|
"6=" .. core.formspec_escape(defaulttexturedir .. "server_public.png") .. "," ..
|
||||||
--~ PvP = Player versus Player
|
"7=" .. core.formspec_escape(defaulttexturedir .. "server_incompatible.png") .. ";" ..
|
||||||
image_column(fgettext("PvP enabled"), "pvp") .. ",padding=0.25;" ..
|
|
||||||
"color,span=1;" ..
|
"color,span=1;" ..
|
||||||
"text,padding=1]" ..
|
"text,align=inline;"..
|
||||||
"table[-0.15,0.6;7.75,5.15;favorites;"
|
"color,span=1;" ..
|
||||||
|
"text,align=inline,width=4.25;" ..
|
||||||
|
"image,tooltip=" .. fgettext("Creative mode") .. "," ..
|
||||||
|
"0=" .. core.formspec_escape(defaulttexturedir .. "blank.png") .. "," ..
|
||||||
|
"1=" .. core.formspec_escape(defaulttexturedir .. "server_flags_creative.png") .. "," ..
|
||||||
|
"align=inline,padding=0.25,width=1.5;" ..
|
||||||
|
--~ PvP = Player versus Player
|
||||||
|
"image,tooltip=" .. fgettext("Damage / PvP") .. "," ..
|
||||||
|
"0=" .. core.formspec_escape(defaulttexturedir .. "blank.png") .. "," ..
|
||||||
|
"1=" .. core.formspec_escape(defaulttexturedir .. "server_flags_damage.png") .. "," ..
|
||||||
|
"2=" .. core.formspec_escape(defaulttexturedir .. "server_flags_pvp.png") .. "," ..
|
||||||
|
"align=inline,padding=0.25,width=1.5;" ..
|
||||||
|
"color,align=inline,span=1;" ..
|
||||||
|
"text,align=inline,padding=1]" ..
|
||||||
|
"table[0.25,1;9.25,5.75;servers;"
|
||||||
|
|
||||||
if menudata.search_result then
|
local servers = get_sorted_servers()
|
||||||
local favs = serverlistmgr.get_favorites()
|
|
||||||
for i = 1, #menudata.search_result do
|
local dividers = {
|
||||||
local server = menudata.search_result[i]
|
fav = "5,#ffff00," .. fgettext("Favorites") .. ",,,0,0,,",
|
||||||
for fav_id = 1, #favs do
|
public = "6,#4bdd42," .. fgettext("Public Servers") .. ",,,0,0,,",
|
||||||
if server.address == favs[fav_id].address and
|
incompatible = "7,"..mt_color_grey.."," .. fgettext("Incompatible Servers") .. ",,,0,0,,"
|
||||||
server.port == favs[fav_id].port then
|
}
|
||||||
server.is_favorite = true
|
local order = {"fav", "public", "incompatible"}
|
||||||
end
|
|
||||||
|
tabdata.lookup = {} -- maps row number to server
|
||||||
|
local rows = {}
|
||||||
|
for _, section in ipairs(order) do
|
||||||
|
local section_servers = servers[section]
|
||||||
|
if next(section_servers) ~= nil then
|
||||||
|
rows[#rows + 1] = dividers[section]
|
||||||
|
for _, server in ipairs(section_servers) do
|
||||||
|
tabdata.lookup[#rows + 1] = server
|
||||||
|
rows[#rows + 1] = render_serverlist_row(server)
|
||||||
end
|
end
|
||||||
|
|
||||||
if i ~= 1 then
|
|
||||||
retval = retval .. ","
|
|
||||||
end
|
|
||||||
|
|
||||||
retval = retval .. render_serverlist_row(server, server.is_favorite)
|
|
||||||
end
|
|
||||||
elseif #serverlistmgr.servers > 0 then
|
|
||||||
local favs = serverlistmgr.get_favorites()
|
|
||||||
if #favs > 0 then
|
|
||||||
for i = 1, #favs do
|
|
||||||
for j = 1, #serverlistmgr.servers do
|
|
||||||
if serverlistmgr.servers[j].address == favs[i].address and
|
|
||||||
serverlistmgr.servers[j].port == favs[i].port then
|
|
||||||
table.insert(serverlistmgr.servers, i, table.remove(serverlistmgr.servers, j))
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if favs[i].address ~= serverlistmgr.servers[i].address then
|
|
||||||
table.insert(serverlistmgr.servers, i, favs[i])
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
retval = retval .. render_serverlist_row(serverlistmgr.servers[1], (#favs > 0))
|
|
||||||
for i = 2, #serverlistmgr.servers do
|
|
||||||
retval = retval .. "," .. render_serverlist_row(serverlistmgr.servers[i], (i <= #favs))
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
retval = retval .. table.concat(rows, ",")
|
||||||
|
|
||||||
if tabdata.selected then
|
if tabdata.selected then
|
||||||
retval = retval .. ";" .. tabdata.selected .. "]"
|
retval = retval .. ";" .. tabdata.selected .. "]"
|
||||||
else
|
else
|
||||||
retval = retval .. ";0]"
|
retval = retval .. ";0]"
|
||||||
end
|
end
|
||||||
|
|
||||||
return retval
|
return retval, "size[15.5,7,false]real_coordinates[true]"
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
--------------------------------------------------------------------------------
|
||||||
local function main_button_handler(tabview, fields, name, tabdata)
|
|
||||||
local serverlist = menudata.search_result or serverlistmgr.servers
|
|
||||||
|
|
||||||
|
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
|
||||||
|
word = word:gsub("(%W)", "%%%1")
|
||||||
|
table.insert(keywords, word)
|
||||||
|
end
|
||||||
|
|
||||||
|
if #keywords == 0 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
menudata.search_result = {}
|
||||||
|
|
||||||
|
-- Search the serverlist
|
||||||
|
local search_result = {}
|
||||||
|
for i = 1, #serverlistmgr.servers do
|
||||||
|
local server = serverlistmgr.servers[i]
|
||||||
|
local found = 0
|
||||||
|
for k = 1, #keywords do
|
||||||
|
local keyword = keywords[k]
|
||||||
|
if server.name then
|
||||||
|
local sername = server.name:lower()
|
||||||
|
local _, count = sername:gsub(keyword, keyword)
|
||||||
|
found = found + count * 4
|
||||||
|
end
|
||||||
|
|
||||||
|
if server.description then
|
||||||
|
local desc = server.description:lower()
|
||||||
|
local _, count = desc:gsub(keyword, keyword)
|
||||||
|
found = found + count * 2
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if found > 0 then
|
||||||
|
local points = (#serverlistmgr.servers - i) / 5 + found
|
||||||
|
server.points = points
|
||||||
|
table.insert(search_result, server)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if #search_result == 0 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
table.sort(search_result, function(a, b)
|
||||||
|
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
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if address and port then
|
||||||
|
core.settings:set("address", address)
|
||||||
|
core.settings:set("remote_port", port)
|
||||||
|
end
|
||||||
|
tabdata.selected = idx
|
||||||
|
end
|
||||||
|
|
||||||
|
local function main_button_handler(tabview, fields, name, tabdata)
|
||||||
if fields.te_name then
|
if fields.te_name then
|
||||||
gamedata.playername = fields.te_name
|
gamedata.playername = fields.te_name
|
||||||
core.settings:set("name", fields.te_name)
|
core.settings:set("name", fields.te_name)
|
||||||
end
|
end
|
||||||
|
|
||||||
if fields.favorites then
|
if fields.servers then
|
||||||
local event = core.explode_table_event(fields.favorites)
|
local event = core.explode_table_event(fields.servers)
|
||||||
local fav = serverlist[event.row]
|
local server = tabdata.lookup[event.row]
|
||||||
|
|
||||||
if event.type == "DCL" then
|
if server then
|
||||||
if event.row <= #serverlist then
|
if event.type == "DCL" then
|
||||||
if not is_server_protocol_compat_or_error(
|
if not is_server_protocol_compat_or_error(
|
||||||
fav.proto_min, fav.proto_max) then
|
server.proto_min, server.proto_max) then
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
gamedata.address = fav.address
|
gamedata.address = server.address
|
||||||
gamedata.port = fav.port
|
gamedata.port = server.port
|
||||||
gamedata.playername = fields.te_name
|
gamedata.playername = fields.te_name
|
||||||
gamedata.selected_world = 0
|
gamedata.selected_world = 0
|
||||||
|
|
||||||
@ -162,84 +288,32 @@ local function main_button_handler(tabview, fields, name, tabdata)
|
|||||||
gamedata.password = fields.te_pwd
|
gamedata.password = fields.te_pwd
|
||||||
end
|
end
|
||||||
|
|
||||||
gamedata.servername = fav.name
|
gamedata.servername = server.name
|
||||||
gamedata.serverdescription = fav.description
|
gamedata.serverdescription = server.description
|
||||||
|
|
||||||
if gamedata.address and gamedata.port then
|
if gamedata.address and gamedata.port then
|
||||||
core.settings:set("address", gamedata.address)
|
core.settings:set("address", gamedata.address)
|
||||||
core.settings:set("remote_port", gamedata.port)
|
core.settings:set("remote_port", gamedata.port)
|
||||||
core.start()
|
core.start()
|
||||||
end
|
end
|
||||||
|
return true
|
||||||
end
|
end
|
||||||
return true
|
if event.type == "CHG" then
|
||||||
end
|
set_selected_server(tabdata, event.row, server)
|
||||||
|
return true
|
||||||
if event.type == "CHG" then
|
|
||||||
if event.row <= #serverlist then
|
|
||||||
gamedata.fav = false
|
|
||||||
local favs = serverlistmgr.get_favorites()
|
|
||||||
local address = fav.address
|
|
||||||
local port = fav.port
|
|
||||||
gamedata.serverdescription = fav.description
|
|
||||||
|
|
||||||
for i = 1, #favs do
|
|
||||||
if fav.address == favs[i].address and
|
|
||||||
fav.port == favs[i].port then
|
|
||||||
gamedata.fav = true
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if address and port then
|
|
||||||
core.settings:set("address", address)
|
|
||||||
core.settings:set("remote_port", port)
|
|
||||||
end
|
|
||||||
tabdata.selected = event.row
|
|
||||||
end
|
end
|
||||||
return true
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
if fields.key_up or fields.key_down then
|
|
||||||
local fav_idx = core.get_table_index("favorites")
|
|
||||||
local fav = serverlist[fav_idx]
|
|
||||||
|
|
||||||
if fav_idx then
|
|
||||||
if fields.key_up and fav_idx > 1 then
|
|
||||||
fav_idx = fav_idx - 1
|
|
||||||
elseif fields.key_down and fav_idx < #serverlistmgr.servers then
|
|
||||||
fav_idx = fav_idx + 1
|
|
||||||
end
|
|
||||||
else
|
|
||||||
fav_idx = 1
|
|
||||||
end
|
|
||||||
|
|
||||||
if not serverlistmgr.servers or not fav then
|
|
||||||
tabdata.selected = 0
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
local address = fav.address
|
|
||||||
local port = fav.port
|
|
||||||
gamedata.serverdescription = fav.description
|
|
||||||
if address and port then
|
|
||||||
core.settings:set("address", address)
|
|
||||||
core.settings:set("remote_port", port)
|
|
||||||
end
|
|
||||||
|
|
||||||
tabdata.selected = fav_idx
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
if fields.btn_delete_favorite then
|
if fields.btn_delete_favorite then
|
||||||
local current_favorite = core.get_table_index("favorites")
|
local idx = core.get_table_index("servers")
|
||||||
if not current_favorite then return end
|
if not idx then return end
|
||||||
|
local server = tabdata.lookup[idx]
|
||||||
|
if not server then return end
|
||||||
|
|
||||||
serverlistmgr.delete_favorite(serverlistmgr.servers[current_favorite])
|
serverlistmgr.delete_favorite(server)
|
||||||
serverlistmgr.sync()
|
-- the server at [idx+1] will be at idx once list is refreshed
|
||||||
tabdata.selected = nil
|
set_selected_server(tabdata, idx, tabdata.lookup[idx+1])
|
||||||
|
|
||||||
core.settings:set("address", "")
|
|
||||||
core.settings:set("remote_port", "30000")
|
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -250,63 +324,13 @@ local function main_button_handler(tabview, fields, name, tabdata)
|
|||||||
end
|
end
|
||||||
|
|
||||||
if fields.btn_mp_search or fields.key_enter_field == "te_search" then
|
if fields.btn_mp_search or fields.key_enter_field == "te_search" then
|
||||||
tabdata.selected = 1
|
|
||||||
local input = fields.te_search:lower()
|
|
||||||
tabdata.search_for = fields.te_search
|
tabdata.search_for = fields.te_search
|
||||||
|
search_server_list(fields.te_search:lower())
|
||||||
if #serverlistmgr.servers < 2 then
|
if menudata.search_result then
|
||||||
return true
|
-- first server in row 2 due to header
|
||||||
|
set_selected_server(tabdata, 2, menudata.search_result[1])
|
||||||
end
|
end
|
||||||
|
|
||||||
menudata.search_result = {}
|
|
||||||
|
|
||||||
-- setup the keyword list
|
|
||||||
local keywords = {}
|
|
||||||
for word in input:gmatch("%S+") do
|
|
||||||
word = word:gsub("(%W)", "%%%1")
|
|
||||||
table.insert(keywords, word)
|
|
||||||
end
|
|
||||||
|
|
||||||
if #keywords == 0 then
|
|
||||||
menudata.search_result = nil
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Search the serverlist
|
|
||||||
local search_result = {}
|
|
||||||
for i = 1, #serverlistmgr.servers do
|
|
||||||
local server = serverlistmgr.servers[i]
|
|
||||||
local found = 0
|
|
||||||
for k = 1, #keywords do
|
|
||||||
local keyword = keywords[k]
|
|
||||||
if server.name then
|
|
||||||
local sername = server.name:lower()
|
|
||||||
local _, count = sername:gsub(keyword, keyword)
|
|
||||||
found = found + count * 4
|
|
||||||
end
|
|
||||||
|
|
||||||
if server.description then
|
|
||||||
local desc = server.description:lower()
|
|
||||||
local _, count = desc:gsub(keyword, keyword)
|
|
||||||
found = found + count * 2
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if found > 0 then
|
|
||||||
local points = (#serverlistmgr.servers - i) / 5 + found
|
|
||||||
server.points = points
|
|
||||||
table.insert(search_result, server)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
if #search_result > 0 then
|
|
||||||
table.sort(search_result, function(a, b)
|
|
||||||
return a.points > b.points
|
|
||||||
end)
|
|
||||||
menudata.search_result = search_result
|
|
||||||
local first_server = search_result[1]
|
|
||||||
core.settings:set("address", first_server.address)
|
|
||||||
core.settings:set("remote_port", first_server.port)
|
|
||||||
gamedata.serverdescription = first_server.description
|
|
||||||
end
|
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -322,20 +346,22 @@ local function main_button_handler(tabview, fields, name, tabdata)
|
|||||||
gamedata.address = fields.te_address
|
gamedata.address = fields.te_address
|
||||||
gamedata.port = tonumber(fields.te_port)
|
gamedata.port = tonumber(fields.te_port)
|
||||||
gamedata.selected_world = 0
|
gamedata.selected_world = 0
|
||||||
local fav_idx = core.get_table_index("favorites")
|
|
||||||
local fav = serverlist[fav_idx]
|
|
||||||
|
|
||||||
if fav_idx and fav_idx <= #serverlist and
|
local idx = core.get_table_index("servers")
|
||||||
fav.address == gamedata.address and
|
local server = idx and tabdata.lookup[idx]
|
||||||
fav.port == gamedata.port then
|
|
||||||
|
|
||||||
serverlistmgr.add_favorite(fav)
|
set_selected_server(tabdata)
|
||||||
|
|
||||||
gamedata.servername = fav.name
|
if server and server.address == gamedata.address and
|
||||||
gamedata.serverdescription = fav.description
|
server.port == gamedata.port then
|
||||||
|
|
||||||
|
serverlistmgr.add_favorite(server)
|
||||||
|
|
||||||
|
gamedata.servername = server.name
|
||||||
|
gamedata.serverdescription = server.description
|
||||||
|
|
||||||
if not is_server_protocol_compat_or_error(
|
if not is_server_protocol_compat_or_error(
|
||||||
fav.proto_min, fav.proto_max) then
|
server.proto_min, server.proto_max) then
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
@ -354,6 +380,7 @@ local function main_button_handler(tabview, fields, name, tabdata)
|
|||||||
core.start()
|
core.start()
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
|
|
||||||
return false
|
return false
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -362,7 +389,6 @@ local function on_change(type, old_tab, new_tab)
|
|||||||
serverlistmgr.sync()
|
serverlistmgr.sync()
|
||||||
end
|
end
|
||||||
|
|
||||||
--------------------------------------------------------------------------------
|
|
||||||
return {
|
return {
|
||||||
name = "online",
|
name = "online",
|
||||||
caption = fgettext("Join Game"),
|
caption = fgettext("Join Game"),
|
||||||
|
@ -15,6 +15,8 @@
|
|||||||
--with this program; if not, write to the Free Software Foundation, Inc.,
|
--with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
|
||||||
local function get_bool_default(name, default)
|
local function get_bool_default(name, default)
|
||||||
local val = core.settings:get_bool(name)
|
local val = core.settings:get_bool(name)
|
||||||
if val == nil then
|
if val == nil then
|
||||||
@ -40,9 +42,9 @@ function profiler.init_chatcommand()
|
|||||||
instrumentation.init_chatcommand()
|
instrumentation.init_chatcommand()
|
||||||
end
|
end
|
||||||
|
|
||||||
local param_usage = "print [filter] | dump [filter] | save [format [filter]] | reset"
|
local param_usage = S("print [<filter>] | dump [<filter>] | save [<format> [<filter>]] | reset")
|
||||||
core.register_chatcommand("profiler", {
|
core.register_chatcommand("profiler", {
|
||||||
description = "handle the profiler and profiling data",
|
description = S("Handle the profiler and profiling data"),
|
||||||
params = param_usage,
|
params = param_usage,
|
||||||
privs = { server=true },
|
privs = { server=true },
|
||||||
func = function(name, param)
|
func = function(name, param)
|
||||||
@ -51,21 +53,19 @@ function profiler.init_chatcommand()
|
|||||||
|
|
||||||
if command == "dump" then
|
if command == "dump" then
|
||||||
core.log("action", reporter.print(sampler.profile, arg0))
|
core.log("action", reporter.print(sampler.profile, arg0))
|
||||||
return true, "Statistics written to action log"
|
return true, S("Statistics written to action log.")
|
||||||
elseif command == "print" then
|
elseif command == "print" then
|
||||||
return true, reporter.print(sampler.profile, arg0)
|
return true, reporter.print(sampler.profile, arg0)
|
||||||
elseif command == "save" then
|
elseif command == "save" then
|
||||||
return reporter.save(sampler.profile, args[1] or "txt", args[2])
|
return reporter.save(sampler.profile, args[1] or "txt", args[2])
|
||||||
elseif command == "reset" then
|
elseif command == "reset" then
|
||||||
sampler.reset()
|
sampler.reset()
|
||||||
return true, "Statistics were reset"
|
return true, S("Statistics were reset.")
|
||||||
end
|
end
|
||||||
|
|
||||||
return false, string.format(
|
return false,
|
||||||
"Usage: %s\n" ..
|
S("Usage: @1", param_usage) .. "\n" ..
|
||||||
"Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).",
|
S("Format can be one of txt, csv, lua, json, json_pretty (structures may be subject to change).")
|
||||||
param_usage
|
|
||||||
)
|
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -15,6 +15,10 @@
|
|||||||
--with this program; if not, write to the Free Software Foundation, Inc.,
|
--with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
--51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
|
||||||
|
local S = core.get_translator("__builtin")
|
||||||
|
-- Note: In this file, only messages are translated
|
||||||
|
-- but not the table itself, to keep it simple.
|
||||||
|
|
||||||
local DIR_DELIM, LINE_DELIM = DIR_DELIM, "\n"
|
local DIR_DELIM, LINE_DELIM = DIR_DELIM, "\n"
|
||||||
local table, unpack, string, pairs, io, os = table, unpack, string, pairs, io, os
|
local table, unpack, string, pairs, io, os = table, unpack, string, pairs, io, os
|
||||||
local rep, sprintf, tonumber = string.rep, string.format, tonumber
|
local rep, sprintf, tonumber = string.rep, string.format, tonumber
|
||||||
@ -104,11 +108,11 @@ local TxtFormatter = Formatter:new {
|
|||||||
end,
|
end,
|
||||||
format = function(self, filter)
|
format = function(self, filter)
|
||||||
local profile = self.profile
|
local profile = self.profile
|
||||||
self:print("Values below show absolute/relative times spend per server step by the instrumented function.")
|
self:print(S("Values below show absolute/relative times spend per server step by the instrumented function."))
|
||||||
self:print("A total of %d samples were taken", profile.stats_total.samples)
|
self:print(S("A total of @1 sample(s) were taken.", profile.stats_total.samples))
|
||||||
|
|
||||||
if filter then
|
if filter then
|
||||||
self:print("The output is limited to '%s'", filter)
|
self:print(S("The output is limited to '@1'.", filter))
|
||||||
end
|
end
|
||||||
|
|
||||||
self:print()
|
self:print()
|
||||||
@ -259,19 +263,18 @@ function reporter.save(profile, format, filter)
|
|||||||
|
|
||||||
local output, io_err = io.open(path, "w")
|
local output, io_err = io.open(path, "w")
|
||||||
if not output then
|
if not output then
|
||||||
return false, "Saving of profile failed with: " .. io_err
|
return false, S("Saving of profile failed: @1", io_err)
|
||||||
end
|
end
|
||||||
local content, err = serialize_profile(profile, format, filter)
|
local content, err = serialize_profile(profile, format, filter)
|
||||||
if not content then
|
if not content then
|
||||||
output:close()
|
output:close()
|
||||||
return false, "Saving of profile failed with: " .. err
|
return false, S("Saving of profile failed: @1", err)
|
||||||
end
|
end
|
||||||
output:write(content)
|
output:write(content)
|
||||||
output:close()
|
output:close()
|
||||||
|
|
||||||
local logmessage = "Profile saved to " .. path
|
core.log("action", "Profile saved to " .. path)
|
||||||
core.log("action", logmessage)
|
return true, S("Profile saved to @1", path)
|
||||||
return true, logmessage
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return reporter
|
return reporter
|
||||||
|
@ -75,7 +75,7 @@ free_move (Flying) bool false
|
|||||||
# If enabled, makes move directions relative to the player's pitch when flying or swimming.
|
# If enabled, makes move directions relative to the player's pitch when flying or swimming.
|
||||||
pitch_move (Pitch move mode) bool false
|
pitch_move (Pitch move mode) bool false
|
||||||
|
|
||||||
# Fast movement (via the "special" key).
|
# Fast movement (via the "Aux1" key).
|
||||||
# This requires the "fast" privilege on the server.
|
# This requires the "fast" privilege on the server.
|
||||||
fast_move (Fast movement) bool false
|
fast_move (Fast movement) bool false
|
||||||
|
|
||||||
@ -99,14 +99,14 @@ invert_mouse (Invert mouse) bool false
|
|||||||
# Mouse sensitivity multiplier.
|
# Mouse sensitivity multiplier.
|
||||||
mouse_sensitivity (Mouse sensitivity) float 0.2
|
mouse_sensitivity (Mouse sensitivity) float 0.2
|
||||||
|
|
||||||
# If enabled, "special" key instead of "sneak" key is used for climbing down and
|
# If enabled, "Aux1" key instead of "Sneak" key is used for climbing down and
|
||||||
# descending.
|
# descending.
|
||||||
aux1_descends (Special key for climbing/descending) bool false
|
aux1_descends (Aux1 key for climbing/descending) bool false
|
||||||
|
|
||||||
# Double-tapping the jump key toggles fly mode.
|
# Double-tapping the jump key toggles fly mode.
|
||||||
doubletap_jump (Double tap jump for fly) bool false
|
doubletap_jump (Double tap jump for fly) bool false
|
||||||
|
|
||||||
# If disabled, "special" key is used to fly fast if both fly and fast mode are
|
# If disabled, "Aux1" key is used to fly fast if both fly and fast mode are
|
||||||
# enabled.
|
# enabled.
|
||||||
always_fly_fast (Always fly and fast) bool true
|
always_fly_fast (Always fly and fast) bool true
|
||||||
|
|
||||||
@ -135,9 +135,9 @@ touchscreen_threshold (Touch screen threshold) int 20 0 100
|
|||||||
# If disabled, virtual joystick will center to first-touch's position.
|
# If disabled, virtual joystick will center to first-touch's position.
|
||||||
fixed_virtual_joystick (Fixed virtual joystick) bool false
|
fixed_virtual_joystick (Fixed virtual joystick) bool false
|
||||||
|
|
||||||
# (Android) Use virtual joystick to trigger "aux" button.
|
# (Android) Use virtual joystick to trigger "Aux1" button.
|
||||||
# If enabled, virtual joystick will also tap "aux" button when out of main circle.
|
# If enabled, virtual joystick will also tap "Aux1" button when out of main circle.
|
||||||
virtual_joystick_triggers_aux (Virtual joystick triggers aux button) bool false
|
virtual_joystick_triggers_aux1 (Virtual joystick triggers Aux1 button) bool false
|
||||||
|
|
||||||
# Enable joysticks
|
# Enable joysticks
|
||||||
enable_joysticks (Enable joysticks) bool false
|
enable_joysticks (Enable joysticks) bool false
|
||||||
@ -203,7 +203,7 @@ keymap_special_inventory (Special inventory key) key KEY_KEY_O
|
|||||||
|
|
||||||
# Key for moving fast in fast mode.
|
# Key for moving fast in fast mode.
|
||||||
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
|
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
|
||||||
keymap_special1 (Special key) key KEY_KEY_E
|
keymap_aux1 (Aux1 key) key KEY_KEY_E
|
||||||
|
|
||||||
# Key for opening the chat window.
|
# Key for opening the chat window.
|
||||||
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
|
# See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
|
||||||
@ -463,6 +463,10 @@ keymap_decrease_viewing_range_min (View range decrease key) key -
|
|||||||
|
|
||||||
[**Basic]
|
[**Basic]
|
||||||
|
|
||||||
|
# Whether nametag backgrounds should be shown by default.
|
||||||
|
# Mods may still set a background.
|
||||||
|
show_nametag_backgrounds (Show nametag backgrounds by default) bool true
|
||||||
|
|
||||||
# Enable vertex buffer objects.
|
# Enable vertex buffer objects.
|
||||||
# This should greatly improve graphics performance.
|
# This should greatly improve graphics performance.
|
||||||
enable_vbo (VBO) bool true
|
enable_vbo (VBO) bool true
|
||||||
@ -1144,6 +1148,10 @@ enable_rollback_recording (Rollback recording) bool false
|
|||||||
# @name, @message, @timestamp (optional)
|
# @name, @message, @timestamp (optional)
|
||||||
chat_message_format (Chat message format) string <@name> @message
|
chat_message_format (Chat message format) string <@name> @message
|
||||||
|
|
||||||
|
# If the execution of a chat command takes longer than this specified time in
|
||||||
|
# seconds, add the time information to the chat command message
|
||||||
|
chatcommand_msg_time_threshold (Chat command time message threshold) float 0.1
|
||||||
|
|
||||||
# A message to be displayed to all clients when the server shuts down.
|
# A message to be displayed to all clients when the server shuts down.
|
||||||
kick_msg_shutdown (Shutdown message) string Server shutting down.
|
kick_msg_shutdown (Shutdown message) string Server shutting down.
|
||||||
|
|
||||||
|
@ -6,7 +6,7 @@ uniform sampler2D textureFlags;
|
|||||||
#define rightImage normalTexture
|
#define rightImage normalTexture
|
||||||
#define maskImage textureFlags
|
#define maskImage textureFlags
|
||||||
|
|
||||||
varying mediump vec2 varTexCoord;
|
varying mediump vec4 varTexCoord;
|
||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
varying mediump vec2 varTexCoord;
|
varying mediump vec4 varTexCoord;
|
||||||
|
|
||||||
void main(void)
|
void main(void)
|
||||||
{
|
{
|
||||||
|
1
clientmods/preview/mod.conf
Normal file
@ -0,0 +1 @@
|
|||||||
|
name = preview
|
@ -12,8 +12,6 @@ if(ENABLE_SYSTEM_GMP)
|
|||||||
else()
|
else()
|
||||||
message (STATUS "Detecting GMP from system failed.")
|
message (STATUS "Detecting GMP from system failed.")
|
||||||
endif()
|
endif()
|
||||||
else()
|
|
||||||
message (STATUS "Detecting GMP from system disabled! (ENABLE_SYSTEM_GMP=0)")
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT USE_SYSTEM_GMP)
|
if(NOT USE_SYSTEM_GMP)
|
||||||
|
@ -42,15 +42,6 @@ if(WIN32)
|
|||||||
NAMES ${GETTEXT_LIB_NAMES}
|
NAMES ${GETTEXT_LIB_NAMES}
|
||||||
PATHS "${CUSTOM_GETTEXT_PATH}/lib"
|
PATHS "${CUSTOM_GETTEXT_PATH}/lib"
|
||||||
DOC "GetText library")
|
DOC "GetText library")
|
||||||
find_file(GETTEXT_DLL
|
|
||||||
NAMES libintl.dll intl.dll libintl3.dll intl3.dll
|
|
||||||
PATHS "${CUSTOM_GETTEXT_PATH}/bin" "${CUSTOM_GETTEXT_PATH}/lib"
|
|
||||||
DOC "gettext *intl*.dll")
|
|
||||||
find_file(GETTEXT_ICONV_DLL
|
|
||||||
NAMES libiconv2.dll
|
|
||||||
PATHS "${CUSTOM_GETTEXT_PATH}/bin" "${CUSTOM_GETTEXT_PATH}/lib"
|
|
||||||
DOC "gettext *iconv*.lib")
|
|
||||||
set(GETTEXT_REQUIRED_VARS ${GETTEXT_REQUIRED_VARS} GETTEXT_DLL GETTEXT_ICONV_DLL)
|
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
|
|
||||||
|
|
||||||
|
@ -1,44 +1,11 @@
|
|||||||
|
|
||||||
mark_as_advanced(IRRLICHT_LIBRARY IRRLICHT_INCLUDE_DIR IRRLICHT_DLL)
|
mark_as_advanced(IRRLICHT_LIBRARY IRRLICHT_INCLUDE_DIR IRRLICHT_DLL)
|
||||||
set(IRRLICHT_SOURCE_DIR "" CACHE PATH "Path to irrlicht source directory (optional)")
|
|
||||||
|
|
||||||
|
# Find include directory and libraries
|
||||||
|
|
||||||
# Find include directory
|
if(TRUE)
|
||||||
|
|
||||||
if(NOT IRRLICHT_SOURCE_DIR STREQUAL "")
|
|
||||||
set(IRRLICHT_SOURCE_DIR_INCLUDE
|
|
||||||
"${IRRLICHT_SOURCE_DIR}/include"
|
|
||||||
)
|
|
||||||
|
|
||||||
set(IRRLICHT_LIBRARY_NAMES libIrrlicht.a Irrlicht Irrlicht.lib)
|
|
||||||
|
|
||||||
if(WIN32)
|
|
||||||
if(MSVC)
|
|
||||||
set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Win32-visualstudio")
|
|
||||||
set(IRRLICHT_LIBRARY_NAMES Irrlicht.lib)
|
|
||||||
else()
|
|
||||||
set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Win32-gcc")
|
|
||||||
set(IRRLICHT_LIBRARY_NAMES libIrrlicht.a libIrrlicht.dll.a)
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(IRRLICHT_SOURCE_DIR_LIBS "${IRRLICHT_SOURCE_DIR}/lib/Linux")
|
|
||||||
set(IRRLICHT_LIBRARY_NAMES libIrrlicht.a)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(IRRLICHT_INCLUDE_DIR NAMES irrlicht.h
|
|
||||||
PATHS
|
|
||||||
${IRRLICHT_SOURCE_DIR_INCLUDE}
|
|
||||||
NO_DEFAULT_PATH
|
|
||||||
)
|
|
||||||
|
|
||||||
find_library(IRRLICHT_LIBRARY NAMES ${IRRLICHT_LIBRARY_NAMES}
|
|
||||||
PATHS
|
|
||||||
${IRRLICHT_SOURCE_DIR_LIBS}
|
|
||||||
NO_DEFAULT_PATH
|
|
||||||
)
|
|
||||||
|
|
||||||
else()
|
|
||||||
find_path(IRRLICHT_INCLUDE_DIR NAMES irrlicht.h
|
find_path(IRRLICHT_INCLUDE_DIR NAMES irrlicht.h
|
||||||
|
DOC "Path to the directory with Irrlicht includes"
|
||||||
PATHS
|
PATHS
|
||||||
/usr/local/include/irrlicht
|
/usr/local/include/irrlicht
|
||||||
/usr/include/irrlicht
|
/usr/include/irrlicht
|
||||||
@ -46,7 +13,8 @@ else()
|
|||||||
PATH_SUFFIXES "include/irrlicht"
|
PATH_SUFFIXES "include/irrlicht"
|
||||||
)
|
)
|
||||||
|
|
||||||
find_library(IRRLICHT_LIBRARY NAMES libIrrlicht.so libIrrlicht.a Irrlicht
|
find_library(IRRLICHT_LIBRARY NAMES libIrrlicht Irrlicht
|
||||||
|
DOC "Path to the Irrlicht library file"
|
||||||
PATHS
|
PATHS
|
||||||
/usr/local/lib
|
/usr/local/lib
|
||||||
/usr/lib
|
/usr/lib
|
||||||
@ -54,19 +22,14 @@ else()
|
|||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
# Users will likely need to edit these
|
||||||
|
mark_as_advanced(CLEAR IRRLICHT_LIBRARY IRRLICHT_INCLUDE_DIR)
|
||||||
|
|
||||||
# On Windows, find the DLL for installation
|
# On Windows, find the DLL for installation
|
||||||
if(WIN32)
|
if(WIN32)
|
||||||
# If VCPKG_APPLOCAL_DEPS is ON, dll's are automatically handled by VCPKG
|
# If VCPKG_APPLOCAL_DEPS is ON, dll's are automatically handled by VCPKG
|
||||||
if(NOT VCPKG_APPLOCAL_DEPS)
|
if(NOT VCPKG_APPLOCAL_DEPS)
|
||||||
if(MSVC)
|
|
||||||
set(IRRLICHT_COMPILER "VisualStudio")
|
|
||||||
else()
|
|
||||||
set(IRRLICHT_COMPILER "gcc")
|
|
||||||
endif()
|
|
||||||
find_file(IRRLICHT_DLL NAMES Irrlicht.dll
|
find_file(IRRLICHT_DLL NAMES Irrlicht.dll
|
||||||
PATHS
|
|
||||||
"${IRRLICHT_SOURCE_DIR}/bin/Win32-${IRRLICHT_COMPILER}"
|
|
||||||
DOC "Path of the Irrlicht dll (for installation)"
|
DOC "Path of the Irrlicht dll (for installation)"
|
||||||
)
|
)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,26 +1,25 @@
|
|||||||
# Look for JSONCPP if asked to.
|
# Look for JsonCpp, with fallback to bundeled version
|
||||||
# We use a bundled version by default because some distros ship versions of
|
|
||||||
# JSONCPP that cause segfaults and other memory errors when we link with them.
|
|
||||||
# See https://github.com/minetest/minetest/issues/1793
|
|
||||||
|
|
||||||
mark_as_advanced(JSON_LIBRARY JSON_INCLUDE_DIR)
|
mark_as_advanced(JSON_LIBRARY JSON_INCLUDE_DIR)
|
||||||
option(ENABLE_SYSTEM_JSONCPP "Enable using a system-wide JSONCPP. May cause segfaults and other memory errors!" FALSE)
|
option(ENABLE_SYSTEM_JSONCPP "Enable using a system-wide JsonCpp" TRUE)
|
||||||
|
set(USE_SYSTEM_JSONCPP FALSE)
|
||||||
|
|
||||||
if(ENABLE_SYSTEM_JSONCPP)
|
if(ENABLE_SYSTEM_JSONCPP)
|
||||||
find_library(JSON_LIBRARY NAMES jsoncpp)
|
find_library(JSON_LIBRARY NAMES jsoncpp)
|
||||||
find_path(JSON_INCLUDE_DIR json/allocator.h PATH_SUFFIXES jsoncpp)
|
find_path(JSON_INCLUDE_DIR json/allocator.h PATH_SUFFIXES jsoncpp)
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
if(JSON_LIBRARY AND JSON_INCLUDE_DIR)
|
||||||
find_package_handle_standard_args(Json DEFAULT_MSG JSON_LIBRARY JSON_INCLUDE_DIR)
|
message(STATUS "Using JsonCpp provided by system.")
|
||||||
|
set(USE_SYSTEM_JSONCPP TRUE)
|
||||||
if(JSON_FOUND)
|
|
||||||
message(STATUS "Using system JSONCPP library.")
|
|
||||||
endif()
|
endif()
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT JSON_FOUND)
|
if(NOT USE_SYSTEM_JSONCPP)
|
||||||
message(STATUS "Using bundled JSONCPP library.")
|
message(STATUS "Using bundled JsonCpp library.")
|
||||||
set(JSON_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/jsoncpp)
|
set(JSON_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/lib/jsoncpp)
|
||||||
set(JSON_LIBRARY jsoncpp)
|
set(JSON_LIBRARY jsoncpp)
|
||||||
add_subdirectory(lib/jsoncpp)
|
add_subdirectory(lib/jsoncpp)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(Json DEFAULT_MSG JSON_LIBRARY JSON_INCLUDE_DIR)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Minetest Lua Client Modding API Reference 5.4.0
|
Minetest Lua Client Modding API Reference 5.5.0
|
||||||
================================================
|
================================================
|
||||||
* More information at <http://www.minetest.net/>
|
* More information at <http://www.minetest.net/>
|
||||||
* Developer Wiki: <http://dev.minetest.net/>
|
* Developer Wiki: <http://dev.minetest.net/>
|
||||||
|
@ -256,6 +256,9 @@ Subfolders with names starting with `_` or `.` are ignored.
|
|||||||
If a subfolder contains a media file with the same name as a media file
|
If a subfolder contains a media file with the same name as a media file
|
||||||
in one of its parents, the parent's file is used.
|
in one of its parents, the parent's file is used.
|
||||||
|
|
||||||
|
Although it is discouraged, a mod can overwrite a media file of any mod that it
|
||||||
|
depends on by supplying a file with an equal name.
|
||||||
|
|
||||||
Naming conventions
|
Naming conventions
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
@ -2296,7 +2299,7 @@ Elements
|
|||||||
* `frame duration`: Milliseconds between each frame. `0` means the frames don't advance.
|
* `frame duration`: Milliseconds between each frame. `0` means the frames don't advance.
|
||||||
* `frame start` (Optional): The index of the frame to start on. Default `1`.
|
* `frame start` (Optional): The index of the frame to start on. Default `1`.
|
||||||
|
|
||||||
### `model[<X>,<Y>;<W>,<H>;<name>;<mesh>;<textures>;<rotation X,Y>;<continuous>;<mouse control>;<frame loop range>]`
|
### `model[<X>,<Y>;<W>,<H>;<name>;<mesh>;<textures>;<rotation X,Y>;<continuous>;<mouse control>;<frame loop range>;<animation speed>]`
|
||||||
|
|
||||||
* Show a mesh model.
|
* Show a mesh model.
|
||||||
* `name`: Element name that can be used for styling
|
* `name`: Element name that can be used for styling
|
||||||
@ -2310,6 +2313,7 @@ Elements
|
|||||||
* `frame loop range` (Optional): Range of the animation frames.
|
* `frame loop range` (Optional): Range of the animation frames.
|
||||||
* Defaults to the full range of all available frames.
|
* Defaults to the full range of all available frames.
|
||||||
* Syntax: `<begin>,<end>`
|
* Syntax: `<begin>,<end>`
|
||||||
|
* `animation speed` (Optional): Sets the animation speed. Default 0 FPS.
|
||||||
|
|
||||||
### `item_image[<X>,<Y>;<W>,<H>;<item name>]`
|
### `item_image[<X>,<Y>;<W>,<H>;<item name>]`
|
||||||
|
|
||||||
@ -2675,7 +2679,7 @@ Elements
|
|||||||
* `span=<value>`: number of following columns to affect
|
* `span=<value>`: number of following columns to affect
|
||||||
(default: infinite).
|
(default: infinite).
|
||||||
|
|
||||||
### `style[<selector 1>,<selector 2>;<prop1>;<prop2>;...]`
|
### `style[<selector 1>,<selector 2>,...;<prop1>;<prop2>;...]`
|
||||||
|
|
||||||
* Set the style for the element(s) matching `selector` by name.
|
* Set the style for the element(s) matching `selector` by name.
|
||||||
* `selector` can be one of:
|
* `selector` can be one of:
|
||||||
@ -2688,7 +2692,7 @@ Elements
|
|||||||
* See [Styling Formspecs].
|
* See [Styling Formspecs].
|
||||||
|
|
||||||
|
|
||||||
### `style_type[<selector 1>,<selector 2>;<prop1>;<prop2>;...]`
|
### `style_type[<selector 1>,<selector 2>,...;<prop1>;<prop2>;...]`
|
||||||
|
|
||||||
* Set the style for the element(s) matching `selector` by type.
|
* Set the style for the element(s) matching `selector` by type.
|
||||||
* `selector` can be one of:
|
* `selector` can be one of:
|
||||||
@ -2761,10 +2765,10 @@ Styling Formspecs
|
|||||||
|
|
||||||
Formspec elements can be themed using the style elements:
|
Formspec elements can be themed using the style elements:
|
||||||
|
|
||||||
style[<name 1>,<name 2>;<prop1>;<prop2>;...]
|
style[<name 1>,<name 2>,...;<prop1>;<prop2>;...]
|
||||||
style[<name 1>:<state>,<name 2>:<state>;<prop1>;<prop2>;...]
|
style[<name 1>:<state>,<name 2>:<state>,...;<prop1>;<prop2>;...]
|
||||||
style_type[<type 1>,<type 2>;<prop1>;<prop2>;...]
|
style_type[<type 1>,<type 2>,...;<prop1>;<prop2>;...]
|
||||||
style_type[<type 1>:<state>,<type 2>:<state>;<prop1>;<prop2>;...]
|
style_type[<type 1>:<state>,<type 2>:<state>,...;<prop1>;<prop2>;...]
|
||||||
|
|
||||||
Where a prop is:
|
Where a prop is:
|
||||||
|
|
||||||
@ -3267,7 +3271,6 @@ Helper functions
|
|||||||
* returns true when the passed number represents NaN.
|
* returns true when the passed number represents NaN.
|
||||||
* `minetest.get_us_time()`
|
* `minetest.get_us_time()`
|
||||||
* returns time with microsecond precision. May not return wall time.
|
* returns time with microsecond precision. May not return wall time.
|
||||||
* This value might overflow on certain 32-bit systems!
|
|
||||||
* `table.copy(table)`: returns a table
|
* `table.copy(table)`: returns a table
|
||||||
* returns a deep copy of `table`
|
* returns a deep copy of `table`
|
||||||
* `table.indexof(list, val)`: returns the smallest numerical index containing
|
* `table.indexof(list, val)`: returns the smallest numerical index containing
|
||||||
@ -6041,18 +6044,18 @@ an itemstring, a table or `nil`.
|
|||||||
stack).
|
stack).
|
||||||
* `set_metadata(metadata)`: (DEPRECATED) Returns true.
|
* `set_metadata(metadata)`: (DEPRECATED) Returns true.
|
||||||
* `get_description()`: returns the description shown in inventory list tooltips.
|
* `get_description()`: returns the description shown in inventory list tooltips.
|
||||||
* The engine uses the same as this function for item descriptions.
|
* The engine uses this when showing item descriptions in tooltips.
|
||||||
* Fields for finding the description, in order:
|
* Fields for finding the description, in order:
|
||||||
* `description` in item metadata (See [Item Metadata].)
|
* `description` in item metadata (See [Item Metadata].)
|
||||||
* `description` in item definition
|
* `description` in item definition
|
||||||
* item name
|
* item name
|
||||||
* `get_short_description()`: returns the short description.
|
* `get_short_description()`: returns the short description or nil.
|
||||||
* Unlike the description, this does not include new lines.
|
* Unlike the description, this does not include new lines.
|
||||||
* The engine uses the same as this function for short item descriptions.
|
|
||||||
* Fields for finding the short description, in order:
|
* Fields for finding the short description, in order:
|
||||||
* `short_description` in item metadata (See [Item Metadata].)
|
* `short_description` in item metadata (See [Item Metadata].)
|
||||||
* `short_description` in item definition
|
* `short_description` in item definition
|
||||||
* first line of the description (See `get_description()`.)
|
* first line of the description (From item meta or def, see `get_description()`.)
|
||||||
|
* Returns nil if none of the above are set
|
||||||
* `clear()`: removes all items from the stack, making it empty.
|
* `clear()`: removes all items from the stack, making it empty.
|
||||||
* `replace(item)`: replace the contents of this stack.
|
* `replace(item)`: replace the contents of this stack.
|
||||||
* `item` can also be an itemstring or table.
|
* `item` can also be an itemstring or table.
|
||||||
@ -6276,15 +6279,21 @@ object you are working with still exists.
|
|||||||
* `get_nametag_attributes()`
|
* `get_nametag_attributes()`
|
||||||
* returns a table with the attributes of the nametag of an object
|
* returns a table with the attributes of the nametag of an object
|
||||||
* {
|
* {
|
||||||
color = {a=0..255, r=0..255, g=0..255, b=0..255},
|
|
||||||
text = "",
|
text = "",
|
||||||
|
color = {a=0..255, r=0..255, g=0..255, b=0..255},
|
||||||
|
bgcolor = {a=0..255, r=0..255, g=0..255, b=0..255},
|
||||||
}
|
}
|
||||||
* `set_nametag_attributes(attributes)`
|
* `set_nametag_attributes(attributes)`
|
||||||
* sets the attributes of the nametag of an object
|
* sets the attributes of the nametag of an object
|
||||||
* `attributes`:
|
* `attributes`:
|
||||||
{
|
{
|
||||||
color = ColorSpec,
|
|
||||||
text = "My Nametag",
|
text = "My Nametag",
|
||||||
|
color = ColorSpec,
|
||||||
|
-- ^ Text color
|
||||||
|
bgcolor = ColorSpec or false,
|
||||||
|
-- ^ Sets background color of nametag
|
||||||
|
-- `false` will cause the background to be set automatically based on user settings
|
||||||
|
-- Default: false
|
||||||
}
|
}
|
||||||
|
|
||||||
#### Lua entity only (no-op for other objects)
|
#### Lua entity only (no-op for other objects)
|
||||||
@ -6958,9 +6967,13 @@ Player properties need to be saved manually.
|
|||||||
-- For all other objects, a nil or empty string removes the nametag.
|
-- For all other objects, a nil or empty string removes the nametag.
|
||||||
-- To hide a nametag, set its color alpha to zero. That will disable it entirely.
|
-- To hide a nametag, set its color alpha to zero. That will disable it entirely.
|
||||||
|
|
||||||
|
|
||||||
nametag_color = <ColorSpec>,
|
nametag_color = <ColorSpec>,
|
||||||
-- Sets color of nametag
|
-- Sets text color of nametag
|
||||||
|
|
||||||
|
nametag_bgcolor = <ColorSpec>,
|
||||||
|
-- Sets background color of nametag
|
||||||
|
-- `false` will cause the background to be set automatically based on user settings.
|
||||||
|
-- Default: false
|
||||||
|
|
||||||
infotext = "",
|
infotext = "",
|
||||||
-- By default empty, text to be shown when pointed at object
|
-- By default empty, text to be shown when pointed at object
|
||||||
@ -7173,8 +7186,9 @@ Used by `minetest.register_node`, `minetest.register_craftitem`, and
|
|||||||
|
|
||||||
short_description = "Steel Axe",
|
short_description = "Steel Axe",
|
||||||
-- Must not contain new lines.
|
-- Must not contain new lines.
|
||||||
-- Defaults to the first line of description.
|
-- Defaults to nil.
|
||||||
-- See also: `get_short_description` in [`ItemStack`]
|
-- Use an [`ItemStack`] to get the short description, eg:
|
||||||
|
-- ItemStack(itemname):get_short_description()
|
||||||
|
|
||||||
groups = {},
|
groups = {},
|
||||||
-- key = name, value = rating; rating = 1..3.
|
-- key = name, value = rating; rating = 1..3.
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
Minetest Lua Mainmenu API Reference 5.4.0
|
Minetest Lua Mainmenu API Reference 5.5.0
|
||||||
=========================================
|
=========================================
|
||||||
|
|
||||||
Introduction
|
Introduction
|
||||||
|
Before Width: | Height: | Size: 790 B After Width: | Height: | Size: 7.1 KiB |
@ -1,3 +0,0 @@
|
|||||||
This is for testing loading textures from subfolders.
|
|
||||||
If it works correctly, the default_grass_side.png file in this folder is used but
|
|
||||||
default_grass.png is not overwritten by the file in this folder.
|
|
7
games/devtest/mods/basenodes/textures/info.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
|
||||||
|
The dirt_with_grass folder is for testing loading textures from subfolders.
|
||||||
|
If it works correctly, the default_grass_side.png file in the folder is used but
|
||||||
|
default_grass.png is not overwritten by the file in the folder.
|
||||||
|
|
||||||
|
default_dirt.png should be overwritten by the default_dirt.png in the unittests
|
||||||
|
mod which depends on basenodes.
|
@ -23,6 +23,18 @@ minetest.register_node("chest:chest", {
|
|||||||
local inv = meta:get_inventory()
|
local inv = meta:get_inventory()
|
||||||
return inv:is_empty("main")
|
return inv:is_empty("main")
|
||||||
end,
|
end,
|
||||||
|
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||||
|
minetest.chat_send_player(player:get_player_name(), "Allow put: " .. stack:to_string())
|
||||||
|
return stack:get_count()
|
||||||
|
end,
|
||||||
|
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||||
|
minetest.chat_send_player(player:get_player_name(), "Allow take: " .. stack:to_string())
|
||||||
|
return stack:get_count()
|
||||||
|
end,
|
||||||
|
on_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||||
|
minetest.chat_send_player(player:get_player_name(), "On put: " .. stack:to_string())
|
||||||
|
end,
|
||||||
|
on_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||||
|
minetest.chat_send_player(player:get_player_name(), "On take: " .. stack:to_string())
|
||||||
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
@ -215,5 +215,5 @@ minetest.register_chatcommand("test_place_nodes", {
|
|||||||
})
|
})
|
||||||
|
|
||||||
core.register_on_chatcommand(function(name, command, params)
|
core.register_on_chatcommand(function(name, command, params)
|
||||||
minetest.log("caught command '"..command.."', issued by '"..name.."'. Parameters: '"..params.."'")
|
minetest.log("action", "caught command '"..command.."', issued by '"..name.."'. Parameters: '"..params.."'")
|
||||||
end)
|
end)
|
||||||
|
@ -103,23 +103,35 @@ minetest.register_entity("testentities:nametag", {
|
|||||||
|
|
||||||
on_activate = function(self, staticdata)
|
on_activate = function(self, staticdata)
|
||||||
if staticdata ~= "" then
|
if staticdata ~= "" then
|
||||||
self.color = minetest.deserialize(staticdata).color
|
local data = minetest.deserialize(staticdata)
|
||||||
|
self.color = data.color
|
||||||
|
self.bgcolor = data.bgcolor
|
||||||
else
|
else
|
||||||
self.color = {
|
self.color = {
|
||||||
r = math.random(0, 255),
|
r = math.random(0, 255),
|
||||||
g = math.random(0, 255),
|
g = math.random(0, 255),
|
||||||
b = math.random(0, 255),
|
b = math.random(0, 255),
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if math.random(0, 10) > 5 then
|
||||||
|
self.bgcolor = {
|
||||||
|
r = math.random(0, 255),
|
||||||
|
g = math.random(0, 255),
|
||||||
|
b = math.random(0, 255),
|
||||||
|
a = math.random(0, 255),
|
||||||
|
}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
assert(self.color)
|
assert(self.color)
|
||||||
self.object:set_properties({
|
self.object:set_properties({
|
||||||
nametag = tostring(math.random(1000, 10000)),
|
nametag = tostring(math.random(1000, 10000)),
|
||||||
nametag_color = self.color,
|
nametag_color = self.color,
|
||||||
|
nametag_bgcolor = self.bgcolor,
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
|
||||||
get_staticdata = function(self)
|
get_staticdata = function(self)
|
||||||
return minetest.serialize({ color = self.color })
|
return minetest.serialize({ color = self.color, bgcolor = self.bgcolor })
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
@ -362,20 +362,51 @@ Number]
|
|||||||
animated_image[5.5,0.5;5,2;;testformspec_animation.png;4;100]
|
animated_image[5.5,0.5;5,2;;testformspec_animation.png;4;100]
|
||||||
animated_image[5.5,2.75;5,2;;testformspec_animation.jpg;4;100]
|
animated_image[5.5,2.75;5,2;;testformspec_animation.jpg;4;100]
|
||||||
|
|
||||||
|
]],
|
||||||
|
|
||||||
|
-- Model
|
||||||
|
[[
|
||||||
|
formspec_version[3]
|
||||||
|
size[12,13]
|
||||||
style[m1;bgcolor=black]
|
style[m1;bgcolor=black]
|
||||||
model[0.5,6;4,4;m1;testformspec_character.b3d;testformspec_character.png]
|
style[m2;bgcolor=black]
|
||||||
model[5,6;4,4;m2;testformspec_chest.obj;default_chest_top.png,default_chest_top.png,default_chest_side.png,default_chest_side.png,default_chest_front.png,default_chest_inside.png;30,1;true;true]
|
label[5,1;all defaults]
|
||||||
|
label[5,5.1;angle = 0, 180
|
||||||
|
continuous = false
|
||||||
|
mouse control = false
|
||||||
|
frame loop range = 0,30]
|
||||||
|
label[5,9.2;continuous = true
|
||||||
|
mouse control = true]
|
||||||
|
model[0.5,0.1;4,4;m1;testformspec_character.b3d;testformspec_character.png]
|
||||||
|
model[0.5,4.2;4,4;m2;testformspec_character.b3d;testformspec_character.png;0,180;false;false;0,30]
|
||||||
|
model[0.5,8.3;4,4;m3;testformspec_chest.obj;default_chest_top.png,default_chest_top.png,default_chest_side.png,default_chest_side.png,default_chest_front.png,default_chest_inside.png;30,1;true;true]
|
||||||
]],
|
]],
|
||||||
|
|
||||||
-- Scroll containers
|
-- Scroll containers
|
||||||
"formspec_version[3]size[12,13]" ..
|
"formspec_version[3]size[12,13]" ..
|
||||||
scroll_fs,
|
scroll_fs,
|
||||||
|
|
||||||
|
-- Sound
|
||||||
|
[[
|
||||||
|
formspec_version[3]
|
||||||
|
size[12,13]
|
||||||
|
style[snd_btn;sound=soundstuff_mono]
|
||||||
|
style[snd_ibtn;sound=soundstuff_mono]
|
||||||
|
style[snd_drp;sound=soundstuff_mono]
|
||||||
|
style[snd_chk;sound=soundstuff_mono]
|
||||||
|
style[snd_tab;sound=soundstuff_mono]
|
||||||
|
button[0.5,0.5;2,1;snd_btn;Sound]
|
||||||
|
image_button[0.5,2;2,1;testformspec_item.png;snd_ibtn;Sound]
|
||||||
|
dropdown[0.5,4;4;snd_drp;Sound,Two,Three;]
|
||||||
|
checkbox[0.5,5.5.5;snd_chk;Sound;]
|
||||||
|
tabheader[0.5,7;8,0.65;snd_tab;Soundtab1,Soundtab2,Soundtab3;1;false;false]
|
||||||
|
]],
|
||||||
}
|
}
|
||||||
|
|
||||||
local function show_test_formspec(pname, page_id)
|
local function show_test_formspec(pname, page_id)
|
||||||
page_id = page_id or 2
|
page_id = page_id or 2
|
||||||
|
|
||||||
local fs = pages[page_id] .. "tabheader[0,0;8,0.65;maintabs;Real Coord,Styles,Noclip,Hypertext,Tabs,Invs,Anim,ScrollC;" .. page_id .. ";false;false]"
|
local fs = pages[page_id] .. "tabheader[0,0;8,0.65;maintabs;Real Coord,Styles,Noclip,Hypertext,Tabs,Invs,Anim,Model,ScrollC,Sound;" .. page_id .. ";false;false]"
|
||||||
|
|
||||||
minetest.show_formspec(pname, "testformspec:formspec", fs)
|
minetest.show_formspec(pname, "testformspec:formspec", fs)
|
||||||
end
|
end
|
||||||
|
@ -33,6 +33,13 @@ Usage:
|
|||||||
* Punch node: Make it fall
|
* Punch node: Make it fall
|
||||||
* Place: Try to teleport up to 2 units upwards, then make it fall
|
* Place: Try to teleport up to 2 units upwards, then make it fall
|
||||||
|
|
||||||
|
## Node Meta Editor
|
||||||
|
Edit and view metadata of nodes.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
|
||||||
|
* Punch: Open node metadata editor
|
||||||
|
|
||||||
## Entity Rotator
|
## Entity Rotator
|
||||||
Changes the entity rotation (with `set_rotation`).
|
Changes the entity rotation (with `set_rotation`).
|
||||||
|
|
||||||
@ -90,6 +97,13 @@ Usage:
|
|||||||
* Place: Increase move distance
|
* Place: Increase move distance
|
||||||
* Sneak+place: Decrease move distance
|
* Sneak+place: Decrease move distance
|
||||||
|
|
||||||
|
## Children Getter
|
||||||
|
Shows list of objects that are attached to an object (aka "children") in chat.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
* Punch object: Show children of punched object
|
||||||
|
* Punch air: Show your own children
|
||||||
|
|
||||||
## Entity Visual Scaler
|
## Entity Visual Scaler
|
||||||
Change visual size of entities
|
Change visual size of entities
|
||||||
|
|
||||||
@ -97,3 +111,10 @@ Usage:
|
|||||||
|
|
||||||
* Punch entity to increase visual size
|
* Punch entity to increase visual size
|
||||||
* Sneak+punch entity to decrease visual size
|
* Sneak+punch entity to decrease visual size
|
||||||
|
|
||||||
|
## Light Tool
|
||||||
|
Show light level of node.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
* Punch: Show light info of node in front of the punched node's side
|
||||||
|
* Place: Show light info of the node that you touched
|
||||||
|
@ -3,8 +3,6 @@ local F = minetest.formspec_escape
|
|||||||
|
|
||||||
dofile(minetest.get_modpath("testtools") .. "/light.lua")
|
dofile(minetest.get_modpath("testtools") .. "/light.lua")
|
||||||
|
|
||||||
-- TODO: Add a Node Metadata tool
|
|
||||||
|
|
||||||
minetest.register_tool("testtools:param2tool", {
|
minetest.register_tool("testtools:param2tool", {
|
||||||
description = S("Param2 Tool") .."\n"..
|
description = S("Param2 Tool") .."\n"..
|
||||||
S("Modify param2 value of nodes") .."\n"..
|
S("Modify param2 value of nodes") .."\n"..
|
||||||
@ -111,25 +109,6 @@ minetest.register_tool("testtools:node_setter", {
|
|||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
minetest.register_on_player_receive_fields(function(player, formname, fields)
|
|
||||||
if formname == "testtools:node_setter" then
|
|
||||||
local playername = player:get_player_name()
|
|
||||||
local witem = player:get_wielded_item()
|
|
||||||
if witem:get_name() == "testtools:node_setter" then
|
|
||||||
if fields.nodename and fields.param2 then
|
|
||||||
local param2 = tonumber(fields.param2)
|
|
||||||
if not param2 then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
local meta = witem:get_meta()
|
|
||||||
meta:set_string("node", fields.nodename)
|
|
||||||
meta:set_int("node_param2", param2)
|
|
||||||
player:set_wielded_item(witem)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
|
|
||||||
minetest.register_tool("testtools:remover", {
|
minetest.register_tool("testtools:remover", {
|
||||||
description = S("Remover") .."\n"..
|
description = S("Remover") .."\n"..
|
||||||
S("Punch: Remove pointed node or object"),
|
S("Punch: Remove pointed node or object"),
|
||||||
@ -634,6 +613,54 @@ minetest.register_tool("testtools:object_attacher", {
|
|||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
local function print_object(obj)
|
||||||
|
if obj:is_player() then
|
||||||
|
return "player '"..obj:get_player_name().."'"
|
||||||
|
elseif obj:get_luaentity() then
|
||||||
|
return "LuaEntity '"..obj:get_luaentity().name.."'"
|
||||||
|
else
|
||||||
|
return "object"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
minetest.register_tool("testtools:children_getter", {
|
||||||
|
description = S("Children Getter") .."\n"..
|
||||||
|
S("Shows list of objects attached to object") .."\n"..
|
||||||
|
S("Punch object to show its 'children'") .."\n"..
|
||||||
|
S("Punch air to show your own 'children'"),
|
||||||
|
inventory_image = "testtools_children_getter.png",
|
||||||
|
groups = { testtool = 1, disable_repair = 1 },
|
||||||
|
on_use = function(itemstack, user, pointed_thing)
|
||||||
|
if user and user:is_player() then
|
||||||
|
local name = user:get_player_name()
|
||||||
|
local selected_object
|
||||||
|
local self_name
|
||||||
|
if pointed_thing.type == "object" then
|
||||||
|
selected_object = pointed_thing.ref
|
||||||
|
elseif pointed_thing.type == "nothing" then
|
||||||
|
selected_object = user
|
||||||
|
else
|
||||||
|
return
|
||||||
|
end
|
||||||
|
self_name = print_object(selected_object)
|
||||||
|
local children = selected_object:get_children()
|
||||||
|
local ret = ""
|
||||||
|
for c=1, #children do
|
||||||
|
ret = ret .. "* " .. print_object(children[c])
|
||||||
|
if c < #children then
|
||||||
|
ret = ret .. "\n"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if ret == "" then
|
||||||
|
ret = S("No children attached to @1.", self_name)
|
||||||
|
else
|
||||||
|
ret = S("Children of @1:", self_name) .. "\n" .. ret
|
||||||
|
end
|
||||||
|
minetest.chat_send_player(user:get_player_name(), ret)
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
-- Use loadstring to parse param as a Lua value
|
-- Use loadstring to parse param as a Lua value
|
||||||
local function use_loadstring(param, player)
|
local function use_loadstring(param, player)
|
||||||
-- For security reasons, require 'server' priv, just in case
|
-- For security reasons, require 'server' priv, just in case
|
||||||
@ -666,6 +693,68 @@ local function use_loadstring(param, player)
|
|||||||
return true, errOrResult
|
return true, errOrResult
|
||||||
end
|
end
|
||||||
|
|
||||||
|
-- Node Meta Editor
|
||||||
|
local node_meta_posses = {}
|
||||||
|
local node_meta_latest_keylist = {}
|
||||||
|
|
||||||
|
local function show_node_meta_formspec(user, pos, key, value, keylist)
|
||||||
|
local textlist
|
||||||
|
if keylist then
|
||||||
|
textlist = "textlist[0,0.5;2.5,6.5;keylist;"..keylist.."]"
|
||||||
|
else
|
||||||
|
textlist = ""
|
||||||
|
end
|
||||||
|
minetest.show_formspec(user:get_player_name(),
|
||||||
|
"testtools:node_meta_editor",
|
||||||
|
"size[15,9]"..
|
||||||
|
"label[0,0;"..F(S("Current keys:")).."]"..
|
||||||
|
textlist..
|
||||||
|
"field[3,0.5;12,1;key;"..F(S("Key"))..";"..F(key).."]"..
|
||||||
|
"textarea[3,1.5;12,6;value;"..F(S("Value (use empty value to delete key)"))..";"..F(value).."]"..
|
||||||
|
"button[0,8;3,1;get;"..F(S("Get value")).."]"..
|
||||||
|
"button[4,8;3,1;set;"..F(S("Set value")).."]"..
|
||||||
|
"label[0,7.2;"..F(S("pos = @1", minetest.pos_to_string(pos))).."]")
|
||||||
|
end
|
||||||
|
|
||||||
|
local function get_node_meta_keylist(meta, playername, escaped)
|
||||||
|
local keys = {}
|
||||||
|
local ekeys = {}
|
||||||
|
local mtable = meta:to_table()
|
||||||
|
for k,_ in pairs(mtable.fields) do
|
||||||
|
table.insert(keys, k)
|
||||||
|
if escaped then
|
||||||
|
table.insert(ekeys, F(k))
|
||||||
|
else
|
||||||
|
table.insert(ekeys, k)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
if playername then
|
||||||
|
node_meta_latest_keylist[playername] = keys
|
||||||
|
end
|
||||||
|
return table.concat(ekeys, ",")
|
||||||
|
end
|
||||||
|
|
||||||
|
minetest.register_tool("testtools:node_meta_editor", {
|
||||||
|
description = S("Node Meta Editor") .. "\n" ..
|
||||||
|
S("Place: Edit node metadata"),
|
||||||
|
inventory_image = "testtools_node_meta_editor.png",
|
||||||
|
groups = { testtool = 1, disable_repair = 1 },
|
||||||
|
on_place = function(itemstack, user, pointed_thing)
|
||||||
|
if pointed_thing.type ~= "node" then
|
||||||
|
return itemstack
|
||||||
|
end
|
||||||
|
if not user:is_player() then
|
||||||
|
return itemstack
|
||||||
|
end
|
||||||
|
local pos = pointed_thing.under
|
||||||
|
node_meta_posses[user:get_player_name()] = pos
|
||||||
|
local meta = minetest.get_meta(pos)
|
||||||
|
local inv = meta:get_inventory()
|
||||||
|
show_node_meta_formspec(user, pos, "", "", get_node_meta_keylist(meta, user:get_player_name(), true))
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_on_player_receive_fields(function(player, formname, fields)
|
minetest.register_on_player_receive_fields(function(player, formname, fields)
|
||||||
if not (player and player:is_player()) then
|
if not (player and player:is_player()) then
|
||||||
return
|
return
|
||||||
@ -728,5 +817,70 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
|||||||
editor_formspec(name, selected_objects[name], prop_to_string(props[key]), sel)
|
editor_formspec(name, selected_objects[name], prop_to_string(props[key]), sel)
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
elseif formname == "testtools:node_setter" then
|
||||||
|
local playername = player:get_player_name()
|
||||||
|
local witem = player:get_wielded_item()
|
||||||
|
if witem:get_name() == "testtools:node_setter" then
|
||||||
|
if fields.nodename and fields.param2 then
|
||||||
|
local param2 = tonumber(fields.param2)
|
||||||
|
if not param2 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local meta = witem:get_meta()
|
||||||
|
meta:set_string("node", fields.nodename)
|
||||||
|
meta:set_int("node_param2", param2)
|
||||||
|
player:set_wielded_item(witem)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
elseif formname == "testtools:node_meta_editor" then
|
||||||
|
local name = player:get_player_name()
|
||||||
|
local pos = node_meta_posses[name]
|
||||||
|
if fields.keylist then
|
||||||
|
local evnt = minetest.explode_textlist_event(fields.keylist)
|
||||||
|
if evnt.type == "DCL" or evnt.type == "CHG" then
|
||||||
|
local keylist_table = node_meta_latest_keylist[name]
|
||||||
|
if not pos then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local meta = minetest.get_meta(pos)
|
||||||
|
if not keylist_table then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
if #keylist_table == 0 then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local key = keylist_table[evnt.index]
|
||||||
|
local value = meta:get_string(key)
|
||||||
|
local keylist_escaped = {}
|
||||||
|
for k,v in pairs(keylist_table) do
|
||||||
|
keylist_escaped[k] = F(v)
|
||||||
|
end
|
||||||
|
local keylist = table.concat(keylist_escaped, ",")
|
||||||
|
show_node_meta_formspec(player, pos, key, value, keylist)
|
||||||
|
return
|
||||||
|
end
|
||||||
|
elseif fields.key and fields.key ~= "" and fields.value then
|
||||||
|
if not pos then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
local meta = minetest.get_meta(pos)
|
||||||
|
if fields.get then
|
||||||
|
local value = meta:get_string(fields.key)
|
||||||
|
show_node_meta_formspec(player, pos, fields.key, value,
|
||||||
|
get_node_meta_keylist(meta, name, true))
|
||||||
|
return
|
||||||
|
elseif fields.set then
|
||||||
|
meta:set_string(fields.key, fields.value)
|
||||||
|
show_node_meta_formspec(player, pos, fields.key, fields.value,
|
||||||
|
get_node_meta_keylist(meta, name, true))
|
||||||
|
return
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
minetest.register_on_leaveplayer(function(player)
|
||||||
|
local name = player:get_player_name()
|
||||||
|
node_meta_latest_keylist[name] = nil
|
||||||
|
node_meta_posses[name] = nil
|
||||||
|
end)
|
||||||
|
@ -1,22 +1,37 @@
|
|||||||
|
|
||||||
local S = minetest.get_translator("testtools")
|
local S = minetest.get_translator("testtools")
|
||||||
|
|
||||||
minetest.register_tool("testtools:lighttool", {
|
local function get_func(is_place)
|
||||||
description = S("Light tool"),
|
return function(itemstack, user, pointed_thing)
|
||||||
inventory_image = "testtools_lighttool.png",
|
local pos
|
||||||
groups = { testtool = 1, disable_repair = 1 },
|
if is_place then
|
||||||
on_use = function(itemstack, user, pointed_thing)
|
pos = pointed_thing.under
|
||||||
local pos = pointed_thing.above
|
else
|
||||||
|
pos = pointed_thing.above
|
||||||
|
end
|
||||||
if pointed_thing.type ~= "node" or not pos then
|
if pointed_thing.type ~= "node" or not pos then
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local node = minetest.get_node(pos)
|
local node = minetest.get_node(pos)
|
||||||
|
local pstr = minetest.pos_to_string(pos)
|
||||||
local time = minetest.get_timeofday()
|
local time = minetest.get_timeofday()
|
||||||
local sunlight = minetest.get_natural_light(pos)
|
local sunlight = minetest.get_natural_light(pos)
|
||||||
local artificial = minetest.get_artificial_light(node.param1)
|
local artificial = minetest.get_artificial_light(node.param1)
|
||||||
local message = ("param1 0x%02x | time %.5f | sunlight %d | artificial %d")
|
local message = ("pos=%s | param1=0x%02x | " ..
|
||||||
:format(node.param1, time, sunlight, artificial)
|
"sunlight=%d | artificial=%d | timeofday=%.5f" )
|
||||||
|
:format(pstr, node.param1, sunlight, artificial, time)
|
||||||
minetest.chat_send_player(user:get_player_name(), message)
|
minetest.chat_send_player(user:get_player_name(), message)
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
minetest.register_tool("testtools:lighttool", {
|
||||||
|
description = S("Light Tool") .. "\n" ..
|
||||||
|
S("Show light values of node") .. "\n" ..
|
||||||
|
S("Punch: Light of node above touched node") .. "\n" ..
|
||||||
|
S("Place: Light of touched node itself"),
|
||||||
|
inventory_image = "testtools_lighttool.png",
|
||||||
|
groups = { testtool = 1, disable_repair = 1 },
|
||||||
|
on_use = get_func(false),
|
||||||
|
on_place = get_func(true),
|
||||||
})
|
})
|
||||||
|
After Width: | Height: | Size: 281 B |
After Width: | Height: | Size: 135 B |
@ -26,15 +26,22 @@ minetest.register_chatcommand("item_description", {
|
|||||||
})
|
})
|
||||||
|
|
||||||
function unittests.test_short_desc()
|
function unittests.test_short_desc()
|
||||||
|
local function get_short_description(item)
|
||||||
|
return ItemStack(item):get_short_description()
|
||||||
|
end
|
||||||
|
|
||||||
local stack = ItemStack("unittests:colorful_pick")
|
local stack = ItemStack("unittests:colorful_pick")
|
||||||
assert(stack:get_short_description() == "Colorful Pickaxe")
|
assert(stack:get_short_description() == "Colorful Pickaxe")
|
||||||
assert(stack:get_short_description() == minetest.registered_items["unittests:colorful_pick"].short_description)
|
assert(get_short_description("unittests:colorful_pick") == "Colorful Pickaxe")
|
||||||
|
assert(minetest.registered_items["unittests:colorful_pick"].short_description == nil)
|
||||||
assert(stack:get_description() == full_description)
|
assert(stack:get_description() == full_description)
|
||||||
assert(stack:get_description() == minetest.registered_items["unittests:colorful_pick"].description)
|
assert(stack:get_description() == minetest.registered_items["unittests:colorful_pick"].description)
|
||||||
|
|
||||||
stack:get_meta():set_string("description", "Hello World")
|
stack:get_meta():set_string("description", "Hello World")
|
||||||
assert(stack:get_short_description() == "Colorful Pickaxe")
|
assert(stack:get_short_description() == "Hello World")
|
||||||
assert(stack:get_description() == "Hello World")
|
assert(stack:get_description() == "Hello World")
|
||||||
|
assert(get_short_description(stack) == "Hello World")
|
||||||
|
assert(get_short_description("unittests:colorful_pick") == "Colorful Pickaxe")
|
||||||
|
|
||||||
stack:get_meta():set_string("short_description", "Foo Bar")
|
stack:get_meta():set_string("short_description", "Foo Bar")
|
||||||
assert(stack:get_short_description() == "Foo Bar")
|
assert(stack:get_short_description() == "Foo Bar")
|
||||||
|
@ -1,2 +1,3 @@
|
|||||||
name = unittests
|
name = unittests
|
||||||
description = Adds automated unit tests for the engine
|
description = Adds automated unit tests for the engine
|
||||||
|
depends = basenodes
|
||||||
|
BIN
games/devtest/mods/unittests/textures/default_dirt.png
Normal file
After Width: | Height: | Size: 790 B |
@ -503,6 +503,11 @@
|
|||||||
|
|
||||||
### Basic
|
### Basic
|
||||||
|
|
||||||
|
# Whether nametag backgrounds should be shown by default.
|
||||||
|
# Mods may still set a background.
|
||||||
|
# type: bool
|
||||||
|
# show_nametag_backgrounds = true
|
||||||
|
|
||||||
# Enable vertex buffer objects.
|
# Enable vertex buffer objects.
|
||||||
# This should greatly improve graphics performance.
|
# This should greatly improve graphics performance.
|
||||||
# type: bool
|
# type: bool
|
||||||
@ -1298,7 +1303,7 @@
|
|||||||
# type: bool
|
# type: bool
|
||||||
# enable_damage = false
|
# enable_damage = false
|
||||||
|
|
||||||
# Enable creative mode for new created maps.
|
# Enable creative mode for all players
|
||||||
# type: bool
|
# type: bool
|
||||||
# creative_mode = false
|
# creative_mode = false
|
||||||
|
|
||||||
|
@ -8,7 +8,13 @@
|
|||||||
<string>minetest</string>
|
<string>minetest</string>
|
||||||
<key>CFBundleIconFile</key>
|
<key>CFBundleIconFile</key>
|
||||||
<string>dragonfire-icon.icns</string>
|
<string>dragonfire-icon.icns</string>
|
||||||
|
<key>CFBundleName</key>
|
||||||
|
<string>Minetest</string>
|
||||||
|
<key>CFBundleDisplayName</key>
|
||||||
|
<string>Minetest</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
<string>net.minetest.minetest</string>
|
<string>net.minetest.minetest</string>
|
||||||
|
<key>NSHighResolutionCapable</key>
|
||||||
|
<false/>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
|
@ -2,8 +2,8 @@ Section: games
|
|||||||
Priority: extra
|
Priority: extra
|
||||||
Standards-Version: 3.6.2
|
Standards-Version: 3.6.2
|
||||||
Package: minetest-staging
|
Package: minetest-staging
|
||||||
Version: 0.4.15-DATEPLACEHOLDER
|
Version: 5.4.0-DATEPLACEHOLDER
|
||||||
Depends: libc6, libcurl3-gnutls, libfreetype6, libirrlicht1.8, libjsoncpp1, LEVELDB_PLACEHOLDER, liblua5.1-0, libluajit-5.1-2, libopenal1, libsqlite3-0, libstdc++6, libvorbisfile3, libx11-6, zlib1g
|
Depends: libc6, libcurl3-gnutls, libfreetype6, libgl1, JPEG_PLACEHOLDER, libjsoncpp1, LEVELDB_PLACEHOLDER, libopenal1, libpng16-16, libsqlite3-0, libstdc++6, libvorbisfile3, libx11-6, libxxf86vm1, zlib1g
|
||||||
Maintainer: Loic Blot <loic.blot@unix-experience.fr>
|
Maintainer: Loic Blot <loic.blot@unix-experience.fr>
|
||||||
Homepage: https://www.minetest.net/
|
Homepage: https://www.minetest.net/
|
||||||
Vcs-Git: https://github.com/minetest/minetest.git
|
Vcs-Git: https://github.com/minetest/minetest.git
|
||||||
@ -12,15 +12,12 @@ Architecture: amd64
|
|||||||
Build-Depends:
|
Build-Depends:
|
||||||
cmake,
|
cmake,
|
||||||
gettext,
|
gettext,
|
||||||
libbz2-dev,
|
|
||||||
libcurl4-gnutls-dev,
|
libcurl4-gnutls-dev,
|
||||||
libfreetype6-dev,
|
libfreetype6-dev,
|
||||||
libglu1-mesa-dev,
|
libgl1-mesa-dev,
|
||||||
libirrlicht-dev (>= 1.7.0),
|
|
||||||
libjpeg-dev,
|
libjpeg-dev,
|
||||||
libjsoncpp-dev,
|
libjsoncpp-dev,
|
||||||
libleveldb-dev,
|
libleveldb-dev,
|
||||||
libluajit-5.1-dev | liblua5.1-dev,
|
|
||||||
libogg-dev,
|
libogg-dev,
|
||||||
libopenal-dev,
|
libopenal-dev,
|
||||||
libpng-dev,
|
libpng-dev,
|
||||||
@ -28,7 +25,7 @@ Build-Depends:
|
|||||||
libvorbis-dev,
|
libvorbis-dev,
|
||||||
libx11-dev,
|
libx11-dev,
|
||||||
zlib1g-dev
|
zlib1g-dev
|
||||||
Description: Multiplayer infinite-world block sandbox (server)
|
Description: Multiplayer infinite-world block sandbox game
|
||||||
Minetest is a minecraft-inspired game written from scratch and licensed
|
Minetest is a minecraft-inspired game written from scratch and licensed
|
||||||
under the LGPL (version 2.1 or later). It supports both survival and creative
|
under the LGPL (version 2.1 or later). It supports both survival and creative
|
||||||
modes along with multiplayer support, dynamic lighting, and an "infinite" map
|
modes along with multiplayer support, dynamic lighting, and an "infinite" map
|
||||||
|
@ -62,6 +62,6 @@
|
|||||||
<translation type="gettext">minetest</translation>
|
<translation type="gettext">minetest</translation>
|
||||||
<update_contact>sfan5@live.de</update_contact>
|
<update_contact>sfan5@live.de</update_contact>
|
||||||
<releases>
|
<releases>
|
||||||
<release date="2019-10-12" version="5.1.0"/>
|
<release date="2021-02-23" version="5.4.0"/>
|
||||||
</releases>
|
</releases>
|
||||||
</component>
|
</component>
|
||||||
|
1077
po/ar/minetest.po
@ -7,7 +7,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: minetest\n"
|
"Project-Id-Version: minetest\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2021-01-30 21:13+0100\n"
|
"POT-Creation-Date: 2021-02-23 19:03+0100\n"
|
||||||
"PO-Revision-Date: 2020-08-04 04:41+0000\n"
|
"PO-Revision-Date: 2020-08-04 04:41+0000\n"
|
||||||
"Last-Translator: atomicbeef <teddyg522@gmail.com>\n"
|
"Last-Translator: atomicbeef <teddyg522@gmail.com>\n"
|
||||||
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/minetest/"
|
"Language-Team: Bulgarian <https://hosted.weblate.org/projects/minetest/"
|
||||||
@ -709,6 +709,10 @@ msgstr ""
|
|||||||
msgid "Loading..."
|
msgid "Loading..."
|
||||||
msgstr "Зарежда..."
|
msgstr "Зарежда..."
|
||||||
|
|
||||||
|
#: builtin/mainmenu/serverlistmgr.lua
|
||||||
|
msgid "Public server list is disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/serverlistmgr.lua
|
#: builtin/mainmenu/serverlistmgr.lua
|
||||||
msgid "Try reenabling public serverlist and check your internet connection."
|
msgid "Try reenabling public serverlist and check your internet connection."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1109,7 +1113,7 @@ msgstr ""
|
|||||||
#. When in doubt, test your translation.
|
#. When in doubt, test your translation.
|
||||||
#: src/client/fontengine.cpp
|
#: src/client/fontengine.cpp
|
||||||
msgid "needs_fallback_font"
|
msgid "needs_fallback_font"
|
||||||
msgstr ""
|
msgstr "no"
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1940,7 +1944,7 @@ msgstr ""
|
|||||||
#. language code (e.g. "de" for German).
|
#. language code (e.g. "de" for German).
|
||||||
#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp
|
#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp
|
||||||
msgid "LANG_CODE"
|
msgid "LANG_CODE"
|
||||||
msgstr ""
|
msgstr "bg"
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -2849,7 +2853,7 @@ msgid "Enable console window"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enable creative mode for new created maps."
|
msgid "Enable creative mode for all players"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5550,6 +5554,10 @@ msgid ""
|
|||||||
"A restart is required after changing this."
|
"A restart is required after changing this."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Show nametag backgrounds by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Shutdown message"
|
msgid "Shutdown message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6223,6 +6231,12 @@ msgid ""
|
|||||||
"If disabled, bitmap and XML vectors fonts are used instead."
|
"If disabled, bitmap and XML vectors fonts are used instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Whether nametag backgrounds should be shown by default.\n"
|
||||||
|
"Mods may still set a background."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Whether node texture animations should be desynchronized per mapblock."
|
msgid "Whether node texture animations should be desynchronized per mapblock."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
1105
po/de/minetest.po
@ -2,7 +2,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Dhivehi (Minetest)\n"
|
"Project-Id-Version: Dhivehi (Minetest)\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-06-13 23:17+0200\n"
|
"POT-Creation-Date: 2021-02-23 19:03+0100\n"
|
||||||
"PO-Revision-Date: 2019-11-10 15:04+0000\n"
|
"PO-Revision-Date: 2019-11-10 15:04+0000\n"
|
||||||
"Last-Translator: Krock <mk939@ymail.com>\n"
|
"Last-Translator: Krock <mk939@ymail.com>\n"
|
||||||
"Language-Team: Dhivehi <https://hosted.weblate.org/projects/minetest/"
|
"Language-Team: Dhivehi <https://hosted.weblate.org/projects/minetest/"
|
||||||
@ -48,10 +48,6 @@ msgstr "aa gulhumeh"
|
|||||||
msgid "The server has requested a reconnect:"
|
msgid "The server has requested a reconnect:"
|
||||||
msgstr "ސަާވަރ އިން ރިކަނެކްޓަކަށް އެދެފި:"
|
msgstr "ސަާވަރ އިން ރިކަނެކްޓަކަށް އެދެފި:"
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua src/client/game.cpp
|
|
||||||
msgid "Loading..."
|
|
||||||
msgstr "ލޯޑްވަނީ..."
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "Protocol version mismatch. "
|
msgid "Protocol version mismatch. "
|
||||||
msgstr "ޕްރޮޓޮކޯލް ވާޝަން ފުށުއެރުމެއް. "
|
msgstr "ޕްރޮޓޮކޯލް ވާޝަން ފުށުއެރުމެއް. "
|
||||||
@ -64,10 +60,6 @@ msgstr "ސާވަރ އިން ޕްރޮޓޮކޯލް ވާޝަން 1$ ތަންފީޒ
|
|||||||
msgid "Server supports protocol versions between $1 and $2. "
|
msgid "Server supports protocol versions between $1 and $2. "
|
||||||
msgstr "$1 އާއި 2$ ދެމެދުގެ ޕްރޮޓޮކޯލް ވާޝަންތައް ސާވަރ ސަިޕޯޓް ކުރޭ. "
|
msgstr "$1 އާއި 2$ ދެމެދުގެ ޕްރޮޓޮކޯލް ވާޝަންތައް ސާވަރ ސަިޕޯޓް ކުރޭ. "
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
|
||||||
msgid "Try reenabling public serverlist and check your internet connection."
|
|
||||||
msgstr "ޕަބްލިކް ސާވަރ ލިސްޓު އަލުން ޖައްސަވާ.އަދި އިންޓަނެޓް ކަނެކްޝަން ޗެކްކުރައްވާ."
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "We only support protocol version $1."
|
msgid "We only support protocol version $1."
|
||||||
msgstr "އަޅުގަނޑުމެން ހަމައެކަނި ސަޕޯޓްކުރަނީ ޕްރޮޓޮކޯލް ވާޝަން 1$."
|
msgstr "އަޅުގަނޑުމެން ހަމައެކަނި ސަޕޯޓްކުރަނީ ޕްރޮޓޮކޯލް ވާޝަން 1$."
|
||||||
@ -76,7 +68,8 @@ msgstr "އަޅުގަނޑުމެން ހަމައެކަނި ސަޕޯޓްކުރަނީ
|
|||||||
msgid "We support protocol versions between version $1 and $2."
|
msgid "We support protocol versions between version $1 and $2."
|
||||||
msgstr "އަޅުގަނޑުމެން 1$ އާއި 2$ އާއި ދެމެދުގެ ޕޮރޮޓޮކޯލް ވާޝަންތައް ސަޕޯޓް ކުރަން."
|
msgstr "އަޅުގަނޑުމެން 1$ އާއި 2$ އާއި ދެމެދުގެ ޕޮރޮޓޮކޯލް ވާޝަންތައް ސަޕޯޓް ކުރަން."
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
#: builtin/mainmenu/dlg_delete_content.lua
|
#: builtin/mainmenu/dlg_delete_content.lua
|
||||||
#: builtin/mainmenu/dlg_delete_world.lua
|
#: builtin/mainmenu/dlg_delete_world.lua
|
||||||
#: builtin/mainmenu/dlg_rename_modpack.lua
|
#: builtin/mainmenu/dlg_rename_modpack.lua
|
||||||
@ -86,7 +79,8 @@ msgstr "އަޅުގަނޑުމެން 1$ އާއި 2$ އާއި ދެމެދުގެ ޕޮ
|
|||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "ކެންސަލް"
|
msgstr "ކެންސަލް"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Dependencies:"
|
msgid "Dependencies:"
|
||||||
msgstr "ބަރޯސާވާ(ޑިޕެންޑެންސީޒް):"
|
msgstr "ބަރޯސާވާ(ޑިޕެންޑެންސީޒް):"
|
||||||
|
|
||||||
@ -161,14 +155,54 @@ msgstr "ދުނިޔެ:"
|
|||||||
msgid "enabled"
|
msgid "enabled"
|
||||||
msgstr "ޖައްސާފަ"
|
msgstr "ޖައްސާފަ"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "\"$1\" already exists. Would you like to overwrite it?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 and $2 dependencies will be installed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 by $2"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid ""
|
||||||
|
"$1 downloading,\n"
|
||||||
|
"$2 queued"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "$1 downloading..."
|
||||||
|
msgstr "ލޯޑްވަނީ..."
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 required dependencies could not be found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 will be installed, and $2 dependencies will be skipped."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "All packages"
|
msgid "All packages"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Already installed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Back to Main Menu"
|
msgid "Back to Main Menu"
|
||||||
msgstr "އެނބުރި މެއިން މެނޫއަށް"
|
msgstr "އެނބުރި މެއިން މެނޫއަށް"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Base Game:"
|
||||||
|
msgstr "ގޭމް ހޮސްޓްކުރޭ"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -191,6 +225,16 @@ msgstr "ގޭމްތައް"
|
|||||||
msgid "Install"
|
msgid "Install"
|
||||||
msgstr "އަޅާ"
|
msgstr "އަޅާ"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Install $1"
|
||||||
|
msgstr "އަޅާ"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Install missing dependencies"
|
||||||
|
msgstr "ލާޒިމުނޫން ޑިޕެންޑެންސީތައް:"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
msgid "Mods"
|
msgid "Mods"
|
||||||
@ -205,9 +249,24 @@ msgid "No results"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua builtin/mainmenu/tab_online.lua
|
msgid "No updates"
|
||||||
msgid "Search"
|
msgstr ""
|
||||||
msgstr "ހޯދާ"
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Not found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Overwrite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Please check that the base game is correct."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Queued"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Texture packs"
|
msgid "Texture packs"
|
||||||
@ -222,7 +281,11 @@ msgid "Update"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "View"
|
msgid "Update All [$1]"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "View more information in a web browser"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
@ -520,6 +583,10 @@ msgstr "ޑިފޯލްޓައަށް ރައްދުކުރޭ"
|
|||||||
msgid "Scale"
|
msgid "Scale"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
|
msgid "Search"
|
||||||
|
msgstr "ހޯދާ"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "Select directory"
|
msgid "Select directory"
|
||||||
@ -643,6 +710,18 @@ msgstr "$1 $2އަށް ނޭޅުނު"
|
|||||||
msgid "Unable to install a modpack as a $1"
|
msgid "Unable to install a modpack as a $1"
|
||||||
msgstr "$1 $2އަށް ނޭޅުނު"
|
msgstr "$1 $2އަށް ނޭޅުނު"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/serverlistmgr.lua src/client/game.cpp
|
||||||
|
msgid "Loading..."
|
||||||
|
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_content.lua
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Browse online content"
|
msgid "Browse online content"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -699,6 +778,17 @@ msgstr ""
|
|||||||
msgid "Credits"
|
msgid "Credits"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Open User Data Directory"
|
||||||
|
msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.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_credits.lua
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
msgid "Previous Contributors"
|
msgid "Previous Contributors"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -716,14 +806,10 @@ msgid "Bind Address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Configure"
|
|
||||||
msgstr "ބަދަލުގެނޭ"
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Creative Mode"
|
msgid "Creative Mode"
|
||||||
msgstr "ކްރިއޭޓިވް މޯޑް"
|
msgstr "ކްރިއޭޓިވް މޯޑް"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Enable Damage"
|
msgid "Enable Damage"
|
||||||
msgstr "ގެއްލުން ޖައްސާ"
|
msgstr "ގެއްލުން ޖައްސާ"
|
||||||
|
|
||||||
@ -740,8 +826,8 @@ msgid "Install games from ContentDB"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Name/Password"
|
msgid "Name"
|
||||||
msgstr "ޕާސްވޯޑް / ނަން"
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "New"
|
msgid "New"
|
||||||
@ -751,6 +837,11 @@ msgstr "އައު"
|
|||||||
msgid "No world created or selected!"
|
msgid "No world created or selected!"
|
||||||
msgstr "އެއްވެސް ދުނިޔެއެއް އުފެދިފައެއް ނުވަތަ އިހްތިޔާރުވެފައެއް ނެޠް!"
|
msgstr "އެއްވެސް ދުނިޔެއެއް އުފެދިފައެއް ނުވަތަ އިހްތިޔާރުވެފައެއް ނެޠް!"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Password"
|
||||||
|
msgstr "ޕާސްވޯޑް / ނަން"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Play Game"
|
msgid "Play Game"
|
||||||
msgstr "ގޭމް ކުޅޭ"
|
msgstr "ގޭމް ކުޅޭ"
|
||||||
@ -759,6 +850,11 @@ msgstr "ގޭމް ކުޅޭ"
|
|||||||
msgid "Port"
|
msgid "Port"
|
||||||
msgstr "ޕޯޓް"
|
msgstr "ޕޯޓް"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Select Mods"
|
||||||
|
msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Select World:"
|
msgid "Select World:"
|
||||||
msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:"
|
msgstr "ދުނިޔެ އިހްތިޔާރު ކުރޭ:"
|
||||||
@ -776,23 +872,23 @@ msgstr "ގޭމް ހޮސްޓްކުރޭ"
|
|||||||
msgid "Address / Port"
|
msgid "Address / Port"
|
||||||
msgstr "އެޑްރެސް / ޕޯޓް"
|
msgstr "އެޑްރެސް / ޕޯޓް"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr "ކަނެކްޓްކުރޭ"
|
msgstr "ކަނެކްޓްކުރޭ"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Creative mode"
|
msgid "Creative mode"
|
||||||
msgstr "ކްރިއޭޓިވް މޯޑް"
|
msgstr "ކްރިއޭޓިވް މޯޑް"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Damage enabled"
|
msgid "Damage enabled"
|
||||||
msgstr "އަނިޔާވުން ޖައްސާފައި"
|
msgstr "އަނިޔާވުން ޖައްސާފައި"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Del. Favorite"
|
msgid "Del. Favorite"
|
||||||
msgstr "އެންމެ ގަޔާނުވޭ"
|
msgstr "އެންމެ ގަޔާނުވޭ"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Favorite"
|
msgid "Favorite"
|
||||||
msgstr "އެންމެ ގަޔާވޭ"
|
msgstr "އެންމެ ގަޔާވޭ"
|
||||||
|
|
||||||
@ -801,16 +897,16 @@ msgstr "އެންމެ ގަޔާވޭ"
|
|||||||
msgid "Join Game"
|
msgid "Join Game"
|
||||||
msgstr "ގޭމް ހޮސްޓްކުރޭ"
|
msgstr "ގޭމް ހޮސްޓްކުރޭ"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Name / Password"
|
msgid "Name / Password"
|
||||||
msgstr "ޕާސްވޯޑް / ނަން"
|
msgstr "ޕާސްވޯޑް / ނަން"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Ping"
|
msgid "Ping"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. ~ PvP = Player versus Player
|
#. ~ PvP = Player versus Player
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "PvP enabled"
|
msgid "PvP enabled"
|
||||||
msgstr "ޕީ.ވީ.ޕީ ޖައްސާ"
|
msgstr "ޕީ.ވީ.ޕީ ޖައްސާ"
|
||||||
|
|
||||||
@ -838,10 +934,6 @@ msgstr ""
|
|||||||
msgid "Antialiasing:"
|
msgid "Antialiasing:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Are you sure to reset your singleplayer world?"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Autosave Screen Size"
|
msgid "Autosave Screen Size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -850,10 +942,6 @@ msgstr ""
|
|||||||
msgid "Bilinear Filter"
|
msgid "Bilinear Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Bump Mapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
||||||
msgid "Change Keys"
|
msgid "Change Keys"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -866,10 +954,6 @@ msgstr ""
|
|||||||
msgid "Fancy Leaves"
|
msgid "Fancy Leaves"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Generate Normal Maps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Mipmap"
|
msgid "Mipmap"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -878,10 +962,6 @@ msgstr ""
|
|||||||
msgid "Mipmap + Aniso. Filter"
|
msgid "Mipmap + Aniso. Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "No"
|
|
||||||
msgstr "ނޫން"
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "No Filter"
|
msgid "No Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -910,18 +990,10 @@ msgstr ""
|
|||||||
msgid "Opaque Water"
|
msgid "Opaque Water"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax Occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Particles"
|
msgid "Particles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Reset singleplayer world"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Screen:"
|
msgid "Screen:"
|
||||||
msgstr "ސްކްރީން:"
|
msgstr "ސްކްރީން:"
|
||||||
@ -934,6 +1006,10 @@ msgstr ""
|
|||||||
msgid "Shaders"
|
msgid "Shaders"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
|
msgid "Shaders (experimental)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Shaders (unavailable)"
|
msgid "Shaders (unavailable)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -978,22 +1054,6 @@ msgstr ""
|
|||||||
msgid "Waving Plants"
|
msgid "Waving Plants"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Yes"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Config mods"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Main"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Start Singleplayer"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/client.cpp
|
#: src/client/client.cpp
|
||||||
msgid "Connection timed out."
|
msgid "Connection timed out."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1156,13 +1216,13 @@ msgid ""
|
|||||||
"- %s: move backwards\n"
|
"- %s: move backwards\n"
|
||||||
"- %s: move left\n"
|
"- %s: move left\n"
|
||||||
"- %s: move right\n"
|
"- %s: move right\n"
|
||||||
"- %s: jump/climb\n"
|
"- %s: jump/climb up\n"
|
||||||
"- %s: sneak/go down\n"
|
"- %s: dig/punch\n"
|
||||||
|
"- %s: place/use\n"
|
||||||
|
"- %s: sneak/climb down\n"
|
||||||
"- %s: drop item\n"
|
"- %s: drop item\n"
|
||||||
"- %s: inventory\n"
|
"- %s: inventory\n"
|
||||||
"- Mouse: turn/look\n"
|
"- Mouse: turn/look\n"
|
||||||
"- Mouse left: dig/punch\n"
|
|
||||||
"- Mouse right: place/use\n"
|
|
||||||
"- Mouse wheel: select item\n"
|
"- Mouse wheel: select item\n"
|
||||||
"- %s: chat\n"
|
"- %s: chat\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1299,34 +1359,6 @@ msgstr ""
|
|||||||
msgid "Minimap currently disabled by game or mod"
|
msgid "Minimap currently disabled by game or mod"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap hidden"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid "Noclip mode disabled"
|
msgid "Noclip mode disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1720,6 +1752,24 @@ msgstr ""
|
|||||||
msgid "Zoom"
|
msgid "Zoom"
|
||||||
msgstr ""
|
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/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
#: src/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
||||||
msgid "Passwords do not match!"
|
msgid "Passwords do not match!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1964,12 +2014,6 @@ msgid ""
|
|||||||
"an island, set all 3 numbers equal for the raw shape."
|
"an island, set all 3 numbers equal for the raw shape."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"0 = parallax occlusion with slope information (faster).\n"
|
|
||||||
"1 = relief mapping (slower, more accurate)."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "2D noise that controls the shape/size of ridged mountains."
|
msgid "2D noise that controls the shape/size of ridged mountains."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2076,6 +2120,10 @@ msgstr ""
|
|||||||
msgid "ABM interval"
|
msgid "ABM interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ABM time budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Absolute limit of queued blocks to emerge"
|
msgid "Absolute limit of queued blocks to emerge"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2313,10 +2361,6 @@ msgstr ""
|
|||||||
msgid "Builtin"
|
msgid "Builtin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Bumpmapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
||||||
@ -2387,16 +2431,6 @@ msgid ""
|
|||||||
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Changes the main menu UI:\n"
|
|
||||||
"- Full: Multiple singleplayer worlds, game choice, texture pack chooser, "
|
|
||||||
"etc.\n"
|
|
||||||
"- Simple: One singleplayer world, no game or texture pack choosers. May "
|
|
||||||
"be\n"
|
|
||||||
"necessary for smaller screens."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Chat font size"
|
msgid "Chat font size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2548,6 +2582,10 @@ msgstr ""
|
|||||||
msgid "ContentDB Flag Blacklist"
|
msgid "ContentDB Flag Blacklist"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ContentDB Max Concurrent Downloads"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
#, fuzzy
|
#, fuzzy
|
||||||
msgid "ContentDB URL"
|
msgid "ContentDB URL"
|
||||||
@ -2606,7 +2644,9 @@ msgid "Crosshair alpha"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair alpha (opaqueness, between 0 and 255)."
|
msgid ""
|
||||||
|
"Crosshair alpha (opaqueness, between 0 and 255).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2614,7 +2654,9 @@ msgid "Crosshair color"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair color (R,G,B)."
|
msgid ""
|
||||||
|
"Crosshair color (R,G,B).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2715,12 +2757,6 @@ msgstr ""
|
|||||||
msgid "Defines location and terrain of optional hills and lakes."
|
msgid "Defines location and terrain of optional hills and lakes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Defines sampling step of texture.\n"
|
|
||||||
"A higher value results in smoother normal maps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Defines the base ground level."
|
msgid "Defines the base ground level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2791,6 +2827,10 @@ msgstr ""
|
|||||||
msgid "Desynchronize block animation"
|
msgid "Desynchronize block animation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Dig key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Digging particles"
|
msgid "Digging particles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2852,7 +2892,7 @@ msgid "Enable console window"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enable creative mode for new created maps."
|
msgid "Enable creative mode for all players"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2939,14 +2979,6 @@ msgstr ""
|
|||||||
msgid "Enables animation of inventory items."
|
msgid "Enables animation of inventory items."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables bumpmapping for textures. Normalmaps need to be supplied by the "
|
|
||||||
"texture pack\n"
|
|
||||||
"or need to be auto-generated.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enables caching of facedir rotated meshes."
|
msgid "Enables caching of facedir rotated meshes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2955,18 +2987,6 @@ msgstr ""
|
|||||||
msgid "Enables minimap."
|
msgid "Enables minimap."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables on the fly normalmap generation (Emboss effect).\n"
|
|
||||||
"Requires bumpmapping to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables parallax occlusion mapping.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enables the sound system.\n"
|
"Enables the sound system.\n"
|
||||||
@ -2983,12 +3003,6 @@ msgstr ""
|
|||||||
msgid "Entity methods"
|
msgid "Entity methods"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Experimental option, might cause visible spaces between blocks\n"
|
|
||||||
"when set to higher number than 0."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
||||||
@ -3000,8 +3014,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "FPS in pause menu"
|
msgid "FPS when unfocused or paused"
|
||||||
msgstr "ޕޯސް މެނޫގައި އެފް.ޕީ.އެސް"
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "FSAA"
|
msgid "FSAA"
|
||||||
@ -3301,10 +3315,6 @@ msgstr ""
|
|||||||
msgid "GUI scaling filter txr2img"
|
msgid "GUI scaling filter txr2img"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Generate normalmaps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Global callbacks"
|
msgid "Global callbacks"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3359,8 +3369,8 @@ msgstr ""
|
|||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Handling for deprecated Lua API calls:\n"
|
"Handling for deprecated Lua API calls:\n"
|
||||||
"- legacy: (try to) mimic old behaviour (default for release).\n"
|
"- none: Do not log deprecated calls\n"
|
||||||
"- log: mimic and log backtrace of deprecated call (default for debug).\n"
|
"- log: mimic and log backtrace of deprecated call (default).\n"
|
||||||
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3826,6 +3836,10 @@ msgstr ""
|
|||||||
msgid "Joystick button repetition interval"
|
msgid "Joystick button repetition interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Joystick deadzone"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Joystick frustum sensitivity"
|
msgid "Joystick frustum sensitivity"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3905,6 +3919,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for digging.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for dropping the currently selected item.\n"
|
"Key for dropping the currently selected item.\n"
|
||||||
@ -4004,6 +4025,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for placing.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for selecting the 11th hotbar slot.\n"
|
"Key for selecting the 11th hotbar slot.\n"
|
||||||
@ -4561,11 +4589,6 @@ msgstr ""
|
|||||||
msgid "Main menu script"
|
msgid "Main menu script"
|
||||||
msgstr "މެއިން މެނޫ ސްކްރިޕްޓް"
|
msgstr "މެއިން މެނޫ ސްކްރިޕްޓް"
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
#, fuzzy
|
|
||||||
msgid "Main menu style"
|
|
||||||
msgstr "މެއިން މެނޫ ސްކްރިޕްޓް"
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
||||||
@ -4579,6 +4602,14 @@ msgstr ""
|
|||||||
msgid "Makes all liquids opaque"
|
msgid "Makes all liquids opaque"
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Map directory"
|
msgid "Map directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4749,7 +4780,7 @@ msgid "Maximum FPS"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum FPS when game is paused."
|
msgid "Maximum FPS when the window is not focused, or when the game is paused."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -4797,6 +4828,13 @@ msgid ""
|
|||||||
"This limit is enforced per player."
|
"This limit is enforced per player."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum number of forceloaded mapblocks."
|
msgid "Maximum number of forceloaded mapblocks."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5029,14 +5067,6 @@ msgstr ""
|
|||||||
msgid "Noises"
|
msgid "Noises"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps sampling"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps strength"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Number of emerge threads"
|
msgid "Number of emerge threads"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5062,10 +5092,6 @@ msgid ""
|
|||||||
"memory consumption (4096=100MB, as a rule of thumb)."
|
"memory consumption (4096=100MB, as a rule of thumb)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Number of parallax occlusion iterations."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Online Content Repository"
|
msgid "Online Content Repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5091,34 +5117,6 @@ msgid ""
|
|||||||
"open."
|
"open."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall bias of parallax occlusion effect, usually scale/2."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall scale of parallax occlusion effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion bias"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion iterations"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion mode"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion scale"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Path of the fallback font.\n"
|
"Path of the fallback font.\n"
|
||||||
@ -5184,6 +5182,14 @@ msgstr ""
|
|||||||
msgid "Pitch move mode"
|
msgid "Pitch move mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place repetition interval"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Player is able to fly without being affected by gravity.\n"
|
"Player is able to fly without being affected by gravity.\n"
|
||||||
@ -5339,10 +5345,6 @@ msgstr ""
|
|||||||
msgid "Right key"
|
msgid "Right key"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Rightclick repetition interval"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "River channel depth"
|
msgid "River channel depth"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5594,6 +5596,16 @@ msgstr ""
|
|||||||
msgid "Show entity selection boxes"
|
msgid "Show entity selection boxes"
|
||||||
msgstr ""
|
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 nametag backgrounds by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Shutdown message"
|
msgid "Shutdown message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5723,10 +5735,6 @@ msgstr ""
|
|||||||
msgid "Strength of 3D mode parallax."
|
msgid "Strength of 3D mode parallax."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Strength of generated normalmaps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Strength of light curve boost.\n"
|
"Strength of light curve boost.\n"
|
||||||
@ -5820,6 +5828,10 @@ msgstr ""
|
|||||||
msgid "The URL for the content repository"
|
msgid "The URL for the content repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "The deadzone of the joystick"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The default format in which profiles are being saved,\n"
|
"The default format in which profiles are being saved,\n"
|
||||||
@ -5879,8 +5891,8 @@ msgid ""
|
|||||||
"A restart is required after changing this.\n"
|
"A restart is required after changing this.\n"
|
||||||
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
||||||
"otherwise.\n"
|
"otherwise.\n"
|
||||||
"On other platforms, OpenGL is recommended, and it’s the only driver with\n"
|
"On other platforms, OpenGL is recommended.\n"
|
||||||
"shader support currently."
|
"Shaders are supported by OpenGL (desktop only) and OGLES2 (experimental)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5904,6 +5916,12 @@ msgid ""
|
|||||||
"items. A value of 0 disables the functionality."
|
"items. A value of 0 disables the functionality."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated events\n"
|
"The time in seconds it takes between repeated events\n"
|
||||||
@ -5912,9 +5930,8 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated right clicks when holding the "
|
"The time in seconds it takes between repeated node placements when holding\n"
|
||||||
"right\n"
|
"the place button."
|
||||||
"mouse button."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -6049,6 +6066,17 @@ msgid ""
|
|||||||
"Gamma correct downscaling is not supported."
|
"Gamma correct downscaling is not supported."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Use multi-sample antialiasing (MSAA) to smooth out block edges.\n"
|
||||||
|
"This algorithm smooths out the 3D viewport while keeping the image sharp,\n"
|
||||||
|
"but it doesn't affect the insides of textures\n"
|
||||||
|
"(which is especially noticeable with transparent textures).\n"
|
||||||
|
"Visible spaces appear between nodes when shaders are disabled.\n"
|
||||||
|
"If set to 0, MSAA is disabled.\n"
|
||||||
|
"A restart is required after changing this option."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Use trilinear filtering when scaling textures."
|
msgid "Use trilinear filtering when scaling textures."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6251,6 +6279,12 @@ msgid ""
|
|||||||
"If disabled, bitmap and XML vectors fonts are used instead."
|
"If disabled, bitmap and XML vectors fonts are used instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Whether nametag backgrounds should be shown by default.\n"
|
||||||
|
"Mods may still set a background."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Whether node texture animations should be desynchronized per mapblock."
|
msgid "Whether node texture animations should be desynchronized per mapblock."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6374,6 +6408,24 @@ msgstr ""
|
|||||||
msgid "Y-level of seabed."
|
msgid "Y-level of seabed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when saving mapblocks to disk.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when sending mapblocks to the client.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "cURL file download timeout"
|
msgid "cURL file download timeout"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6386,12 +6438,25 @@ msgstr ""
|
|||||||
msgid "cURL timeout"
|
msgid "cURL timeout"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#, fuzzy
|
#~ msgid "Configure"
|
||||||
#~ msgid "Select Package File:"
|
#~ msgstr "ބަދަލުގެނޭ"
|
||||||
#~ msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:"
|
|
||||||
|
|
||||||
#~ msgid "Downloading and installing $1, please wait..."
|
#~ msgid "Downloading and installing $1, please wait..."
|
||||||
#~ msgstr "$1 ޑައުންލޯޑޮކޮށް އިންސްޓޯލްކުރަނީ، މަޑުކުރައްވާ..."
|
#~ msgstr "$1 ޑައުންލޯޑޮކޮށް އިންސްޓޯލްކުރަނީ، މަޑުކުރައްވާ..."
|
||||||
|
|
||||||
|
#~ msgid "FPS in pause menu"
|
||||||
|
#~ msgstr "ޕޯސް މެނޫގައި އެފް.ޕީ.އެސް"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
#~ msgid "Main menu style"
|
||||||
|
#~ msgstr "މެއިން މެނޫ ސްކްރިޕްޓް"
|
||||||
|
|
||||||
|
#~ msgid "No"
|
||||||
|
#~ msgstr "ނޫން"
|
||||||
|
|
||||||
#~ msgid "Ok"
|
#~ msgid "Ok"
|
||||||
#~ msgstr "emme rangalhu"
|
#~ msgstr "emme rangalhu"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
#~ msgid "Select Package File:"
|
||||||
|
#~ msgstr "މޮޑްގެ ފައިލް އިހްތިޔާރުކުރޭ:"
|
||||||
|
@ -2,9 +2,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Greek (Minetest)\n"
|
"Project-Id-Version: Greek (Minetest)\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-06-13 23:17+0200\n"
|
"POT-Creation-Date: 2021-02-23 19:03+0100\n"
|
||||||
"PO-Revision-Date: 2020-03-31 20:29+0000\n"
|
"PO-Revision-Date: 2021-02-13 08:50+0000\n"
|
||||||
"Last-Translator: THANOS SIOURDAKIS <siourdakisthanos@gmail.com>\n"
|
"Last-Translator: Michalis <michalisntovas@yahoo.gr>\n"
|
||||||
"Language-Team: Greek <https://hosted.weblate.org/projects/minetest/minetest/"
|
"Language-Team: Greek <https://hosted.weblate.org/projects/minetest/minetest/"
|
||||||
"el/>\n"
|
"el/>\n"
|
||||||
"Language: el\n"
|
"Language: el\n"
|
||||||
@ -12,7 +12,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 4.0-dev\n"
|
"X-Generator: Weblate 4.5-dev\n"
|
||||||
|
|
||||||
#: builtin/client/death_formspec.lua src/client/game.cpp
|
#: builtin/client/death_formspec.lua src/client/game.cpp
|
||||||
msgid "Respawn"
|
msgid "Respawn"
|
||||||
@ -46,10 +46,6 @@ msgstr "Επανασύνδεση"
|
|||||||
msgid "The server has requested a reconnect:"
|
msgid "The server has requested a reconnect:"
|
||||||
msgstr "Ο διακομιστής ζήτησε επανασύνδεση:"
|
msgstr "Ο διακομιστής ζήτησε επανασύνδεση:"
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua src/client/game.cpp
|
|
||||||
msgid "Loading..."
|
|
||||||
msgstr "Φόρτωση..."
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "Protocol version mismatch. "
|
msgid "Protocol version mismatch. "
|
||||||
msgstr "Ασυμφωνία έκδοσης πρωτοκόλλου. "
|
msgstr "Ασυμφωνία έκδοσης πρωτοκόλλου. "
|
||||||
@ -62,12 +58,6 @@ msgstr "Ο διακομιστής επιβάλλει το πρωτόκολλο
|
|||||||
msgid "Server supports protocol versions between $1 and $2. "
|
msgid "Server supports protocol versions between $1 and $2. "
|
||||||
msgstr "Ο διακομιστής υποστηρίζει εκδόσεις πρωτοκόλλων μεταξύ $1 και $2. "
|
msgstr "Ο διακομιστής υποστηρίζει εκδόσεις πρωτοκόλλων μεταξύ $1 και $2. "
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
|
||||||
msgid "Try reenabling public serverlist and check your internet connection."
|
|
||||||
msgstr ""
|
|
||||||
"Δοκιμάστε να ενεργοποιήσετε ξανά τη δημόσια λίστα διακομιστών και ελέγξτε τη "
|
|
||||||
"σύνδεσή σας στο διαδίκτυο."
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "We only support protocol version $1."
|
msgid "We only support protocol version $1."
|
||||||
msgstr "Υποστηρίζουμε μόνο το πρωτόκολλο έκδοσης $1."
|
msgstr "Υποστηρίζουμε μόνο το πρωτόκολλο έκδοσης $1."
|
||||||
@ -76,7 +66,8 @@ msgstr "Υποστηρίζουμε μόνο το πρωτόκολλο έκδοσ
|
|||||||
msgid "We support protocol versions between version $1 and $2."
|
msgid "We support protocol versions between version $1 and $2."
|
||||||
msgstr "Υποστηρίζουμε τις εκδόσεις πρωτοκόλλων μεταξύ της έκδοσης $1 και $2."
|
msgstr "Υποστηρίζουμε τις εκδόσεις πρωτοκόλλων μεταξύ της έκδοσης $1 και $2."
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
#: builtin/mainmenu/dlg_delete_content.lua
|
#: builtin/mainmenu/dlg_delete_content.lua
|
||||||
#: builtin/mainmenu/dlg_delete_world.lua
|
#: builtin/mainmenu/dlg_delete_world.lua
|
||||||
#: builtin/mainmenu/dlg_rename_modpack.lua
|
#: builtin/mainmenu/dlg_rename_modpack.lua
|
||||||
@ -84,9 +75,10 @@ msgstr "Υποστηρίζουμε τις εκδόσεις πρωτοκόλλω
|
|||||||
#: src/gui/guiConfirmRegistration.cpp src/gui/guiKeyChangeMenu.cpp
|
#: src/gui/guiConfirmRegistration.cpp src/gui/guiKeyChangeMenu.cpp
|
||||||
#: src/gui/guiPasswordChange.cpp
|
#: src/gui/guiPasswordChange.cpp
|
||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Ματαίωση"
|
msgstr "Άκυρο"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Dependencies:"
|
msgid "Dependencies:"
|
||||||
msgstr "Εξαρτήσεις:"
|
msgstr "Εξαρτήσεις:"
|
||||||
|
|
||||||
@ -157,22 +149,60 @@ msgstr ""
|
|||||||
msgid "enabled"
|
msgid "enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "\"$1\" already exists. Would you like to overwrite it?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 and $2 dependencies will be installed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 by $2"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid ""
|
||||||
|
"$1 downloading,\n"
|
||||||
|
"$2 queued"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "$1 downloading..."
|
||||||
|
msgstr "Λήψη ..."
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 required dependencies could not be found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 will be installed, and $2 dependencies will be skipped."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "All packages"
|
msgid "All packages"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Already installed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Back to Main Menu"
|
msgid "Back to Main Menu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Base Game:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#, fuzzy
|
|
||||||
msgid "Downloading..."
|
msgid "Downloading..."
|
||||||
msgstr "Φόρτωση..."
|
msgstr "Λήψη ..."
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Failed to download $1"
|
msgid "Failed to download $1"
|
||||||
@ -187,6 +217,14 @@ msgstr ""
|
|||||||
msgid "Install"
|
msgid "Install"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Install $1"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Install missing dependencies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
msgid "Mods"
|
msgid "Mods"
|
||||||
@ -201,8 +239,23 @@ msgid "No results"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua builtin/mainmenu/tab_online.lua
|
msgid "No updates"
|
||||||
msgid "Search"
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Not found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Overwrite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Please check that the base game is correct."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Queued"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
@ -218,7 +271,11 @@ msgid "Update"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "View"
|
msgid "Update All [$1]"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "View more information in a web browser"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
@ -512,6 +569,10 @@ msgstr ""
|
|||||||
msgid "Scale"
|
msgid "Scale"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
|
msgid "Search"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
msgid "Select directory"
|
msgid "Select directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -627,6 +688,20 @@ msgstr ""
|
|||||||
msgid "Unable to install a modpack as a $1"
|
msgid "Unable to install a modpack as a $1"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/serverlistmgr.lua src/client/game.cpp
|
||||||
|
msgid "Loading..."
|
||||||
|
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_content.lua
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Browse online content"
|
msgid "Browse online content"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -679,6 +754,16 @@ msgstr ""
|
|||||||
msgid "Credits"
|
msgid "Credits"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
|
msgid "Open User Data Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.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_credits.lua
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
msgid "Previous Contributors"
|
msgid "Previous Contributors"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -696,14 +781,10 @@ msgid "Bind Address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Configure"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Creative Mode"
|
msgid "Creative Mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Enable Damage"
|
msgid "Enable Damage"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -720,7 +801,7 @@ msgid "Install games from ContentDB"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Name/Password"
|
msgid "Name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
@ -731,6 +812,10 @@ msgstr ""
|
|||||||
msgid "No world created or selected!"
|
msgid "No world created or selected!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
msgid "Password"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Play Game"
|
msgid "Play Game"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -739,6 +824,10 @@ msgstr ""
|
|||||||
msgid "Port"
|
msgid "Port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
msgid "Select Mods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Select World:"
|
msgid "Select World:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -755,23 +844,23 @@ msgstr ""
|
|||||||
msgid "Address / Port"
|
msgid "Address / Port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Creative mode"
|
msgid "Creative mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Damage enabled"
|
msgid "Damage enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Del. Favorite"
|
msgid "Del. Favorite"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Favorite"
|
msgid "Favorite"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -779,16 +868,16 @@ msgstr ""
|
|||||||
msgid "Join Game"
|
msgid "Join Game"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Name / Password"
|
msgid "Name / Password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Ping"
|
msgid "Ping"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. ~ PvP = Player versus Player
|
#. ~ PvP = Player versus Player
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "PvP enabled"
|
msgid "PvP enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -816,10 +905,6 @@ msgstr ""
|
|||||||
msgid "Antialiasing:"
|
msgid "Antialiasing:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Are you sure to reset your singleplayer world?"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Autosave Screen Size"
|
msgid "Autosave Screen Size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -828,10 +913,6 @@ msgstr ""
|
|||||||
msgid "Bilinear Filter"
|
msgid "Bilinear Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Bump Mapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
||||||
msgid "Change Keys"
|
msgid "Change Keys"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -844,10 +925,6 @@ msgstr ""
|
|||||||
msgid "Fancy Leaves"
|
msgid "Fancy Leaves"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Generate Normal Maps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Mipmap"
|
msgid "Mipmap"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -856,10 +933,6 @@ msgstr ""
|
|||||||
msgid "Mipmap + Aniso. Filter"
|
msgid "Mipmap + Aniso. Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "No"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "No Filter"
|
msgid "No Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -888,18 +961,10 @@ msgstr ""
|
|||||||
msgid "Opaque Water"
|
msgid "Opaque Water"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax Occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Particles"
|
msgid "Particles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Reset singleplayer world"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Screen:"
|
msgid "Screen:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -912,6 +977,10 @@ msgstr ""
|
|||||||
msgid "Shaders"
|
msgid "Shaders"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
|
msgid "Shaders (experimental)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Shaders (unavailable)"
|
msgid "Shaders (unavailable)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -956,22 +1025,6 @@ msgstr ""
|
|||||||
msgid "Waving Plants"
|
msgid "Waving Plants"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Yes"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Config mods"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Main"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Start Singleplayer"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/client.cpp
|
#: src/client/client.cpp
|
||||||
msgid "Connection timed out."
|
msgid "Connection timed out."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1042,7 +1095,7 @@ msgstr ""
|
|||||||
#. When in doubt, test your translation.
|
#. When in doubt, test your translation.
|
||||||
#: src/client/fontengine.cpp
|
#: src/client/fontengine.cpp
|
||||||
msgid "needs_fallback_font"
|
msgid "needs_fallback_font"
|
||||||
msgstr "yes"
|
msgstr "no"
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1131,13 +1184,13 @@ msgid ""
|
|||||||
"- %s: move backwards\n"
|
"- %s: move backwards\n"
|
||||||
"- %s: move left\n"
|
"- %s: move left\n"
|
||||||
"- %s: move right\n"
|
"- %s: move right\n"
|
||||||
"- %s: jump/climb\n"
|
"- %s: jump/climb up\n"
|
||||||
"- %s: sneak/go down\n"
|
"- %s: dig/punch\n"
|
||||||
|
"- %s: place/use\n"
|
||||||
|
"- %s: sneak/climb down\n"
|
||||||
"- %s: drop item\n"
|
"- %s: drop item\n"
|
||||||
"- %s: inventory\n"
|
"- %s: inventory\n"
|
||||||
"- Mouse: turn/look\n"
|
"- Mouse: turn/look\n"
|
||||||
"- Mouse left: dig/punch\n"
|
|
||||||
"- Mouse right: place/use\n"
|
|
||||||
"- Mouse wheel: select item\n"
|
"- Mouse wheel: select item\n"
|
||||||
"- %s: chat\n"
|
"- %s: chat\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1258,34 +1311,6 @@ msgstr ""
|
|||||||
msgid "Minimap currently disabled by game or mod"
|
msgid "Minimap currently disabled by game or mod"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap hidden"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid "Noclip mode disabled"
|
msgid "Noclip mode disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1678,6 +1703,24 @@ msgstr ""
|
|||||||
msgid "Zoom"
|
msgid "Zoom"
|
||||||
msgstr ""
|
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/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
#: src/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
||||||
msgid "Passwords do not match!"
|
msgid "Passwords do not match!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1921,12 +1964,6 @@ msgid ""
|
|||||||
"an island, set all 3 numbers equal for the raw shape."
|
"an island, set all 3 numbers equal for the raw shape."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"0 = parallax occlusion with slope information (faster).\n"
|
|
||||||
"1 = relief mapping (slower, more accurate)."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "2D noise that controls the shape/size of ridged mountains."
|
msgid "2D noise that controls the shape/size of ridged mountains."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2033,6 +2070,10 @@ msgstr ""
|
|||||||
msgid "ABM interval"
|
msgid "ABM interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ABM time budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Absolute limit of queued blocks to emerge"
|
msgid "Absolute limit of queued blocks to emerge"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2266,10 +2307,6 @@ msgstr ""
|
|||||||
msgid "Builtin"
|
msgid "Builtin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Bumpmapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
||||||
@ -2340,16 +2377,6 @@ msgid ""
|
|||||||
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Changes the main menu UI:\n"
|
|
||||||
"- Full: Multiple singleplayer worlds, game choice, texture pack chooser, "
|
|
||||||
"etc.\n"
|
|
||||||
"- Simple: One singleplayer world, no game or texture pack choosers. May "
|
|
||||||
"be\n"
|
|
||||||
"necessary for smaller screens."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Chat font size"
|
msgid "Chat font size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2501,6 +2528,10 @@ msgstr ""
|
|||||||
msgid "ContentDB Flag Blacklist"
|
msgid "ContentDB Flag Blacklist"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ContentDB Max Concurrent Downloads"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "ContentDB URL"
|
msgid "ContentDB URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2558,7 +2589,9 @@ msgid "Crosshair alpha"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair alpha (opaqueness, between 0 and 255)."
|
msgid ""
|
||||||
|
"Crosshair alpha (opaqueness, between 0 and 255).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2566,7 +2599,9 @@ msgid "Crosshair color"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair color (R,G,B)."
|
msgid ""
|
||||||
|
"Crosshair color (R,G,B).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2665,12 +2700,6 @@ msgstr ""
|
|||||||
msgid "Defines location and terrain of optional hills and lakes."
|
msgid "Defines location and terrain of optional hills and lakes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Defines sampling step of texture.\n"
|
|
||||||
"A higher value results in smoother normal maps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Defines the base ground level."
|
msgid "Defines the base ground level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2741,6 +2770,10 @@ msgstr ""
|
|||||||
msgid "Desynchronize block animation"
|
msgid "Desynchronize block animation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Dig key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Digging particles"
|
msgid "Digging particles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2802,7 +2835,7 @@ msgid "Enable console window"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enable creative mode for new created maps."
|
msgid "Enable creative mode for all players"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2889,14 +2922,6 @@ msgstr ""
|
|||||||
msgid "Enables animation of inventory items."
|
msgid "Enables animation of inventory items."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables bumpmapping for textures. Normalmaps need to be supplied by the "
|
|
||||||
"texture pack\n"
|
|
||||||
"or need to be auto-generated.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enables caching of facedir rotated meshes."
|
msgid "Enables caching of facedir rotated meshes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2905,18 +2930,6 @@ msgstr ""
|
|||||||
msgid "Enables minimap."
|
msgid "Enables minimap."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables on the fly normalmap generation (Emboss effect).\n"
|
|
||||||
"Requires bumpmapping to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables parallax occlusion mapping.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enables the sound system.\n"
|
"Enables the sound system.\n"
|
||||||
@ -2933,12 +2946,6 @@ msgstr ""
|
|||||||
msgid "Entity methods"
|
msgid "Entity methods"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Experimental option, might cause visible spaces between blocks\n"
|
|
||||||
"when set to higher number than 0."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
||||||
@ -2950,7 +2957,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "FPS in pause menu"
|
msgid "FPS when unfocused or paused"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -3251,10 +3258,6 @@ msgstr ""
|
|||||||
msgid "GUI scaling filter txr2img"
|
msgid "GUI scaling filter txr2img"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Generate normalmaps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Global callbacks"
|
msgid "Global callbacks"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3309,8 +3312,8 @@ msgstr ""
|
|||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Handling for deprecated Lua API calls:\n"
|
"Handling for deprecated Lua API calls:\n"
|
||||||
"- legacy: (try to) mimic old behaviour (default for release).\n"
|
"- none: Do not log deprecated calls\n"
|
||||||
"- log: mimic and log backtrace of deprecated call (default for debug).\n"
|
"- log: mimic and log backtrace of deprecated call (default).\n"
|
||||||
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3776,6 +3779,10 @@ msgstr ""
|
|||||||
msgid "Joystick button repetition interval"
|
msgid "Joystick button repetition interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Joystick deadzone"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Joystick frustum sensitivity"
|
msgid "Joystick frustum sensitivity"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3855,6 +3862,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for digging.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for dropping the currently selected item.\n"
|
"Key for dropping the currently selected item.\n"
|
||||||
@ -3954,6 +3968,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for placing.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for selecting the 11th hotbar slot.\n"
|
"Key for selecting the 11th hotbar slot.\n"
|
||||||
@ -4511,10 +4532,6 @@ msgstr ""
|
|||||||
msgid "Main menu script"
|
msgid "Main menu script"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Main menu style"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
||||||
@ -4528,6 +4545,14 @@ msgstr ""
|
|||||||
msgid "Makes all liquids opaque"
|
msgid "Makes all liquids opaque"
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Map directory"
|
msgid "Map directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4692,7 +4717,7 @@ msgid "Maximum FPS"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum FPS when game is paused."
|
msgid "Maximum FPS when the window is not focused, or when the game is paused."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -4740,6 +4765,13 @@ msgid ""
|
|||||||
"This limit is enforced per player."
|
"This limit is enforced per player."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum number of forceloaded mapblocks."
|
msgid "Maximum number of forceloaded mapblocks."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4969,14 +5001,6 @@ msgstr ""
|
|||||||
msgid "Noises"
|
msgid "Noises"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps sampling"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps strength"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Number of emerge threads"
|
msgid "Number of emerge threads"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5002,10 +5026,6 @@ msgid ""
|
|||||||
"memory consumption (4096=100MB, as a rule of thumb)."
|
"memory consumption (4096=100MB, as a rule of thumb)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Number of parallax occlusion iterations."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Online Content Repository"
|
msgid "Online Content Repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5031,34 +5051,6 @@ msgid ""
|
|||||||
"open."
|
"open."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall bias of parallax occlusion effect, usually scale/2."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall scale of parallax occlusion effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion bias"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion iterations"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion mode"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion scale"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Path of the fallback font.\n"
|
"Path of the fallback font.\n"
|
||||||
@ -5124,6 +5116,14 @@ msgstr ""
|
|||||||
msgid "Pitch move mode"
|
msgid "Pitch move mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place repetition interval"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Player is able to fly without being affected by gravity.\n"
|
"Player is able to fly without being affected by gravity.\n"
|
||||||
@ -5279,10 +5279,6 @@ msgstr ""
|
|||||||
msgid "Right key"
|
msgid "Right key"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Rightclick repetition interval"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "River channel depth"
|
msgid "River channel depth"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5534,6 +5530,16 @@ msgstr ""
|
|||||||
msgid "Show entity selection boxes"
|
msgid "Show entity selection boxes"
|
||||||
msgstr ""
|
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 nametag backgrounds by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Shutdown message"
|
msgid "Shutdown message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5663,10 +5669,6 @@ msgstr ""
|
|||||||
msgid "Strength of 3D mode parallax."
|
msgid "Strength of 3D mode parallax."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Strength of generated normalmaps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Strength of light curve boost.\n"
|
"Strength of light curve boost.\n"
|
||||||
@ -5760,6 +5762,10 @@ msgstr ""
|
|||||||
msgid "The URL for the content repository"
|
msgid "The URL for the content repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "The deadzone of the joystick"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The default format in which profiles are being saved,\n"
|
"The default format in which profiles are being saved,\n"
|
||||||
@ -5819,8 +5825,8 @@ msgid ""
|
|||||||
"A restart is required after changing this.\n"
|
"A restart is required after changing this.\n"
|
||||||
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
||||||
"otherwise.\n"
|
"otherwise.\n"
|
||||||
"On other platforms, OpenGL is recommended, and it’s the only driver with\n"
|
"On other platforms, OpenGL is recommended.\n"
|
||||||
"shader support currently."
|
"Shaders are supported by OpenGL (desktop only) and OGLES2 (experimental)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5844,6 +5850,12 @@ msgid ""
|
|||||||
"items. A value of 0 disables the functionality."
|
"items. A value of 0 disables the functionality."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated events\n"
|
"The time in seconds it takes between repeated events\n"
|
||||||
@ -5852,9 +5864,8 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated right clicks when holding the "
|
"The time in seconds it takes between repeated node placements when holding\n"
|
||||||
"right\n"
|
"the place button."
|
||||||
"mouse button."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5989,6 +6000,17 @@ msgid ""
|
|||||||
"Gamma correct downscaling is not supported."
|
"Gamma correct downscaling is not supported."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Use multi-sample antialiasing (MSAA) to smooth out block edges.\n"
|
||||||
|
"This algorithm smooths out the 3D viewport while keeping the image sharp,\n"
|
||||||
|
"but it doesn't affect the insides of textures\n"
|
||||||
|
"(which is especially noticeable with transparent textures).\n"
|
||||||
|
"Visible spaces appear between nodes when shaders are disabled.\n"
|
||||||
|
"If set to 0, MSAA is disabled.\n"
|
||||||
|
"A restart is required after changing this option."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Use trilinear filtering when scaling textures."
|
msgid "Use trilinear filtering when scaling textures."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6191,6 +6213,12 @@ msgid ""
|
|||||||
"If disabled, bitmap and XML vectors fonts are used instead."
|
"If disabled, bitmap and XML vectors fonts are used instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Whether nametag backgrounds should be shown by default.\n"
|
||||||
|
"Mods may still set a background."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Whether node texture animations should be desynchronized per mapblock."
|
msgid "Whether node texture animations should be desynchronized per mapblock."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6313,6 +6341,24 @@ msgstr ""
|
|||||||
msgid "Y-level of seabed."
|
msgid "Y-level of seabed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when saving mapblocks to disk.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when sending mapblocks to the client.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "cURL file download timeout"
|
msgid "cURL file download timeout"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
1021
po/eo/minetest.po
1128
po/es/minetest.po
1057
po/et/minetest.po
@ -7,9 +7,9 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: minetest\n"
|
"Project-Id-Version: minetest\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2021-01-30 21:13+0100\n"
|
"POT-Creation-Date: 2021-02-23 19:03+0100\n"
|
||||||
"PO-Revision-Date: 2020-07-11 13:41+0000\n"
|
"PO-Revision-Date: 2021-02-01 05:52+0000\n"
|
||||||
"Last-Translator: Niko Kivinen <niko.pet.kivinen@gmail.com>\n"
|
"Last-Translator: Tviljan <virallinen@gmail.com>\n"
|
||||||
"Language-Team: Finnish <https://hosted.weblate.org/projects/minetest/"
|
"Language-Team: Finnish <https://hosted.weblate.org/projects/minetest/"
|
||||||
"minetest/fi/>\n"
|
"minetest/fi/>\n"
|
||||||
"Language: fi\n"
|
"Language: fi\n"
|
||||||
@ -17,7 +17,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 4.2-dev\n"
|
"X-Generator: Weblate 4.5-dev\n"
|
||||||
|
|
||||||
#: builtin/client/death_formspec.lua src/client/game.cpp
|
#: builtin/client/death_formspec.lua src/client/game.cpp
|
||||||
msgid "Respawn"
|
msgid "Respawn"
|
||||||
@ -37,7 +37,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: builtin/fstk/ui.lua
|
#: builtin/fstk/ui.lua
|
||||||
msgid "An error occurred:"
|
msgid "An error occurred:"
|
||||||
msgstr ""
|
msgstr "Tapahtui virhe:"
|
||||||
|
|
||||||
#: builtin/fstk/ui.lua
|
#: builtin/fstk/ui.lua
|
||||||
msgid "Main menu"
|
msgid "Main menu"
|
||||||
@ -697,6 +697,10 @@ msgstr ""
|
|||||||
msgid "Loading..."
|
msgid "Loading..."
|
||||||
msgstr "Ladataan..."
|
msgstr "Ladataan..."
|
||||||
|
|
||||||
|
#: builtin/mainmenu/serverlistmgr.lua
|
||||||
|
msgid "Public server list is disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/serverlistmgr.lua
|
#: builtin/mainmenu/serverlistmgr.lua
|
||||||
msgid "Try reenabling public serverlist and check your internet connection."
|
msgid "Try reenabling public serverlist and check your internet connection."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1094,7 +1098,7 @@ msgstr ""
|
|||||||
#. When in doubt, test your translation.
|
#. When in doubt, test your translation.
|
||||||
#: src/client/fontengine.cpp
|
#: src/client/fontengine.cpp
|
||||||
msgid "needs_fallback_font"
|
msgid "needs_fallback_font"
|
||||||
msgstr ""
|
msgstr "no"
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1925,7 +1929,7 @@ msgstr ""
|
|||||||
#. language code (e.g. "de" for German).
|
#. language code (e.g. "de" for German).
|
||||||
#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp
|
#: src/network/clientpackethandler.cpp src/script/lua_api/l_client.cpp
|
||||||
msgid "LANG_CODE"
|
msgid "LANG_CODE"
|
||||||
msgstr ""
|
msgstr "fi"
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -2834,7 +2838,7 @@ msgid "Enable console window"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enable creative mode for new created maps."
|
msgid "Enable creative mode for all players"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5535,6 +5539,10 @@ msgid ""
|
|||||||
"A restart is required after changing this."
|
"A restart is required after changing this."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Show nametag backgrounds by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Shutdown message"
|
msgid "Shutdown message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6208,6 +6216,12 @@ msgid ""
|
|||||||
"If disabled, bitmap and XML vectors fonts are used instead."
|
"If disabled, bitmap and XML vectors fonts are used instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Whether nametag backgrounds should be shown by default.\n"
|
||||||
|
"Mods may still set a background."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Whether node texture animations should be desynchronized per mapblock."
|
msgid "Whether node texture animations should be desynchronized per mapblock."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
6324
po/fil/minetest.po
1159
po/fr/minetest.po
10372
po/gd/minetest.po
10078
po/gl/minetest.po
1732
po/he/minetest.po
1067
po/id/minetest.po
1226
po/it/minetest.po
6323
po/ja_KS/minetest.po
@ -2,8 +2,8 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: Kazakh (Minetest)\n"
|
"Project-Id-Version: Kazakh (Minetest)\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2020-06-13 23:17+0200\n"
|
"POT-Creation-Date: 2021-02-23 19:03+0100\n"
|
||||||
"PO-Revision-Date: 2020-07-06 21:41+0000\n"
|
"PO-Revision-Date: 2020-09-09 01:23+0000\n"
|
||||||
"Last-Translator: Fontan 030 <pomanfedurin@gmail.com>\n"
|
"Last-Translator: Fontan 030 <pomanfedurin@gmail.com>\n"
|
||||||
"Language-Team: Kazakh <https://hosted.weblate.org/projects/minetest/minetest/"
|
"Language-Team: Kazakh <https://hosted.weblate.org/projects/minetest/minetest/"
|
||||||
"kk/>\n"
|
"kk/>\n"
|
||||||
@ -12,7 +12,7 @@ msgstr ""
|
|||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||||
"X-Generator: Weblate 4.2-dev\n"
|
"X-Generator: Weblate 4.3-dev\n"
|
||||||
|
|
||||||
#: builtin/client/death_formspec.lua src/client/game.cpp
|
#: builtin/client/death_formspec.lua src/client/game.cpp
|
||||||
msgid "Respawn"
|
msgid "Respawn"
|
||||||
@ -46,10 +46,6 @@ msgstr ""
|
|||||||
msgid "The server has requested a reconnect:"
|
msgid "The server has requested a reconnect:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua src/client/game.cpp
|
|
||||||
msgid "Loading..."
|
|
||||||
msgstr "Жүктелуде..."
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "Protocol version mismatch. "
|
msgid "Protocol version mismatch. "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -62,10 +58,6 @@ msgstr ""
|
|||||||
msgid "Server supports protocol versions between $1 and $2. "
|
msgid "Server supports protocol versions between $1 and $2. "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
|
||||||
msgid "Try reenabling public serverlist and check your internet connection."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/common.lua
|
#: builtin/mainmenu/common.lua
|
||||||
msgid "We only support protocol version $1."
|
msgid "We only support protocol version $1."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -74,7 +66,8 @@ msgstr ""
|
|||||||
msgid "We support protocol versions between version $1 and $2."
|
msgid "We support protocol versions between version $1 and $2."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
#: builtin/mainmenu/dlg_delete_content.lua
|
#: builtin/mainmenu/dlg_delete_content.lua
|
||||||
#: builtin/mainmenu/dlg_delete_world.lua
|
#: builtin/mainmenu/dlg_delete_world.lua
|
||||||
#: builtin/mainmenu/dlg_rename_modpack.lua
|
#: builtin/mainmenu/dlg_rename_modpack.lua
|
||||||
@ -84,7 +77,8 @@ msgstr ""
|
|||||||
msgid "Cancel"
|
msgid "Cancel"
|
||||||
msgstr "Болдырмау"
|
msgstr "Болдырмау"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_content.lua
|
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Dependencies:"
|
msgid "Dependencies:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -155,14 +149,53 @@ msgstr ""
|
|||||||
msgid "enabled"
|
msgid "enabled"
|
||||||
msgstr "қосылған"
|
msgstr "қосылған"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "\"$1\" already exists. Would you like to overwrite it?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 and $2 dependencies will be installed."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 by $2"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid ""
|
||||||
|
"$1 downloading,\n"
|
||||||
|
"$2 queued"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "$1 downloading..."
|
||||||
|
msgstr "Жүктелуде..."
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 required dependencies could not be found."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "$1 will be installed, and $2 dependencies will be skipped."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "All packages"
|
msgid "All packages"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Already installed"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Back to Main Menu"
|
msgid "Back to Main Menu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Base Game:"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
msgid "ContentDB is not available when Minetest was compiled without cURL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -184,6 +217,15 @@ msgstr "Ойындар"
|
|||||||
msgid "Install"
|
msgid "Install"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Install $1"
|
||||||
|
msgstr "Жою"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Install missing dependencies"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
msgid "Mods"
|
msgid "Mods"
|
||||||
@ -198,9 +240,25 @@ msgid "No results"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua builtin/mainmenu/tab_online.lua
|
#, fuzzy
|
||||||
msgid "Search"
|
msgid "No updates"
|
||||||
msgstr "Іздеу"
|
msgstr "Жаңарту"
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Not found"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Overwrite"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Please check that the base game is correct."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "Queued"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "Texture packs"
|
msgid "Texture packs"
|
||||||
@ -215,7 +273,11 @@ msgid "Update"
|
|||||||
msgstr "Жаңарту"
|
msgstr "Жаңарту"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_contentstore.lua
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
msgid "View"
|
msgid "Update All [$1]"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_contentstore.lua
|
||||||
|
msgid "View more information in a web browser"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_create_world.lua
|
#: builtin/mainmenu/dlg_create_world.lua
|
||||||
@ -509,6 +571,10 @@ msgstr ""
|
|||||||
msgid "Scale"
|
msgid "Scale"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
|
msgid "Search"
|
||||||
|
msgstr "Іздеу"
|
||||||
|
|
||||||
#: builtin/mainmenu/dlg_settings_advanced.lua
|
#: builtin/mainmenu/dlg_settings_advanced.lua
|
||||||
msgid "Select directory"
|
msgid "Select directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -624,6 +690,18 @@ msgstr ""
|
|||||||
msgid "Unable to install a modpack as a $1"
|
msgid "Unable to install a modpack as a $1"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/serverlistmgr.lua src/client/game.cpp
|
||||||
|
msgid "Loading..."
|
||||||
|
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_content.lua
|
#: builtin/mainmenu/tab_content.lua
|
||||||
msgid "Browse online content"
|
msgid "Browse online content"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -676,6 +754,16 @@ msgstr ""
|
|||||||
msgid "Credits"
|
msgid "Credits"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
|
msgid "Open User Data Directory"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_credits.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_credits.lua
|
#: builtin/mainmenu/tab_credits.lua
|
||||||
msgid "Previous Contributors"
|
msgid "Previous Contributors"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -693,14 +781,10 @@ msgid "Bind Address"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Configure"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Creative Mode"
|
msgid "Creative Mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Enable Damage"
|
msgid "Enable Damage"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -717,7 +801,7 @@ msgid "Install games from ContentDB"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Name/Password"
|
msgid "Name"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
@ -728,6 +812,11 @@ msgstr "Жаңа"
|
|||||||
msgid "No world created or selected!"
|
msgid "No world created or selected!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
#, fuzzy
|
||||||
|
msgid "Password"
|
||||||
|
msgstr "Құпия сөзді өзгерту"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Play Game"
|
msgid "Play Game"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -736,6 +825,10 @@ msgstr ""
|
|||||||
msgid "Port"
|
msgid "Port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_local.lua
|
||||||
|
msgid "Select Mods"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_local.lua
|
#: builtin/mainmenu/tab_local.lua
|
||||||
msgid "Select World:"
|
msgid "Select World:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -752,23 +845,23 @@ msgstr ""
|
|||||||
msgid "Address / Port"
|
msgid "Address / Port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Connect"
|
msgid "Connect"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Creative mode"
|
msgid "Creative mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Damage enabled"
|
msgid "Damage enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Del. Favorite"
|
msgid "Del. Favorite"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Favorite"
|
msgid "Favorite"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -776,16 +869,16 @@ msgstr ""
|
|||||||
msgid "Join Game"
|
msgid "Join Game"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Name / Password"
|
msgid "Name / Password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "Ping"
|
msgid "Ping"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#. ~ PvP = Player versus Player
|
#. ~ PvP = Player versus Player
|
||||||
#: builtin/mainmenu/tab_online.lua builtin/mainmenu/tab_simple_main.lua
|
#: builtin/mainmenu/tab_online.lua
|
||||||
msgid "PvP enabled"
|
msgid "PvP enabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -813,21 +906,13 @@ msgstr ""
|
|||||||
msgid "Antialiasing:"
|
msgid "Antialiasing:"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Are you sure to reset your singleplayer world?"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Autosave Screen Size"
|
msgid "Autosave Screen Size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Bilinear Filter"
|
msgid "Bilinear Filter"
|
||||||
msgstr ""
|
msgstr "Бисызықты фильтрация"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Bump Mapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
#: builtin/mainmenu/tab_settings.lua src/client/game.cpp
|
||||||
msgid "Change Keys"
|
msgid "Change Keys"
|
||||||
@ -841,10 +926,6 @@ msgstr ""
|
|||||||
msgid "Fancy Leaves"
|
msgid "Fancy Leaves"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Generate Normal Maps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Mipmap"
|
msgid "Mipmap"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -853,10 +934,6 @@ msgstr ""
|
|||||||
msgid "Mipmap + Aniso. Filter"
|
msgid "Mipmap + Aniso. Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "No"
|
|
||||||
msgstr "Жоқ"
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "No Filter"
|
msgid "No Filter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -875,7 +952,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "None"
|
msgid "None"
|
||||||
msgstr ""
|
msgstr "Жоқ"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Opaque Leaves"
|
msgid "Opaque Leaves"
|
||||||
@ -885,17 +962,9 @@ msgstr ""
|
|||||||
msgid "Opaque Water"
|
msgid "Opaque Water"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax Occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Particles"
|
msgid "Particles"
|
||||||
msgstr ""
|
msgstr "Бөлшектер"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Reset singleplayer world"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Screen:"
|
msgid "Screen:"
|
||||||
@ -909,6 +978,10 @@ msgstr "Баптаулар"
|
|||||||
msgid "Shaders"
|
msgid "Shaders"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
|
msgid "Shaders (experimental)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Shaders (unavailable)"
|
msgid "Shaders (unavailable)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -923,7 +996,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Texturing:"
|
msgid "Texturing:"
|
||||||
msgstr ""
|
msgstr "Текстурлеу:"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "To enable shaders the OpenGL driver needs to be used."
|
msgid "To enable shaders the OpenGL driver needs to be used."
|
||||||
@ -939,7 +1012,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Trilinear Filter"
|
msgid "Trilinear Filter"
|
||||||
msgstr ""
|
msgstr "Үшсызықты фильтрация"
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
#: builtin/mainmenu/tab_settings.lua
|
||||||
msgid "Waving Leaves"
|
msgid "Waving Leaves"
|
||||||
@ -953,22 +1026,6 @@ msgstr ""
|
|||||||
msgid "Waving Plants"
|
msgid "Waving Plants"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_settings.lua
|
|
||||||
msgid "Yes"
|
|
||||||
msgstr "Иә"
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Config mods"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Main"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: builtin/mainmenu/tab_simple_main.lua
|
|
||||||
msgid "Start Singleplayer"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/client.cpp
|
#: src/client/client.cpp
|
||||||
msgid "Connection timed out."
|
msgid "Connection timed out."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1098,7 +1155,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid "Change Password"
|
msgid "Change Password"
|
||||||
msgstr ""
|
msgstr "Құпия сөзді өзгерту"
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid "Cinematic mode disabled"
|
msgid "Cinematic mode disabled"
|
||||||
@ -1128,13 +1185,13 @@ msgid ""
|
|||||||
"- %s: move backwards\n"
|
"- %s: move backwards\n"
|
||||||
"- %s: move left\n"
|
"- %s: move left\n"
|
||||||
"- %s: move right\n"
|
"- %s: move right\n"
|
||||||
"- %s: jump/climb\n"
|
"- %s: jump/climb up\n"
|
||||||
"- %s: sneak/go down\n"
|
"- %s: dig/punch\n"
|
||||||
|
"- %s: place/use\n"
|
||||||
|
"- %s: sneak/climb down\n"
|
||||||
"- %s: drop item\n"
|
"- %s: drop item\n"
|
||||||
"- %s: inventory\n"
|
"- %s: inventory\n"
|
||||||
"- Mouse: turn/look\n"
|
"- Mouse: turn/look\n"
|
||||||
"- Mouse left: dig/punch\n"
|
|
||||||
"- Mouse right: place/use\n"
|
|
||||||
"- Mouse wheel: select item\n"
|
"- Mouse wheel: select item\n"
|
||||||
"- %s: chat\n"
|
"- %s: chat\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1255,34 +1312,6 @@ msgstr ""
|
|||||||
msgid "Minimap currently disabled by game or mod"
|
msgid "Minimap currently disabled by game or mod"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap hidden"
|
|
||||||
msgstr "Миникарта жасырылды"
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in radar mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x1"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x2"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
|
||||||
msgid "Minimap in surface mode, Zoom x4"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/client/game.cpp
|
#: src/client/game.cpp
|
||||||
msgid "Noclip mode disabled"
|
msgid "Noclip mode disabled"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1675,6 +1704,24 @@ msgstr ""
|
|||||||
msgid "Zoom"
|
msgid "Zoom"
|
||||||
msgstr ""
|
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/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
#: src/gui/guiConfirmRegistration.cpp src/gui/guiPasswordChange.cpp
|
||||||
msgid "Passwords do not match!"
|
msgid "Passwords do not match!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1918,12 +1965,6 @@ msgid ""
|
|||||||
"an island, set all 3 numbers equal for the raw shape."
|
"an island, set all 3 numbers equal for the raw shape."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"0 = parallax occlusion with slope information (faster).\n"
|
|
||||||
"1 = relief mapping (slower, more accurate)."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "2D noise that controls the shape/size of ridged mountains."
|
msgid "2D noise that controls the shape/size of ridged mountains."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2030,6 +2071,10 @@ msgstr ""
|
|||||||
msgid "ABM interval"
|
msgid "ABM interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ABM time budget"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Absolute limit of queued blocks to emerge"
|
msgid "Absolute limit of queued blocks to emerge"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2263,10 +2308,6 @@ msgstr ""
|
|||||||
msgid "Builtin"
|
msgid "Builtin"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Bumpmapping"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
"Camera 'near clipping plane' distance in nodes, between 0 and 0.25\n"
|
||||||
@ -2337,16 +2378,6 @@ msgid ""
|
|||||||
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
"Where 0.0 is minimum light level, 1.0 is maximum light level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Changes the main menu UI:\n"
|
|
||||||
"- Full: Multiple singleplayer worlds, game choice, texture pack chooser, "
|
|
||||||
"etc.\n"
|
|
||||||
"- Simple: One singleplayer world, no game or texture pack choosers. May "
|
|
||||||
"be\n"
|
|
||||||
"necessary for smaller screens."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Chat font size"
|
msgid "Chat font size"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2498,6 +2529,10 @@ msgstr ""
|
|||||||
msgid "ContentDB Flag Blacklist"
|
msgid "ContentDB Flag Blacklist"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "ContentDB Max Concurrent Downloads"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "ContentDB URL"
|
msgid "ContentDB URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2555,7 +2590,9 @@ msgid "Crosshair alpha"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair alpha (opaqueness, between 0 and 255)."
|
msgid ""
|
||||||
|
"Crosshair alpha (opaqueness, between 0 and 255).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2563,7 +2600,9 @@ msgid "Crosshair color"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Crosshair color (R,G,B)."
|
msgid ""
|
||||||
|
"Crosshair color (R,G,B).\n"
|
||||||
|
"Also controls the object crosshair color"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2662,12 +2701,6 @@ msgstr ""
|
|||||||
msgid "Defines location and terrain of optional hills and lakes."
|
msgid "Defines location and terrain of optional hills and lakes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Defines sampling step of texture.\n"
|
|
||||||
"A higher value results in smoother normal maps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Defines the base ground level."
|
msgid "Defines the base ground level."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2738,6 +2771,10 @@ msgstr ""
|
|||||||
msgid "Desynchronize block animation"
|
msgid "Desynchronize block animation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Dig key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Digging particles"
|
msgid "Digging particles"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2799,7 +2836,7 @@ msgid "Enable console window"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enable creative mode for new created maps."
|
msgid "Enable creative mode for all players"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -2886,14 +2923,6 @@ msgstr ""
|
|||||||
msgid "Enables animation of inventory items."
|
msgid "Enables animation of inventory items."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables bumpmapping for textures. Normalmaps need to be supplied by the "
|
|
||||||
"texture pack\n"
|
|
||||||
"or need to be auto-generated.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Enables caching of facedir rotated meshes."
|
msgid "Enables caching of facedir rotated meshes."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2902,18 +2931,6 @@ msgstr ""
|
|||||||
msgid "Enables minimap."
|
msgid "Enables minimap."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables on the fly normalmap generation (Emboss effect).\n"
|
|
||||||
"Requires bumpmapping to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Enables parallax occlusion mapping.\n"
|
|
||||||
"Requires shaders to be enabled."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enables the sound system.\n"
|
"Enables the sound system.\n"
|
||||||
@ -2930,12 +2947,6 @@ msgstr ""
|
|||||||
msgid "Entity methods"
|
msgid "Entity methods"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid ""
|
|
||||||
"Experimental option, might cause visible spaces between blocks\n"
|
|
||||||
"when set to higher number than 0."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
"Exponent of the floatland tapering. Alters the tapering behaviour.\n"
|
||||||
@ -2947,7 +2958,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "FPS in pause menu"
|
msgid "FPS when unfocused or paused"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -3248,10 +3259,6 @@ msgstr ""
|
|||||||
msgid "GUI scaling filter txr2img"
|
msgid "GUI scaling filter txr2img"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Generate normalmaps"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Global callbacks"
|
msgid "Global callbacks"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3306,8 +3313,8 @@ msgstr ""
|
|||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Handling for deprecated Lua API calls:\n"
|
"Handling for deprecated Lua API calls:\n"
|
||||||
"- legacy: (try to) mimic old behaviour (default for release).\n"
|
"- none: Do not log deprecated calls\n"
|
||||||
"- log: mimic and log backtrace of deprecated call (default for debug).\n"
|
"- log: mimic and log backtrace of deprecated call (default).\n"
|
||||||
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
"- error: abort on usage of deprecated call (suggested for mod developers)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3773,6 +3780,10 @@ msgstr ""
|
|||||||
msgid "Joystick button repetition interval"
|
msgid "Joystick button repetition interval"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Joystick deadzone"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Joystick frustum sensitivity"
|
msgid "Joystick frustum sensitivity"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -3852,6 +3863,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for digging.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for dropping the currently selected item.\n"
|
"Key for dropping the currently selected item.\n"
|
||||||
@ -3951,6 +3969,13 @@ msgid ""
|
|||||||
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Key for placing.\n"
|
||||||
|
"See http://irrlicht.sourceforge.net/docu/namespaceirr."
|
||||||
|
"html#a54da2a0e231901735e3da1b0edf72eb3"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Key for selecting the 11th hotbar slot.\n"
|
"Key for selecting the 11th hotbar slot.\n"
|
||||||
@ -4508,10 +4533,6 @@ msgstr ""
|
|||||||
msgid "Main menu script"
|
msgid "Main menu script"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Main menu style"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
"Make fog and sky colors depend on daytime (dawn/sunset) and view direction."
|
||||||
@ -4525,6 +4546,14 @@ msgstr ""
|
|||||||
msgid "Makes all liquids opaque"
|
msgid "Makes all liquids opaque"
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Map directory"
|
msgid "Map directory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4689,7 +4718,7 @@ msgid "Maximum FPS"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum FPS when game is paused."
|
msgid "Maximum FPS when the window is not focused, or when the game is paused."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -4737,6 +4766,13 @@ msgid ""
|
|||||||
"This limit is enforced per player."
|
"This limit is enforced per player."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Maximum number of forceloaded mapblocks."
|
msgid "Maximum number of forceloaded mapblocks."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4966,14 +5002,6 @@ msgstr ""
|
|||||||
msgid "Noises"
|
msgid "Noises"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps sampling"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Normalmaps strength"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Number of emerge threads"
|
msgid "Number of emerge threads"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4999,10 +5027,6 @@ msgid ""
|
|||||||
"memory consumption (4096=100MB, as a rule of thumb)."
|
"memory consumption (4096=100MB, as a rule of thumb)."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Number of parallax occlusion iterations."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Online Content Repository"
|
msgid "Online Content Repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5028,34 +5052,6 @@ msgid ""
|
|||||||
"open."
|
"open."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall bias of parallax occlusion effect, usually scale/2."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Overall scale of parallax occlusion effect."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion bias"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion iterations"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion mode"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Parallax occlusion scale"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Path of the fallback font.\n"
|
"Path of the fallback font.\n"
|
||||||
@ -5121,6 +5117,14 @@ msgstr ""
|
|||||||
msgid "Pitch move mode"
|
msgid "Pitch move mode"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place key"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "Place repetition interval"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Player is able to fly without being affected by gravity.\n"
|
"Player is able to fly without being affected by gravity.\n"
|
||||||
@ -5276,10 +5280,6 @@ msgstr ""
|
|||||||
msgid "Right key"
|
msgid "Right key"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Rightclick repetition interval"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "River channel depth"
|
msgid "River channel depth"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5531,6 +5531,16 @@ msgstr ""
|
|||||||
msgid "Show entity selection boxes"
|
msgid "Show entity selection boxes"
|
||||||
msgstr ""
|
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 nametag backgrounds by default"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Shutdown message"
|
msgid "Shutdown message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -5660,10 +5670,6 @@ msgstr ""
|
|||||||
msgid "Strength of 3D mode parallax."
|
msgid "Strength of 3D mode parallax."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
|
||||||
msgid "Strength of generated normalmaps."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"Strength of light curve boost.\n"
|
"Strength of light curve boost.\n"
|
||||||
@ -5757,6 +5763,10 @@ msgstr ""
|
|||||||
msgid "The URL for the content repository"
|
msgid "The URL for the content repository"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid "The deadzone of the joystick"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The default format in which profiles are being saved,\n"
|
"The default format in which profiles are being saved,\n"
|
||||||
@ -5816,8 +5826,8 @@ msgid ""
|
|||||||
"A restart is required after changing this.\n"
|
"A restart is required after changing this.\n"
|
||||||
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
"Note: On Android, stick with OGLES1 if unsure! App may fail to start "
|
||||||
"otherwise.\n"
|
"otherwise.\n"
|
||||||
"On other platforms, OpenGL is recommended, and it’s the only driver with\n"
|
"On other platforms, OpenGL is recommended.\n"
|
||||||
"shader support currently."
|
"Shaders are supported by OpenGL (desktop only) and OGLES2 (experimental)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5841,6 +5851,12 @@ msgid ""
|
|||||||
"items. A value of 0 disables the functionality."
|
"items. A value of 0 disables the functionality."
|
||||||
msgstr ""
|
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
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated events\n"
|
"The time in seconds it takes between repeated events\n"
|
||||||
@ -5849,9 +5865,8 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid ""
|
msgid ""
|
||||||
"The time in seconds it takes between repeated right clicks when holding the "
|
"The time in seconds it takes between repeated node placements when holding\n"
|
||||||
"right\n"
|
"the place button."
|
||||||
"mouse button."
|
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
@ -5986,6 +6001,17 @@ msgid ""
|
|||||||
"Gamma correct downscaling is not supported."
|
"Gamma correct downscaling is not supported."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Use multi-sample antialiasing (MSAA) to smooth out block edges.\n"
|
||||||
|
"This algorithm smooths out the 3D viewport while keeping the image sharp,\n"
|
||||||
|
"but it doesn't affect the insides of textures\n"
|
||||||
|
"(which is especially noticeable with transparent textures).\n"
|
||||||
|
"Visible spaces appear between nodes when shaders are disabled.\n"
|
||||||
|
"If set to 0, MSAA is disabled.\n"
|
||||||
|
"A restart is required after changing this option."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Use trilinear filtering when scaling textures."
|
msgid "Use trilinear filtering when scaling textures."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6056,7 +6082,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Video driver"
|
msgid "Video driver"
|
||||||
msgstr ""
|
msgstr "Видеодрайвер"
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "View bobbing factor"
|
msgid "View bobbing factor"
|
||||||
@ -6111,7 +6137,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Walking speed"
|
msgid "Walking speed"
|
||||||
msgstr ""
|
msgstr "Жүру жылдамдығы"
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Walking, flying and climbing speed in fast mode, in nodes per second."
|
msgid "Walking, flying and climbing speed in fast mode, in nodes per second."
|
||||||
@ -6188,6 +6214,12 @@ msgid ""
|
|||||||
"If disabled, bitmap and XML vectors fonts are used instead."
|
"If disabled, bitmap and XML vectors fonts are used instead."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"Whether nametag backgrounds should be shown by default.\n"
|
||||||
|
"Mods may still set a background."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Whether node texture animations should be desynchronized per mapblock."
|
msgid "Whether node texture animations should be desynchronized per mapblock."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6276,7 +6308,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Y of upper limit of large caves."
|
msgid "Y of upper limit of large caves."
|
||||||
msgstr ""
|
msgstr "Үлкен үңгірлердің жоғарғы шегінің Y координаты."
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "Y-distance over which caverns expand to full size."
|
msgid "Y-distance over which caverns expand to full size."
|
||||||
@ -6310,6 +6342,24 @@ msgstr ""
|
|||||||
msgid "Y-level of seabed."
|
msgid "Y-level of seabed."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when saving mapblocks to disk.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/settings_translation_file.cpp
|
||||||
|
msgid ""
|
||||||
|
"ZLib compression level to use when sending mapblocks to the client.\n"
|
||||||
|
"-1 - Zlib's default compression level\n"
|
||||||
|
"0 - no compresson, fastest\n"
|
||||||
|
"9 - best compression, slowest\n"
|
||||||
|
"(levels 1-3 use Zlib's \"fast\" method, 4-9 use the normal method)"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "cURL file download timeout"
|
msgid "cURL file download timeout"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -6321,3 +6371,12 @@ msgstr ""
|
|||||||
#: src/settings_translation_file.cpp
|
#: src/settings_translation_file.cpp
|
||||||
msgid "cURL timeout"
|
msgid "cURL timeout"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#~ msgid "Main"
|
||||||
|
#~ msgstr "Басты мәзір"
|
||||||
|
|
||||||
|
#~ msgid "No"
|
||||||
|
#~ msgstr "Жоқ"
|
||||||
|
|
||||||
|
#~ msgid "Yes"
|
||||||
|
#~ msgstr "Иә"
|
||||||
|