Merge last Minetest commits

This commit is contained in:
Maksim Gamarnik 2015-11-10 20:29:00 +02:00
parent d3d35550f7
commit bef9573aeb
136 changed files with 16307 additions and 5536 deletions

View File

@ -30,7 +30,6 @@ VERSION_PATCH := $(shell cat $(ROOT)/../../CMakeLists.txt | \
# Android Version code # Android Version code
# Increase for each build! # Increase for each build!
################################################################################ ################################################################################
ANDROID_VERSION_CODE = 1 ANDROID_VERSION_CODE = 1
################################################################################ ################################################################################

View File

@ -16,6 +16,7 @@ public class MCNativeActivity extends NativeActivity {
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON); getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
m_MessagReturnCode = -1; m_MessagReturnCode = -1;
m_MessageReturnValue = ""; m_MessageReturnValue = "";
} }
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
@ -30,10 +31,13 @@ public class MCNativeActivity extends NativeActivity {
} }
} }
public void copyAssets() { public void copyAssets() {
} }
public void showDialog(String acceptButton, String hint, String current, int editType) { public void showDialog(String acceptButton, String hint, String current,
int editType) {
Intent intent = new Intent(this, MultiCraftTextEntry.class); Intent intent = new Intent(this, MultiCraftTextEntry.class);
Bundle params = new Bundle(); Bundle params = new Bundle();
params.putString("acceptButton", acceptButton); params.putString("acceptButton", acceptButton);
@ -48,7 +52,6 @@ public class MCNativeActivity extends NativeActivity {
public static native void putMessageBoxResult(String text); public static native void putMessageBoxResult(String text);
/* ugly code to workaround putMessageBoxResult not beeing found */ /* ugly code to workaround putMessageBoxResult not beeing found */
public int getDialogState() { public int getDialogState() {
return m_MessagReturnCode; return m_MessagReturnCode;
@ -94,6 +97,7 @@ public class MCNativeActivity extends NativeActivity {
System.loadLibrary("crypto"); System.loadLibrary("crypto");
System.loadLibrary("gmp"); System.loadLibrary("gmp");
System.loadLibrary("iconv"); System.loadLibrary("iconv");
// We don't have to load libminetest.so ourselves, // We don't have to load libminetest.so ourselves,
// but if we do, we get nicer logcat errors when // but if we do, we get nicer logcat errors when
// loading fails. // loading fails.

View File

@ -436,6 +436,31 @@ core.register_chatcommand("set", {
end, end,
}) })
local function emergeblocks_callback(pos, action, num_calls_remaining, ctx)
if ctx.total_blocks == 0 then
ctx.total_blocks = num_calls_remaining + 1
ctx.current_blocks = 0
end
ctx.current_blocks = ctx.current_blocks + 1
if ctx.current_blocks == ctx.total_blocks then
core.chat_send_player(ctx.requestor_name,
string.format("Finished emerging %d blocks in %.2fms.",
ctx.total_blocks, (os.clock() - ctx.start_time) * 1000))
end
end
local function emergeblocks_progress_update(ctx)
if ctx.current_blocks ~= ctx.total_blocks then
core.chat_send_player(ctx.requestor_name,
string.format("emergeblocks update: %d/%d blocks emerged (%.1f%%)",
ctx.current_blocks, ctx.total_blocks,
(ctx.current_blocks / ctx.total_blocks) * 100))
core.after(2, emergeblocks_progress_update, ctx)
end
end
core.register_chatcommand("emergeblocks", { core.register_chatcommand("emergeblocks", {
params = "(here [radius]) | (<pos1> <pos2>)", params = "(here [radius]) | (<pos1> <pos2>)",
description = "starts loading (or generating, if inexistent) map blocks " description = "starts loading (or generating, if inexistent) map blocks "
@ -447,7 +472,16 @@ core.register_chatcommand("emergeblocks", {
return false, p2 return false, p2
end end
core.emerge_area(p1, p2) local context = {
current_blocks = 0,
total_blocks = 0,
start_time = os.clock(),
requestor_name = name
}
core.emerge_area(p1, p2, emergeblocks_callback, context)
core.after(2, emergeblocks_progress_update, context)
return true, "Started emerge of area ranging from " .. return true, "Started emerge of area ranging from " ..
core.pos_to_string(p1, 1) .. " to " .. core.pos_to_string(p2, 1) core.pos_to_string(p1, 1) .. " to " .. core.pos_to_string(p2, 1)
end, end,

View File

@ -0,0 +1,17 @@
-- Minetest: builtin/constants.lua
--
-- Constants values for use with the Lua API
--
-- Built-in Content IDs (for use with VoxelManip API)
core.CONTENT_UNKNOWN = 125
core.CONTENT_AIR = 126
core.CONTENT_IGNORE = 127
-- Block emerge status constants (for use with core.emerge_area)
core.EMERGE_CANCELLED = 0
core.EMERGE_ERRORED = 1
core.EMERGE_FROM_MEMORY = 2
core.EMERGE_FROM_DISK = 3
core.EMERGE_GENERATED = 4

View File

@ -5,6 +5,7 @@ local gamepath = scriptpath.."game"..DIR_DELIM
dofile(commonpath.."vector.lua") dofile(commonpath.."vector.lua")
dofile(gamepath.."constants.lua")
dofile(gamepath.."item.lua") dofile(gamepath.."item.lua")
dofile(gamepath.."register.lua") dofile(gamepath.."register.lua")
@ -25,4 +26,3 @@ dofile(gamepath.."features.lua")
dofile(gamepath.."voxelarea.lua") dofile(gamepath.."voxelarea.lua")
dofile(gamepath.."forceloading.lua") dofile(gamepath.."forceloading.lua")
dofile(gamepath.."statbars.lua") dofile(gamepath.."statbars.lua")

View File

@ -7,6 +7,15 @@
-- Initialize some very basic things -- Initialize some very basic things
function core.debug(...) core.log(table.concat({...}, "\t")) end function core.debug(...) core.log(table.concat({...}, "\t")) end
if core.print then
local core_print = core.print
-- Override native print and use
-- terminal if that's turned on
function print(...)
core_print(table.concat({...}, "\t"))
end
core.print = nil -- don't pollute our namespace
end
math.randomseed(os.time()) math.randomseed(os.time())
os.setlocale("C", "numeric") os.setlocale("C", "numeric")
minetest = core minetest = core

View File

@ -112,7 +112,7 @@ local function parse_setting_line(settings, line, read_all, base_level, allow_se
end end
if setting_type == "string" or setting_type == "noise_params" if setting_type == "string" or setting_type == "noise_params"
or setting_type == "key" then or setting_type == "key" or setting_type == "v3f" then
local default = remaining_line:match("^(.*)$") local default = remaining_line:match("^(.*)$")
if not default then if not default then
@ -381,6 +381,9 @@ local function create_change_setting_formspec(dialogdata)
formspec = formspec .. ",," formspec = formspec .. ",,"
.. "," .. fgettext("Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, <octaves>, <persistence>") .. "," .. "," .. fgettext("Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, <octaves>, <persistence>") .. ","
.. "," .. fgettext("Optionally the lacunarity can be appended with a leading comma.") .. "," .. "," .. fgettext("Optionally the lacunarity can be appended with a leading comma.") .. ","
elseif setting.type == "v3f" then
formspec = formspec .. ",,"
.. "," .. fgettext_ne("Format is 3 numbers separated by commas and inside brackets.") .. ","
end end
formspec = formspec:sub(1, -2) -- remove trailing comma formspec = formspec:sub(1, -2) -- remove trailing comma
@ -424,7 +427,7 @@ local function create_change_setting_formspec(dialogdata)
.. "button[8,3.75;2,1;btn_browser_path;" .. fgettext("Browse") .. "]" .. "button[8,3.75;2,1;btn_browser_path;" .. fgettext("Browse") .. "]"
else else
-- TODO: fancy input for float, int, flags, noise_params -- TODO: fancy input for float, int, flags, noise_params, v3f
local width = 10 local width = 10
local text = get_current_value(setting) local text = get_current_value(setting)
if dialogdata.error_message then if dialogdata.error_message then

View File

@ -812,7 +812,7 @@ liquid_update (Liquid update tick) float 1.0
# Name of map generator to be used when creating a new world. # Name of map generator to be used when creating a new world.
# Creating a world in the main menu will override this. # Creating a world in the main menu will override this.
mg_name (Mapgen name) enum v6 v5,v6,v7,singlenode mg_name (Mapgen name) enum v6 v5,v6,v7,fractal,singlenode
# Water surface level of the world. # Water surface level of the world.
water_level (Water level) int 1 water_level (Water level) int 1
@ -885,13 +885,13 @@ mgv5_np_cave2 (Mapgen v5 cave2 noise parameters) noise_params 0, 12, (50, 50, 50
[***Mapgen v6] [***Mapgen v6]
# Map generation attributes specific to Mapgen V6. # Map generation attributes specific to Mapgen v6.
# When snowbiomes are enabled jungles are enabled and the jungles flag is ignored. # When snowbiomes are enabled jungles are enabled and the jungles flag is ignored.
# Flags that are not specified in the flag string are not modified from the default. # Flags that are not specified in the flag string are not modified from the default.
# Flags starting with "no" are used to explicitly disable them. # Flags starting with "no" are used to explicitly disable them.
mgv6_spflags (Mapgen v6 flags) flags jungles,biomeblend,mudflow,snowbiomes jungles,biomeblend,mudflow,snowbiomes,nojungles,nobiomeblend,nomudflow,nosnowbiomes mgv6_spflags (Mapgen v6 flags) flags jungles,biomeblend,mudflow,snowbiomes jungles,biomeblend,mudflow,snowbiomes,nojungles,nobiomeblend,nomudflow,nosnowbiomes
# Controls size of deserts and beaches in Mapgen V6. # Controls size of deserts and beaches in Mapgen v6.
# When snowbiomes are enabled 'mgv6_freq_desert' is ignored. # When snowbiomes are enabled 'mgv6_freq_desert' is ignored.
mgv6_freq_desert (Mapgen v6 desert frequency) float 0.45 mgv6_freq_desert (Mapgen v6 desert frequency) float 0.45
mgv6_freq_beach (Mapgen v6 beach frequency) float 0.15 mgv6_freq_beach (Mapgen v6 beach frequency) float 0.15
@ -909,7 +909,8 @@ mgv6_np_trees (Mapgen v6 trees noise parameters) noise_params 0, 1, (125, 125, 1
mgv6_np_apple_trees (Mapgen v6 apple trees noise parameters) noise_params 0, 1, (100, 100, 100), 342902, 3, 0.45, 2.0 mgv6_np_apple_trees (Mapgen v6 apple trees noise parameters) noise_params 0, 1, (100, 100, 100), 342902, 3, 0.45, 2.0
[***Mapgen v7] [***Mapgen v7]
# Map generation attributes specific to Mapgen V7.
# Map generation attributes specific to Mapgen v7.
# 'ridges' are the rivers. # 'ridges' are the rivers.
# Flags that are not specified in the flag string are not modified from the default. # Flags that are not specified in the flag string are not modified from the default.
# Flags starting with "no" are used to explicitly disable them. # Flags starting with "no" are used to explicitly disable them.
@ -927,6 +928,65 @@ mgv7_np_ridge (Mapgen v7 ridge noise parameters) noise_params 0, 1, (100, 100, 1
mgv7_np_cave1 (Mapgen v7 cave1 noise parameters) noise_params 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0 mgv7_np_cave1 (Mapgen v7 cave1 noise parameters) noise_params 0, 12, (100, 100, 100), 52534, 4, 0.5, 2.0
mgv7_np_cave2 (Mapgen v7 cave2 noise parameters) noise_params 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0 mgv7_np_cave2 (Mapgen v7 cave2 noise parameters) noise_params 0, 12, (100, 100, 100), 10325, 4, 0.5, 2.0
[***Mapgen fractal]
# Map generation attributes specific to Mapgen fractal.
# 'julia' selects a julia set to be generated instead of a mandelbrot set.
# Flags that are not specified in the flag string are not modified from the default.
# Flags starting with "no" are used to explicitly disable them.
mgfractal_spflags (Mapgen fractal flags) flags nojulia julia,nojulia
# Mandelbrot set: Iterations of the recursive function.
# Controls scale of finest detail.
mgfractal_m_iterations (Mapgen fractal mandelbrot iterations) int 9
# Mandelbrot set: Approximate (X,Y,Z) scales in nodes.
mgfractal_m_scale (Mapgen fractal mandelbrot scale) v3f (1024.0, 256.0, 1024.0)
# Mandelbrot set: (X,Y,Z) offsets from world centre.
# Range roughly -2 to 2, multiply by m_scale for offsets in nodes.
mgfractal_m_offset (Mapgen fractal mandelbrot offset) v3f (1.75, 0.0, 0.0)
# Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.
# Range roughly -2 to 2.
mgfractal_m_slice_w (Mapgen fractal mandelbrot slice w) float 0.0
# Julia set: Iterations of the recursive function.
# Controls scale of finest detail.
mgfractal_j_iterations (Mapgen fractal julia iterations) int 9
# Julia set: Approximate (X,Y,Z) scales in nodes.
mgfractal_j_scale (Mapgen fractal julia scale) v3f (2048.0, 512.0, 2048.0)
# Julia set: (X,Y,Z) offsets from world centre.
# Range roughly -2 to 2, multiply by j_scale for offsets in nodes.
mgfractal_j_offset (Mapgen fractal julia offset) v3f (0.0, 1.0, 0.0)
# Julia set: W co-ordinate of the generated 3D slice of the 4D shape.
# Range roughly -2 to 2.
mgfractal_j_slice_w (Mapgen fractal julia slice w) float 0.0
# Julia set: X value determining the 4D shape.
# Range roughly -2 to 2.
mgfractal_julia_x (Mapgen fractal julia x) float 0.33
# Julia set: Y value determining the 4D shape.
# Range roughly -2 to 2.
mgfractal_julia_y (Mapgen fractal julia y) float 0.33
# Julia set: Z value determining the 4D shape.
# Range roughly -2 to 2.
mgfractal_julia_z (Mapgen fractal julia z) float 0.33
# Julia set: W value determining the 4D shape.
# Range roughly -2 to 2.
mgfractal_julia_w (Mapgen fractal julia w) float 0.33
mgfractal_np_seabed (Mapgen fractal seabed noise parameters) noise_params -14, 9, (600, 600, 600), 41900, 5, 0.6, 2.0
mgfractal_np_filler_depth (Mapgen fractal filler depth noise parameters) noise_params 0, 1.2, (150, 150, 150), 261, 3, 0.7, 2.0
mgfractal_np_cave1 (Mapgen fractal cave1 noise parameters) noise_params 0, 12, (128, 128, 128), 52534, 4, 0.5, 2.0
mgfractal_np_cave2 (Mapgen fractal cave2 noise parameters) noise_params 0, 12, (128, 128, 128), 10325, 4, 0.5, 2.0
[*Security] [*Security]
# Prevent mods from doing insecure things like running shell commands. # Prevent mods from doing insecure things like running shell commands.

View File

@ -0,0 +1,189 @@
#.rst:
# FindNcursesw
# ------------
#
# Find the ncursesw (wide ncurses) include file and library.
#
# Based on FindCurses.cmake which comes with CMake.
#
# Checks for ncursesw first. If not found, it then executes the
# regular old FindCurses.cmake to look for for ncurses (or curses).
#
#
# Result Variables
# ^^^^^^^^^^^^^^^^
#
# This module defines the following variables:
#
# ``CURSES_FOUND``
# True if curses is found.
# ``NCURSESW_FOUND``
# True if ncursesw is found.
# ``CURSES_INCLUDE_DIRS``
# The include directories needed to use Curses.
# ``CURSES_LIBRARIES``
# The libraries needed to use Curses.
# ``CURSES_HAVE_CURSES_H``
# True if curses.h is available.
# ``CURSES_HAVE_NCURSES_H``
# True if ncurses.h is available.
# ``CURSES_HAVE_NCURSES_NCURSES_H``
# True if ``ncurses/ncurses.h`` is available.
# ``CURSES_HAVE_NCURSES_CURSES_H``
# True if ``ncurses/curses.h`` is available.
# ``CURSES_HAVE_NCURSESW_NCURSES_H``
# True if ``ncursesw/ncurses.h`` is available.
# ``CURSES_HAVE_NCURSESW_CURSES_H``
# True if ``ncursesw/curses.h`` is available.
#
# Set ``CURSES_NEED_NCURSES`` to ``TRUE`` before the
# ``find_package(Ncursesw)`` call if NCurses functionality is required.
#
#=============================================================================
# Copyright 2001-2014 Kitware, Inc.
# modifications: Copyright 2015 kahrl <kahrl@gmx.net>
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# * Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# * Neither the names of Kitware, Inc., the Insight Software Consortium,
# nor the names of their contributors may be used to endorse or promote
# products derived from this software without specific prior written
# permission.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
# HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
# ------------------------------------------------------------------------------
#
# The above copyright and license notice applies to distributions of
# CMake in source and binary form. Some source files contain additional
# notices of original copyright by their contributors; see each source
# for details. Third-party software packages supplied with CMake under
# compatible licenses provide their own copyright notices documented in
# corresponding subdirectories.
#
# ------------------------------------------------------------------------------
#
# CMake was initially developed by Kitware with the following sponsorship:
#
# * National Library of Medicine at the National Institutes of Health
# as part of the Insight Segmentation and Registration Toolkit (ITK).
#
# * US National Labs (Los Alamos, Livermore, Sandia) ASC Parallel
# Visualization Initiative.
#
# * National Alliance for Medical Image Computing (NAMIC) is funded by the
# National Institutes of Health through the NIH Roadmap for Medical Research,
# Grant U54 EB005149.
#
# * Kitware, Inc.
#=============================================================================
include(CheckLibraryExists)
find_library(CURSES_NCURSESW_LIBRARY NAMES ncursesw
DOC "Path to libncursesw.so or .lib or .a")
set(CURSES_USE_NCURSES FALSE)
set(CURSES_USE_NCURSESW FALSE)
if(CURSES_NCURSESW_LIBRARY)
set(CURSES_USE_NCURSES TRUE)
set(CURSES_USE_NCURSESW TRUE)
endif()
if(CURSES_USE_NCURSESW)
get_filename_component(_cursesLibDir "${CURSES_NCURSESW_LIBRARY}" PATH)
get_filename_component(_cursesParentDir "${_cursesLibDir}" PATH)
find_path(CURSES_INCLUDE_PATH
NAMES ncursesw/ncurses.h ncursesw/curses.h
HINTS "${_cursesParentDir}/include"
)
# Previous versions of FindCurses provided these values.
if(NOT DEFINED CURSES_LIBRARY)
set(CURSES_LIBRARY "${CURSES_NCURSESW_LIBRARY}")
endif()
CHECK_LIBRARY_EXISTS("${CURSES_NCURSESW_LIBRARY}"
cbreak "" CURSES_NCURSESW_HAS_CBREAK)
if(NOT CURSES_NCURSESW_HAS_CBREAK)
find_library(CURSES_EXTRA_LIBRARY tinfo HINTS "${_cursesLibDir}"
DOC "Path to libtinfo.so or .lib or .a")
find_library(CURSES_EXTRA_LIBRARY tinfo )
endif()
# Report whether each possible header name exists in the include directory.
if(NOT DEFINED CURSES_HAVE_NCURSESW_NCURSES_H)
if(EXISTS "${CURSES_INCLUDE_PATH}/ncursesw/ncurses.h")
set(CURSES_HAVE_NCURSESW_NCURSES_H "${CURSES_INCLUDE_PATH}/ncursesw/ncurses.h")
else()
set(CURSES_HAVE_NCURSESW_NCURSES_H "CURSES_HAVE_NCURSESW_NCURSES_H-NOTFOUND")
endif()
endif()
if(NOT DEFINED CURSES_HAVE_NCURSESW_CURSES_H)
if(EXISTS "${CURSES_INCLUDE_PATH}/ncursesw/curses.h")
set(CURSES_HAVE_NCURSESW_CURSES_H "${CURSES_INCLUDE_PATH}/ncursesw/curses.h")
else()
set(CURSES_HAVE_NCURSESW_CURSES_H "CURSES_HAVE_NCURSESW_CURSES_H-NOTFOUND")
endif()
endif()
find_library(CURSES_FORM_LIBRARY form HINTS "${_cursesLibDir}"
DOC "Path to libform.so or .lib or .a")
find_library(CURSES_FORM_LIBRARY form )
# Need to provide the *_LIBRARIES
set(CURSES_LIBRARIES ${CURSES_LIBRARY})
if(CURSES_EXTRA_LIBRARY)
set(CURSES_LIBRARIES ${CURSES_LIBRARIES} ${CURSES_EXTRA_LIBRARY})
endif()
if(CURSES_FORM_LIBRARY)
set(CURSES_LIBRARIES ${CURSES_LIBRARIES} ${CURSES_FORM_LIBRARY})
endif()
# Provide the *_INCLUDE_DIRS result.
set(CURSES_INCLUDE_DIRS ${CURSES_INCLUDE_PATH})
set(CURSES_INCLUDE_DIR ${CURSES_INCLUDE_PATH}) # compatibility
# handle the QUIETLY and REQUIRED arguments and set CURSES_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(Ncursesw DEFAULT_MSG
CURSES_LIBRARY CURSES_INCLUDE_PATH)
set(CURSES_FOUND ${NCURSESW_FOUND})
else()
find_package(Curses)
set(NCURSESW_FOUND FALSE)
endif()
mark_as_advanced(
CURSES_INCLUDE_PATH
CURSES_CURSES_LIBRARY
CURSES_NCURSES_LIBRARY
CURSES_NCURSESW_LIBRARY
CURSES_EXTRA_LIBRARY
CURSES_FORM_LIBRARY
)

View File

@ -1,204 +0,0 @@
Commits Name
1730 Perttu Ahola <celeron55@gmail.com>
372 kwolekr <kwolekr@minetest.net>
316 sapier <Sapier at GMX dot net>
218 Kahrl <kahrl@gmx.net>
192 PilzAdam <pilzadam@minetest.net>
185 Nils Dagsson Moskopp <nils@dieweltistgarnichtso.net>
177 ShadowNinja <shadowninja@minetest.net>
117 Loic Blot <loic.blot@unix-experience.fr>
108 Craig Robbins <kde.psych@gmail.com>
97 Giuseppe Bilotta <giuseppe.bilotta@gmail.com>
81 RealBadAngel <maciej.kasatkin@o2.pl>
81 sfan5 <sfan5@live.de>
65 proller <proller@github.com>
63 paramat <mat.gregory@virginmedia.com>
59 BlockMen <nmuelll@web.de>
59 Ilya Zhuravlev <zhuravlevilya@ya.ru>
57 est31 <MTest31@outlook.com>
55 OttoLidenbrock <unknown>
44 Constantin Wenger <constantin.wenger@googlemail.com>
35 Novatux <nathanael.courant@laposte.net>
30 Maksim Gamarnik <MoNTE48@mail.ua>
30 MirceaKitsune <sonichedgehog_hyperblast00@yahoo.com>
29 Ciaran Gultnieks <ciaran@ciarang.com>
23 4aiman Konsorumaniakku <4aiman@inbox.ru>
22 Diego Martínez <kaeza@users.sf.net>
22 SmallJoker <mk939@ymail.com>
21 darkrose <lisa@ltmnet.com>
19 Weblate <42@minetest.ru>
18 JacobF <queatz@gmail.com>
15 Jürgen Doser <jurgen.doser@gmail.com>
15 Matthew I <matttpt@gmail.com>
13 Shen Zheyu <arsdragonfly@gmail.com>
13 ngosang <diegodelasheras@gmail.com>
11 Calinou <calinou9999@gmail.com>
11 Jeija <norrepli@gmail.com>
11 Rui <Rui914@users.noreply.github.com>
10 Aaron Suen <warr1024@gmail.com>
10 Anton Tsyganenko <anton-tsyganenko@yandex.ru>
10 Mark Holmquist <marktraceur@gmail.com>
10 MetaDucky <metaducky AT gmail DOT com>
10 rubenwardy <rubenwardy@gmail.com>
10 teddydestodes <derkomtur@schattengang.net>
9 Esteban I. Ruiz Moreno <exio4.com@gmail.com>
9 gregorycu <gregory.currie@gmail.com>
8 0gb.us <0gb.us@0gb.us>
8 Felix Krause <flyx@isobeef.org>
8 Francizca Rodriguez <joaoadriano3@gmail.com>
8 Jonathan Neuschäfer <j.neuschaefer@gmx.net>
7 Mitori Itoshiki <mito551@gmail.com>
7 Selat <LongExampleTestName@gmail.com>
7 Zeg9 <dazeg9@gmail.com>
6 Chynggyz Jumaliev <translatorky@lavabit.com>
6 DannyDark <the_skeleton_of_a_child@yahoo.co.uk>
6 Dmitry Marakasov <amdmi3@amdmi3.ru>
6 Frederico Guimarães <frederico@teia.bio.br>
6 Jakub Vaněk <vanek.jakub4@seznam.cz>
6 Kodexky <kodexky@gmail.com>
6 Pavel Puchkin <i@neoascetic.me>
6 Sebastian Rühl <bahamada_basti@yahoo.de>
6 SmallJoker <st.rentsch@hotmail.com>
6 manuel duarte <ffrogger0@yahoo.com>
5 Lord James <neftali_dtctv@hotmail.com>
5 Marco gonzalez <socramazibi@gmx.es>
5 Markus Koschany <apo@gambaru.de>
5 Vanessa Ezekowitz <vanessaezekowitz@gmail.com>
4 Calinou <calinou@opmbx.org>
4 Cyriaque Skrapits <cyriaque@Ferm.(none)>
4 Juhani Numminen <juhaninumminen0@gmail.com>
4 Pavel Elagin <elagin.pasha@gmail.com>
4 TeTpaAka <TeTpaAka@users.noreply.github.com>
4 TriBlade9 <triblade9@mail.com>
4 Weedy <weedy2887@gmail.com>
4 Zefram <zefram@fysh.org>
4 fz72 <fz72@gmx.de>
4 khonkhortisan <khonkhortisan@gmail.com>
4 nerzhul <loic.blot@unix-experience.fr>
4 q66 <quaker66@gmail.com>
3 Andreas Zwinkau <qznc@go.to>
3 Bektur Mambetov <bektur@softwell.ru>
3 Diego Martínez <kaeza@users.noreply.github.com>
3 Heisenberg CZE <w.heisenberg@seznam.cz>
3 Kevin Ott <supercodingmonkey@gmail.com>
3 King Artur <david1989mail@yahoo.com>
3 Ner'zhul <nerzhul@users.noreply.github.com>
3 Pablo Lezaeta <prflr88@gmail.com>
3 Wuzzy <almikes@aol.com>
3 kilbith <jeanpatrick.guerrero@gmail.com>
3 obneq <obbneq@gmail.com>
3 stujones11 <stujones11@server.fake>
3 unknown <gregory.currie@gmail.com>
2 David Gumberg <davidzgumberg@gmail.com>
2 Diego Martínez <lkaezadl3@yahoo.com>
2 Dêivan Ortiz Munhoz <deivan@novoseusadosinformatica.com.br>
2 Fabio Luongo <e249260@rmqkr.net>
2 Ilya Pavlov <TTChangeTheWorld@gmail.com>
2 Jabo Babo <bb7b@gmx.de>
2 Jiří Procházka <ojirio@gmail.com>
2 Jonas Kriaučiūnas <jonukas@gmail.com>
2 L JJ <986869429@qq.com>
2 LS-Steeef <ls@steeef.nl>
2 LeMagnesium <mg.minetest@gmail.com>
2 Mahmut Elmas <mahmutelmas06@hotmail.com>
2 Megaf <mmegaf@gmail.com>
2 Mitchell Ward <mitchie1234@hotmail.com>
2 MrLoom <MrLoom@soeinfachistdas.net>
2 Muhammad Rifqi Priyo Susanto <muhammadrifqipriyosusanto@gmail.com>
2 Petr Hála <halapetr@selfnet.cz>
2 Ragnar Laud <ragnarlaud@gmail.com>
2 Robert Arkenin <rarkenin@gmail.com>
2 Rutger NL <r.minetest@rutger.nl>
2 Sasikaa Lacikaa <sasikaa@gmail.com>
2 Sergey Gilfanov <inkelyad@gmail.com>
2 Sokomine <wegwerf@anarres.dyndns.org>
2 Thomas Lauro <frozon@gmail.com>
2 Tomona Nanase <alpha.sohoh@gmail.com>
2 Vladimir a <c-vld@ya.ru>
2 hasufell <hasufell@posteo.de>
2 jeanpatrick.guerrero@gmail.com <jeanpatrick.guerrero@gmail.com>
2 srifqi <muhammadrifqipriyosusanto@gmail.com>
1 (@U-Exp) <(@U-Exp)>
1 4Evergreen4 <eljohnson@frontier.com>
1 4Evergreen4 <everett@mcjohnso.com>
1 ?????? ???????? <Martin_Devil@mail.ru>
1 Anthony <azhang9@gmail.com>
1 Anton <vob999@bk.ru>
1 AntonBoch1244 <AntonBoch12.44@gmail.com>
1 Artem Sinkevich <artsin666@gmail.com>
1 Bad-Command <Corey.Edmunds@gmail.com>
1 Brandon <brandon@bremaweb.com>
1 Brent Hull <bhull2010@live.com>
1 Casimir <jul.lutz@gmx.net>
1 Christophe Piveteau <chripiveteau@gmail.com>
1 Chyngyz Dzhumaliev <localhost@housemail.com>
1 Craig Davison <craig.davison3@gmail.com>
1 Cy <whatever>
1 Daniel Ziolkowski <ziolkoneo@gmail.com>
1 Dany Cuartiella <kaiosown@gmail.com>
1 David Thompson <dthompson2@worcester.edu>
1 Dániel Varga <vargad88@gmail.com>
1 Enki <Enki4@users.noreply.github.com>
1 FessWolf <fesswolf10@gmail.com>
1 Frantisek Simorda <frantisek.simorda@gmail.com>
1 Garrosh <Samuel.Comeau@usherbrooke.ca>
1 Jay Arndt <jayarn27182@windstream.net>
1 Jonathon Anderson <anderjon@umail.iu.edu>
1 Joshua Beck <jxb091000@utdallas.edu>
1 João Farias <jgfd@cin.ufpe.br>
1 KodexKy <kodexky@gmail.com>
1 Kyle <kyle.kylina@gmail.com>
1 Leonardo Costa <k95leo@gmail.com>
1 Mario Barrera <alley.marius@gmail.com>
1 Markus Lehmann <lolxd751@gmail.com>
1 Martin Doege <mdoege@compuserve.com>
1 Matthew Bekkema <mbekkema97@gmail.com>
1 Me Moala <moala@online.fr>
1 Miguel Almeida <migaxmoitax@gmail.com>
1 Mikaela Suomalainen <mikaela.suomalainen@outlook.com>
1 Mukul Sati <mukulsati@gmail.com>
1 Mushiden <mushiden@hotmail.com>
1 Nicola Spanti <rydroid_trans@yahoo.fr>
1 Oleg Matveev <gkotolegokot@gmail.com>
1 PenguinDad <tamarok40@gmail.com>
1 Rafael Reilova <rafael7@users.noreply.github.com>
1 Rui914 <mrrst0914@gmail.com>
1 Rune Biskopstö Christensen <lakersforce@gmail.com>
1 Russ <russplaysguitar@yahoo.com>
1 Ryan Newell <thekingdoof@gmail.com>
1 Sindre Tellevik <graknol@gmail.com>
1 Splizard <quentin@squeezedoranges.com>
1 Stefan Beller <stefanbeller@gmail.com>
1 Steven Smith <stevensmith.ome@gmail.com>
1 Tomas Brod <tomasbrod@azet.sk>
1 Vincent Heuken <vincent@vincentheuken.com>
1 William Strealy <wilstrealy@gmail.com>
1 William Teder <william@cboos.com>
1 Wolfgang Fellger <wf@isobeef.org>
1 Wouters Dorian <thegravgun@gmail.com>
1 Yaman <ybq987@gmail.com>
1 Zeno- <kde.psych@gmail.com>
1 b p <bp.atlarge@gmail.com>
1 bcnjr5 <bcnjr5@gmail.com>
1 berkut <berkut87@gmail.com>
1 c h <akerunakayama@gmail.com>
1 donat_b <donat@openmailbox.com>
1 dvere <dvere@users.noreply.github.com>
1 eduardojsm <eduardojuniosm@gmail.com>
1 fairiestoy <johannesvk@web.de>
1 fishyWET <fishyWET@hotmail.com>
1 gregorycu <none@none.none>
1 hdastwb <hdastwb@hdastwb.heliohost.org>
1 jordan4ibanez <jordan4ibanez@gmail.com>
1 mahmutelmas06 <mahmutelmas06@users.noreply.github.com>
1 mich1 <szgyyy@gmail.com>
1 mimilus <mimilus@users.noreply.github.com>
1 onkrot <vob999@bk.ru>
1 pandoro almascarpone <padarogames@gmail.com>
1 poet-nohit <poet.nohit@gmail.com>
1 sruz25 <sruz25cz@gmail.com>
1 sub reptice <subreptice@mailoo.org>
1 tenplus1 <tenplus1@users.noreply.github.com>
1 v c <vicente.camolas@gmail.com>
1 yuqian wang <dreamofnudt@gmail.com>
1 Сергей Голубев <seria-2@mail.ru>

View File

@ -120,6 +120,7 @@ CMAKE_BUILD_TYPE - Type of build (Release vs. Debug)
RelWithDebInfo - Release build with Debug information RelWithDebInfo - Release build with Debug information
MinSizeRel - Release build with -Os passed to compiler to make executable as small as possible MinSizeRel - Release build with -Os passed to compiler to make executable as small as possible
ENABLE_CURL - Build with cURL; Enables use of online mod repo, public serverlist and remote media fetching via http ENABLE_CURL - Build with cURL; Enables use of online mod repo, public serverlist and remote media fetching via http
ENABLE_CURSES - Build with (n)curses; Enables a server side terminal (command line option: --terminal)
ENABLE_FREETYPE - Build with FreeType2; Allows using TTF fonts ENABLE_FREETYPE - Build with FreeType2; Allows using TTF fonts
ENABLE_GETTEXT - Build with Gettext; Allows using translations ENABLE_GETTEXT - Build with Gettext; Allows using translations
ENABLE_GLES - Search for Open GLES headers & libraries and use them ENABLE_GLES - Search for Open GLES headers & libraries and use them

View File

@ -2039,9 +2039,19 @@ and `minetest.auth_reload` call the authetification handler.
* `pos1` and `pos2` are optional and default to mapchunk minp and maxp. * `pos1` and `pos2` are optional and default to mapchunk minp and maxp.
* `minetest.clear_objects()` * `minetest.clear_objects()`
* clear all objects in the environments * clear all objects in the environments
* `minetest.emerge_area(pos1, pos2)` * `minetest.emerge_area(pos1, pos2, [callback], [param])`
* queues all mapblocks in the area from pos1 to pos2, inclusive, for emerge * Queue all blocks in the area from `pos1` to `pos2`, inclusive, to be asynchronously
* i.e. asynchronously loads blocks from disk, or if inexistent, generates them * fetched from memory, loaded from disk, or if inexistent, generates them.
* If `callback` is a valid Lua function, this will be called for each block emerged.
* The function signature of callback is:
* `function EmergeAreaCallback(blockpos, action, calls_remaining, param)`
* - `blockpos` is the *block* coordinates of the block that had been emerged
* - `action` could be one of the following constant values:
* `core.EMERGE_CANCELLED`, `core.EMERGE_ERRORED`, `core.EMERGE_FROM_MEMORY`,
* `core.EMERGE_FROM_DISK`, `core.EMERGE_GENERATED`
* - `calls_remaining` is the number of callbacks to be expected after this one
* - `param` is the user-defined parameter passed to emerge_area (or nil if the
* parameter was absent)
* `minetest.delete_area(pos1, pos2)` * `minetest.delete_area(pos1, pos2)`
* delete all mapblocks in the area from pos1 to pos2, inclusive * delete all mapblocks in the area from pos1 to pos2, inclusive
* `minetest.line_of_sight(pos1, pos2, stepsize)`: returns `boolean, pos` * `minetest.line_of_sight(pos1, pos2, stepsize)`: returns `boolean, pos`
@ -2284,6 +2294,15 @@ These functions return the leftover itemstack.
* `replacements` = `{["old_name"] = "convert_to", ...}` * `replacements` = `{["old_name"] = "convert_to", ...}`
* `force_placement` is a boolean indicating whether nodes other than `air` and * `force_placement` is a boolean indicating whether nodes other than `air` and
`ignore` are replaced by the schematic `ignore` are replaced by the schematic
* Returns nil if the schematic could not be loaded.
* `minetest.place_schematic_on_vmanip(vmanip, pos, schematic, rotation, replacement, force_placement)`:
* This function is analagous to minetest.place_schematic, but places a schematic onto the
specified VoxelManip object `vmanip` instead of the whole map.
* Returns false if any part of the schematic was cut-off due to the VoxelManip not
containing the full area required, and true if the whole schematic was able to fit.
* Returns nil if the schematic could not be loaded.
* After execution, any external copies of the VoxelManip contents are invalidated.
* `minetest.serialize_schematic(schematic, format, options)` * `minetest.serialize_schematic(schematic, format, options)`
* Return the serialized schematic specified by schematic (see: Schematic specifier) * Return the serialized schematic specified by schematic (see: Schematic specifier)
@ -2746,6 +2765,15 @@ It can be created via `PcgRandom(seed)` or `PcgRandom(seed, sequence)`.
* This is only a rough approximation of a normal distribution with mean=(max-min)/2 and variance=1 * This is only a rough approximation of a normal distribution with mean=(max-min)/2 and variance=1
* Increasing num_trials improves accuracy of the approximation * Increasing num_trials improves accuracy of the approximation
### `SecureRandom`
Interface for the operating system's crypto-secure PRNG.
It can be created via `SecureRandom()`. The constructor returns nil if a secure random device cannot be
be found on the system.
#### Methods
* `next_bytes([count])`: return next `count` (default 1, capped at 2048) many random bytes, as a string.
### `PerlinNoise` ### `PerlinNoise`
A perlin noise generator. A perlin noise generator.
It can be created via `PerlinNoise(seed, octaves, persistence, scale)` It can be created via `PerlinNoise(seed, octaves, persistence, scale)`
@ -2793,22 +2821,171 @@ nil, this table will be used to store the result instead of creating a new table
`noisevals = noise:getMapSlice({x=24, z=1}, {x=1, z=1})` `noisevals = noise:getMapSlice({x=24, z=1}, {x=1, z=1})`
### `VoxelManip` ### `VoxelManip`
An interface to the `MapVoxelManipulator` for Lua.
It can be created via `VoxelManip()` or `minetest.get_voxel_manip()`. #### About VoxelManip
The map will be pre-loaded if two positions are passed to either. VoxelManip is a scripting interface to the internal 'Map Voxel Manipulator' facility. The purpose of
this object is for fast, low-level, bulk access to reading and writing Map content. As such, setting
map nodes through VoxelManip will lack many of the higher level features and concepts you may be used
to with other methods of setting nodes. For example, nodes will not have their construction and
destruction callbacks run, and no rollback information is logged.
It is important to note that VoxelManip is designed for speed, and *not* ease of use or flexibility.
If your mod requires a map manipulation facility that will handle 100% of all edge cases, or the use
of high level node placement features, perhaps minetest.set_node() is better suited for the job.
In addition, VoxelManip might not be faster, or could even be slower, for your specific use case.
VoxelManip is most effective when setting very large areas of map at once - for example, if only
setting a 5x5x5 node area, a minetest.set_node() loop may be more optimal. Always profile code
using both methods of map manipulation to determine which is most appropriate for your usage.
#### Using VoxelManip
A VoxelManip object can be created any time using either:
`VoxelManip([p1, p2])`, or `minetest.get_voxel_manip([p1, p2])`.
If the optional position parameters are present for either of these routines, the specified region
will be pre-loaded into the VoxelManip object on creation. Otherwise, the area of map you wish to
manipulate must first be loaded into the VoxelManip object using `VoxelManip:read_from_map()`.
Note that `VoxelManip:read_from_map()` returns two position vectors. The region formed by these
positions indicate the minimum and maximum (respectively) positions of the area actually loaded in
the VoxelManip, which may be larger than the area requested. For convenience, the loaded area
coordinates can also be queried any time after loading map data with `VoxelManip:get_emerged_area()`.
Now that the VoxelManip object is populated with map data, your mod can fetch a copy of this data
using either of two methods. `VoxelManip:get_node_at()`, which retrieves an individual node in a
MapNode formatted table at the position requested is the simplest method to use, but also the slowest.
Nodes in a VoxelManip object may also be read in bulk to a flat array table using:
`VoxelManip:get_data()` for node content (in Content ID form, see section 'Content IDs'),
`VoxelManip:get_light_data()` for node light levels, and
`VoxelManip:get_param2_data()` for the node type-dependent "param2" values.
See section 'Flat array format' for more details.
It is very important to understand that the tables returned by any of the above three functions
represent a snapshot of the VoxelManip's internal state at the time of the call. This copy of the
data will *not* magically update itself if another function modifies the internal VoxelManip state.
Any functions that modify a VoxelManip's contents work on the VoxelManip's internal state unless
otherwise explicitly stated.
Once the bulk data has been edited to your liking, the internal VoxelManip state can be set using:
`VoxelManip:set_data()` for node content (in Content ID form, see section 'Content IDs'),
`VoxelManip:set_light_data()` for node light levels, and
`VoxelManip:set_param2_data()` for the node type-dependent "param2" values.
The parameter to each of the above three functions can use any table at all in the same flat array
format as produced by get_data() et al. and is *not required* to be a table retrieved from get_data().
Once the internal VoxelManip state has been modified to your liking, the changes can be committed back
to the map by calling `VoxelManip:write_to_map()`.
Finally, a call to `VoxelManip:update_map()` is required to re-calculate lighting and set the blocks
as being modified so that connected clients are sent the updated parts of map.
##### Flat array format
Let
`Nx = p2.X - p1.X + 1`,
`Ny = p2.Y - p1.Y + 1`, and
`Nz = p2.Z - p1.Z + 1`.
Then, for a loaded region of p1..p2, this array ranges from `1` up to and including the value of
the expression `Nx * Ny * Nz`.
Positions offset from p1 are present in the array with the format of:
```
[
(0, 0, 0), (1, 0, 0), (2, 0, 0), ... (Nx, 0, 0),
(0, 1, 0), (1, 1, 0), (2, 1, 0), ... (Nx, 1, 0),
...
(0, Ny, 0), (1, Ny, 0), (2, Ny, 0), ... (Nx, Ny, 0),
(0, 0, 1), (1, 0, 1), (2, 0, 1), ... (Nx, 0, 1),
...
(0, Ny, 2), (1, Ny, 2), (2, Ny, 2), ... (Nx, Ny, 2),
...
(0, Ny, Nz), (1, Ny, Nz), (2, Ny, Nz), ... (Nx, Ny, Nz)
]
```
and the array index for a position p contained completely in p1..p2 is:
`(p.Z - p1.Z) * Ny * Nx + (p.Y - p1.Y) * Nx + (p.X - p1.X) + 1`
Note that this is the same "flat 3D array" format as `PerlinNoiseMap:get3dMap_flat()`.
VoxelArea objects (see section 'VoxelArea') can be used to simplify calculation of the index
for a single point in a flat VoxelManip array.
##### Content IDs
A Content ID is a unique integer identifier for a specific node type. These IDs are used by VoxelManip
in place of the node name string for `VoxelManip:get_data()` and `VoxelManip:set_data()`. You can use
`minetest.get_content_id()` to look up the Content ID for the specified node name, and
`minetest.get_name_from_content_id()` to look up the node name string for a given Content ID.
After registration of a node, its Content ID will remain the same throughout execution of the mod.
Note that the node being queried needs to have already been been registered.
The following builtin node types have their Content IDs defined as constants:
```
core.CONTENT_UNKNOWN (ID for "unknown" nodes)
core.CONTENT_AIR (ID for "air" nodes)
core.CONTENT_IGNORE (ID for "ignore" nodes)
```
##### Mapgen VoxelManip objects
Inside of `on_generated()` callbacks, it is possible to retrieve the same VoxelManip object used by the
core's Map Generator (commonly abbreviated Mapgen). Most of the rules previously described still apply
but with a few differences:
* The Mapgen VoxelManip object is retrieved using: `minetest.get_mapgen_object("voxelmanip")`
* This VoxelManip object already has the region of map just generated loaded into it; it's not necessary
to call `VoxelManip:read_from_map()` before using a Mapgen VoxelManip.
* The `on_generated()` callbacks of some mods may place individual nodes in the generated area using
non-VoxelManip map modification methods. Because the same Mapgen VoxelManip object is passed through
each `on_generated()` callback, it becomes necessary for the Mapgen VoxelManip object to maintain
consistency with the current map state. For this reason, calling any of the following functions:
`minetest.add_node()`, `minetest.set_node()`, or `minetest.swap_node()`
will also update the Mapgen VoxelManip object's internal state active on the current thread.
* After modifying the Mapgen VoxelManip object's internal buffer, it may be necessary to update lighting
information using either: `VoxelManip:calc_lighting()` or `VoxelManip:set_lighting()`.
* `VoxelManip:update_map()` does not need to be called after `write_to_map()`. The map update is performed
automatically after all on_generated callbacks have been run for that generated block.
##### Other API functions operating on a VoxelManip
If any VoxelManip contents were set to a liquid node, `VoxelManip:update_liquids()` must be called
for these liquid nodes to begin flowing. It is recommended to call this function only after having
written all buffered data back to the VoxelManip object, save for special situations where the modder
desires to only have certain liquid nodes begin flowing.
The functions `minetest.generate_ores()` and `minetest.generate_decorations()` will generate all
registered decorations and ores throughout the full area inside of the specified VoxelManip object.
`minetest.place_schematic_on_vmanip()` is otherwise identical to `minetest.place_schematic()`,
except instead of placing the specified schematic directly on the map at the specified position, it
will place the schematic inside of the VoxelManip.
##### Notes
* Attempting to read data from a VoxelManip object before map is read will result in a zero-length
array table for `VoxelManip:get_data()`, and an "ignore" node at any position for
`VoxelManip:get_node_at()`.
* If either a region of map has not yet been generated or is out-of-bounds of the map, that region is
filled with "ignore" nodes.
* Other mods, or the core itself, could possibly modify the area of map currently loaded into a VoxelManip
object. With the exception of Mapgen VoxelManips (see above section), the internal buffers are not
updated. For this reason, it is strongly encouraged to complete the usage of a particular VoxelManip
object in the same callback it had been created.
* If a VoxelManip object will be used often, such as in an `on_generated()` callback, consider passing
a file-scoped table as the optional parameter to `VoxelManip:get_data()`, which serves as a static
buffer the function can use to write map data to instead of returning a new table each call. This
greatly enhances performance by avoiding unnecessary memory allocations.
#### Methods #### Methods
* `read_from_map(p1, p2)`: Reads a chunk of map from the map containing the * `read_from_map(p1, p2)`: Loads a chunk of map into the VoxelManip object containing
region formed by `p1` and `p2`. the region formed by `p1` and `p2`.
* returns actual emerged `pmin`, actual emerged `pmax` * returns actual emerged `pmin`, actual emerged `pmax`
* `write_to_map()`: Writes the data loaded from the `VoxelManip` back to the map. * `write_to_map()`: Writes the data loaded from the `VoxelManip` back to the map.
* **important**: data must be set using `VoxelManip:set_data` before calling this * **important**: data must be set using `VoxelManip:set_data()` before calling this
* `get_node_at(pos)`: Returns a `MapNode` table of the node currently loaded in * `get_node_at(pos)`: Returns a `MapNode` table of the node currently loaded in
the `VoxelManip` at that position the `VoxelManip` at that position
* `set_node_at(pos, node)`: Sets a specific `MapNode` in the `VoxelManip` at * `set_node_at(pos, node)`: Sets a specific `MapNode` in the `VoxelManip` at that position
that position * `get_data([buffer])`: Retrieves the node content data loaded into the `VoxelManip` object
* `get_data(buffer)`: Gets the data read into the `VoxelManip` object
* returns raw node data in the form of an array of node content IDs * returns raw node data in the form of an array of node content IDs
* if the param `buffer` is present, this table will be used to store the result instead * if the param `buffer` is present, this table will be used to store the result instead
* `set_data(data)`: Sets the data contents of the `VoxelManip` object * `set_data(data)`: Sets the data contents of the `VoxelManip` object
@ -3222,6 +3399,7 @@ Definition tables
dig = <SimpleSoundSpec>, -- "__group" = group-based sound (default) dig = <SimpleSoundSpec>, -- "__group" = group-based sound (default)
dug = <SimpleSoundSpec>, dug = <SimpleSoundSpec>,
place = <SimpleSoundSpec>, place = <SimpleSoundSpec>,
place_failed = <SimpleSoundSpec>,
}, },
drop = "", -- Name of dropped node when dug. Default is the node itself. drop = "", -- Name of dropped node when dug. Default is the node itself.
-- Alternatively: -- Alternatively:

View File

@ -89,6 +89,9 @@ Run speed tests
.B \-\-migrate <value> .B \-\-migrate <value>
Migrate from current map backend to another. Possible values are sqlite3, Migrate from current map backend to another. Possible values are sqlite3,
leveldb, redis, and dummy. leveldb, redis, and dummy.
.TP
.B \-\-terminal
Display an interactive terminal over ncurses during execution.
.SH ENVIRONMENT .SH ENVIRONMENT
.TP .TP

View File

@ -6,7 +6,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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-11-23 17:37+0100\n" "PO-Revision-Date: 2013-11-23 17:37+0100\n"
"Last-Translator: Selat <LongExampleTestName@gmail.com>\n" "Last-Translator: Selat <LongExampleTestName@gmail.com>\n"
"Language-Team: Belarusian\n" "Language-Team: Belarusian\n"
@ -406,7 +406,7 @@ msgid "Start Game"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -433,6 +433,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1372,7 +1376,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1517,7 +1521,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1647,7 +1655,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1781,7 +1789,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1861,18 +1870,22 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If disabled " msgid ""
"If disabled \"use\" key is used to fly fast if both fly and fast mode are "
"enabled."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If enabled, " msgid ""
"If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
"and descending."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1946,6 +1959,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Jump key" msgid "Jump key"
msgstr "" msgstr ""
@ -2267,27 +2326,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2326,6 +2416,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2498,6 +2660,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2799,7 +2969,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3035,7 +3205,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3238,6 +3408,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""

File diff suppressed because it is too large Load Diff

View File

@ -7,7 +7,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.0.0\n" "Project-Id-Version: 0.0.0\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-02-17 00:41+0200\n" "PO-Revision-Date: 2013-02-17 00:41+0200\n"
"Last-Translator: Rune Biskopstö Christensen <lakersforce@gmail.com>\n" "Last-Translator: Rune Biskopstö Christensen <lakersforce@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
@ -429,7 +429,7 @@ msgid "Start Game"
msgstr "Start spil / Forbind" msgstr "Start spil / Forbind"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -458,6 +458,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "aktiveret" msgstr "aktiveret"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1432,7 +1436,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1586,7 +1590,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1717,7 +1725,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1853,7 +1861,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1933,21 +1942,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Deaktivér alle" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "aktiveret" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2022,6 +2033,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2347,27 +2404,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2406,6 +2494,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2578,6 +2738,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2881,7 +3049,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3122,7 +3290,7 @@ msgstr "Glat belysning"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3328,6 +3496,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3494,36 +3666,65 @@ msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy #, fuzzy
#~ msgid "Game Name" #~ msgid "Opaque Leaves"
#~ msgstr "Spil" #~ msgstr "Opakt (uigennemsigtigt) vand"
#, fuzzy #, fuzzy
#~ msgid "Favorites:" #~ msgid "Opaque Water"
#~ msgstr "Opakt (uigennemsigtigt) vand"
#, fuzzy
#~ msgid "Reset singleplayer world"
#~ msgstr "Enligspiller"
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Ned"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Venstre klik: flyt alle enheder. Højre klik: flyt en enkelt enhed"
#~ msgid "is required by:"
#~ msgstr "er påkrævet af:"
#~ msgid "Configuration saved. "
#~ msgstr "Konfiguration gemt. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Advarsel: konfigurationen er ikke sammenhængende. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Kan ikke skabe verden: navnet indeholder ugyldige bogstaver"
#~ msgid "Show Public"
#~ msgstr "Vis offentlig"
#~ msgid "Show Favorites"
#~ msgstr "Vis favoritter" #~ msgstr "Vis favoritter"
#, fuzzy #~ msgid "Leave address blank to start a local server."
#~ msgid "Password" #~ msgstr "Lad adresse-feltet være tomt for at starte en lokal server."
#~ msgstr "Gammelt kodeord"
#~ msgid "Preload item visuals" #~ msgid "Create world"
#~ msgstr "For-indlæs elementernes grafik" #~ msgstr "Skab verden"
#~ msgid "" #~ msgid "Address required."
#~ "Warning: Some mods are not configured yet.\n" #~ msgstr "Adresse påkrævet."
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: nogle modifikationer er endnu ikke konfigureret.\n"
#~ "De vil blive aktiveret som standard når du gemmer konfigurationen. "
#~ msgid "" #~ msgid "Cannot delete world: Nothing selected"
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "Kan ikke slette verden: ingenting valgt"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: nogle konfigurerede modifikationer mangler.\n"
#~ "Deres indstillinger vil blive fjernet når du gemmer konfigurationen. "
#~ msgid "Delete map" #~ msgid "Files to be deleted"
#~ msgstr "Slet mappen" #~ msgstr "Filer som slettes"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Kan ikke skabe verden: ingen spil fundet"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Kan ikke konfigurere verden: ingenting valgt"
#~ msgid "Failed to delete all world files"
#~ msgstr "Mislykkedes i at slette alle verdenens filer"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3550,63 +3751,42 @@ msgstr ""
#~ "- ESC: denne menu\n" #~ "- ESC: denne menu\n"
#~ "- T: snak\n" #~ "- T: snak\n"
#~ msgid "Failed to delete all world files" #~ msgid "Delete map"
#~ msgstr "Mislykkedes i at slette alle verdenens filer" #~ msgstr "Slet mappen"
#~ msgid "Cannot configure world: Nothing selected" #~ msgid ""
#~ msgstr "Kan ikke konfigurere verden: ingenting valgt" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: nogle konfigurerede modifikationer mangler.\n"
#~ "Deres indstillinger vil blive fjernet når du gemmer konfigurationen. "
#~ msgid "Cannot create world: No games found" #~ msgid ""
#~ msgstr "Kan ikke skabe verden: ingen spil fundet" #~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: nogle modifikationer er endnu ikke konfigureret.\n"
#~ "De vil blive aktiveret som standard når du gemmer konfigurationen. "
#~ msgid "Files to be deleted" #~ msgid "Preload item visuals"
#~ msgstr "Filer som slettes" #~ msgstr "For-indlæs elementernes grafik"
#~ msgid "Cannot delete world: Nothing selected" #, fuzzy
#~ msgstr "Kan ikke slette verden: ingenting valgt" #~ msgid "Password"
#~ msgstr "Gammelt kodeord"
#~ msgid "Address required." #, fuzzy
#~ msgstr "Adresse påkrævet." #~ msgid "Favorites:"
#~ msgid "Create world"
#~ msgstr "Skab verden"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Lad adresse-feltet være tomt for at starte en lokal server."
#~ msgid "Show Favorites"
#~ msgstr "Vis favoritter" #~ msgstr "Vis favoritter"
#~ msgid "Show Public" #, fuzzy
#~ msgstr "Vis offentlig" #~ msgid "Game Name"
#~ msgstr "Spil"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Kan ikke skabe verden: navnet indeholder ugyldige bogstaver"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Advarsel: konfigurationen er ikke sammenhængende. "
#~ msgid "Configuration saved. "
#~ msgstr "Konfiguration gemt. "
#~ msgid "is required by:"
#~ msgstr "er påkrævet af:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Venstre klik: flyt alle enheder. Højre klik: flyt en enkelt enhed"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "If enabled, "
#~ msgstr "Ned" #~ msgstr "aktiveret"
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "If disabled "
#~ msgstr "Enligspiller" #~ msgstr "Deaktivér alle"
#, fuzzy
#~ msgid "Opaque Water"
#~ msgstr "Opakt (uigennemsigtigt) vand"
#, fuzzy
#~ msgid "Opaque Leaves"
#~ msgstr "Opakt (uigennemsigtigt) vand"

File diff suppressed because it is too large Load Diff

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-13 12:36+0200\n" "PO-Revision-Date: 2015-09-13 12:36+0200\n"
"Last-Translator: Tim <t4im@openmailbox.org>\n" "Last-Translator: Tim <t4im@openmailbox.org>\n"
"Language-Team: Esperanto <https://hosted.weblate.org/projects/minetest/" "Language-Team: Esperanto <https://hosted.weblate.org/projects/minetest/"
@ -416,7 +416,7 @@ msgid "Start Game"
msgstr "Startigi ludon" msgstr "Startigi ludon"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -445,6 +445,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "ŝaltita" msgstr "ŝaltita"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1429,7 +1433,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1579,7 +1583,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1712,7 +1720,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1850,7 +1858,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1930,21 +1939,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Malŝaltu modifaron" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "ŝaltita" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2019,6 +2030,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2344,27 +2401,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2405,6 +2493,81 @@ msgstr "Mondogenerilo"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Mondogenerilo" msgstr "Mondogenerilo"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Mondogenerilo"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Mondogenerilo"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Paralaksa Okludo"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2581,6 +2744,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2891,7 +3062,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3141,7 +3312,7 @@ msgstr "Glatiga lumo"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3350,6 +3521,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3523,65 +3698,73 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "2x"
#~ msgstr "Bildigo:" #~ msgstr "2x"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Restartigu Minetest-on por efikigi pelilan ŝanĝon"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Tuŝa sojlo (px)"
#~ msgid "Touch free target"
#~ msgstr "Sentuŝa celo"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Por uzi ombrigilojn, OpenGL-a pelilo estas necesa."
#~ msgid "Texturing:"
#~ msgstr "Teksturado:"
#~ msgid "Simple Leaves"
#~ msgstr "Simplaj foliaĵoj"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Skala faktoro por menuoj "
#~ msgid "Reset singleplayer world"
#~ msgstr "Nuligi solludantan mondon"
#~ msgid "Opaque Water"
#~ msgstr "Opaka akvo"
#~ msgid "Opaque Leaves"
#~ msgstr "Opakaj foliaĵoj"
#~ msgid "No!!!"
#~ msgstr "Ne!!!"
#~ msgid "No Mipmap"
#~ msgstr "Neniu Mipmapo"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmapo + Malizotropa filtrilo"
#~ msgid "Mipmap"
#~ msgstr "Mipmapo"
#~ msgid "Fancy Leaves"
#~ msgstr "Ŝikaj foliaĵoj"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Ĉu vi certas, ke vi volas nuligi vian solludantan mondon?"
#~ msgid "Antialiasing:"
#~ msgstr "Glatigo:"
#~ msgid "8x"
#~ msgstr "8x"
#~ msgid "4x" #~ msgid "4x"
#~ msgstr "4x" #~ msgstr "4x"
#~ msgid "2x" #~ msgid "8x"
#~ msgstr "2x" #~ msgstr "8x"
#~ msgid "Antialiasing:"
#~ msgstr "Glatigo:"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Ĉu vi certas, ke vi volas nuligi vian solludantan mondon?"
#~ msgid "Fancy Leaves"
#~ msgstr "Ŝikaj foliaĵoj"
#~ msgid "Mipmap"
#~ msgstr "Mipmapo"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmapo + Malizotropa filtrilo"
#~ msgid "No Mipmap"
#~ msgstr "Neniu Mipmapo"
#~ msgid "No!!!"
#~ msgstr "Ne!!!"
#~ msgid "Opaque Leaves"
#~ msgstr "Opakaj foliaĵoj"
#~ msgid "Opaque Water"
#~ msgstr "Opaka akvo"
#~ msgid "Reset singleplayer world"
#~ msgstr "Nuligi solludantan mondon"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Skala faktoro por menuoj "
#~ msgid "Simple Leaves"
#~ msgstr "Simplaj foliaĵoj"
#~ msgid "Texturing:"
#~ msgstr "Teksturado:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Por uzi ombrigilojn, OpenGL-a pelilo estas necesa."
#~ msgid "Touch free target"
#~ msgstr "Sentuŝa celo"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Tuŝa sojlo (px)"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Restartigu Minetest-on por efikigi pelilan ŝanĝon"
#~ msgid "Rendering:"
#~ msgstr "Bildigo:"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "ŝaltita"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Malŝaltu modifaron"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-10-04 12:36+0200\n" "PO-Revision-Date: 2015-10-27 19:39+0200\n"
"Last-Translator: OdnetninI <odnetnininds@gmail.com>\n" "Last-Translator: ShadowNinja <shadowninja@minetest.net>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/minetest/" "Language-Team: Spanish <https://hosted.weblate.org/projects/minetest/"
"minetest/es/>\n" "minetest/es/>\n"
"Language: es\n" "Language: es\n"
@ -68,7 +68,7 @@ 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 "Sólo soportamos protocolos versión $1"
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We support protocol versions between version $1 and $2." msgid "We support protocol versions between version $1 and $2."
@ -424,7 +424,7 @@ msgid "Start Game"
msgstr "Iniciar juego" msgstr "Iniciar juego"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -433,7 +433,7 @@ msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Browse" msgid "Browse"
msgstr "" msgstr "Navegar"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Change keys" msgid "Change keys"
@ -446,13 +446,17 @@ msgstr "Desactivar paquete"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Edit" msgid "Edit"
msgstr "" msgstr "Editar"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy #, fuzzy
msgid "Enabled" msgid "Enabled"
msgstr "Activado" msgstr "Activado"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -460,9 +464,8 @@ msgid ""
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Games" msgid "Games"
msgstr "Juego" msgstr "Juegos"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Optionally the lacunarity can be appended with a leading comma." msgid "Optionally the lacunarity can be appended with a leading comma."
@ -606,7 +609,7 @@ msgstr "La ruta del mundo especificada no existe: "
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "needs_fallback_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
#, fuzzy #, fuzzy
@ -1444,7 +1447,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1594,7 +1597,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1727,7 +1734,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1866,7 +1873,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1946,21 +1954,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Desactivar paquete" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "Activado" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2035,6 +2045,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2360,27 +2416,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2421,6 +2508,81 @@ msgstr "Generador de mapas"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Generador de mapas" msgstr "Generador de mapas"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Generador de mapas"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Generador de mapas"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Oclusión de paralaje"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2597,6 +2759,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2907,7 +3077,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3157,7 +3327,7 @@ msgstr "Iluminación suave"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3367,6 +3537,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3540,73 +3714,81 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "2x"
#~ msgstr "Renderizado:" #~ msgstr "2x"
#~ msgid "Restart minetest for driver change to take effect" #~ msgid "4x"
#~ msgstr "" #~ msgstr "4x"
#~ "Reinicia minetest para que los cambios en el controlador tengan efecto"
#~ msgid " MB/s" #~ msgid "8x"
#~ msgstr " MB/s" #~ msgstr "8x"
#~ msgid " KB/s" #~ msgid "Antialiasing:"
#~ msgstr " KB/s" #~ msgstr "Suavizado:"
#~ msgid "Touchthreshold (px)" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Umbral táctil (px)" #~ msgstr "¿Estás seguro de querer reiniciar el mundo de un jugador?"
#~ msgid "Touch free target" #~ msgid "Fancy Leaves"
#~ msgstr "Tocar para interactuar" #~ msgstr "Hojas elegantes"
#~ msgid "Mipmap"
#~ msgstr "Mipmap"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Filtro aniso."
#~ msgid "No Mipmap"
#~ msgstr "Sin Mipmap"
#~ msgid "No!!!"
#~ msgstr "¡¡¡No!!!"
#~ msgid "Opaque Leaves"
#~ msgstr "Hojas opacas"
#~ msgid "Opaque Water"
#~ msgstr "Agua opaca"
#~ msgid "Reset singleplayer world"
#~ msgstr "Reiniciar mundo de un jugador"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Factor de escala aplicado a los elementos del menú: "
#~ msgid "Simple Leaves"
#~ msgstr "Hojas simples"
#~ msgid "Texturing:"
#~ msgstr "Texturizado:"
#~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "" #~ msgstr ""
#~ "Para habilitar los sombreadores debe utilizar el controlador OpenGL." #~ "Para habilitar los sombreadores debe utilizar el controlador OpenGL."
#~ msgid "Texturing:" #~ msgid "Touch free target"
#~ msgstr "Texturizado:" #~ msgstr "Tocar para interactuar"
#~ msgid "Simple Leaves" #~ msgid "Touchthreshold (px)"
#~ msgstr "Hojas simples" #~ msgstr "Umbral táctil (px)"
#~ msgid "Scaling factor applied to menu elements: " #~ msgid " KB/s"
#~ msgstr "Factor de escala aplicado a los elementos del menú: " #~ msgstr " KB/s"
#~ msgid "Reset singleplayer world" #~ msgid " MB/s"
#~ msgstr "Reiniciar mundo de un jugador" #~ msgstr " MB/s"
#~ msgid "Opaque Water" #~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Agua opaca" #~ msgstr ""
#~ "Reinicia minetest para que los cambios en el controlador tengan efecto"
#~ msgid "Opaque Leaves" #~ msgid "Rendering:"
#~ msgstr "Hojas opacas" #~ msgstr "Renderizado:"
#~ msgid "No!!!" #, fuzzy
#~ msgstr "¡¡¡No!!!" #~ msgid "If enabled, "
#~ msgstr "Activado"
#~ msgid "No Mipmap" #, fuzzy
#~ msgstr "Sin Mipmap" #~ msgid "If disabled "
#~ msgstr "Desactivar paquete"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Filtro aniso."
#~ msgid "Mipmap"
#~ msgstr "Mipmap"
#~ msgid "Fancy Leaves"
#~ msgstr "Hojas elegantes"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "¿Estás seguro de querer reiniciar el mundo de un jugador?"
#~ msgid "Antialiasing:"
#~ msgstr "Suavizado:"
#~ msgid "8x"
#~ msgstr "8x"
#~ msgid "4x"
#~ msgstr "4x"
#~ msgid "2x"
#~ msgstr "2x"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-12-18 21:28+0200\n" "PO-Revision-Date: 2013-12-18 21:28+0200\n"
"Last-Translator: Jabo Babo <bb7b@gmx.de>\n" "Last-Translator: Jabo Babo <bb7b@gmx.de>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -431,7 +431,7 @@ msgid "Start Game"
msgstr "Alusta mängu" msgstr "Alusta mängu"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -460,6 +460,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "Sisse lülitatud" msgstr "Sisse lülitatud"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1429,7 +1433,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1580,7 +1584,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1711,7 +1719,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1847,7 +1855,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1927,21 +1936,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Lülita kõik välja" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "Sisse lülitatud" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2016,6 +2027,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2341,27 +2398,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2402,6 +2490,80 @@ msgstr "Põlvkonna kaardid"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Põlvkonna kaardid" msgstr "Põlvkonna kaardid"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Põlvkonna kaardid"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Põlvkonna kaardid"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2578,6 +2740,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2881,7 +3051,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3124,7 +3294,7 @@ msgstr "Ilus valgustus"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3332,6 +3502,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3499,58 +3673,70 @@ msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy #, fuzzy
#~ msgid "Game Name" #~ msgid "Opaque Leaves"
#~ msgstr "Mäng" #~ msgstr "Läbipaistmatu vesi"
#~ msgid "GAMES"
#~ msgstr "MÄNGUD"
#~ msgid "new game"
#~ msgstr "uus mängu"
#~ msgid "EDIT GAME"
#~ msgstr "MUUDA MÄNGU"
#, fuzzy #, fuzzy
#~ msgid "Remove selected mod" #~ msgid "Opaque Water"
#~ msgstr "Eemalda valitud muutus" #~ msgstr "Läbipaistmatu vesi"
#, fuzzy #, fuzzy
#~ msgid "<<-- Add mod" #~ msgid "Reset singleplayer world"
#~ msgstr "<<-- Lisama muutus" #~ msgstr "Üksikmäng"
#~ msgid "Favorites:" #~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Lemmikud:" #~ msgstr "Aktiveerimiseks varjud, nad vajavad OpenGL draiver."
#~ msgid "Name"
#~ msgstr "Nimi"
#~ msgid "Password"
#~ msgstr "Parool"
#~ msgid "SETTINGS"
#~ msgstr "Seaded"
#~ msgid "Preload item visuals"
#~ msgstr "Lae asjade visuaale"
#, fuzzy #, fuzzy
#~ msgid "Finite Liquid" #~ msgid "Downloading"
#~ msgstr "Löppev vedelik" #~ msgstr "Alla"
#~ msgid "" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr "" #~ msgstr ""
#~ "Hoiatus: Mõned modifikatsioonid pole sätitud veel.\n" #~ "Vasak hiireklõps: Liiguta kõiki asju, Parem hiireklõps: Liiguta üksikut "
#~ "Need lülitatakse sisse kohe pärast sätete salvestamist." #~ "asja"
#~ msgid "" #~ msgid "is required by:"
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "Seda vajavad:"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr "" #~ msgid "Configuration saved. "
#~ "Hoiatus: Mõned konfigureeritud modifikatsioonid on kaotsi läinud.\n" #~ msgstr "Konfiguratsioon salvestatud. "
#~ "Nende sätted kustutatakse kui salvestada konfiguratsioon."
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Hoiatus: Konfiguratsioon pole kindel."
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Maailma loomine ebaõnnestus: Nimes esineb keelatud tähti"
#~ msgid "Show Public"
#~ msgstr "Näita avalikke"
#~ msgid "Show Favorites"
#~ msgstr "Näita lemmikuid"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Jäta IP lahter tühjaks et alustada LAN serverit."
#~ msgid "Create world"
#~ msgstr "Loo maailm"
#~ msgid "Address required."
#~ msgstr "IP on vajalkik."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Maailma kustutamine ebaõnnestus: Maailma pole valitud"
#~ msgid "Files to be deleted"
#~ msgstr "Failid mida kustutada"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Maailma loomine ebaõnnestus: Mängu ei leitud"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Maailma konfigureerimine ebaõnnestus: Pole midagi valitud"
#~ msgid "Failed to delete all world files"
#~ msgstr "Kõigi maailma failide kustutamine ebaõnnestus"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3577,68 +3763,64 @@ msgstr ""
#~ "- ESC: Menüü\n" #~ "- ESC: Menüü\n"
#~ "- T: Jututupa\n" #~ "- T: Jututupa\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "Kõigi maailma failide kustutamine ebaõnnestus" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Maailma konfigureerimine ebaõnnestus: Pole midagi valitud"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Maailma loomine ebaõnnestus: Mängu ei leitud"
#~ msgid "Files to be deleted"
#~ msgstr "Failid mida kustutada"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Maailma kustutamine ebaõnnestus: Maailma pole valitud"
#~ msgid "Address required."
#~ msgstr "IP on vajalkik."
#~ msgid "Create world"
#~ msgstr "Loo maailm"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Jäta IP lahter tühjaks et alustada LAN serverit."
#~ msgid "Show Favorites"
#~ msgstr "Näita lemmikuid"
#~ msgid "Show Public"
#~ msgstr "Näita avalikke"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Maailma loomine ebaõnnestus: Nimes esineb keelatud tähti"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Hoiatus: Konfiguratsioon pole kindel."
#~ msgid "Configuration saved. "
#~ msgstr "Konfiguratsioon salvestatud. "
#~ msgid "is required by:"
#~ msgstr "Seda vajavad:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "" #~ msgstr ""
#~ "Vasak hiireklõps: Liiguta kõiki asju, Parem hiireklõps: Liiguta üksikut " #~ "Hoiatus: Mõned konfigureeritud modifikatsioonid on kaotsi läinud.\n"
#~ "asja" #~ "Nende sätted kustutatakse kui salvestada konfiguratsioon."
#~ msgid ""
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Hoiatus: Mõned modifikatsioonid pole sätitud veel.\n"
#~ "Need lülitatakse sisse kohe pärast sätete salvestamist."
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Finite Liquid"
#~ msgstr "Alla" #~ msgstr "Löppev vedelik"
#~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgid "Preload item visuals"
#~ msgstr "Aktiveerimiseks varjud, nad vajavad OpenGL draiver." #~ msgstr "Lae asjade visuaale"
#~ msgid "SETTINGS"
#~ msgstr "Seaded"
#~ msgid "Password"
#~ msgstr "Parool"
#~ msgid "Name"
#~ msgstr "Nimi"
#~ msgid "Favorites:"
#~ msgstr "Lemmikud:"
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "<<-- Add mod"
#~ msgstr "Üksikmäng" #~ msgstr "<<-- Lisama muutus"
#, fuzzy #, fuzzy
#~ msgid "Opaque Water" #~ msgid "Remove selected mod"
#~ msgstr "Läbipaistmatu vesi" #~ msgstr "Eemalda valitud muutus"
#~ msgid "EDIT GAME"
#~ msgstr "MUUDA MÄNGU"
#~ msgid "new game"
#~ msgstr "uus mängu"
#~ msgid "GAMES"
#~ msgstr "MÄNGUD"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "Game Name"
#~ msgstr "Läbipaistmatu vesi" #~ msgstr "Mäng"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "Sisse lülitatud"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Lülita kõik välja"

File diff suppressed because it is too large Load Diff

3587
po/he/minetest.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-21 14:55+0200\n" "PO-Revision-Date: 2015-09-21 14:55+0200\n"
"Last-Translator: way-hu <gabor.w.varnagy@gmail.com>\n" "Last-Translator: way-hu <gabor.w.varnagy@gmail.com>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/minetest/" "Language-Team: Hungarian <https://hosted.weblate.org/projects/minetest/"
@ -419,7 +419,7 @@ msgid "Start Game"
msgstr "Játék indítása" msgstr "Játék indítása"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -448,6 +448,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "Engedélyez" msgstr "Engedélyez"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1449,7 +1453,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1599,7 +1603,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1732,7 +1740,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1870,7 +1878,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1950,21 +1959,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Csomag letiltás" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "Engedélyez" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2039,6 +2050,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2364,27 +2421,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2425,6 +2513,81 @@ msgstr "Térkép generátor"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Térkép generátor" msgstr "Térkép generátor"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Térkép generátor"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Térkép generátor"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Parallax Occlusion"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2601,6 +2764,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2912,7 +3083,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3162,7 +3333,7 @@ msgstr "Simított megvilágítás"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3371,6 +3542,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3544,137 +3719,145 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "2x"
#~ msgstr "Renderelés:" #~ msgstr "2x"
#~ msgid "Restart minetest for driver change to take effect" #~ msgid "4x"
#~ msgstr "A driver változások életbe lépéséhez indítsd újra a Minetestet" #~ msgstr "4x"
#~ msgid "8x"
#~ msgstr "8x"
#~ msgid "Antialiasing:"
#~ msgstr "Élsimítás:"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Biztosan visszaállítod az egyjátékos világod?"
#~ msgid "Fancy Leaves"
#~ msgstr "Szép levelek"
#, fuzzy #, fuzzy
#~ msgid "Game Name" #~ msgid "Mipmap"
#~ msgstr "Játék" #~ msgstr "Mipmap"
#~ msgid "Favorites:"
#~ msgstr "Kedvencek:"
#, fuzzy
#~ msgid "Password"
#~ msgstr "Régi jelszó"
#~ msgid "Preload item visuals"
#~ msgstr "Előretöltött tárgy láthatóság"
#, fuzzy
#~ msgid "Finite Liquid"
#~ msgstr "Végtelen folyadék"
#~ msgid "Failed to delete all world files"
#~ msgstr "Hiba az összes világ törlése közben"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Nem sikerült a világ beállítása: Nincs kiválasztva"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Nem sikerült a világot létrehozni: Nem található a játék"
#~ msgid "Files to be deleted"
#~ msgstr "A fájl törölve lett"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Nem törölhető a világ: Nincs kiválasztva"
#~ msgid "Address required."
#~ msgstr "Cím szükséges."
#~ msgid "Create world"
#~ msgstr "Világ létrehozása"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Hagyd el a nevét, hogy helyi szervert indíts."
#~ msgid "Show Favorites"
#~ msgstr "Kedvencek mutatása"
#~ msgid "Show Public"
#~ msgstr "Publikus mutatása"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Nem sikerült a világ létrehozása: A névben nem jó karakterek vannak"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Figyelem: A beállítások nem egyformák. "
#~ msgid "Configuration saved. "
#~ msgstr "Beállítások mentve. "
#~ msgid "is required by:"
#~ msgstr "kell neki:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Ball gomb: Tárgyak mozgatása, Jobb gomb: egy tárgyat mozgat"
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Le"
#, fuzzy
#~ msgid "Touchthreshold (px)"
#~ msgstr "Touchthreshold (px)"
#, fuzzy
#~ msgid "Touch free target"
#~ msgstr "Touch free target"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "A shaderek engedélyezéséhez OpenGL driver használata szükséges."
#~ msgid "Texturing:"
#~ msgstr "Textúrázás:"
#~ msgid "Simple Leaves"
#~ msgstr "Egyszerű levelek"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "A méretarány alkalmazva a menü elemekre: "
#~ msgid "Reset singleplayer world"
#~ msgstr "Egyjátékos világ visszaállítása"
#~ msgid "Opaque Water"
#~ msgstr "Áttetsző víz"
#~ msgid "Opaque Leaves"
#~ msgstr "Áttetsző levelek"
#~ msgid "No!!!"
#~ msgstr "Nem!!!"
#, fuzzy
#~ msgid "No Mipmap"
#~ msgstr "No Mipmap"
#, fuzzy #, fuzzy
#~ msgid "Mipmap + Aniso. Filter" #~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Aniso. Filter" #~ msgstr "Mipmap + Aniso. Filter"
#, fuzzy #, fuzzy
#~ msgid "Mipmap" #~ msgid "No Mipmap"
#~ msgstr "Mipmap" #~ msgstr "No Mipmap"
#~ msgid "Fancy Leaves" #~ msgid "No!!!"
#~ msgstr "Szép levelek" #~ msgstr "Nem!!!"
#~ msgid "Are you sure to reset your singleplayer world?" #~ msgid "Opaque Leaves"
#~ msgstr "Biztosan visszaállítod az egyjátékos világod?" #~ msgstr "Áttetsző levelek"
#~ msgid "Antialiasing:" #~ msgid "Opaque Water"
#~ msgstr "Élsimítás:" #~ msgstr "Áttetsző víz"
#~ msgid "8x" #~ msgid "Reset singleplayer world"
#~ msgstr "8x" #~ msgstr "Egyjátékos világ visszaállítása"
#~ msgid "4x" #~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "4x" #~ msgstr "A méretarány alkalmazva a menü elemekre: "
#~ msgid "2x" #~ msgid "Simple Leaves"
#~ msgstr "2x" #~ msgstr "Egyszerű levelek"
#~ msgid "Texturing:"
#~ msgstr "Textúrázás:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "A shaderek engedélyezéséhez OpenGL driver használata szükséges."
#, fuzzy
#~ msgid "Touch free target"
#~ msgstr "Touch free target"
#, fuzzy
#~ msgid "Touchthreshold (px)"
#~ msgstr "Touchthreshold (px)"
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Le"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Ball gomb: Tárgyak mozgatása, Jobb gomb: egy tárgyat mozgat"
#~ msgid "is required by:"
#~ msgstr "kell neki:"
#~ msgid "Configuration saved. "
#~ msgstr "Beállítások mentve. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Figyelem: A beállítások nem egyformák. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Nem sikerült a világ létrehozása: A névben nem jó karakterek vannak"
#~ msgid "Show Public"
#~ msgstr "Publikus mutatása"
#~ msgid "Show Favorites"
#~ msgstr "Kedvencek mutatása"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Hagyd el a nevét, hogy helyi szervert indíts."
#~ msgid "Create world"
#~ msgstr "Világ létrehozása"
#~ msgid "Address required."
#~ msgstr "Cím szükséges."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Nem törölhető a világ: Nincs kiválasztva"
#~ msgid "Files to be deleted"
#~ msgstr "A fájl törölve lett"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Nem sikerült a világot létrehozni: Nem található a játék"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Nem sikerült a világ beállítása: Nincs kiválasztva"
#~ msgid "Failed to delete all world files"
#~ msgstr "Hiba az összes világ törlése közben"
#, fuzzy
#~ msgid "Finite Liquid"
#~ msgstr "Végtelen folyadék"
#~ msgid "Preload item visuals"
#~ msgstr "Előretöltött tárgy láthatóság"
#, fuzzy
#~ msgid "Password"
#~ msgstr "Régi jelszó"
#~ msgid "Favorites:"
#~ msgstr "Kedvencek:"
#, fuzzy
#~ msgid "Game Name"
#~ msgstr "Játék"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "A driver változások életbe lépéséhez indítsd újra a Minetestet"
#~ msgid "Rendering:"
#~ msgstr "Renderelés:"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "Engedélyez"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Csomag letiltás"

View File

@ -7,10 +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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-06 08:59+0200\n" "PO-Revision-Date: 2015-10-27 16:45+0200\n"
"Last-Translator: Muhammad Rifqi Priyo Susanto " "Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"<muhammadrifqipriyosusanto@gmail.com>\n"
"Language-Team: Indonesian <https://hosted.weblate.org/projects/minetest/" "Language-Team: Indonesian <https://hosted.weblate.org/projects/minetest/"
"minetest/id/>\n" "minetest/id/>\n"
"Language: id\n" "Language: id\n"
@ -18,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=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 2.4-dev\n" "X-Generator: Weblate 2.5-dev\n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:" msgid "An error occured in a Lua script, such as a mod:"
@ -29,7 +28,6 @@ msgid "An error occured:"
msgstr "Kesalahan muncul:" msgstr "Kesalahan muncul:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Main menu" msgid "Main menu"
msgstr "Menu Utama" msgstr "Menu Utama"
@ -38,13 +36,12 @@ msgid "Ok"
msgstr "Oke" msgstr "Oke"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Reconnect" msgid "Reconnect"
msgstr "Sambung" msgstr "Menyambung ulang"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
msgstr "" msgstr "Server ini meminta penyambungan ulang:"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."
@ -56,11 +53,11 @@ msgstr ""
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. " msgid "Server enforces protocol version $1. "
msgstr "" msgstr "Server memberlakukan protokol versi $1. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server supports protocol versions between $1 and $2. " msgid "Server supports protocol versions between $1 and $2. "
msgstr "" msgstr "Server mendukung protokol antara versi $1 dan versi $2. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Try reenabling public serverlist and check your internet connection." msgid "Try reenabling public serverlist and check your internet connection."
@ -70,11 +67,11 @@ 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 "Kami hanya mendukung protokol versi $1."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We support protocol versions between version $1 and $2." msgid "We support protocol versions between version $1 and $2."
msgstr "" msgstr "Kami mendukung protokol antara versi $1 dan versi $2."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua
@ -103,6 +100,8 @@ msgid ""
"Failed to enable mod \"$1\" as it contains disallowed characters. Only " "Failed to enable mod \"$1\" as it contains disallowed characters. Only "
"chararacters [a-z0-9_] are allowed." "chararacters [a-z0-9_] are allowed."
msgstr "" msgstr ""
"Gagal mengaktifkan mod \"$1\" karena terdapat karakter terlarang. Hanya "
"karakter [a-z0-9_] yang dibolehkan."
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide Game" msgid "Hide Game"
@ -423,16 +422,16 @@ msgid "Start Game"
msgstr "Mulai Permainan" msgstr "Mulai Permainan"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "(No description of setting given)" msgid "(No description of setting given)"
msgstr "" msgstr "(Tidak ada keterangan dari pengaturan yang diberikan)"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Browse" msgid "Browse"
msgstr "" msgstr "Jelajahi"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Change keys" msgid "Change keys"
@ -445,18 +444,24 @@ msgstr "Nonaktifkan PM"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Edit" msgid "Edit"
msgstr "Sunting"
#: builtin/mainmenu/tab_settings.lua
msgid "Enabled"
msgstr "Diaktifkan"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy #, fuzzy
msgid "Enabled"
msgstr "diaktifkan"
#: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
"<octaves>, <persistence>" "<octaves>, <persistence>"
msgstr "" msgstr ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
"<octaves>, <persistence>"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy #, fuzzy
@ -473,19 +478,19 @@ msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Please enter a valid integer." msgid "Please enter a valid integer."
msgstr "" msgstr "Mohon masukkan sebuah bilangan bulat yang sah."
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Please enter a valid number." msgid "Please enter a valid number."
msgstr "" msgstr "Mohon masukkan sebuah angka yang sah."
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Possible values are: " msgid "Possible values are: "
msgstr "" msgstr "Nilai yang mungkin adalah: "
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Restore Default" msgid "Restore Default"
msgstr "" msgstr "Kembalikan ke Bawaan"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy #, fuzzy
@ -502,11 +507,11 @@ msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "The value must be greater than $1." msgid "The value must be greater than $1."
msgstr "" msgstr "Nilai harus lebih besar dari $1."
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "The value must be lower than $1." msgid "The value must be lower than $1."
msgstr "" msgstr "Nilai harus lebih kecil dari $1."
#: builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_simple_main.lua
msgid "Config mods" msgid "Config mods"
@ -534,7 +539,7 @@ msgstr "Tidak ada informasi tersedia"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "None" msgid "None"
msgstr "" msgstr "Tidak ada"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "Select texture pack:" msgid "Select texture pack:"
@ -545,9 +550,8 @@ msgid "Texturepacks"
msgstr "Paket Tekstur" msgstr "Paket Tekstur"
#: src/client.cpp #: src/client.cpp
#, fuzzy
msgid "Connection timed out." msgid "Connection timed out."
msgstr "Koneksi rusak (terlalu lama?)" msgstr "Koneksi kehabisan waktu."
#: src/client.cpp #: src/client.cpp
msgid "Done!" msgid "Done!"
@ -555,11 +559,11 @@ msgstr "Selesai!"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes" msgid "Initializing nodes"
msgstr "" msgstr "Menginisialisasi node"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes..." msgid "Initializing nodes..."
msgstr "" msgstr "Menginisialisasi node..."
#: src/client.cpp #: src/client.cpp
msgid "Item textures..." msgid "Item textures..."
@ -603,7 +607,7 @@ msgstr "Jalur dunia yang diberikan tidak ada: "
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "needs_fallback_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -1171,14 +1175,12 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "3D clouds" msgid "3D clouds"
msgstr "Awan 3D" msgstr "Awan 3D"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "3D mode" msgid "3D mode"
msgstr "Mode terbang" msgstr "Mode 3D"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1190,20 +1192,30 @@ msgid ""
"- topbottom: split screen top/bottom.\n" "- topbottom: split screen top/bottom.\n"
"- sidebyside: split screen side by side." "- sidebyside: split screen side by side."
msgstr "" msgstr ""
"Dukungan 3D.\n"
"Didukung saat ini:\n"
"- none: tidak ada keluaran 3d.\n"
"- anaglyph: 3d berwarna cyan/magenta.\n"
"- interlaced: garis ganjil/genap berdasarkan polarisasi dukungan layar.\n"
"- topbottom: pisahkan layar atas/bawah.\n"
"- sidebyside: pisahkan layar berdampingan."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"A chosen map seed for a new map, leave empty for random.\n" "A chosen map seed for a new map, leave empty for random.\n"
"Will be overridden when creating a new world in the main menu." "Will be overridden when creating a new world in the main menu."
msgstr "" msgstr ""
"Seed peta terpilih untuk peta baru, kosongkan untuk nilai acak.\n"
"Akan diganti ketika menciptakan dunia baru dalam menu utama."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "A message to be displayed to all clients when the server crashes." msgid "A message to be displayed to all clients when the server crashes."
msgstr "" msgstr "Sebuah pesan yang akan ditampilkan ke semua klien ketika server crash."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "A message to be displayed to all clients when the server shuts down." msgid "A message to be displayed to all clients when the server shuts down."
msgstr "" msgstr ""
"Sebuah pesan yang akan ditampilkan ke semua klien ketika server dimatikan."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Absolute limit of emerge queues" msgid "Absolute limit of emerge queues"
@ -1211,15 +1223,15 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Acceleration in air" msgid "Acceleration in air"
msgstr "" msgstr "Percepatan di udara"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Active block range" msgid "Active block range"
msgstr "" msgstr "Batas blok aktif"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Active object send range" msgid "Active object send range"
msgstr "" msgstr "Batas pengiriman objek aktif"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1227,39 +1239,48 @@ msgid ""
"Leave this blank to start a local server.\n" "Leave this blank to start a local server.\n"
"Note that the address field in the main menu overrides this setting." "Note that the address field in the main menu overrides this setting."
msgstr "" msgstr ""
"Alamat untuk menghubungkan.\n"
"Biarkan kosong untuk memulai sebuah server lokal.\n"
"Perhatikan bahwa bidang alamat dalam menu utama menimpa pengaturan ini."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Adjust dpi configuration to your screen (non X11/Android only) e.g. for 4k " "Adjust dpi configuration to your screen (non X11/Android only) e.g. for 4k "
"screens." "screens."
msgstr "" msgstr ""
"Atur konfigurasi dpi ke layar Anda (non X11/Android saja) misalkan untuk "
"layar 4K."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Adjust the gamma encoding for the light tables. Lower numbers are brighter.\n" "Adjust the gamma encoding for the light tables. Lower numbers are brighter.\n"
"This setting is for the client only and is ignored by the server." "This setting is for the client only and is ignored by the server."
msgstr "" msgstr ""
"Sesuaikan encoding gamma untuk tabel cahaya. Angka yang lebih rendah lebih "
"terang.\n"
"Pengaturan ini untuk klien saja dan diabaikan oleh server."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Advanced" msgid "Advanced"
msgstr "" msgstr "Lanjutan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Always fly and fast" msgid "Always fly and fast"
msgstr "" msgstr "Selalu terbang dan bergerak cepat"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Ambient occlusion gamma" msgid "Ambient occlusion gamma"
msgstr "" msgstr "Ambient occlusion gamma"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Anisotropic filtering" msgid "Anisotropic filtering"
msgstr "Anisotropic Filtering" msgstr "Anisotropic filtering"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Announce server" msgid "Announce server"
msgstr "" msgstr "Umumkan server"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1267,14 +1288,17 @@ msgid ""
"If you want to announce your ipv6 address, use serverlist_url = v6.servers." "If you want to announce your ipv6 address, use serverlist_url = v6.servers."
"minetest.net." "minetest.net."
msgstr "" msgstr ""
"Mengumumkan kepada daftar server ini.\n"
"Jika Anda ingin mengumumkan alamat IPv6 Anda, gunakan serverlist_url = v6."
"servers.minetest.net."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Ask to reconnect after crash" msgid "Ask to reconnect after crash"
msgstr "" msgstr "Minta untuk menyambung ulang setelah crash"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Automaticaly report to the serverlist." msgid "Automaticaly report to the serverlist."
msgstr "" msgstr "Secara otomatis melaporkan ke daftar server."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
@ -1283,21 +1307,20 @@ msgstr "Mundur"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Basic" msgid "Basic"
msgstr "" msgstr "Dasar"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Bilinear filtering" msgid "Bilinear filtering"
msgstr "Bilinear Filter" msgstr "Bilinear filtering"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Bind address" msgid "Bind address"
msgstr "Alamat Sambungan" msgstr "Alamat sambungan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Bits per pixel (aka color depth) in fullscreen mode." msgid "Bits per pixel (aka color depth) in fullscreen mode."
msgstr "" msgstr "Bits per pixel (aka color depth) dalam mode layar penuh."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Build inside player" msgid "Build inside player"
@ -1309,117 +1332,109 @@ msgstr "Bumpmapping"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera smoothing" msgid "Camera smoothing"
msgstr "" msgstr "Penghalusan kamera"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera smoothing in cinematic mode" msgid "Camera smoothing in cinematic mode"
msgstr "" msgstr "Penghalusan kamera dalam mode sinema"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera update toggle key" msgid "Camera update toggle key"
msgstr "" msgstr "Tombol beralih pembaruan kamera"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Chat key" msgid "Chat key"
msgstr "Ubah tombol" msgstr "Tombol obrolan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Chat toggle key" msgid "Chat toggle key"
msgstr "Ubah tombol" msgstr "Tombol beralih obrolan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Chunk size" msgid "Chunk size"
msgstr "" msgstr "Besar chunk"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Cinematic mode" msgid "Cinematic mode"
msgstr "Mode kreatif" msgstr "Mode sinema"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Cinematic mode key" msgid "Cinematic mode key"
msgstr "Mode kreatif" msgstr "Tombol mode sinema"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Clean transparent textures" msgid "Clean transparent textures"
msgstr "" msgstr "Bersihkan tekstur transparan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Client and Server" msgid "Client and Server"
msgstr "" msgstr "Klien dan Server"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Climbing speed" msgid "Climbing speed"
msgstr "" msgstr "Kecepatan memanjat"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Cloud height" msgid "Cloud height"
msgstr "" msgstr "Tinggi awan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Cloud radius" msgid "Cloud radius"
msgstr "" msgstr "Jari-jari awan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Clouds" msgid "Clouds"
msgstr "Awan 3D" msgstr "Awan"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Clouds are a client side effect." msgid "Clouds are a client side effect."
msgstr "" msgstr "Awan adalah efek tiap klien."
#: src/settings_translation_file.cpp
msgid "Clouds in menu"
msgstr "Awan dalam menu"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Clouds in menu"
msgstr "Menu Utama"
#: src/settings_translation_file.cpp
msgid "Colored fog" msgid "Colored fog"
msgstr "" msgstr "Berwarna kabut"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Comma-separated list of trusted mods that are allowed to access insecure\n" "Comma-separated list of trusted mods that are allowed to access insecure\n"
"functions even when mod security is on (via request_insecure_environment())." "functions even when mod security is on (via request_insecure_environment())."
msgstr "" msgstr ""
"Daftar yang dengan dipisahkan koma dari mod terpercaya yang diperbolehkan\n"
"untuk mengakses fungsi yang tidak aman bahkan ketika mod security aktif\n"
"(melalui request_insecure_environment())."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Command key" msgid "Command key"
msgstr "Perintah" msgstr "Tombol perintah"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Connect glass" msgid "Connect glass"
msgstr "Kaca Tersambung" msgstr "Sambungkan kaca"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Connect to external media server" msgid "Connect to external media server"
msgstr "Menghubungkan ke server..." msgstr "Menyambungkan ke server media eksternal"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Connects glass if supported by node." msgid "Connects glass if supported by node."
msgstr "" msgstr "Sambungkan kaca jika didukung oleh node."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console alpha" msgid "Console alpha"
msgstr "Konsol" msgstr "Alpha konsol"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console color" msgid "Console color"
msgstr "Konsol" msgstr "Warna konsol"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console key" msgid "Console key"
msgstr "Konsol" msgstr "Tombol konsol"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Continuous forward" msgid "Continuous forward"
@ -1443,7 +1458,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1597,7 +1612,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1730,7 +1749,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1869,7 +1888,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1949,21 +1969,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Nonaktifkan PM" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "diaktifkan" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2038,6 +2060,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2363,27 +2431,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2424,6 +2523,81 @@ msgstr "Generator peta"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Generator peta" msgstr "Generator peta"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Generator peta"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Generator peta"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Parallax Occlusion"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2600,6 +2774,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2909,7 +3091,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3159,7 +3341,7 @@ msgstr "Pencahayaan Halus"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3368,6 +3550,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3541,62 +3727,73 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Rendering:" #~ msgstr "Yakin ingin mengaturulang dunia anda?"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Mulai ulang minetest untuk beralih ke driver yang dipilih"
#~ msgid " MB/s"
#~ msgstr " MB/detik"
#~ msgid " KB/s"
#~ msgstr " KB/detik"
#~ msgid "Downloading"
#~ msgstr "Mengunduh"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Batas sentuhan (px)"
#~ msgid "Touch free target"
#~ msgstr "Bebas sentuhan"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Untuk mengaktifkan shaders OpenGL driver harus digunakan."
#~ msgid "Texturing:"
#~ msgstr "Penteksturan:"
#~ msgid "Simple Leaves"
#~ msgstr "Daun Sederhana"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Faktor skala yang diatur untuk elemen menu: "
#~ msgid "Reset singleplayer world"
#~ msgstr "Atur ulang dunia pemain tunggal"
#~ msgid "Opaque Water"
#~ msgstr "Air Buram"
#~ msgid "Opaque Leaves"
#~ msgstr "Daun Opak"
#~ msgid "No!!!"
#~ msgstr "Tidak!!!"
#~ msgid "No Mipmap"
#~ msgstr "Tanpa Mipmap"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Aniso. Filter"
#~ msgid "Mipmap"
#~ msgstr "Mipmap"
#~ msgid "Fancy Leaves" #~ msgid "Fancy Leaves"
#~ msgstr "Daun Megah" #~ msgstr "Daun Megah"
#~ msgid "Are you sure to reset your singleplayer world?" #~ msgid "Mipmap"
#~ msgstr "Yakin ingin mengaturulang dunia anda?" #~ msgstr "Mipmap"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Aniso. Filter"
#~ msgid "No Mipmap"
#~ msgstr "Tanpa Mipmap"
#~ msgid "No!!!"
#~ msgstr "Tidak!!!"
#~ msgid "Opaque Leaves"
#~ msgstr "Daun Opak"
#~ msgid "Opaque Water"
#~ msgstr "Air Buram"
#~ msgid "Reset singleplayer world"
#~ msgstr "Atur ulang dunia pemain tunggal"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Faktor skala yang diatur untuk elemen menu: "
#~ msgid "Simple Leaves"
#~ msgstr "Daun Sederhana"
#~ msgid "Texturing:"
#~ msgstr "Penteksturan:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Untuk mengaktifkan shaders OpenGL driver harus digunakan."
#~ msgid "Touch free target"
#~ msgstr "Bebas sentuhan"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Batas sentuhan (px)"
#~ msgid "Downloading"
#~ msgstr "Mengunduh"
#~ msgid " KB/s"
#~ msgstr " KB/detik"
#~ msgid " MB/s"
#~ msgstr " MB/detik"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Mulai ulang minetest untuk beralih ke driver yang dipilih"
#~ msgid "Rendering:"
#~ msgstr "Rendering:"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "diaktifkan"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Nonaktifkan PM"
#~ msgid "\""
#~ msgstr "\""

File diff suppressed because it is too large Load Diff

View File

@ -2,9 +2,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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-10-05 08:20+0200\n" "PO-Revision-Date: 2015-11-05 04:46+0000\n"
"Last-Translator: Rui <rui914t@gmail.com>\n" "Last-Translator: Onee Chan <i157575@trbvm.com>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/minetest/" "Language-Team: Japanese <https://hosted.weblate.org/projects/minetest/"
"minetest/ja/>\n" "minetest/ja/>\n"
"Language: ja\n" "Language: ja\n"
@ -412,7 +412,7 @@ msgid "Start Game"
msgstr "ゲームスタート" msgstr "ゲームスタート"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -441,6 +441,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "有効化" msgstr "有効化"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -477,9 +481,8 @@ msgid "Restore Default"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Select path" msgid "Select path"
msgstr "選択キー" msgstr "ファイルパスを選択"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Settings" msgid "Settings"
@ -1156,14 +1159,12 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "3D clouds" msgid "3D clouds"
msgstr "3Dの雲" msgstr "立体雲"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "3D mode" msgid "3D mode"
msgstr "飛行モード" msgstr "3Dモード"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1261,18 +1262,16 @@ msgid "Automaticaly report to the serverlist."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Backward key" msgid "Backward key"
msgstr "後退" msgstr "後キー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Basic" msgid "Basic"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Bilinear filtering" msgid "Bilinear filtering"
msgstr "バイリニアフィルタ" msgstr "バイリニアフィルタリング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
@ -1304,14 +1303,12 @@ msgid "Camera update toggle key"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Chat key" msgid "Chat key"
msgstr "操作変更" msgstr "チャットキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Chat toggle key" msgid "Chat toggle key"
msgstr "操作変更" msgstr "チャットトグルキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Chunk size" msgid "Chunk size"
@ -1348,18 +1345,16 @@ msgid "Cloud radius"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Clouds" msgid "Clouds"
msgstr "3Dの雲" msgstr "雲"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Clouds are a client side effect." msgid "Clouds are a client side effect."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Clouds in menu" msgid "Clouds in menu"
msgstr "メインメニュー" msgstr "メニューに雲"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Colored fog" msgid "Colored fog"
@ -1372,9 +1367,8 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Command key" msgid "Command key"
msgstr "コマンド" msgstr "コマンドキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
@ -1391,19 +1385,16 @@ msgid "Connects glass if supported by node."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console alpha" msgid "Console alpha"
msgstr "コンソール" msgstr "コンソールアルファ"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console color" msgid "Console color"
msgstr "コンソール" msgstr "コンソール"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Console key" msgid "Console key"
msgstr "コンソール" msgstr "コンソールキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Continuous forward" msgid "Continuous forward"
@ -1414,9 +1405,8 @@ msgid "Continuous forward movement (only used for testing)."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Controls" msgid "Controls"
msgstr "コントロール" msgstr "操作法"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1427,7 +1417,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1460,9 +1450,8 @@ msgid "DPI"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Damage" msgid "Damage"
msgstr "ダメージ有効" msgstr "ダメージ"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Debug info toggle key" msgid "Debug info toggle key"
@ -1491,9 +1480,8 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Default password" msgid "Default password"
msgstr "新しいパスワード" msgstr "既定パスワード"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Default privileges" msgid "Default privileges"
@ -1546,9 +1534,8 @@ msgid "Detailed mod profiling"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Disable anticheat" msgid "Disable anticheat"
msgstr "パーティクル有効化" msgstr "対チート機関無効化"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Disallow empty passwords" msgid "Disallow empty passwords"
@ -1559,7 +1546,6 @@ msgid "Domain name of server, to be displayed in the serverlist."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Double tap jump for fly" msgid "Double tap jump for fly"
msgstr "「ジャンプ」キー二回押しで飛行モード" msgstr "「ジャンプ」キー二回押しで飛行モード"
@ -1577,7 +1563,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1640,9 +1630,8 @@ msgid "Enables caching of facedir rotated meshes."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Enables minimap." msgid "Enables minimap."
msgstr "ダメージ有効" msgstr "ミニマップを有効にする。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1675,9 +1664,8 @@ msgid "Fall bobbing"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Fallback font" msgid "Fallback font"
msgstr "yes" msgstr "フォールバックフォント"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fallback font shadow" msgid "Fallback font shadow"
@ -1710,7 +1698,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1736,18 +1724,16 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Filtering" msgid "Filtering"
msgstr "フィルタ無し" msgstr "フィルタリング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fixed map seed" msgid "Fixed map seed"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Fly key" msgid "Fly key"
msgstr "飛行モード" msgstr "飛行キー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Flying" msgid "Flying"
@ -1786,9 +1772,8 @@ msgid "Font size"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Forward key" msgid "Forward key"
msgstr "前" msgstr "前キー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Freetype fonts" msgid "Freetype fonts"
@ -1840,7 +1825,6 @@ msgid "Gamma"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Generate normalmaps" msgid "Generate normalmaps"
msgstr "ノーマルマップの生成" msgstr "ノーマルマップの生成"
@ -1849,7 +1833,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1894,6 +1879,7 @@ msgid ""
"mapblocks (16 nodes).\n" "mapblocks (16 nodes).\n"
"In active blocks objects are loaded and ABMs run." "In active blocks objects are loaded and ABMs run."
msgstr "" msgstr ""
"Mapblock (16ード) 数でオブジェクトのロードやABMの実効等の有効エリアを指定。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1929,21 +1915,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "無効化" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "有効化" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2002,9 +1990,8 @@ msgid "Interval of sending time of day to clients."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Inventory key" msgid "Inventory key"
msgstr "インベントリ" msgstr "インベントリキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Invert mouse" msgid "Invert mouse"
@ -2019,9 +2006,54 @@ msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Jump key" msgid "Jump key"
msgstr "ジャンプ" msgstr "ジャンプキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Jumping speed" msgid "Jumping speed"
@ -2253,9 +2285,8 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Left key" msgid "Left key"
msgstr "左メニュー" msgstr "左ー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2327,12 +2358,11 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Main menu mod manager" msgid "Main menu mod manager"
msgstr "メインメニュー" msgstr "メインメニューMod管理"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Main menu script" msgid "Main menu script"
msgstr "メインメニュー" msgstr "メインメニュースクリプト"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2343,27 +2373,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2395,23 +2456,95 @@ msgid "Mapgen biome humidity noise parameters"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen debug" msgid "Mapgen debug"
msgstr "ワールドタイプ" msgstr "マップ生成のデバグ"
#: src/settings_translation_file.cpp
msgid "Mapgen flags"
msgstr "マップ生成フラグ"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Mapgen flags" msgid "Mapgen fractal"
msgstr "ワールドタイプ" msgstr "マップ生成フラグ"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "マップ生成フラグ"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "視差遮蔽マッピング"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen name" msgid "Mapgen name"
msgstr "ワールドタイプ" msgstr "マップ生成名"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
@ -2580,6 +2713,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2645,7 +2786,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum time in ms a file download (e.g. a mod download) may take." msgid "Maximum time in ms a file download (e.g. a mod download) may take."
msgstr "" msgstr "ファイルダウンロード (例: Modのダウンロード)の最大経過時間。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum users" msgid "Maximum users"
@ -2656,7 +2797,6 @@ msgid "Maxmimum objects per block"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Menus" msgid "Menus"
msgstr "メニュー" msgstr "メニュー"
@ -2696,9 +2836,8 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mipmapping" msgid "Mipmapping"
msgstr "バンプマッピング" msgstr "ミップマッピング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mod profiling" msgid "Mod profiling"
@ -2789,7 +2928,6 @@ msgid "Noclip key"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Node highlighting" msgid "Node highlighting"
msgstr "ノードをハイライト" msgstr "ノードをハイライト"
@ -2842,7 +2980,6 @@ msgid "Parallax Occlusion"
msgstr "視差遮蔽マッピング" msgstr "視差遮蔽マッピング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Parallax occlusion" msgid "Parallax occlusion"
msgstr "視差遮蔽マッピング" msgstr "視差遮蔽マッピング"
@ -2862,9 +2999,8 @@ msgid "Parallax occlusion iterations"
msgstr "視差遮蔽マッピング" msgstr "視差遮蔽マッピング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Parallax occlusion mode" msgid "Parallax occlusion mode"
msgstr "視差遮蔽マッピング" msgstr "視差遮蔽マッピングモード"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
@ -2890,13 +3026,12 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Player name" msgid "Player name"
msgstr "名前が長過ぎます。" msgstr "プレイヤ名"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Player transfer distance" msgid "Player transfer distance"
@ -2970,9 +3105,8 @@ msgid "Replaces the default main menu with a custom one."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Right key" msgid "Right key"
msgstr "右メニュー" msgstr "右ー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Rightclick repetition interval" msgid "Rightclick repetition interval"
@ -3012,9 +3146,8 @@ msgid "Screen width"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Screenshot" msgid "Screenshot"
msgstr "Snapshot" msgstr "スクリーンショット"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Screenshot folder" msgid "Screenshot folder"
@ -3046,39 +3179,32 @@ msgid "Server / Singleplayer"
msgstr "シングルプレイ開始" msgstr "シングルプレイ開始"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Server URL" msgid "Server URL"
msgstr "サーバー" msgstr "サーバーURL"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Server address" msgid "Server address"
msgstr "サーバーのポート" msgstr "サーバーアドレス"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Server description" msgid "Server description"
msgstr "サーバーポート" msgstr "サーバーポート"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Server name" msgid "Server name"
msgstr "サーバー" msgstr "サーバー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Server port" msgid "Server port"
msgstr "サーバーポート" msgstr "サーバーポート"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Serverlist URL" msgid "Serverlist URL"
msgstr "公開サーバーリスト" msgstr "サーバーリストURL"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Serverlist file" msgid "Serverlist file"
msgstr "公開サーバーリスト" msgstr "サーバーリストファイル"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -3134,13 +3260,12 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Smooth lighting" msgid "Smooth lighting"
msgstr "滑らかな" msgstr "滑らかな照明"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3153,9 +3278,8 @@ msgid "Smooths rotation of camera. 0 to disable."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Sneak key" msgid "Sneak key"
msgstr "スニーク" msgstr "スニークキー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Sound" msgid "Sound"
@ -3191,9 +3315,8 @@ msgid "Synchronous SQLite"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Texture path" msgid "Texture path"
msgstr "テクスチャ" msgstr "テクスチャパス"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -3276,9 +3399,8 @@ msgid "Tooltip delay"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Trilinear filtering" msgid "Trilinear filtering"
msgstr "トリリニアフィルタ" msgstr "トリリニアフィルタリング"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -3320,9 +3442,8 @@ msgid "Use bilinear filtering when scaling textures."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Use key" msgid "Use key"
msgstr "キー入力待ち" msgstr "使用キー"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Use mip mapping to scale textures. May slightly increase performance." msgid "Use mip mapping to scale textures. May slightly increase performance."
@ -3333,9 +3454,8 @@ msgid "Use trilinear filtering when scaling textures."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Useful for mod developers." msgid "Useful for mod developers."
msgstr "以前の開発者" msgstr "Mod開発に便利。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "V-Sync" msgid "V-Sync"
@ -3349,6 +3469,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3374,14 +3498,12 @@ msgid "Viewing range minimum"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Volume" msgid "Volume"
msgstr "音量" msgstr "音量"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Walking speed" msgid "Walking speed"
msgstr "揺れる葉" msgstr "歩き速度"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Wanted FPS" msgid "Wanted FPS"
@ -3396,12 +3518,10 @@ msgid "Water surface level of the world."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Waving Nodes" msgid "Waving Nodes"
msgstr "揺れる" msgstr "揺れるノード"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Waving leaves" msgid "Waving leaves"
msgstr "揺れる葉" msgstr "揺れる葉"
@ -3411,7 +3531,6 @@ msgid "Waving plants"
msgstr "揺れる草花" msgstr "揺れる草花"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Waving water" msgid "Waving water"
msgstr "揺れる水" msgstr "揺れる水"
@ -3522,71 +3641,77 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "2x"
#~ msgstr "レンダリング:" #~ msgstr "2倍"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "ドライバーを変更するためMinetestを再起動します"
#~ msgid " MB/s"
#~ msgstr " MB/秒"
#~ msgid " KB/s"
#~ msgstr " KB/秒"
#~ msgid "Touchthreshold (px)"
#~ msgstr "タッチのしきい値(ピクセル)"
#~ msgid "Touch free target"
#~ msgstr "タッチ位置を自由にする"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "シェーダーを有効にするにはOpenGLを使用する必要があります。"
#~ msgid "Texturing:"
#~ msgstr "テクスチャリング:"
#~ msgid "Simple Leaves"
#~ msgstr "シンプルな葉"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "メニューの大きさとして設定されている数値: "
#~ msgid "Reset singleplayer world"
#~ msgstr "シングルプレイヤーのワールドをリセット"
#~ msgid "Opaque Water"
#~ msgstr "不透明な水"
#~ msgid "Opaque Leaves"
#~ msgstr "不透明な葉"
#~ msgid "No!!!"
#~ msgstr "いいえ!!!"
#~ msgid "No Mipmap"
#~ msgstr "ミップマップ無し"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "異方性フィルタ"
#~ msgid "Mipmap"
#~ msgstr "ミップマップ"
#~ msgid "Fancy Leaves"
#~ msgstr "綺麗な葉"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "シングルプレイヤーのワールドをリセットしてよろしいですか?"
#~ msgid "Antialiasing:"
#~ msgstr "アンチエイリアス:"
#~ msgid "8x"
#~ msgstr "8倍"
#~ msgid "4x" #~ msgid "4x"
#~ msgstr "4倍" #~ msgstr "4倍"
#~ msgid "2x" #~ msgid "8x"
#~ msgstr "2倍" #~ msgstr "8倍"
#~ msgid "Antialiasing:"
#~ msgstr "アンチエイリアス:"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "シングルプレイヤーのワールドをリセットしてよろしいですか?"
#~ msgid "Fancy Leaves"
#~ msgstr "綺麗な葉"
#~ msgid "Mipmap"
#~ msgstr "ミップマップ"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "異方性フィルタ"
#~ msgid "No Mipmap"
#~ msgstr "ミップマップ無し"
#~ msgid "No!!!"
#~ msgstr "いいえ!!!"
#~ msgid "Opaque Leaves"
#~ msgstr "不透明な葉"
#~ msgid "Opaque Water"
#~ msgstr "不透明な水"
#~ msgid "Reset singleplayer world"
#~ msgstr "シングルプレイヤーのワールドをリセット"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "メニューの大きさとして設定されている数値: "
#~ msgid "Simple Leaves"
#~ msgstr "シンプルな葉"
#~ msgid "Texturing:"
#~ msgstr "テクスチャリング:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "シェーダーを有効にするにはOpenGLを使用する必要があります。"
#~ msgid "Touch free target"
#~ msgstr "タッチ位置を自由にする"
#~ msgid "Touchthreshold (px)"
#~ msgstr "タッチのしきい値(ピクセル)"
#~ msgid " KB/s"
#~ msgstr " KB/秒"
#~ msgid " MB/s"
#~ msgstr " MB/秒"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "ドライバーを変更するためMinetestを再起動します"
#~ msgid "Rendering:"
#~ msgstr "レンダリング:"
#~ msgid "If enabled, "
#~ msgstr "有効化の場合 "
#~ msgid "If disabled "
#~ msgstr "無効化の場合 "

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-08-15 16:30+0200\n" "PO-Revision-Date: 2015-08-15 16:30+0200\n"
"Last-Translator: Wuzzy <almikes@aol.com>\n" "Last-Translator: Wuzzy <almikes@aol.com>\n"
"Language-Team: Lojban <https://hosted.weblate.org/projects/minetest/minetest/" "Language-Team: Lojban <https://hosted.weblate.org/projects/minetest/minetest/"
@ -415,7 +415,7 @@ msgid "Start Game"
msgstr "cfari fa lo nu kelci" msgstr "cfari fa lo nu kelci"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -444,6 +444,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "selpli" msgstr "selpli"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1398,7 +1402,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1545,7 +1549,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1676,7 +1684,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1811,7 +1819,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1891,20 +1900,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If disabled " msgid ""
"If disabled \"use\" key is used to fly fast if both fly and fast mode are "
"enabled."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "selpli" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1978,6 +1990,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2303,27 +2361,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2362,6 +2451,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2534,6 +2695,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2836,7 +3005,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3083,7 +3252,7 @@ msgstr "lo xutla se gusni"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3289,6 +3458,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3456,23 +3629,27 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Simple Leaves" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "lo sampu pezli" #~ msgstr ".i xu do je'u djica lo nu kraga'igau le do za'e pavykelci munje"
#~ msgid "Reset singleplayer world"
#~ msgstr "kraga'igau le za'e pavykelci munje"
#~ msgid "Opaque Water"
#~ msgstr "lo tolkli djacu"
#~ msgid "Opaque Leaves"
#~ msgstr "lo tolkli pezli"
#~ msgid "No!!!"
#~ msgstr "nasai go'i"
#~ msgid "Mipmap + Aniso. Filter" #~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "lo puvrmipmepi .e lo puvytolmanfyju'e" #~ msgstr "lo puvrmipmepi .e lo puvytolmanfyju'e"
#~ msgid "Are you sure to reset your singleplayer world?" #~ msgid "No!!!"
#~ msgstr ".i xu do je'u djica lo nu kraga'igau le do za'e pavykelci munje" #~ msgstr "nasai go'i"
#~ msgid "Opaque Leaves"
#~ msgstr "lo tolkli pezli"
#~ msgid "Opaque Water"
#~ msgstr "lo tolkli djacu"
#~ msgid "Reset singleplayer world"
#~ msgstr "kraga'igau le za'e pavykelci munje"
#~ msgid "Simple Leaves"
#~ msgstr "lo sampu pezli"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "selpli"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-07-08 23:30+0200\n" "PO-Revision-Date: 2015-07-08 23:30+0200\n"
"Last-Translator: Tae Lim Kook <tkook11@gmail.com>\n" "Last-Translator: Tae Lim Kook <tkook11@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/minetest/minetest/" "Language-Team: Korean <https://hosted.weblate.org/projects/minetest/minetest/"
@ -410,7 +410,7 @@ msgid "Start Game"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -437,6 +437,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1376,7 +1380,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1521,7 +1525,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1652,7 +1660,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1786,7 +1794,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1866,18 +1875,22 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If disabled " msgid ""
"If disabled \"use\" key is used to fly fast if both fly and fast mode are "
"enabled."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If enabled, " msgid ""
"If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
"and descending."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1951,6 +1964,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Jump key" msgid "Jump key"
msgstr "" msgstr ""
@ -2272,27 +2331,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2331,6 +2421,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2503,6 +2665,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2804,7 +2974,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3040,7 +3210,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3243,6 +3413,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-06-01 18:09+0200\n" "PO-Revision-Date: 2013-06-01 18:09+0200\n"
"Last-Translator: Chynggyz Jumaliev <translatorky@lavabit.com>\n" "Last-Translator: Chynggyz Jumaliev <translatorky@lavabit.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -428,7 +428,7 @@ msgid "Start Game"
msgstr "Оюнду баштоо/туташуу" msgstr "Оюнду баштоо/туташуу"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -457,6 +457,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "күйгүзүлгөн" msgstr "күйгүзүлгөн"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1442,7 +1446,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1590,7 +1594,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1721,7 +1729,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1857,7 +1865,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1937,21 +1946,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Баарын өчүрүү" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "күйгүзүлгөн" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2026,6 +2037,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2351,27 +2408,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2410,6 +2498,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2582,6 +2742,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2885,7 +3053,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3128,7 +3296,7 @@ msgstr "Тегиз жарык"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3334,6 +3502,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3501,19 +3673,62 @@ msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy #, fuzzy
#~ msgid "Game Name" #~ msgid "Opaque Leaves"
#~ msgstr "Оюн" #~ msgstr "Күңүрт суу"
#~ msgid "Favorites:"
#~ msgstr "Тандалмалар:"
#, fuzzy #, fuzzy
#~ msgid "Password" #~ msgid "Opaque Water"
#~ msgstr "Эски сырсөз" #~ msgstr "Күңүрт суу"
#, fuzzy #, fuzzy
#~ msgid "Finite Liquid" #~ msgid "Reset singleplayer world"
#~ msgstr "Чектүү суюктук" #~ msgstr "Бир кишилик"
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Ылдый"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Сол баскычы: Бардык буюмдарды ташуу, Оң баскычы: Бир буюмду ташуу"
#~ msgid "is required by:"
#~ msgstr "талап кылынганы:"
#~ msgid "Configuration saved. "
#~ msgstr "Конфигурация сакталды. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Эскертүү: Туура эмес конфигурация. "
#~ msgid "Show Public"
#~ msgstr "Жалпылыкты көрсөтүү"
#~ msgid "Show Favorites"
#~ msgstr "Тандалмаларды көрсөтүү"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Жергиликтүү серверди жүргүзүү үчүн даректи бош калтырыңыз."
#~ msgid "Create world"
#~ msgstr "Дүйнөнү жаратуу"
#~ msgid "Address required."
#~ msgstr "Дареги талап кылынат."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Дүнөнү жаратуу мүмкүн эмес: Эч нерсе тандалган жок"
#~ msgid "Files to be deleted"
#~ msgstr "Өчүрүлө турган файлдар"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Дүйнөнү жаратуу мүмкүн эмес: Оюндар табылган жок"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Дүйнөнү ырастоо мүмкүн эмес: Эч нерсе тандалган жок"
#~ msgid "Failed to delete all world files"
#~ msgstr "Бардык дүйнө файлдарын өчүрүү оңунан чыккан жок"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3540,60 +3755,25 @@ msgstr ""
#~ "- ESC: бул меню\n" #~ "- ESC: бул меню\n"
#~ "- T: маек\n" #~ "- T: маек\n"
#~ msgid "Failed to delete all world files" #, fuzzy
#~ msgstr "Бардык дүйнө файлдарын өчүрүү оңунан чыккан жок" #~ msgid "Finite Liquid"
#~ msgstr "Чектүү суюктук"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Дүйнөнү ырастоо мүмкүн эмес: Эч нерсе тандалган жок"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Дүйнөнү жаратуу мүмкүн эмес: Оюндар табылган жок"
#~ msgid "Files to be deleted"
#~ msgstr "Өчүрүлө турган файлдар"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Дүнөнү жаратуу мүмкүн эмес: Эч нерсе тандалган жок"
#~ msgid "Address required."
#~ msgstr "Дареги талап кылынат."
#~ msgid "Create world"
#~ msgstr "Дүйнөнү жаратуу"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Жергиликтүү серверди жүргүзүү үчүн даректи бош калтырыңыз."
#~ msgid "Show Favorites"
#~ msgstr "Тандалмаларды көрсөтүү"
#~ msgid "Show Public"
#~ msgstr "Жалпылыкты көрсөтүү"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Эскертүү: Туура эмес конфигурация. "
#~ msgid "Configuration saved. "
#~ msgstr "Конфигурация сакталды. "
#~ msgid "is required by:"
#~ msgstr "талап кылынганы:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Сол баскычы: Бардык буюмдарды ташуу, Оң баскычы: Бир буюмду ташуу"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Password"
#~ msgstr "Ылдый" #~ msgstr "Эски сырсөз"
#~ msgid "Favorites:"
#~ msgstr "Тандалмалар:"
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "Game Name"
#~ msgstr "Бир кишилик" #~ msgstr "Оюн"
#, fuzzy #, fuzzy
#~ msgid "Opaque Water" #~ msgid "If enabled, "
#~ msgstr "Күңүрт суу" #~ msgstr "күйгүзүлгөн"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "If disabled "
#~ msgstr "Күңүрт суу" #~ msgstr "Баарын өчүрүү"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-12-11 19:23+0200\n" "PO-Revision-Date: 2013-12-11 19:23+0200\n"
"Last-Translator: Jonas Kriaučiūnas <jonukas@gmail.com>\n" "Last-Translator: Jonas Kriaučiūnas <jonukas@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -422,7 +422,7 @@ msgid "Start Game"
msgstr "Pradėti žaidimą" msgstr "Pradėti žaidimą"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -451,6 +451,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "įjungtas" msgstr "įjungtas"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1414,7 +1418,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1562,7 +1566,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1694,7 +1702,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1829,7 +1837,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1909,21 +1918,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Išjungti papildinį" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "įjungtas" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1998,6 +2009,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2323,27 +2380,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2382,6 +2470,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2554,6 +2714,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2856,7 +3024,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3104,7 +3272,7 @@ msgstr "Apšvietimo efektai"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3310,6 +3478,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3474,62 +3646,70 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Game Name"
#~ msgstr "Žaidimo pavadinimas"
#~ msgid "GAMES"
#~ msgstr "ŽAIDIMAI"
#~ msgid "Mods:"
#~ msgstr "Papildiniai:"
#~ msgid "new game"
#~ msgstr "naujas žaidimas"
#, fuzzy #, fuzzy
#~ msgid "EDIT GAME" #~ msgid "Opaque Leaves"
#~ msgstr "KEISTI ŽAIDIMĄ" #~ msgstr "Nepermatomas vanduo"
#~ msgid "Remove selected mod"
#~ msgstr "Pašalinti pasirinktą papildinį"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Pridėti papildinį"
#~ msgid "CLIENT"
#~ msgstr "ŽAISTI TINKLE"
#~ msgid "Favorites:"
#~ msgstr "Mėgiami:"
#~ msgid "START SERVER"
#~ msgstr "PALEISTI SERVERĮ"
#~ msgid "Name"
#~ msgstr "Vardas"
#~ msgid "Password"
#~ msgstr "Slaptažodis"
#~ msgid "SETTINGS"
#~ msgstr "NUSTATYMAI"
#~ msgid "SINGLE PLAYER"
#~ msgstr "VIENAS ŽAIDĖJAS"
#~ msgid "MODS"
#~ msgstr "PAPILDINIAI"
#~ msgid "Add mod:"
#~ msgstr "Pridėti papildinį:"
#, fuzzy
#~ msgid "Reset singleplayer world"
#~ msgstr "Žaisti vienam"
#~ msgid "Opaque Water" #~ msgid "Opaque Water"
#~ msgstr "Nepermatomas vanduo" #~ msgstr "Nepermatomas vanduo"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "Reset singleplayer world"
#~ msgstr "Nepermatomas vanduo" #~ msgstr "Žaisti vienam"
#~ msgid "Add mod:"
#~ msgstr "Pridėti papildinį:"
#~ msgid "MODS"
#~ msgstr "PAPILDINIAI"
#~ msgid "SINGLE PLAYER"
#~ msgstr "VIENAS ŽAIDĖJAS"
#~ msgid "SETTINGS"
#~ msgstr "NUSTATYMAI"
#~ msgid "Password"
#~ msgstr "Slaptažodis"
#~ msgid "Name"
#~ msgstr "Vardas"
#~ msgid "START SERVER"
#~ msgstr "PALEISTI SERVERĮ"
#~ msgid "Favorites:"
#~ msgstr "Mėgiami:"
#~ msgid "CLIENT"
#~ msgstr "ŽAISTI TINKLE"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Pridėti papildinį"
#~ msgid "Remove selected mod"
#~ msgstr "Pašalinti pasirinktą papildinį"
#, fuzzy
#~ msgid "EDIT GAME"
#~ msgstr "KEISTI ŽAIDIMĄ"
#~ msgid "new game"
#~ msgstr "naujas žaidimas"
#~ msgid "Mods:"
#~ msgstr "Papildiniai:"
#~ msgid "GAMES"
#~ msgstr "ŽAIDIMAI"
#~ msgid "Game Name"
#~ msgstr "Žaidimo pavadinimas"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "įjungtas"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Išjungti papildinį"

View File

@ -8,7 +8,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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -433,6 +433,10 @@ msgstr ""
msgid "Optionally the lacunarity can be appended with a leading comma." msgid "Optionally the lacunarity can be appended with a leading comma."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Disabled" msgid "Disabled"
msgstr "" msgstr ""
@ -462,7 +466,7 @@ msgid "Please enter a valid number."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -1136,7 +1140,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1146,7 +1150,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1157,7 +1161,7 @@ msgstr ""
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1166,7 +1170,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -1207,7 +1211,9 @@ msgid "Key use for climbing/descending"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If enabled, " msgid ""
"If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
"and descending."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1223,7 +1229,9 @@ msgid "Always fly and fast"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "If disabled " msgid ""
"If disabled \"use\" key is used to fly fast if both fly and fast mode are "
"enabled."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1657,7 +1665,11 @@ msgid "New style water"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2680,6 +2692,18 @@ msgstr ""
msgid "If this is set, players will always (re)spawn at the given position." msgid "If this is set, players will always (re)spawn at the given position."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Disallow empty passwords" msgid "Disallow empty passwords"
msgstr "" msgstr ""
@ -3023,7 +3047,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3139,12 +3164,12 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n" "ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3153,7 +3178,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -3215,11 +3240,11 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3266,6 +3291,155 @@ msgstr ""
msgid "Mapgen v7 cave2 noise parameters" msgid "Mapgen v7 cave2 noise parameters"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen fractal.\n"
"'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Security" msgid "Security"
msgstr "" msgstr ""

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-20 17:15+0200\n" "PO-Revision-Date: 2015-09-20 17:15+0200\n"
"Last-Translator: Christian Haug <christian@metaboks.org>\n" "Last-Translator: Christian Haug <christian@metaboks.org>\n"
"Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/" "Language-Team: Norwegian Bokmål <https://hosted.weblate.org/projects/"
@ -420,7 +420,7 @@ msgid "Start Game"
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -449,6 +449,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "aktivert" msgstr "aktivert"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1391,7 +1395,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1537,7 +1541,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1668,7 +1676,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1802,7 +1810,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1882,21 +1891,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Deaktiver Alle" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "aktivert" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1970,6 +1981,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Jump key" msgid "Jump key"
msgstr "" msgstr ""
@ -2291,27 +2348,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2350,6 +2438,78 @@ msgstr ""
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal flags"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2522,6 +2682,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2823,7 +2991,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3059,7 +3227,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3262,6 +3430,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3426,16 +3598,11 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy #~ msgid "is required by:"
#~ msgid "Game Name" #~ msgstr "trengs av:"
#~ msgstr "Spill"
#~ msgid "" #~ msgid "Configuration saved. "
#~ "Warning: Some mods are not configured yet.\n" #~ msgstr "Konfigurasjon lagret. "
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: Noen modifikasjoner er ikke konfigurert enda. \n"
#~ "De vil bli aktivert som standard når du lagrer konfigurasjonen."
#~ msgid "" #~ msgid ""
#~ "Warning: Some configured mods are missing.\n" #~ "Warning: Some configured mods are missing.\n"
@ -3444,8 +3611,21 @@ msgstr ""
#~ "Advarsel: Noen konfigurerte modifikasjoner mangler. \n" #~ "Advarsel: Noen konfigurerte modifikasjoner mangler. \n"
#~ "Instillingene deres vil bli fjernet når du lagrer konfigurasjonen." #~ "Instillingene deres vil bli fjernet når du lagrer konfigurasjonen."
#~ msgid "Configuration saved. " #~ msgid ""
#~ msgstr "Konfigurasjon lagret. " #~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Advarsel: Noen modifikasjoner er ikke konfigurert enda. \n"
#~ "De vil bli aktivert som standard når du lagrer konfigurasjonen."
#~ msgid "is required by:" #, fuzzy
#~ msgstr "trengs av:" #~ msgid "Game Name"
#~ msgstr "Spill"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "aktivert"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Deaktiver Alle"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-06 07:40+0200\n" "PO-Revision-Date: 2015-10-27 16:44+0200\n"
"Last-Translator: E. Kastelijn <weblate.org@kastelijn.nu>\n" "Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/minetest/minetest/" "Language-Team: Dutch <https://hosted.weblate.org/projects/minetest/minetest/"
"nl/>\n" "nl/>\n"
"Language: nl\n" "Language: nl\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 2.4-dev\n" "X-Generator: Weblate 2.5-dev\n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:" msgid "An error occured in a Lua script, such as a mod:"
@ -417,7 +417,7 @@ msgid "Start Game"
msgstr "Start Server" msgstr "Start Server"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -446,6 +446,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "ingeschakeld" msgstr "ingeschakeld"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -598,7 +602,7 @@ msgstr "Het gespecificeerde wereld-pad bestaat niet: "
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "needs_fallback_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -1424,7 +1428,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1575,7 +1579,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1708,7 +1716,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1845,7 +1853,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1925,21 +1934,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "MP uitschakelen" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "ingeschakeld" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2014,6 +2025,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2339,27 +2396,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2400,6 +2488,81 @@ msgstr "Kaartgenerator"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Kaartgenerator" msgstr "Kaartgenerator"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Kaartgenerator"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Kaartgenerator"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Parallax occlusie"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2576,6 +2739,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2886,7 +3057,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3136,7 +3307,7 @@ msgstr "Mooie verlichting"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3344,6 +3515,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3517,89 +3692,94 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Rendering:" #~ msgstr "Weet je zeker dat je je wereld wilt resetten?"
#~ msgid "Restart minetest for driver change to take effect" #~ msgid "Fancy Leaves"
#~ msgstr "Herstart minetest om de driver te activeren" #~ msgstr "Mooie bladeren"
#~ msgid "Game Name" #~ msgid "Mipmap"
#~ msgstr "Spel" #~ msgstr "Mipmap"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\"" #~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Gamemgr: Kan mod \"$1\" niet naar spel \"$2\" kopiëren" #~ msgstr "Mipmap + Anisotropisch filteren"
#~ msgid "GAMES" #~ msgid "No Mipmap"
#~ msgstr "SPELLEN" #~ msgstr "Geen Mipmap"
#~ msgid "Mods:" #~ msgid "No!!!"
#~ msgstr "Mods:" #~ msgstr "Nee!!!"
#~ msgid "new game" #~ msgid "Opaque Leaves"
#~ msgstr "nieuw spel" #~ msgstr "Ondoorzichtige bladeren"
#~ msgid "EDIT GAME" #~ msgid "Opaque Water"
#~ msgstr "SPEL AANPASSEN" #~ msgstr "Ondoorzichtig water"
#~ msgid "Remove selected mod" #~ msgid "Reset singleplayer world"
#~ msgstr "Geselecteerde mod verwijderen" #~ msgstr "Reset Singleplayer wereld"
#~ msgid "<<-- Add mod" #~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "<<-- Mod toevoegen" #~ msgstr "Schaal-factor toegepast op menu elementen: "
#~ msgid "CLIENT" #~ msgid "Simple Leaves"
#~ msgstr "CLIENT" #~ msgstr "Eenvoudige bladeren"
#~ msgid "Favorites:" #~ msgid "Texturing:"
#~ msgstr "Favorieten:" #~ msgstr "Textuur:"
#~ msgid "START SERVER" #~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "START SERVER" #~ msgstr "Om schaduwen mogelijk te maken moet OpenGL worden gebruikt."
#~ msgid "Name" #, fuzzy
#~ msgstr "Naam" #~ msgid "Downloading"
#~ msgstr "Downloaden"
#~ msgid "Password" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Wachtwoord"
#~ msgid "SETTINGS"
#~ msgstr "INSTELLINGEN"
#~ msgid "Preload item visuals"
#~ msgstr "Voorwerpen vooraf laden"
#~ msgid "Finite Liquid"
#~ msgstr "Eindige vloeistoffen"
#~ msgid "SINGLE PLAYER"
#~ msgstr "SINGLEPLAYER"
#~ msgid "TEXTURE PACKS"
#~ msgstr "TEXTUREN"
#~ msgid "MODS"
#~ msgstr "MODS"
#~ msgid "Add mod:"
#~ msgstr "Mod toevoegen:"
#~ msgid "Local install"
#~ msgstr "Plaatselijk installeren"
#~ msgid ""
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr "" #~ msgstr ""
#~ "Let op: Nog niet alle mods zijn geconfigueerd. \n" #~ "Linkermuisknop: Verplaats alle items. Rechtermuisknop: Verplaats één item"
#~ "De mods zullen automatisch worden ingeschakeld als je de configuratie "
#~ "bewaard. "
#~ msgid "" #~ msgid "is required by:"
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "is benodigd voor:"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr "" #~ msgid "Configuration saved. "
#~ "LEt op: Sommige ingestelde mods zijn vermist.\n" #~ msgstr "Instellingen bewaard. "
#~ "Hun instellingen worden verwijderd als je de configuratie opslaat. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Waarschuwing: Instellingen niet consistent. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Kan geen nieuwe wereld aanmaken: de naam bevat onjuiste tekens"
#~ msgid "Show Public"
#~ msgstr "Publieke server"
#~ msgid "Show Favorites"
#~ msgstr "Favourieten"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Laat het adres leeg om een lokale server te starten."
#~ msgid "Create world"
#~ msgstr "Maak wereld aan"
#~ msgid "Address required."
#~ msgstr "IP-adres nodig."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Kan niets verwijderen: Geen wereld geselecteerd"
#~ msgid "Files to be deleted"
#~ msgstr "Deze bestanden worden verwijderd"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Kan geen wereld aanmaken: Geen games gevonden"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Kan instellingen niet aanpassen: Niets geselecteerd"
#~ msgid "Failed to delete all world files"
#~ msgstr "Niet alle bestanden zijn verwijderd"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3626,91 +3806,94 @@ msgstr ""
#~ "- ESC: Menu\n" #~ "- ESC: Menu\n"
#~ "- T: Chat\n" #~ "- T: Chat\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "Niet alle bestanden zijn verwijderd" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Kan instellingen niet aanpassen: Niets geselecteerd"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Kan geen wereld aanmaken: Geen games gevonden"
#~ msgid "Files to be deleted"
#~ msgstr "Deze bestanden worden verwijderd"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Kan niets verwijderen: Geen wereld geselecteerd"
#~ msgid "Address required."
#~ msgstr "IP-adres nodig."
#~ msgid "Create world"
#~ msgstr "Maak wereld aan"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Laat het adres leeg om een lokale server te starten."
#~ msgid "Show Favorites"
#~ msgstr "Favourieten"
#~ msgid "Show Public"
#~ msgstr "Publieke server"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Kan geen nieuwe wereld aanmaken: de naam bevat onjuiste tekens"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Waarschuwing: Instellingen niet consistent. "
#~ msgid "Configuration saved. "
#~ msgstr "Instellingen bewaard. "
#~ msgid "is required by:"
#~ msgstr "is benodigd voor:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "" #~ msgstr ""
#~ "Linkermuisknop: Verplaats alle items. Rechtermuisknop: Verplaats één item" #~ "LEt op: Sommige ingestelde mods zijn vermist.\n"
#~ "Hun instellingen worden verwijderd als je de configuratie opslaat. "
#~ msgid ""
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Let op: Nog niet alle mods zijn geconfigueerd. \n"
#~ "De mods zullen automatisch worden ingeschakeld als je de configuratie "
#~ "bewaard. "
#~ msgid "Local install"
#~ msgstr "Plaatselijk installeren"
#~ msgid "Add mod:"
#~ msgstr "Mod toevoegen:"
#~ msgid "MODS"
#~ msgstr "MODS"
#~ msgid "TEXTURE PACKS"
#~ msgstr "TEXTUREN"
#~ msgid "SINGLE PLAYER"
#~ msgstr "SINGLEPLAYER"
#~ msgid "Finite Liquid"
#~ msgstr "Eindige vloeistoffen"
#~ msgid "Preload item visuals"
#~ msgstr "Voorwerpen vooraf laden"
#~ msgid "SETTINGS"
#~ msgstr "INSTELLINGEN"
#~ msgid "Password"
#~ msgstr "Wachtwoord"
#~ msgid "Name"
#~ msgstr "Naam"
#~ msgid "START SERVER"
#~ msgstr "START SERVER"
#~ msgid "Favorites:"
#~ msgstr "Favorieten:"
#~ msgid "CLIENT"
#~ msgstr "CLIENT"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Mod toevoegen"
#~ msgid "Remove selected mod"
#~ msgstr "Geselecteerde mod verwijderen"
#~ msgid "EDIT GAME"
#~ msgstr "SPEL AANPASSEN"
#~ msgid "new game"
#~ msgstr "nieuw spel"
#~ msgid "Mods:"
#~ msgstr "Mods:"
#~ msgid "GAMES"
#~ msgstr "SPELLEN"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "Gamemgr: Kan mod \"$1\" niet naar spel \"$2\" kopiëren"
#~ msgid "Game Name"
#~ msgstr "Spel"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Herstart minetest om de driver te activeren"
#~ msgid "Rendering:"
#~ msgstr "Rendering:"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "If enabled, "
#~ msgstr "Downloaden" #~ msgstr "ingeschakeld"
#~ msgid "To enable shaders the OpenGL driver needs to be used." #, fuzzy
#~ msgstr "Om schaduwen mogelijk te maken moet OpenGL worden gebruikt." #~ msgid "If disabled "
#~ msgstr "MP uitschakelen"
#~ msgid "Texturing:"
#~ msgstr "Textuur:"
#~ msgid "Simple Leaves"
#~ msgstr "Eenvoudige bladeren"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Schaal-factor toegepast op menu elementen: "
#~ msgid "Reset singleplayer world"
#~ msgstr "Reset Singleplayer wereld"
#~ msgid "Opaque Water"
#~ msgstr "Ondoorzichtig water"
#~ msgid "Opaque Leaves"
#~ msgstr "Ondoorzichtige bladeren"
#~ msgid "No!!!"
#~ msgstr "Nee!!!"
#~ msgid "No Mipmap"
#~ msgstr "Geen Mipmap"
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap + Anisotropisch filteren"
#~ msgid "Mipmap"
#~ msgstr "Mipmap"
#~ msgid "Fancy Leaves"
#~ msgstr "Mooie bladeren"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Weet je zeker dat je je wereld wilt resetten?"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-10-08 21:22+0200\n" "PO-Revision-Date: 2013-10-08 21:22+0200\n"
"Last-Translator: Maciej Kasatkin <maciej.kasatkin@yahoo.com>\n" "Last-Translator: Maciej Kasatkin <maciej.kasatkin@yahoo.com>\n"
"Language-Team: Polish <>\n" "Language-Team: Polish <>\n"
@ -429,7 +429,7 @@ msgid "Start Game"
msgstr "Rozpocznij grę/Połącz" msgstr "Rozpocznij grę/Połącz"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -458,6 +458,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "włączone" msgstr "włączone"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1444,7 +1448,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1595,7 +1599,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1726,7 +1734,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1862,7 +1870,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1942,21 +1951,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Wyłącz wszystkie" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "włączone" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2031,6 +2042,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2356,27 +2413,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2417,6 +2505,80 @@ msgstr "Generator mapy"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Generator mapy" msgstr "Generator mapy"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Generator mapy"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Generator mapy"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2593,6 +2755,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2896,7 +3066,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3145,7 +3315,7 @@ msgstr "Płynne oświetlenie"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3353,6 +3523,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3519,84 +3693,67 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Game Name" #, fuzzy
#~ msgstr "Nazwa Gry" #~ msgid "Opaque Leaves"
#~ msgstr "Nieprzeźroczysta woda"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\"" #~ msgid "Opaque Water"
#~ msgstr "Gamemgr: Kopiowanie moda \"$1\" do gry \"$2\" nie powiodło się" #~ msgstr "Nieprzeźroczysta woda"
#~ msgid "GAMES"
#~ msgstr "GRY"
#~ msgid "Mods:"
#~ msgstr "Mody:"
#~ msgid "new game"
#~ msgstr "nowa gra"
#~ msgid "EDIT GAME"
#~ msgstr "EDYTUJ GRĘ"
#~ msgid "Remove selected mod"
#~ msgstr "Usuń zaznaczony mod"
#~ msgid "<<-- Add mod"
#~ msgstr "<<--Dodaj mod"
#~ msgid "CLIENT"
#~ msgstr "KLIENT"
#~ msgid "Favorites:"
#~ msgstr "Ulubione:"
#~ msgid "START SERVER"
#~ msgstr "URUCHOM SERWER"
#~ msgid "Name"
#~ msgstr "Nazwa"
#~ msgid "Password"
#~ msgstr "Hasło"
#~ msgid "SETTINGS"
#~ msgstr "USTAWIENIA"
#~ msgid "Preload item visuals"
#~ msgstr "Ładuj obrazy przedmiotów"
#~ msgid "Finite Liquid"
#~ msgstr "Realistyczne ciecze"
#~ msgid "SINGLE PLAYER"
#~ msgstr "TRYB JEDNOOSOBOWY"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACZKI TEKSTUR"
#~ msgid "MODS"
#~ msgstr "MODY"
#, fuzzy #, fuzzy
#~ msgid "Add mod:" #~ msgid "Reset singleplayer world"
#~ msgstr "<<--Dodaj mod" #~ msgstr "Pojedynczy gracz"
#, fuzzy #, fuzzy
#~ msgid "Local install" #~ msgid "Downloading"
#~ msgstr "Instaluj" #~ msgstr "Ściągnij"
#~ msgid "" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr "" #~ msgstr ""
#~ "Uwaga: Niektóre z modyfikacji nie zostały jeszcze skonfigurowane.\n" #~ "Lewy przycisk myszy: przenieś wszystkie przedmioty, Prawy przycisk myszy: "
#~ "Zostaną domyślnie włączone gdy zapiszesz konfigurację. " #~ "przenieś pojedynczy przedmiot"
#~ msgid "" #~ msgid "is required by:"
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "wymagane przez:"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr "" #~ msgid "Configuration saved. "
#~ "Ostrzeżenie: Niektóre z modyfikacji nie zostały znalezione.\n" #~ msgstr "Konfiguracja zapisana. "
#~ "Ich ustawienia zostaną usunięte gdy zapiszesz konfigurację. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Ostrzeżenie: Plik konfiguracyjny niespójny. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Nie można stworzyć świata: Nazwa zawiera niedozwolone znaki"
#~ msgid "Show Public"
#~ msgstr "Pokaż publiczne"
#~ msgid "Show Favorites"
#~ msgstr "Pokaż ulubione"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Pozostaw pole adresu puste, by uruchomić serwer lokalny."
#~ msgid "Create world"
#~ msgstr "Stwórz świat"
#~ msgid "Address required."
#~ msgstr "Wymagany adres."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Nie można skasować świata: nic nie zaznaczono"
#~ msgid "Files to be deleted"
#~ msgstr "Pliki do skasowania"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Nie można utworzyć świata: Nie znaleziono żadnego trybu gry"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Nie można skonfigurować świata: Nic nie zaznaczono"
#~ msgid "Failed to delete all world files"
#~ msgstr "Nie udało się skasować wszystkich plików świata"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3623,64 +3780,89 @@ msgstr ""
#~ "- ESC: to menu\n" #~ "- ESC: to menu\n"
#~ "- T: czat\n" #~ "- T: czat\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "Nie udało się skasować wszystkich plików świata" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Nie można skonfigurować świata: Nic nie zaznaczono"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Nie można utworzyć świata: Nie znaleziono żadnego trybu gry"
#~ msgid "Files to be deleted"
#~ msgstr "Pliki do skasowania"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Nie można skasować świata: nic nie zaznaczono"
#~ msgid "Address required."
#~ msgstr "Wymagany adres."
#~ msgid "Create world"
#~ msgstr "Stwórz świat"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Pozostaw pole adresu puste, by uruchomić serwer lokalny."
#~ msgid "Show Favorites"
#~ msgstr "Pokaż ulubione"
#~ msgid "Show Public"
#~ msgstr "Pokaż publiczne"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Nie można stworzyć świata: Nazwa zawiera niedozwolone znaki"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Ostrzeżenie: Plik konfiguracyjny niespójny. "
#~ msgid "Configuration saved. "
#~ msgstr "Konfiguracja zapisana. "
#~ msgid "is required by:"
#~ msgstr "wymagane przez:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "" #~ msgstr ""
#~ "Lewy przycisk myszy: przenieś wszystkie przedmioty, Prawy przycisk myszy: " #~ "Ostrzeżenie: Niektóre z modyfikacji nie zostały znalezione.\n"
#~ "przenieś pojedynczy przedmiot" #~ "Ich ustawienia zostaną usunięte gdy zapiszesz konfigurację. "
#~ msgid ""
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Uwaga: Niektóre z modyfikacji nie zostały jeszcze skonfigurowane.\n"
#~ "Zostaną domyślnie włączone gdy zapiszesz konfigurację. "
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Local install"
#~ msgstr "Ściągnij" #~ msgstr "Instaluj"
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "Add mod:"
#~ msgstr "Pojedynczy gracz" #~ msgstr "<<--Dodaj mod"
#~ msgid "Opaque Water" #~ msgid "MODS"
#~ msgstr "Nieprzeźroczysta woda" #~ msgstr "MODY"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACZKI TEKSTUR"
#~ msgid "SINGLE PLAYER"
#~ msgstr "TRYB JEDNOOSOBOWY"
#~ msgid "Finite Liquid"
#~ msgstr "Realistyczne ciecze"
#~ msgid "Preload item visuals"
#~ msgstr "Ładuj obrazy przedmiotów"
#~ msgid "SETTINGS"
#~ msgstr "USTAWIENIA"
#~ msgid "Password"
#~ msgstr "Hasło"
#~ msgid "Name"
#~ msgstr "Nazwa"
#~ msgid "START SERVER"
#~ msgstr "URUCHOM SERWER"
#~ msgid "Favorites:"
#~ msgstr "Ulubione:"
#~ msgid "CLIENT"
#~ msgstr "KLIENT"
#~ msgid "<<-- Add mod"
#~ msgstr "<<--Dodaj mod"
#~ msgid "Remove selected mod"
#~ msgstr "Usuń zaznaczony mod"
#~ msgid "EDIT GAME"
#~ msgstr "EDYTUJ GRĘ"
#~ msgid "new game"
#~ msgstr "nowa gra"
#~ msgid "Mods:"
#~ msgstr "Mody:"
#~ msgid "GAMES"
#~ msgstr "GRY"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "Gamemgr: Kopiowanie moda \"$1\" do gry \"$2\" nie powiodło się"
#~ msgid "Game Name"
#~ msgstr "Nazwa Gry"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "If enabled, "
#~ msgstr "Nieprzeźroczysta woda" #~ msgstr "włączone"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Wyłącz wszystkie"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2014-01-06 01:45+0200\n" "PO-Revision-Date: 2014-01-06 01:45+0200\n"
"Last-Translator: João Farias <jgfd@cin.ufpe.br>\n" "Last-Translator: João Farias <jgfd@cin.ufpe.br>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -428,7 +428,7 @@ msgid "Start Game"
msgstr "Jogar" msgstr "Jogar"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -457,6 +457,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "ativo" msgstr "ativo"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1442,7 +1446,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1593,7 +1597,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1725,7 +1733,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1861,7 +1869,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1941,21 +1950,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Desativar Tudo" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "ativo" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2030,6 +2041,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2355,27 +2412,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2416,6 +2504,80 @@ msgstr "Geração de Mapa"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Geração de Mapa" msgstr "Geração de Mapa"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Geração de Mapa"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Geração de Mapa"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2592,6 +2754,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2895,7 +3065,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3144,7 +3314,7 @@ msgstr "Iluminação Suave"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3352,6 +3522,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3518,86 +3692,65 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Game Name" #, fuzzy
#~ msgstr "Nome do Jogo" #~ msgid "Opaque Leaves"
#~ msgstr "Água Opaca"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\"" #~ msgid "Opaque Water"
#~ msgstr "" #~ msgstr "Água Opaca"
#~ "Mensagem de Jogo: Impossível fazer cópia do extra \"$1\" para o jogo "
#~ "\"$2\""
#~ msgid "GAMES" #, fuzzy
#~ msgstr "JOGOS" #~ msgid "Reset singleplayer world"
#~ msgid "Mods:"
#~ msgstr "Extras:"
#~ msgid "new game"
#~ msgstr "novo jogo"
#~ msgid "EDIT GAME"
#~ msgstr "EDITAR JOGO"
#~ msgid "Remove selected mod"
#~ msgstr "Remover extra selecionado"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Adicionar extra"
#~ msgid "CLIENT"
#~ msgstr "CLIENTE"
#~ msgid "Favorites:"
#~ msgstr "Favoritos:"
#~ msgid "START SERVER"
#~ msgstr "INICIAR SERVIDOR"
#~ msgid "Name"
#~ msgstr "Nome"
#~ msgid "Password"
#~ msgstr "Senha"
#~ msgid "SETTINGS"
#~ msgstr "DEFINIÇÕES"
#~ msgid "Preload item visuals"
#~ msgstr "Pré-carregamento dos itens"
#~ msgid "Finite Liquid"
#~ msgstr "Líquido Finito"
#~ msgid "SINGLE PLAYER"
#~ msgstr "Um Jogador" #~ msgstr "Um Jogador"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACOTES DE TEXTURAS"
#~ msgid "MODS"
#~ msgstr "EXTRAS"
#, fuzzy #, fuzzy
#~ msgid "Add mod:" #~ msgid "Downloading"
#~ msgstr "<<-- Adicionar extra" #~ msgstr "Descarregar"
#, fuzzy #~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgid "Local install" #~ msgstr "Botão esq: Mover todos os itens Botão dir: Mover um item"
#~ msgstr "Instalar"
#~ msgid "" #~ msgid "is required by:"
#~ "Warning: Some mods are not configured yet.\n" #~ msgstr "é necessário pelo:"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods ainda não estão configurados.\n"
#~ "Eles vão ser ativados por predefinição quando guardar a configuração. "
#~ msgid "" #~ msgid "Configuration saved. "
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "Configuração gravada. "
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr "" #~ msgid "Warning: Configuration not consistent. "
#~ "Atenção: Alguns mods configurados estão em falta.\n" #~ msgstr "Atenção: Configuração não compatível. "
#~ "As suas definições vão ser removidas quando gravar a configuração. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Não foi possível criar mundo: Nome com caracteres inválidos"
#~ msgid "Show Public"
#~ msgstr "Mostrar Públicos"
#~ msgid "Show Favorites"
#~ msgstr "Mostrar Favoritos"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Deixe endereço em branco para iniciar servidor local."
#~ msgid "Create world"
#~ msgstr "Criar mundo"
#~ msgid "Address required."
#~ msgstr "Endereço necessário."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Não foi possível eliminar mundo: Nada seleccionado"
#~ msgid "Files to be deleted"
#~ msgstr "Ficheiros para eliminar"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Não foi possível criar mundo: Não foram detectados jogos"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Não foi possível configurar mundo: Nada seleccionado"
#~ msgid "Failed to delete all world files"
#~ msgstr "Falhou a remoção de todos os ficheiros dos mundos"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3624,62 +3777,91 @@ msgstr ""
#~ "- ESC: Este menu\n" #~ "- ESC: Este menu\n"
#~ "- T: Chat\n" #~ "- T: Chat\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "Falhou a remoção de todos os ficheiros dos mundos" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods configurados estão em falta.\n"
#~ "As suas definições vão ser removidas quando gravar a configuração. "
#~ msgid "Cannot configure world: Nothing selected" #~ msgid ""
#~ msgstr "Não foi possível configurar mundo: Nada seleccionado" #~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgid "Cannot create world: No games found" #~ msgstr ""
#~ msgstr "Não foi possível criar mundo: Não foram detectados jogos" #~ "Atenção: Alguns mods ainda não estão configurados.\n"
#~ "Eles vão ser ativados por predefinição quando guardar a configuração. "
#~ msgid "Files to be deleted"
#~ msgstr "Ficheiros para eliminar"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Não foi possível eliminar mundo: Nada seleccionado"
#~ msgid "Address required."
#~ msgstr "Endereço necessário."
#~ msgid "Create world"
#~ msgstr "Criar mundo"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Deixe endereço em branco para iniciar servidor local."
#~ msgid "Show Favorites"
#~ msgstr "Mostrar Favoritos"
#~ msgid "Show Public"
#~ msgstr "Mostrar Públicos"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Não foi possível criar mundo: Nome com caracteres inválidos"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Atenção: Configuração não compatível. "
#~ msgid "Configuration saved. "
#~ msgstr "Configuração gravada. "
#~ msgid "is required by:"
#~ msgstr "é necessário pelo:"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "Botão esq: Mover todos os itens Botão dir: Mover um item"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Local install"
#~ msgstr "Descarregar" #~ msgstr "Instalar"
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "Add mod:"
#~ msgstr "<<-- Adicionar extra"
#~ msgid "MODS"
#~ msgstr "EXTRAS"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACOTES DE TEXTURAS"
#~ msgid "SINGLE PLAYER"
#~ msgstr "Um Jogador" #~ msgstr "Um Jogador"
#~ msgid "Opaque Water" #~ msgid "Finite Liquid"
#~ msgstr "Água Opaca" #~ msgstr "Líquido Finito"
#~ msgid "Preload item visuals"
#~ msgstr "Pré-carregamento dos itens"
#~ msgid "SETTINGS"
#~ msgstr "DEFINIÇÕES"
#~ msgid "Password"
#~ msgstr "Senha"
#~ msgid "Name"
#~ msgstr "Nome"
#~ msgid "START SERVER"
#~ msgstr "INICIAR SERVIDOR"
#~ msgid "Favorites:"
#~ msgstr "Favoritos:"
#~ msgid "CLIENT"
#~ msgstr "CLIENTE"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Adicionar extra"
#~ msgid "Remove selected mod"
#~ msgstr "Remover extra selecionado"
#~ msgid "EDIT GAME"
#~ msgstr "EDITAR JOGO"
#~ msgid "new game"
#~ msgstr "novo jogo"
#~ msgid "Mods:"
#~ msgstr "Extras:"
#~ msgid "GAMES"
#~ msgstr "JOGOS"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr ""
#~ "Mensagem de Jogo: Impossível fazer cópia do extra \"$1\" para o jogo "
#~ "\"$2\""
#~ msgid "Game Name"
#~ msgstr "Nome do Jogo"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "If enabled, "
#~ msgstr "Água Opaca" #~ msgstr "ativo"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Desativar Tudo"

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-10-15 04:11+0200\n" "PO-Revision-Date: 2015-10-27 16:46+0200\n"
"Last-Translator: Leonardo <leotada523@gmail.com>\n" "Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/" "Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"minetest/minetest/pt_BR/>\n" "minetest/minetest/pt_BR/>\n"
"Language: pt_BR\n" "Language: pt_BR\n"
@ -427,7 +427,7 @@ msgid "Start Game"
msgstr "Iniciar o jogo" msgstr "Iniciar o jogo"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -456,6 +456,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "habilitado" msgstr "habilitado"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -614,7 +618,7 @@ msgstr ""
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "needs_fallback_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -1444,7 +1448,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1595,7 +1599,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1728,7 +1736,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1864,7 +1872,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1944,21 +1953,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Desabilitar PMs" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "habilitado" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2033,6 +2044,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2358,27 +2415,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2419,6 +2507,80 @@ msgstr "Mapgen"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Mapgen" msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2595,6 +2757,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2898,7 +3068,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3147,7 +3317,7 @@ msgstr "Iluminação suave"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3355,6 +3525,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3521,82 +3695,68 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Game Name" #, fuzzy
#~ msgstr "Nome do jogo" #~ msgid "Opaque Leaves"
#~ msgstr "Água opaca"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\"" #~ msgid "Opaque Water"
#~ msgstr "Gamemgr: Não foi possível copiar o mod \"$1\" para o jogo \"$2\"" #~ msgstr "Água opaca"
#~ msgid "GAMES" #, fuzzy
#~ msgstr "JOGOS" #~ msgid "Reset singleplayer world"
#~ msgstr "Um jogador"
#~ msgid "Mods:" #~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Módulos:" #~ msgstr "Para habilitar os sombreadores é necessário usar o driver OpenGL."
#~ msgid "new game" #, fuzzy
#~ msgstr "novo jogo" #~ msgid "Downloading"
#~ msgstr "Baixar"
#~ msgid "EDIT GAME" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "EDITAR JOGO" #~ msgstr "Botão esquerdo: Move todos os itens. Botão direito: Move um item"
#~ msgid "Remove selected mod" #~ msgid "is required by:"
#~ msgstr "Remover o módulo selecionado" #~ msgstr "é necessário para:"
#~ msgid "<<-- Add mod" #~ msgid "Configuration saved. "
#~ msgstr "<<-- Adicionar módulo" #~ msgstr "A configuração foi salva. "
#~ msgid "CLIENT" #~ msgid "Warning: Configuration not consistent. "
#~ msgstr "CLIENTE" #~ msgstr "Atenção: A configuração não está consistente."
#~ msgid "Favorites:" #~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Favoritos:" #~ msgstr "Não foi possível criar o mundo: O nome contém caracteres inválidos"
#~ msgid "START SERVER" #~ msgid "Show Public"
#~ msgstr "SERVIDOR" #~ msgstr "Exibir públicos"
#~ msgid "Name" #~ msgid "Show Favorites"
#~ msgstr "Nome" #~ msgstr "Exibir favoritos"
#~ msgid "Password" #~ msgid "Leave address blank to start a local server."
#~ msgstr "Senha" #~ msgstr "Deixe o endereço em branco para iniciar um servidor local."
#~ msgid "SETTINGS" #~ msgid "Create world"
#~ msgstr "CONFIGURAÇÕES" #~ msgstr "Criar o mundo"
#~ msgid "Preload item visuals" #~ msgid "Address required."
#~ msgstr "Precarga de elementos visuais" #~ msgstr "É necessário um endereço."
#~ msgid "Finite Liquid" #~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Líquido finito" #~ msgstr "Não foi possível excluir o mundo: Nenhum foi selecionado"
#~ msgid "SINGLE PLAYER" #~ msgid "Files to be deleted"
#~ msgstr "UM JOGADOR" #~ msgstr "Arquivos a serem excluídos"
#~ msgid "TEXTURE PACKS" #~ msgid "Cannot create world: No games found"
#~ msgstr "TEXTURAS" #~ msgstr "Não foi possivel criar o mundo: Não foi encontrado nenhum jogo"
#~ msgid "MODS" #~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "MÓDULOS" #~ msgstr "Não foi possível configurar o mundo: Nada foi selecionado"
#~ msgid "Add mod:" #~ msgid "Failed to delete all world files"
#~ msgstr "Adicionar módulo:" #~ msgstr "Não foi possível excluir todos os arquivos do mundo"
#~ msgid "Local install"
#~ msgstr "Instalação local"
#~ msgid ""
#~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods ainda não foram configurados.\n"
#~ "E eles serão ativados por padrão, quando você salvar a configuração."
#~ msgid ""
#~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods configurados não foram encontrados.\n"
#~ "Suas definições serão removidas quando você salvar a configuração."
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3623,65 +3783,87 @@ msgstr ""
#~ "- ESC: este menu\n" #~ "- ESC: este menu\n"
#~ "- T: bate-papo\n" #~ "- T: bate-papo\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "Não foi possível excluir todos os arquivos do mundo" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods configurados não foram encontrados.\n"
#~ "Suas definições serão removidas quando você salvar a configuração."
#~ msgid "Cannot configure world: Nothing selected" #~ msgid ""
#~ msgstr "Não foi possível configurar o mundo: Nada foi selecionado" #~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "Atenção: Alguns mods ainda não foram configurados.\n"
#~ "E eles serão ativados por padrão, quando você salvar a configuração."
#~ msgid "Cannot create world: No games found" #~ msgid "Local install"
#~ msgstr "Não foi possivel criar o mundo: Não foi encontrado nenhum jogo" #~ msgstr "Instalação local"
#~ msgid "Files to be deleted" #~ msgid "Add mod:"
#~ msgstr "Arquivos a serem excluídos" #~ msgstr "Adicionar módulo:"
#~ msgid "Cannot delete world: Nothing selected" #~ msgid "MODS"
#~ msgstr "Não foi possível excluir o mundo: Nenhum foi selecionado" #~ msgstr "MÓDULOS"
#~ msgid "Address required." #~ msgid "TEXTURE PACKS"
#~ msgstr "É necessário um endereço." #~ msgstr "TEXTURAS"
#~ msgid "Create world" #~ msgid "SINGLE PLAYER"
#~ msgstr "Criar o mundo" #~ msgstr "UM JOGADOR"
#~ msgid "Leave address blank to start a local server." #~ msgid "Finite Liquid"
#~ msgstr "Deixe o endereço em branco para iniciar um servidor local." #~ msgstr "Líquido finito"
#~ msgid "Show Favorites" #~ msgid "Preload item visuals"
#~ msgstr "Exibir favoritos" #~ msgstr "Precarga de elementos visuais"
#~ msgid "Show Public" #~ msgid "SETTINGS"
#~ msgstr "Exibir públicos" #~ msgstr "CONFIGURAÇÕES"
#~ msgid "Cannot create world: Name contains invalid characters" #~ msgid "Password"
#~ msgstr "Não foi possível criar o mundo: O nome contém caracteres inválidos" #~ msgstr "Senha"
#~ msgid "Warning: Configuration not consistent. " #~ msgid "Name"
#~ msgstr "Atenção: A configuração não está consistente." #~ msgstr "Nome"
#~ msgid "Configuration saved. " #~ msgid "START SERVER"
#~ msgstr "A configuração foi salva. " #~ msgstr "SERVIDOR"
#~ msgid "is required by:" #~ msgid "Favorites:"
#~ msgstr "é necessário para:" #~ msgstr "Favoritos:"
#~ msgid "Left click: Move all items, Right click: Move single item" #~ msgid "CLIENT"
#~ msgstr "Botão esquerdo: Move todos os itens. Botão direito: Move um item" #~ msgstr "CLIENTE"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Adicionar módulo"
#~ msgid "Remove selected mod"
#~ msgstr "Remover o módulo selecionado"
#~ msgid "EDIT GAME"
#~ msgstr "EDITAR JOGO"
#~ msgid "new game"
#~ msgstr "novo jogo"
#~ msgid "Mods:"
#~ msgstr "Módulos:"
#~ msgid "GAMES"
#~ msgstr "JOGOS"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "Gamemgr: Não foi possível copiar o mod \"$1\" para o jogo \"$2\""
#~ msgid "Game Name"
#~ msgstr "Nome do jogo"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "If enabled, "
#~ msgstr "Baixar" #~ msgstr "habilitado"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Para habilitar os sombreadores é necessário usar o driver OpenGL."
#, fuzzy #, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "If disabled "
#~ msgstr "Um jogador" #~ msgstr "Desabilitar PMs"
#~ msgid "Opaque Water"
#~ msgstr "Água opaca"
#, fuzzy
#~ msgid "Opaque Leaves"
#~ msgstr "Água opaca"

View File

@ -7,17 +7,18 @@ 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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-12-18 21:44+0200\n" "PO-Revision-Date: 2015-10-27 16:46+0200\n"
"Last-Translator: King Artur <david1989mail@yahoo.com>\n" "Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: Romanian <https://hosted.weblate.org/projects/minetest/"
"minetest/ro/>\n"
"Language: ro\n" "Language: ro\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"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=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " "Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
"20)) ? 1 : 2;\n" "20)) ? 1 : 2;\n"
"X-Generator: Weblate 1.7-dev\n" "X-Generator: Weblate 2.5-dev\n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:" msgid "An error occured in a Lua script, such as a mod:"
@ -425,7 +426,7 @@ msgid "Start Game"
msgstr "Începe jocul" msgstr "Începe jocul"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -454,6 +455,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "activat" msgstr "activat"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -610,7 +615,7 @@ msgstr ""
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "lipsă_tip_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -1438,7 +1443,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1589,7 +1594,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1722,7 +1731,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1858,7 +1867,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1938,21 +1948,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Dezactivează MP" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "activat" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2027,6 +2039,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2352,27 +2410,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2413,6 +2502,80 @@ msgstr "Mapgen"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Mapgen" msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2589,6 +2752,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2892,7 +3063,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3141,7 +3312,7 @@ msgstr "Lumină mai bună"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3349,6 +3520,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3515,87 +3690,95 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Game Name"
#~ msgstr "Numele jocului"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "Gamemgr: Nu se poate copia modul \"$1\" în jocul \"$2\""
#~ msgid "GAMES"
#~ msgstr "JOCURI"
#~ msgid "Mods:"
#~ msgstr "Moduri:"
#~ msgid "new game"
#~ msgstr "joc nou"
#~ msgid "EDIT GAME"
#~ msgstr "MODIFICĂ JOCUL"
#~ msgid "Remove selected mod"
#~ msgstr "Șterge modul selectat"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Adaugă modul"
#~ msgid "CLIENT"
#~ msgstr "CLIENT"
#~ msgid "Favorites:"
#~ msgstr "Preferate:"
#~ msgid "START SERVER"
#~ msgstr "DESCHIDE SERVERUL"
#~ msgid "Name"
#~ msgstr "Nume"
#~ msgid "Password"
#~ msgstr "Parolă"
#~ msgid "SETTINGS"
#~ msgstr "SETĂRI"
#~ msgid "Preload item visuals"
#~ msgstr "Pre-încarcă imaginile obiectelor"
#~ msgid "Finite Liquid"
#~ msgstr "Lichid finit"
#~ msgid "SINGLE PLAYER"
#~ msgstr "SINGLE PLAYER"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACHETE DE TEXTURĂ"
#~ msgid "MODS"
#~ msgstr "MODURI"
#~ msgid "Add mod:"
#~ msgstr "Adăugaţi mod:"
#~ msgid "Local install"
#~ msgstr "Instalare locală"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr ""
#~ "Click stânga: Mută toate obiectele, Click dreapta: Mută un singur obiect"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Opaque Leaves"
#~ msgstr "Descarcă" #~ msgstr "Apă opacă"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Pentru a permite shadere OpenGL trebuie să fie folosite."
#, fuzzy
#~ msgid "Reset singleplayer world"
#~ msgstr "Singleplayer"
#~ msgid "Opaque Water" #~ msgid "Opaque Water"
#~ msgstr "Apă opacă" #~ msgstr "Apă opacă"
#, fuzzy #, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "Reset singleplayer world"
#~ msgstr "Apă opacă" #~ msgstr "Singleplayer"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "Pentru a permite shadere OpenGL trebuie să fie folosite."
#, fuzzy
#~ msgid "Downloading"
#~ msgstr "Descarcă"
#~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr ""
#~ "Click stânga: Mută toate obiectele, Click dreapta: Mută un singur obiect"
#~ msgid "Local install"
#~ msgstr "Instalare locală"
#~ msgid "Add mod:"
#~ msgstr "Adăugaţi mod:"
#~ msgid "MODS"
#~ msgstr "MODURI"
#~ msgid "TEXTURE PACKS"
#~ msgstr "PACHETE DE TEXTURĂ"
#~ msgid "SINGLE PLAYER"
#~ msgstr "SINGLE PLAYER"
#~ msgid "Finite Liquid"
#~ msgstr "Lichid finit"
#~ msgid "Preload item visuals"
#~ msgstr "Pre-încarcă imaginile obiectelor"
#~ msgid "SETTINGS"
#~ msgstr "SETĂRI"
#~ msgid "Password"
#~ msgstr "Parolă"
#~ msgid "Name"
#~ msgstr "Nume"
#~ msgid "START SERVER"
#~ msgstr "DESCHIDE SERVERUL"
#~ msgid "Favorites:"
#~ msgstr "Preferate:"
#~ msgid "CLIENT"
#~ msgstr "CLIENT"
#~ msgid "<<-- Add mod"
#~ msgstr "<<-- Adaugă modul"
#~ msgid "Remove selected mod"
#~ msgstr "Șterge modul selectat"
#~ msgid "EDIT GAME"
#~ msgstr "MODIFICĂ JOCUL"
#~ msgid "new game"
#~ msgstr "joc nou"
#~ msgid "Mods:"
#~ msgstr "Moduri:"
#~ msgid "GAMES"
#~ msgstr "JOCURI"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "Gamemgr: Nu se poate copia modul \"$1\" în jocul \"$2\""
#~ msgid "Game Name"
#~ msgstr "Numele jocului"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "activat"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Dezactivează MP"

File diff suppressed because it is too large Load Diff

View File

@ -6,9 +6,9 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: 0.1.2\n" "Project-Id-Version: 0.1.2\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-07-14 16:48+0200\n" "PO-Revision-Date: 2015-10-27 16:46+0200\n"
"Last-Translator: Michal Čihař <michal@cihar.com>\n" "Last-Translator: PilzAdam <PilzAdam@minetest.net>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/minetest/" "Language-Team: Turkish <https://hosted.weblate.org/projects/minetest/"
"minetest/tr/>\n" "minetest/tr/>\n"
"Language: tr\n" "Language: tr\n"
@ -16,17 +16,17 @@ 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 2.4-dev\n" "X-Generator: Weblate 2.5-dev\n"
"X-Poedit-Language: Turkish\n" "X-Poedit-Language: Turkish\n"
"X-Poedit-Basepath: \n" "X-Poedit-Basepath: \n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:" msgid "An error occured in a Lua script, such as a mod:"
msgstr "" msgstr "Lua scriptte bir hata meydana geldi:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured:" msgid "An error occured:"
msgstr "" msgstr "Bir hata oluştu:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy #, fuzzy
@ -38,13 +38,12 @@ msgid "Ok"
msgstr "Tamam" msgstr "Tamam"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Reconnect" msgid "Reconnect"
msgstr "Bağlan" msgstr "Bağlan"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
msgstr "" msgstr "Bu sunucu yeniden bağlanma isteğinde bulundu:"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."
@ -52,27 +51,29 @@ msgstr "Yükleniyor..."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Protocol version mismatch. " msgid "Protocol version mismatch. "
msgstr "" msgstr "Protokol sürümü uyumsuz. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. " msgid "Server enforces protocol version $1. "
msgstr "" msgstr "Sunucu protokol sürümü $1 istiyor. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server supports protocol versions between $1 and $2. " msgid "Server supports protocol versions between $1 and $2. "
msgstr "" msgstr "Bu sunucu $1 ve $2 arası tüm protokol sürümlerini destekler. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Try reenabling public serverlist and check your internet connection." msgid "Try reenabling public serverlist and check your internet connection."
msgstr "" msgstr ""
"Sunucu listesini tekrar etkinleştirmeyi deneyin ve internet bağlantınızı "
"kontrol edin."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We only support protocol version $1." msgid "We only support protocol version $1."
msgstr "" msgstr "Yalnızca $1 protokol sürümü desteklenmektedir."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We support protocol versions between version $1 and $2." msgid "We support protocol versions between version $1 and $2."
msgstr "" msgstr "Yalnızca $1 ve $2 arası protokol sürümleri desteklenmektedir."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua
@ -101,6 +102,8 @@ msgid ""
"Failed to enable mod \"$1\" as it contains disallowed characters. Only " "Failed to enable mod \"$1\" as it contains disallowed characters. Only "
"chararacters [a-z0-9_] are allowed." "chararacters [a-z0-9_] are allowed."
msgstr "" msgstr ""
"Geçersiz karakterler içerdiği için \"$1\" modu etkinleştirilemiyor. İzin "
"verilen karakterler [a-z0-9_]."
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide Game" msgid "Hide Game"
@ -288,9 +291,8 @@ msgid "Previous Contributors"
msgstr "Katkı sağlayanlar" msgstr "Katkı sağlayanlar"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Previous Core Developers" msgid "Previous Core Developers"
msgstr "Ana geliştiriciler" msgstr "İlk geliştiriciler"
#: builtin/mainmenu/tab_mods.lua #: builtin/mainmenu/tab_mods.lua
msgid "Installed Mods:" msgid "Installed Mods:"
@ -417,35 +419,37 @@ msgid "Start Game"
msgstr "Oyunu Başlat" msgstr "Oyunu Başlat"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "(No description of setting given)" msgid "(No description of setting given)"
msgstr "" msgstr "(Açıklama bilgisi verilmedi)"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Browse" msgid "Browse"
msgstr "" msgstr "Seç"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Change keys" msgid "Change keys"
msgstr "Tuşları değiştir" msgstr "Tuşları değiştir"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Disabled" msgid "Disabled"
msgstr "Paketi Kapat" msgstr "Paketi Kapat"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Edit" msgid "Edit"
msgstr "" msgstr "Düzenle"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Enabled" msgid "Enabled"
msgstr "Etkinleştirildi" msgstr "Etkinleştirildi"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -453,7 +457,6 @@ msgid ""
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Games" msgid "Games"
msgstr "Oyun" msgstr "Oyun"
@ -598,7 +601,7 @@ msgstr "Belirtilen dünya konumu yok:"
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "needs_fallback_font" msgstr "no"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -1434,7 +1437,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1584,7 +1587,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1717,7 +1724,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1856,7 +1863,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1936,21 +1944,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Paketi Kapat" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "Etkinleştirildi" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2025,6 +2035,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2350,27 +2406,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2411,6 +2498,81 @@ msgstr "Mapgen"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Mapgen" msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Mapgen"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Parallax Occlusion"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2587,6 +2749,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2897,7 +3067,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3147,7 +3317,7 @@ msgstr "Pürüzsüz ışıklandırma"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3356,6 +3526,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3529,78 +3703,89 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Rendering:" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Kaplama:" #~ msgstr "Tek kişilik dünyayı sıfırlamak istediğinizden emin misiniz ?"
#~ msgid "Restart minetest for driver change to take effect" #~ msgid "Bilinear Filter"
#~ msgstr "Değişikliklerin etkin olabilmesi için minetesti yeniden başlatın" #~ msgstr "İki yönlü süzme"
#~ msgid "Numpad "
#~ msgstr "Numpad "
#~ msgid " MB/s"
#~ msgstr " MB/s"
#~ msgid " KB/s"
#~ msgstr " KB/s"
#~ msgid "please wait..."
#~ msgstr "lütfen bekleyin..."
#~ msgid "Downloading"
#~ msgstr "İndiriliyor"
#~ msgid "Trilinear Filter"
#~ msgstr "Üç yönlü süzme"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Touchthreshold (px)"
#~ msgid "Touch free target"
#~ msgstr "Touch free target"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "OpenGL sürücüleri seçilmeden Shader etkinleştirilemez."
#~ msgid "Texturing:"
#~ msgstr "Doku:"
#, fuzzy
#~ msgid "Simple Leaves"
#~ msgstr "Dalgalanan Yapraklar"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Ölçeklendirme menülere işlendi:"
#~ msgid "Reset singleplayer world"
#~ msgstr "Tek kişilik oyunu sıfırlayın"
#~ msgid "Opaque Water"
#~ msgstr "Şeffaf su"
#, fuzzy
#~ msgid "Opaque Leaves"
#~ msgstr "Şeffaf su"
#~ msgid "No!!!"
#~ msgstr "Hayır!!!"
#~ msgid "No Mipmap"
#~ msgstr "Mipmap kapalı"
#, fuzzy
#~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap Aniso. Süzgeci"
#~ msgid "Mipmap"
#~ msgstr "Mipmap"
#, fuzzy #, fuzzy
#~ msgid "Fancy Leaves" #~ msgid "Fancy Leaves"
#~ msgstr "Şık ağaçlar" #~ msgstr "Şık ağaçlar"
#~ msgid "Bilinear Filter" #~ msgid "Mipmap"
#~ msgstr "İki yönlü süzme" #~ msgstr "Mipmap"
#~ msgid "Are you sure to reset your singleplayer world?" #, fuzzy
#~ msgstr "Tek kişilik dünyayı sıfırlamak istediğinizden emin misiniz ?" #~ msgid "Mipmap + Aniso. Filter"
#~ msgstr "Mipmap Aniso. Süzgeci"
#~ msgid "No Mipmap"
#~ msgstr "Mipmap kapalı"
#~ msgid "No!!!"
#~ msgstr "Hayır!!!"
#, fuzzy
#~ msgid "Opaque Leaves"
#~ msgstr "Şeffaf su"
#~ msgid "Opaque Water"
#~ msgstr "Şeffaf su"
#~ msgid "Reset singleplayer world"
#~ msgstr "Tek kişilik oyunu sıfırlayın"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Ölçeklendirme menülere işlendi:"
#, fuzzy
#~ msgid "Simple Leaves"
#~ msgstr "Dalgalanan Yapraklar"
#~ msgid "Texturing:"
#~ msgstr "Doku:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "OpenGL sürücüleri seçilmeden Shader etkinleştirilemez."
#~ msgid "Touch free target"
#~ msgstr "Touch free target"
#~ msgid "Touchthreshold (px)"
#~ msgstr "Touchthreshold (px)"
#~ msgid "Trilinear Filter"
#~ msgstr "Üç yönlü süzme"
#~ msgid "Downloading"
#~ msgstr "İndiriliyor"
#~ msgid "please wait..."
#~ msgstr "lütfen bekleyin..."
#~ msgid " KB/s"
#~ msgstr " KB/s"
#~ msgid " MB/s"
#~ msgstr " MB/s"
#~ msgid "Numpad "
#~ msgstr "Numpad "
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "Değişikliklerin etkin olabilmesi için minetesti yeniden başlatın"
#~ msgid "Rendering:"
#~ msgstr "Kaplama:"
#, fuzzy
#~ msgid "If enabled, "
#~ msgstr "Etkinleştirildi"
#, fuzzy
#~ msgid "If disabled "
#~ msgstr "Paketi Kapat"
#~ msgid "\""
#~ msgstr "\""

View File

@ -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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-09-21 23:18+0200\n" "PO-Revision-Date: 2015-09-21 23:18+0200\n"
"Last-Translator: Olexandr <me.olexandr.kovalchuk@gmail.com>\n" "Last-Translator: Olexandr <me.olexandr.kovalchuk@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/minetest/" "Language-Team: Ukrainian <https://hosted.weblate.org/projects/minetest/"
@ -420,7 +420,7 @@ msgid "Start Game"
msgstr "Почати гру" msgstr "Почати гру"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
@ -449,6 +449,10 @@ msgstr ""
msgid "Enabled" msgid "Enabled"
msgstr "Увімкнено" msgstr "Увімкнено"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1450,7 +1454,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1600,7 +1604,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1731,7 +1739,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1869,7 +1877,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1949,21 +1958,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "Вимкнути багатокористувацьку гру" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "Увімкнено" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2038,6 +2049,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2363,27 +2420,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2424,6 +2512,81 @@ msgstr "Генератор карти"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "Генератор карти" msgstr "Генератор карти"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "Генератор карти"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "Генератор карти"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "Оклюзія паралакса"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2600,6 +2763,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2909,7 +3080,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3158,7 +3329,7 @@ msgstr "Рівне освітлення"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3366,6 +3537,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3533,99 +3708,107 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgid "Game Name" #~ msgstr "Ви впевнені, що бажаєте скинути свій світ однокористувацької гри?"
#~ msgstr "Гра"
#~ msgid "Favorites:" #~ msgid "No!!!"
#~ msgstr "Улюблені:" #~ msgstr "Ні!!!"
#~ msgid "Opaque Leaves"
#~ msgstr "Непрозоре листя"
#~ msgid "Opaque Water"
#~ msgstr "Непрозора вода"
#~ msgid "Reset singleplayer world"
#~ msgstr "Скинути світ однокористувацької гри"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "Масштабування елементів меню: "
#~ msgid "Simple Leaves"
#~ msgstr "Просте листя"
#~ msgid "Texturing:"
#~ msgstr "Текстурування:"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr ""
#~ "Для того, щоб увімкнути шейдери, потрібно використовувати двайвер OpenGL."
#, fuzzy #, fuzzy
#~ msgid "Password" #~ msgid "Downloading"
#~ msgstr "Старий Пароль" #~ msgstr "Вниз"
#~ msgid "Preload item visuals"
#~ msgstr "Попереднє завантаження зображень"
#, fuzzy
#~ msgid "Finite Liquid"
#~ msgstr "Кінцеві рідини"
#~ msgid "Failed to delete all world files"
#~ msgstr "Помилка при видаленні файлів світу"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Неможливо налаштувати світ: Нічого не вибрано"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Неможливо створити світ: Не знайдено жодної гри"
#~ msgid "Files to be deleted"
#~ msgstr "Файлів, що підлягають видаленню"
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Неможливо видалити світ: Нічого не вибрано"
#~ msgid "Address required."
#~ msgstr "Адреса необхідна."
#~ msgid "Create world"
#~ msgstr "Створити світ"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Залишіть адресу незаповненою для створення локального серверу."
#~ msgid "Show Favorites"
#~ msgstr "Показати Улюблені"
#~ msgid "Show Public"
#~ msgstr "Показати Публічні"
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Неможливо створити світ: Ім'я містить недопустимі символи"
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Попередження: Помилкова конфігурація. "
#~ msgid "Configuration saved. "
#~ msgstr "Налаштування Збережено. "
#~ msgid "is required by:"
#~ msgstr "необхідний для:"
#~ msgid "Left click: Move all items, Right click: Move single item" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "" #~ msgstr ""
#~ "Ліва кнопка миші: Перемістити усі предмети, Права кнопка миші: " #~ "Ліва кнопка миші: Перемістити усі предмети, Права кнопка миші: "
#~ "Перемістити один предмет" #~ "Перемістити один предмет"
#~ msgid "is required by:"
#~ msgstr "необхідний для:"
#~ msgid "Configuration saved. "
#~ msgstr "Налаштування Збережено. "
#~ msgid "Warning: Configuration not consistent. "
#~ msgstr "Попередження: Помилкова конфігурація. "
#~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "Неможливо створити світ: Ім'я містить недопустимі символи"
#~ msgid "Show Public"
#~ msgstr "Показати Публічні"
#~ msgid "Show Favorites"
#~ msgstr "Показати Улюблені"
#~ msgid "Leave address blank to start a local server."
#~ msgstr "Залишіть адресу незаповненою для створення локального серверу."
#~ msgid "Create world"
#~ msgstr "Створити світ"
#~ msgid "Address required."
#~ msgstr "Адреса необхідна."
#~ msgid "Cannot delete world: Nothing selected"
#~ msgstr "Неможливо видалити світ: Нічого не вибрано"
#~ msgid "Files to be deleted"
#~ msgstr "Файлів, що підлягають видаленню"
#~ msgid "Cannot create world: No games found"
#~ msgstr "Неможливо створити світ: Не знайдено жодної гри"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "Неможливо налаштувати світ: Нічого не вибрано"
#~ msgid "Failed to delete all world files"
#~ msgstr "Помилка при видаленні файлів світу"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "Finite Liquid"
#~ msgstr "Вниз" #~ msgstr "Кінцеві рідини"
#~ msgid "To enable shaders the OpenGL driver needs to be used." #~ msgid "Preload item visuals"
#~ msgstr "" #~ msgstr "Попереднє завантаження зображень"
#~ "Для того, щоб увімкнути шейдери, потрібно використовувати двайвер OpenGL."
#~ msgid "Texturing:" #, fuzzy
#~ msgstr "Текстурування:" #~ msgid "Password"
#~ msgstr "Старий Пароль"
#~ msgid "Simple Leaves" #~ msgid "Favorites:"
#~ msgstr "Просте листя" #~ msgstr "Улюблені:"
#~ msgid "Scaling factor applied to menu elements: " #, fuzzy
#~ msgstr "Масштабування елементів меню: " #~ msgid "Game Name"
#~ msgstr "Гра"
#~ msgid "Reset singleplayer world" #, fuzzy
#~ msgstr "Скинути світ однокористувацької гри" #~ msgid "If enabled, "
#~ msgstr "Увімкнено"
#~ msgid "Opaque Water" #, fuzzy
#~ msgstr "Непрозора вода" #~ msgid "If disabled "
#~ msgstr "Вимкнути багатокористувацьку гру"
#~ msgid "Opaque Leaves"
#~ msgstr "Непрозоре листя"
#~ msgid "No!!!"
#~ msgstr "Ні!!!"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "Ви впевнені, що бажаєте скинути свій світ однокористувацької гри?"

View File

@ -7,16 +7,17 @@ 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: 2015-10-24 20:28+0200\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-04-19 02:00+0800\n" "PO-Revision-Date: 2015-11-07 08:04+0000\n"
"Last-Translator: Ang Weijie <fishyWET@hotmail.com>\n" "Last-Translator: Jun Zhang <zhangjunphy@gmail.com>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: Chinese (China) <https://hosted.weblate.org/projects/minetest/"
"minetest/zh_CN/>\n"
"Language: zh_CN\n" "Language: zh_CN\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"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=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 1.7-dev\n" "X-Generator: Weblate 2.5-dev\n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured in a Lua script, such as a mod:" msgid "An error occured in a Lua script, such as a mod:"
@ -24,7 +25,7 @@ msgstr ""
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured:" msgid "An error occured:"
msgstr "" msgstr "错误:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy #, fuzzy
@ -36,13 +37,12 @@ msgid "Ok"
msgstr "确定" msgstr "确定"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Reconnect" msgid "Reconnect"
msgstr "连接" msgstr "重新连接"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
msgstr "" msgstr "服务器请求重新连接:"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."
@ -50,27 +50,27 @@ msgstr "载入中..."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Protocol version mismatch. " msgid "Protocol version mismatch. "
msgstr "" msgstr "协议版本不匹配. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. " msgid "Server enforces protocol version $1. "
msgstr "" msgstr "服务器要求协议版本为 $1. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server supports protocol versions between $1 and $2. " msgid "Server supports protocol versions between $1 and $2. "
msgstr "" msgstr "服务器支持的协议版本为 $1 至 $2. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Try reenabling public serverlist and check your internet connection." msgid "Try reenabling public serverlist and check your internet connection."
msgstr "" 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 "我们只支持协议版本 $1."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We support protocol versions between version $1 and $2." msgid "We support protocol versions between version $1 and $2."
msgstr "" msgstr "我们支持的协议版本为 $1 至 $2."
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/dlg_create_world.lua
#: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/dlg_rename_modpack.lua builtin/mainmenu/tab_settings.lua
@ -98,7 +98,7 @@ msgstr "全部启用"
msgid "" msgid ""
"Failed to enable mod \"$1\" as it contains disallowed characters. Only " "Failed to enable mod \"$1\" as it contains disallowed characters. Only "
"chararacters [a-z0-9_] are allowed." "chararacters [a-z0-9_] are allowed."
msgstr "" msgstr "无法启用 MOD \"$1\": 含有不支持的字符. 允许的字符为 [a-z0-9_]."
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide Game" msgid "Hide Game"
@ -206,13 +206,12 @@ msgid "Rename Modpack:"
msgstr "重命名MOD包" msgstr "重命名MOD包"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
#, fuzzy
msgid "" msgid ""
"\n" "\n"
"Install Mod: unsupported filetype \"$1\" or broken archive" "Install Mod: unsupported filetype \"$1\" or broken archive"
msgstr "" msgstr ""
"\n" "\n"
"安装MOD不支持的文件类型“$1“" "安装MOD不支持的文件类型“$1“或文件损坏"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "Failed to install $1 to $2" msgid "Failed to install $1 to $2"
@ -235,9 +234,8 @@ msgid "Close store"
msgstr "关闭商店" msgstr "关闭商店"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
#, fuzzy
msgid "Downloading $1, please wait..." msgid "Downloading $1, please wait..."
msgstr "请稍候..." msgstr "正在下载 $1, 请稍候..."
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Install" msgid "Install"
@ -423,16 +421,16 @@ msgid "Start Game"
msgstr "启动游戏" msgstr "启动游戏"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"" msgid "\"$1\" is not a valid flag."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "(No description of setting given)" msgid "(No description of setting given)"
msgstr "" msgstr "(没有关于此设置的信息)"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Browse" msgid "Browse"
msgstr "" msgstr "浏览"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Change keys" msgid "Change keys"
@ -445,13 +443,17 @@ msgstr "禁用MOD包"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Edit" msgid "Edit"
msgstr "" msgstr "设置"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy #, fuzzy
msgid "Enabled" msgid "Enabled"
msgstr "启用" msgstr "启用"
#: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
@ -1437,7 +1439,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Controls size of deserts and beaches in Mapgen V6.\n" "Controls size of deserts and beaches in Mapgen v6.\n"
"When snowbiomes are enabled 'mgv6_freq_desert' is ignored." "When snowbiomes are enabled 'mgv6_freq_desert' is ignored."
msgstr "" msgstr ""
@ -1588,7 +1590,11 @@ msgid "Dump the mapgen debug infos."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable a bit lower water surface, so it doesn't " msgid ""
"Enable a bit lower water surface, so it doesn't \"fill\" the node "
"completely.\n"
"Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1721,7 +1727,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Fast movement (via use key).\n" "Fast movement (via use key).\n"
"This requires the " "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1860,7 +1866,8 @@ msgid ""
"Global map generation attributes.\n" "Global map generation attributes.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1940,21 +1947,23 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If disabled " "If disabled \"use\" key is used to fly fast if both fly and fast mode are "
msgstr "禁用MOD包" "enabled."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"If enabled together with fly mode, player is able to fly through solid " "If enabled together with fly mode, player is able to fly through solid "
"nodes.\n" "nodes.\n"
"This requires the " "This requires the \"noclip\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy msgid ""
msgid "If enabled, " "If enabled, \"use\" key instead of \"sneak\" key is used for climbing down "
msgstr "启用" "and descending."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -2029,6 +2038,52 @@ msgstr ""
msgid "Item entity TTL" msgid "Item entity TTL"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by j_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Julia set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: W value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: X value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Y value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Julia set: Z value determining the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #, fuzzy
msgid "Jump key" msgid "Jump key"
@ -2354,27 +2409,58 @@ msgstr ""
msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles." msgid "Makes DirectX work with LuaJIT. Disable if it causes troubles."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: (X,Y,Z) offsets from world centre.\n"
"Range roughly -2 to 2, multiply by m_scale for offsets in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mandelbrot set: Approximate (X,Y,Z) scales in nodes."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: Iterations of the recursive function.\n"
"Controls scale of finest detail."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\n"
"Range roughly -2 to 2."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Map directory" msgid "Map directory"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V6.\n" "Map generation attributes specific to Mapgen fractal.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is " "'julia' selects a julia set to be generated instead of a mandelbrot set.\n"
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Map generation attributes specific to Mapgen V7.\n" "Map generation attributes specific to Mapgen v6.\n"
"When snowbiomes are enabled jungles are enabled and the jungles flag is "
"ignored.\n"
"Flags that are not specified in the flag string are not modified from the "
"default.\n"
"Flags starting with \"no\" are used to explicitly disable them."
msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Map generation attributes specific to Mapgen v7.\n"
"'ridges' are the rivers.\n" "'ridges' are the rivers.\n"
"Flags that are not specified in the flag string are not modified from the " "Flags that are not specified in the flag string are not modified from the "
"default.\n" "default.\n"
"Flags starting with " "Flags starting with \"no\" are used to explicitly disable them."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -2415,6 +2501,81 @@ msgstr "地图生成器"
msgid "Mapgen flags" msgid "Mapgen flags"
msgstr "地图生成器" msgstr "地图生成器"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal"
msgstr "地图生成器"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal cave2 noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal filler depth noise parameters"
msgstr ""
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags"
msgstr "地图生成器"
#: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations"
msgstr "视差贴图"
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia x"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia y"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal julia z"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot iterations"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot offset"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot scale"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal mandelbrot slice w"
msgstr ""
#: src/settings_translation_file.cpp
msgid "Mapgen fractal seabed noise parameters"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen heat blend noise parameters" msgid "Mapgen heat blend noise parameters"
msgstr "" msgstr ""
@ -2591,6 +2752,14 @@ msgstr ""
msgid "Maximum FPS when game is paused." msgid "Maximum FPS when game is paused."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid ""
"Maximum distance above water level for player spawn.\n"
"Larger values result in spawn points closer to (x = 0, z = 0).\n"
"Smaller values may result in a suitable spawn point not being found,\n"
"resulting in a spawn at (0, 0, 0) possibly buried underground."
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Maximum forceloaded blocks" msgid "Maximum forceloaded blocks"
msgstr "" msgstr ""
@ -2900,7 +3069,7 @@ 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"
"This requires the " "This requires the \"fly\" privilege on the server."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -3150,7 +3319,7 @@ msgstr "平滑光照"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"Smooths camera when moving and looking arround.\n" "Smooths camera when moving and looking around.\n"
"Useful for recording videos." "Useful for recording videos."
msgstr "" msgstr ""
@ -3359,6 +3528,10 @@ msgstr ""
msgid "Vertical screen synchronization." msgid "Vertical screen synchronization."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp
msgid "Vertical spawn range"
msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Video driver" msgid "Video driver"
msgstr "" msgstr ""
@ -3532,85 +3705,97 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#~ msgid "Restart minetest for driver change to take effect" #~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "重启minetest让驱动变化生效" #~ msgstr "你确定要重置您的单人世界吗?"
#~ msgid "Game Name" #, fuzzy
#~ msgstr "游戏名" #~ msgid "Fancy Leaves"
#~ msgstr "花式树"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\"" #~ msgid "No!!!"
#~ msgstr "游戏管理: 无法复制MOD“$1”到游戏“$2”" #~ msgstr "不!!!"
#~ msgid "GAMES" #, fuzzy
#~ msgstr "游戏" #~ msgid "Opaque Leaves"
#~ msgstr "不透明的水"
#~ msgid "Mods:" #~ msgid "Opaque Water"
#~ msgstr "MODS" #~ msgstr "不透明的水"
#~ msgid "new game" #, fuzzy
#~ msgstr "新建游戏" #~ msgid "Reset singleplayer world"
#~ msgstr "重置单人游戏"
#~ msgid "EDIT GAME" #~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "编辑游戏" #~ msgstr "菜单元素应用缩放因子"
#~ msgid "Remove selected mod" #, fuzzy
#~ msgstr "删除选中MOD" #~ msgid "Simple Leaves"
#~ msgstr "摇动的叶子"
#~ msgid "<<-- Add mod" #~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "<<-- 添加MOD" #~ msgstr "启用着色器需要使用OpenGL驱动。"
#~ msgid "CLIENT" #~ msgid "Touch free target"
#~ msgstr "客户端" #~ msgstr "自由触摸目标"
#~ msgid "Favorites:" #~ msgid "Touchthreshold (px)"
#~ msgstr "最爱的服务器:" #~ msgstr "触控阈值(像素)"
#~ msgid "START SERVER" #, fuzzy
#~ msgstr "启动服务器" #~ msgid "Downloading"
#~ msgstr "下载中"
#~ msgid "Name" #~ msgid " KB/s"
#~ msgstr "名字" #~ msgstr "千字节/秒"
#~ msgid "Password" #~ msgid " MB/s"
#~ msgstr "密码" #~ msgstr "兆字节/秒"
#~ msgid "SETTINGS" #~ msgid "Left click: Move all items, Right click: Move single item"
#~ msgstr "设置" #~ msgstr "左键:移动所有物品,右键:移动单个物品"
#~ msgid "Preload item visuals" #~ msgid "is required by:"
#~ msgstr "预先加载物品图像" #~ msgstr "被需要:"
#~ msgid "Finite Liquid" #~ msgid "Configuration saved. "
#~ msgstr "液体有限延伸" #~ msgstr "配置已保存。 "
#~ msgid "SINGLE PLAYER" #~ msgid "Warning: Configuration not consistent. "
#~ msgstr "单人游戏" #~ msgstr "警告:配置不一致。 "
#~ msgid "TEXTURE PACKS" #~ msgid "Cannot create world: Name contains invalid characters"
#~ msgstr "材质包" #~ msgstr "无法创建世界:名字包含非法字符"
#~ msgid "MODS" #~ msgid "Show Public"
#~ msgstr "MODS" #~ msgstr "显示公共"
#~ msgid "Add mod:" #~ msgid "Show Favorites"
#~ msgstr "添加MOD" #~ msgstr "显示最爱"
#~ msgid "Local install" #~ msgid "Leave address blank to start a local server."
#~ msgstr "本地安装" #~ msgstr "地址栏留空可启动本地服务器。"
#~ msgid "" #~ msgid "Create world"
#~ "Warning: Some mods are not configured yet.\n" #~ msgstr "创造世界"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "警告一些MOD仍未设定。\n"
#~ "它们会在你保存配置的时候自动启用。 "
#~ msgid "" #~ msgid "Address required."
#~ "Warning: Some configured mods are missing.\n" #~ msgstr "需要地址。"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr "" #~ msgid "Cannot delete world: Nothing selected"
#~ "警告缺少一些设定了的MOD。\n" #~ msgstr "无法删除世界:没有选择世界"
#~ "它们的设置会在你保存配置的时候被移除。 "
#~ msgid "Files to be deleted"
#~ msgstr "将被删除的文件"
#~ msgid "Cannot create world: No games found"
#~ msgstr "无法创造世界:未找到游戏模式"
#~ msgid "Cannot configure world: Nothing selected"
#~ msgstr "无法配置世界:没有选择世界"
#~ msgid "Failed to delete all world files"
#~ msgstr "无法删除所有该世界的文件"
#~ msgid "" #~ msgid ""
#~ "Default Controls:\n" #~ "Default Controls:\n"
@ -3638,94 +3823,90 @@ msgstr ""
#~ "ESC菜单\n" #~ "ESC菜单\n"
#~ "T聊天\n" #~ "T聊天\n"
#~ msgid "Failed to delete all world files" #~ msgid ""
#~ msgstr "无法删除所有该世界的文件" #~ "Warning: Some configured mods are missing.\n"
#~ "Their setting will be removed when you save the configuration. "
#~ msgstr ""
#~ "警告缺少一些设定了的MOD。\n"
#~ "它们的设置会在你保存配置的时候被移除。 "
#~ msgid "Cannot configure world: Nothing selected" #~ msgid ""
#~ msgstr "无法配置世界:没有选择世界" #~ "Warning: Some mods are not configured yet.\n"
#~ "They will be enabled by default when you save the configuration. "
#~ msgstr ""
#~ "警告一些MOD仍未设定。\n"
#~ "它们会在你保存配置的时候自动启用。 "
#~ msgid "Cannot create world: No games found" #~ msgid "Local install"
#~ msgstr "无法创造世界:未找到游戏模式" #~ msgstr "本地安装"
#~ msgid "Files to be deleted" #~ msgid "Add mod:"
#~ msgstr "将被删除的文件" #~ msgstr "添加MOD"
#~ msgid "Cannot delete world: Nothing selected" #~ msgid "MODS"
#~ msgstr "无法删除世界:没有选择世界" #~ msgstr "MODS"
#~ msgid "Address required." #~ msgid "TEXTURE PACKS"
#~ msgstr "需要地址。" #~ msgstr "材质包"
#~ msgid "Create world" #~ msgid "SINGLE PLAYER"
#~ msgstr "创造世界" #~ msgstr "单人游戏"
#~ msgid "Leave address blank to start a local server." #~ msgid "Finite Liquid"
#~ msgstr "地址栏留空可启动本地服务器。" #~ msgstr "液体有限延伸"
#~ msgid "Show Favorites" #~ msgid "Preload item visuals"
#~ msgstr "显示最爱" #~ msgstr "预先加载物品图像"
#~ msgid "Show Public" #~ msgid "SETTINGS"
#~ msgstr "显示公共" #~ msgstr "设置"
#~ msgid "Cannot create world: Name contains invalid characters" #~ msgid "Password"
#~ msgstr "无法创建世界:名字包含非法字符" #~ msgstr "密码"
#~ msgid "Warning: Configuration not consistent. " #~ msgid "Name"
#~ msgstr "警告:配置不一致。 " #~ msgstr "名字"
#~ msgid "Configuration saved. " #~ msgid "START SERVER"
#~ msgstr "配置已保存。 " #~ msgstr "启动服务器"
#~ msgid "is required by:" #~ msgid "Favorites:"
#~ msgstr "被需要" #~ msgstr "最爱的服务器"
#~ msgid "Left click: Move all items, Right click: Move single item" #~ msgid "CLIENT"
#~ msgstr "左键:移动所有物品,右键:移动单个物品" #~ msgstr "客户端"
#~ msgid " MB/s" #~ msgid "<<-- Add mod"
#~ msgstr "兆字节/秒" #~ msgstr "<<-- 添加MOD"
#~ msgid " KB/s" #~ msgid "Remove selected mod"
#~ msgstr "千字节/秒" #~ msgstr "删除选中MOD"
#~ msgid "EDIT GAME"
#~ msgstr "编辑游戏"
#~ msgid "new game"
#~ msgstr "新建游戏"
#~ msgid "Mods:"
#~ msgstr "MODS"
#~ msgid "GAMES"
#~ msgstr "游戏"
#~ msgid "Gamemgr: Unable to copy mod \"$1\" to game \"$2\""
#~ msgstr "游戏管理: 无法复制MOD“$1”到游戏“$2”"
#~ msgid "Game Name"
#~ msgstr "游戏名"
#~ msgid "Restart minetest for driver change to take effect"
#~ msgstr "重启minetest让驱动变化生效"
#, fuzzy #, fuzzy
#~ msgid "Downloading" #~ msgid "If enabled, "
#~ msgstr "下载中" #~ msgstr "启用"
#~ msgid "Touchthreshold (px)"
#~ msgstr "触控阈值(像素)"
#~ msgid "Touch free target"
#~ msgstr "自由触摸目标"
#~ msgid "To enable shaders the OpenGL driver needs to be used."
#~ msgstr "启用着色器需要使用OpenGL驱动。"
#, fuzzy #, fuzzy
#~ msgid "Simple Leaves" #~ msgid "If disabled "
#~ msgstr "摇动的叶子" #~ msgstr "禁用MOD包"
#~ msgid "Scaling factor applied to menu elements: "
#~ msgstr "菜单元素应用缩放因子"
#, fuzzy
#~ msgid "Reset singleplayer world"
#~ msgstr "重置单人游戏"
#~ msgid "Opaque Water"
#~ msgstr "不透明的水"
#, fuzzy
#~ msgid "Opaque Leaves"
#~ msgstr "不透明的水"
#~ msgid "No!!!"
#~ msgstr "不!!!"
#, fuzzy
#~ msgid "Fancy Leaves"
#~ msgstr "花式树"
#~ msgid "Are you sure to reset your singleplayer world?"
#~ msgstr "你确定要重置您的单人世界吗?"

File diff suppressed because it is too large Load Diff

View File

@ -160,6 +160,7 @@ find_package(Lua REQUIRED)
find_package(GMP REQUIRED) find_package(GMP REQUIRED)
option(ENABLE_LEVELDB "Enable LevelDB backend" TRUE) option(ENABLE_LEVELDB "Enable LevelDB backend" TRUE)
set(USE_LEVELDB FALSE) set(USE_LEVELDB FALSE)
@ -322,6 +323,7 @@ set(common_SRCS
areastore.cpp areastore.cpp
ban.cpp ban.cpp
cavegen.cpp cavegen.cpp
chat.cpp
clientiface.cpp clientiface.cpp
collision.cpp collision.cpp
content_abm.cpp content_abm.cpp
@ -387,6 +389,7 @@ set(common_SRCS
sound.cpp sound.cpp
staticobject.cpp staticobject.cpp
subgame.cpp subgame.cpp
terminal_chat_console.cpp
tool.cpp tool.cpp
treegen.cpp treegen.cpp
version.cpp version.cpp
@ -431,7 +434,6 @@ set(client_SRCS
${sound_SRCS} ${sound_SRCS}
${client_network_SRCS} ${client_network_SRCS}
camera.cpp camera.cpp
chat.cpp
client.cpp client.cpp
clientmap.cpp clientmap.cpp
clientmedia.cpp clientmedia.cpp
@ -558,6 +560,9 @@ if(BUILD_CLIENT)
${CGUITTFONT_LIBRARY} ${CGUITTFONT_LIBRARY}
) )
endif() endif()
if (USE_CURSES)
target_link_libraries(${PROJECT_NAME} ${CURSES_LIBRARIES})
endif()
if (USE_LEVELDB) if (USE_LEVELDB)
target_link_libraries(${PROJECT_NAME} ${LEVELDB_LIBRARY}) target_link_libraries(${PROJECT_NAME} ${LEVELDB_LIBRARY})
endif() endif()
@ -585,6 +590,9 @@ if(BUILD_SERVER)
) )
set_target_properties(${PROJECT_NAME}server PROPERTIES set_target_properties(${PROJECT_NAME}server PROPERTIES
COMPILE_DEFINITIONS "SERVER") COMPILE_DEFINITIONS "SERVER")
if (USE_CURSES)
target_link_libraries(${PROJECT_NAME}server ${CURSES_LIBRARIES})
endif()
if (USE_LEVELDB) if (USE_LEVELDB)
target_link_libraries(${PROJECT_NAME}server ${LEVELDB_LIBRARY}) target_link_libraries(${PROJECT_NAME}server ${LEVELDB_LIBRARY})
endif() endif()

View File

@ -32,17 +32,18 @@ NoiseParams nparams_caveliquids(0, 1, v3f(150.0, 150.0, 150.0), 776, 3, 0.6, 2.0
///////////////////////////////////////// Caves V5 ///////////////////////////////////////// Caves V5
CaveV5::CaveV5(MapgenV5 *mg, PseudoRandom *ps) CaveV5::CaveV5(Mapgen *mg, PseudoRandom *ps)
{ {
this->mg = mg; this->mg = mg;
this->vm = mg->vm; this->vm = mg->vm;
this->ndef = mg->ndef; this->ndef = mg->ndef;
this->water_level = mg->water_level; this->water_level = mg->water_level;
this->ps = ps; this->ps = ps;
this->c_water_source = mg->c_water_source; c_water_source = ndef->getId("mapgen_water_source");
this->c_lava_source = mg->c_lava_source; c_lava_source = ndef->getId("mapgen_lava_source");
this->c_ice = mg->c_ice; c_ice = ndef->getId("mapgen_ice");
this->np_caveliquids = &nparams_caveliquids; this->np_caveliquids = &nparams_caveliquids;
this->ystride = mg->csize.X;
dswitchint = ps->range(1, 14); dswitchint = ps->range(1, 14);
flooded = ps->range(1, 2) == 2; flooded = ps->range(1, 2) == 2;
@ -150,7 +151,7 @@ void CaveV5::makeTunnel(bool dirswitch)
p = orpi + veci + of + rs / 2; p = orpi + veci + of + rs / 2;
if (p.Z >= node_min.Z && p.Z <= node_max.Z && if (p.Z >= node_min.Z && p.Z <= node_max.Z &&
p.X >= node_min.X && p.X <= node_max.X) { p.X >= node_min.X && p.X <= node_max.X) {
u32 index = (p.Z - node_min.Z) * mg->ystride + (p.X - node_min.X); u32 index = (p.Z - node_min.Z) * ystride + (p.X - node_min.X);
s16 h = mg->heightmap[index]; s16 h = mg->heightmap[index];
if (h < p.Y) if (h < p.Y)
return; return;
@ -161,7 +162,7 @@ void CaveV5::makeTunnel(bool dirswitch)
p = orpi + of + rs / 2; p = orpi + of + rs / 2;
if (p.Z >= node_min.Z && p.Z <= node_max.Z && if (p.Z >= node_min.Z && p.Z <= node_max.Z &&
p.X >= node_min.X && p.X <= node_max.X) { p.X >= node_min.X && p.X <= node_max.X) {
u32 index = (p.Z - node_min.Z) * mg->ystride + (p.X - node_min.X); u32 index = (p.Z - node_min.Z) * ystride + (p.X - node_min.X);
s16 h = mg->heightmap[index]; s16 h = mg->heightmap[index];
if (h < p.Y) if (h < p.Y)
return; return;
@ -215,7 +216,8 @@ void CaveV5::carveRoute(v3f vec, float f, bool randomize_xz)
float nval = NoisePerlin3D(np_caveliquids, startp.X, float nval = NoisePerlin3D(np_caveliquids, startp.X,
startp.Y, startp.Z, mg->seed); startp.Y, startp.Z, mg->seed);
MapNode liquidnode = nval < 0.40 ? lavanode : waternode; MapNode liquidnode = (nval < 0.40 && node_max.Y < MGV5_LAVA_DEPTH) ?
lavanode : waternode;
v3f fp = orp + vec * f; v3f fp = orp + vec * f;
fp.X += 0.1 * ps->range(-10, 10); fp.X += 0.1 * ps->range(-10, 10);
@ -784,249 +786,6 @@ void CaveV7::carveRoute(v3f vec, float f, bool randomize_xz)
v3s16 p(cp.X + x0, cp.Y + y0, cp.Z + z0); v3s16 p(cp.X + x0, cp.Y + y0, cp.Z + z0);
p += of; p += of;
if (vm->m_area.contains(p) == false)
continue;
u32 i = vm->m_area.index(p);
content_t c = vm->m_data[i].getContent();
if (!ndef->get(c).is_ground_content)
continue;
int full_ymin = node_min.Y - MAP_BLOCKSIZE;
int full_ymax = node_max.Y + MAP_BLOCKSIZE;
if (flooded && full_ymin < water_level &&
full_ymax > water_level)
vm->m_data[i] = (p.Y <= water_level) ?
waternode : airnode;
else if (flooded && full_ymax < water_level)
vm->m_data[i] = (p.Y < startp.Y - 4) ?
liquidnode : airnode;
else
vm->m_data[i] = airnode;
}
}
}
}
///////////////////////////////////////// Caves Fractal
CaveFractal::CaveFractal(MapgenFractal *mg, PseudoRandom *ps)
{
this->mg = mg;
this->vm = mg->vm;
this->ndef = mg->ndef;
this->water_level = mg->water_level;
this->ps = ps;
this->c_water_source = mg->c_water_source;
this->c_lava_source = mg->c_lava_source;
this->c_ice = mg->c_ice;
this->np_caveliquids = &nparams_caveliquids;
dswitchint = ps->range(1, 14);
flooded = ps->range(1, 2) == 2;
part_max_length_rs = ps->range(2, 4);
tunnel_routepoints = ps->range(5, ps->range(15, 30));
min_tunnel_diameter = 5;
max_tunnel_diameter = ps->range(7, ps->range(8, 24));
large_cave_is_flat = (ps->range(0, 1) == 0);
}
void CaveFractal::makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height)
{
node_min = nmin;
node_max = nmax;
main_direction = v3f(0, 0, 0);
// Allowed route area size in nodes
ar = node_max - node_min + v3s16(1, 1, 1);
// Area starting point in nodes
of = node_min;
// Allow a bit more
//(this should be more than the maximum radius of the tunnel)
s16 insure = 10;
s16 more = MYMAX(MAP_BLOCKSIZE - max_tunnel_diameter / 2 - insure, 1);
ar += v3s16(1,0,1) * more * 2;
of -= v3s16(1,0,1) * more;
route_y_min = 0;
// Allow half a diameter + 7 over stone surface
route_y_max = -of.Y + max_stone_y + max_tunnel_diameter / 2 + 7;
// Limit maximum to area
route_y_max = rangelim(route_y_max, 0, ar.Y - 1);
s16 min = 0;
if (node_min.Y < water_level && node_max.Y > water_level) {
min = water_level - max_tunnel_diameter/3 - of.Y;
route_y_max = water_level + max_tunnel_diameter/3 - of.Y;
}
route_y_min = ps->range(min, min + max_tunnel_diameter);
route_y_min = rangelim(route_y_min, 0, route_y_max);
s16 route_start_y_min = route_y_min;
s16 route_start_y_max = route_y_max;
route_start_y_min = rangelim(route_start_y_min, 0, ar.Y - 1);
route_start_y_max = rangelim(route_start_y_max, route_start_y_min, ar.Y - 1);
// Randomize starting position
orp = v3f(
(float)(ps->next() % ar.X) + 0.5,
(float)(ps->range(route_start_y_min, route_start_y_max)) + 0.5,
(float)(ps->next() % ar.Z) + 0.5
);
// Add generation notify begin event
v3s16 abs_pos(of.X + orp.X, of.Y + orp.Y, of.Z + orp.Z);
GenNotifyType notifytype = GENNOTIFY_LARGECAVE_BEGIN;
mg->gennotify.addEvent(notifytype, abs_pos);
// Generate some tunnel starting from orp
for (u16 j = 0; j < tunnel_routepoints; j++)
makeTunnel(j % dswitchint == 0);
// Add generation notify end event
abs_pos = v3s16(of.X + orp.X, of.Y + orp.Y, of.Z + orp.Z);
notifytype = GENNOTIFY_LARGECAVE_END;
mg->gennotify.addEvent(notifytype, abs_pos);
}
void CaveFractal::makeTunnel(bool dirswitch)
{
// Randomize size
s16 min_d = min_tunnel_diameter;
s16 max_d = max_tunnel_diameter;
rs = ps->range(min_d, max_d);
s16 rs_part_max_length_rs = rs * part_max_length_rs;
v3s16 maxlen;
maxlen = v3s16(
rs_part_max_length_rs,
rs_part_max_length_rs / 2,
rs_part_max_length_rs
);
v3f vec;
// Jump downward sometimes
vec = v3f(
(float)(ps->next() % maxlen.X) - (float)maxlen.X / 2,
(float)(ps->next() % maxlen.Y) - (float)maxlen.Y / 2,
(float)(ps->next() % maxlen.Z) - (float)maxlen.Z / 2
);
// Do not make caves that are above ground.
// It is only necessary to check the startpoint and endpoint.
v3s16 orpi(orp.X, orp.Y, orp.Z);
v3s16 veci(vec.X, vec.Y, vec.Z);
v3s16 p;
p = orpi + veci + of + rs / 2;
if (p.Z >= node_min.Z && p.Z <= node_max.Z &&
p.X >= node_min.X && p.X <= node_max.X) {
u32 index = (p.Z - node_min.Z) * mg->ystride + (p.X - node_min.X);
s16 h = mg->heightmap[index];
if (h < p.Y)
return;
} else if (p.Y > water_level) {
return; // If it's not in our heightmap, use a simple heuristic
}
p = orpi + of + rs / 2;
if (p.Z >= node_min.Z && p.Z <= node_max.Z &&
p.X >= node_min.X && p.X <= node_max.X) {
u32 index = (p.Z - node_min.Z) * mg->ystride + (p.X - node_min.X);
s16 h = mg->heightmap[index];
if (h < p.Y)
return;
} else if (p.Y > water_level) {
return;
}
vec += main_direction;
v3f rp = orp + vec;
if (rp.X < 0)
rp.X = 0;
else if (rp.X >= ar.X)
rp.X = ar.X - 1;
if (rp.Y < route_y_min)
rp.Y = route_y_min;
else if (rp.Y >= route_y_max)
rp.Y = route_y_max - 1;
if (rp.Z < 0)
rp.Z = 0;
else if (rp.Z >= ar.Z)
rp.Z = ar.Z - 1;
vec = rp - orp;
float veclen = vec.getLength();
if (veclen < 0.05)
veclen = 1.0;
// Every second section is rough
bool randomize_xz = (ps->range(1, 2) == 1);
// Carve routes
for (float f = 0; f < 1.0; f += 1.0 / veclen)
carveRoute(vec, f, randomize_xz);
orp = rp;
}
void CaveFractal::carveRoute(v3f vec, float f, bool randomize_xz)
{
MapNode airnode(CONTENT_AIR);
MapNode waternode(c_water_source);
MapNode lavanode(c_lava_source);
v3s16 startp(orp.X, orp.Y, orp.Z);
startp += of;
float nval = NoisePerlin3D(np_caveliquids, startp.X,
startp.Y, startp.Z, mg->seed);
MapNode liquidnode = (nval < 0.40 && node_max.Y < MGFRACTAL_LAVA_DEPTH) ?
lavanode : waternode;
v3f fp = orp + vec * f;
fp.X += 0.1 * ps->range(-10, 10);
fp.Z += 0.1 * ps->range(-10, 10);
v3s16 cp(fp.X, fp.Y, fp.Z);
s16 d0 = -rs/2;
s16 d1 = d0 + rs;
if (randomize_xz) {
d0 += ps->range(-1, 1);
d1 += ps->range(-1, 1);
}
for (s16 z0 = d0; z0 <= d1; z0++) {
s16 si = rs / 2 - MYMAX(0, abs(z0) - rs / 7 - 1);
for (s16 x0 = -si - ps->range(0,1); x0 <= si - 1 + ps->range(0,1); x0++) {
s16 maxabsxz = MYMAX(abs(x0), abs(z0));
s16 si2 = rs / 2 - MYMAX(0, maxabsxz - rs / 7 - 1);
for (s16 y0 = -si2; y0 <= si2; y0++) {
if (large_cave_is_flat) {
// Make large caves not so tall
if (rs > 7 && abs(y0) >= rs / 3)
continue;
}
v3s16 p(cp.X + x0, cp.Y + y0, cp.Z + z0);
p += of;
if (vm->m_area.contains(p) == false) if (vm->m_area.contains(p) == false)
continue; continue;

View File

@ -21,8 +21,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define CAVEGEN_HEADER #define CAVEGEN_HEADER
#define VMANIP_FLAG_CAVE VOXELFLAG_CHECKED1 #define VMANIP_FLAG_CAVE VOXELFLAG_CHECKED1
#define MGV5_LAVA_DEPTH -256
#define MGV7_LAVA_DEPTH -256 #define MGV7_LAVA_DEPTH -256
#define MGFRACTAL_LAVA_DEPTH -256
class MapgenV5; class MapgenV5;
class MapgenV6; class MapgenV6;
@ -31,7 +31,7 @@ class MapgenFractal;
class CaveV5 { class CaveV5 {
public: public:
MapgenV5 *mg; Mapgen *mg;
MMVManip *vm; MMVManip *vm;
INodeDefManager *ndef; INodeDefManager *ndef;
@ -66,9 +66,10 @@ public:
content_t c_ice; content_t c_ice;
int water_level; int water_level;
int ystride;
CaveV5() {} CaveV5() {}
CaveV5(MapgenV5 *mg, PseudoRandom *ps); CaveV5(Mapgen *mg, PseudoRandom *ps);
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height); void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
void makeTunnel(bool dirswitch); void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz); void carveRoute(v3f vec, float f, bool randomize_xz);
@ -161,51 +162,7 @@ public:
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height); void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
void makeTunnel(bool dirswitch); void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz); void carveRoute(v3f vec, float f, bool randomize_xz);
};
class CaveFractal {
public:
MapgenFractal *mg;
MMVManip *vm;
INodeDefManager *ndef;
NoiseParams *np_caveliquids;
s16 min_tunnel_diameter;
s16 max_tunnel_diameter;
u16 tunnel_routepoints;
int dswitchint;
int part_max_length_rs;
bool large_cave_is_flat;
bool flooded;
s16 max_stone_y;
v3s16 node_min;
v3s16 node_max;
v3f orp; // starting point, relative to caved space
v3s16 of; // absolute coordinates of caved space
v3s16 ar; // allowed route area
s16 rs; // tunnel radius size
v3f main_direction;
s16 route_y_min;
s16 route_y_max;
PseudoRandom *ps;
content_t c_water_source;
content_t c_lava_source;
content_t c_ice;
int water_level;
CaveFractal() {}
CaveFractal(MapgenFractal *mg, PseudoRandom *ps);
void makeCave(v3s16 nmin, v3s16 nmax, int max_stone_height);
void makeTunnel(bool dirswitch);
void carveRoute(v3f vec, float f, bool randomize_xz);
}; };
#endif #endif

View File

@ -25,7 +25,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <vector> #include <vector>
#include <list> #include <list>
// Chat console related classes, only used by the client // Chat console related classes
struct ChatLine struct ChatLine
{ {

82
src/chat_interface.h Normal file
View File

@ -0,0 +1,82 @@
/*
Minetest
Copyright (C) 2015 est31 <MTest31@outlook.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef CHAT_INTERFACE_H
#define CHAT_INTERFACE_H
#include "util/container.h"
#include <string>
#include <queue>
#include "irrlichttypes.h"
enum ChatEventType {
CET_CHAT,
CET_NICK_ADD,
CET_NICK_REMOVE,
CET_TIME_INFO,
};
class ChatEvent {
protected:
ChatEvent(ChatEventType a_type) { type = a_type; }
public:
ChatEventType type;
};
struct ChatEventTimeInfo : public ChatEvent {
ChatEventTimeInfo(
u64 a_game_time,
u32 a_time) :
ChatEvent(CET_TIME_INFO),
game_time(a_game_time),
time(a_time)
{}
u64 game_time;
u32 time;
};
struct ChatEventNick : public ChatEvent {
ChatEventNick(ChatEventType a_type,
const std::string &a_nick) :
ChatEvent(a_type), // one of CET_NICK_ADD, CET_NICK_REMOVE
nick(a_nick)
{}
std::string nick;
};
struct ChatEventChat : public ChatEvent {
ChatEventChat(const std::string &a_nick,
const std::wstring &an_evt_msg) :
ChatEvent(CET_CHAT),
nick(a_nick),
evt_msg(an_evt_msg)
{}
std::string nick;
std::wstring evt_msg;
};
struct ChatInterface {
MutexedQueue<ChatEvent *> command_queue; // chat backend --> server
MutexedQueue<ChatEvent *> outgoing_queue; // server --> chat backend
};
#endif

View File

@ -693,7 +693,7 @@ bool ClientLauncher::print_video_modes()
return false; return false;
} }
dstream << _("Available video modes (WxHxD):") << std::endl; std::cout << _("Available video modes (WxHxD):") << std::endl;
video::IVideoModeList *videomode_list = nulldevice->getVideoModeList(); video::IVideoModeList *videomode_list = nulldevice->getVideoModeList();
@ -704,14 +704,14 @@ bool ClientLauncher::print_video_modes()
for (s32 i = 0; i < videomode_count; ++i) { for (s32 i = 0; i < videomode_count; ++i) {
videomode_res = videomode_list->getVideoModeResolution(i); videomode_res = videomode_list->getVideoModeResolution(i);
videomode_depth = videomode_list->getVideoModeDepth(i); videomode_depth = videomode_list->getVideoModeDepth(i);
dstream << videomode_res.Width << "x" << videomode_res.Height std::cout << videomode_res.Width << "x" << videomode_res.Height
<< "x" << videomode_depth << std::endl; << "x" << videomode_depth << std::endl;
} }
dstream << _("Active video mode (WxHxD):") << std::endl; std::cout << _("Active video mode (WxHxD):") << std::endl;
videomode_res = videomode_list->getDesktopResolution(); videomode_res = videomode_list->getDesktopResolution();
videomode_depth = videomode_list->getDesktopDepth(); videomode_depth = videomode_list->getDesktopDepth();
dstream << videomode_res.Width << "x" << videomode_res.Height std::cout << videomode_res.Width << "x" << videomode_res.Height
<< "x" << videomode_depth << std::endl; << "x" << videomode_depth << std::endl;
} }

View File

@ -62,9 +62,6 @@ Clouds::Clouds(
g_settings->registerChangedCallback("enable_3d_clouds", g_settings->registerChangedCallback("enable_3d_clouds",
&cloud_3d_setting_changed, this); &cloud_3d_setting_changed, this);
m_cloud_radius_i = g_settings->getU16("cloud_radius");
m_enable_3d = g_settings->getBool("enable_3d_clouds");
m_box = core::aabbox3d<f32>(-BS*1000000,m_cloud_y-BS,-BS*1000000, m_box = core::aabbox3d<f32>(-BS*1000000,m_cloud_y-BS,-BS*1000000,
BS*1000000,m_cloud_y+BS,BS*1000000); BS*1000000,m_cloud_y+BS,BS*1000000);

View File

@ -19,12 +19,19 @@
#cmakedefine01 USE_CURL #cmakedefine01 USE_CURL
#cmakedefine01 USE_SOUND #cmakedefine01 USE_SOUND
#cmakedefine01 USE_FREETYPE #cmakedefine01 USE_FREETYPE
#cmakedefine01 USE_CURSES
#cmakedefine01 USE_LEVELDB #cmakedefine01 USE_LEVELDB
#cmakedefine01 USE_LUAJIT #cmakedefine01 USE_LUAJIT
#cmakedefine01 USE_SPATIAL #cmakedefine01 USE_SPATIAL
#cmakedefine01 USE_SYSTEM_GMP #cmakedefine01 USE_SYSTEM_GMP
#cmakedefine01 USE_REDIS #cmakedefine01 USE_REDIS
#cmakedefine01 HAVE_ENDIAN_H #cmakedefine01 HAVE_ENDIAN_H
#cmakedefine01 CURSES_HAVE_CURSES_H
#cmakedefine01 CURSES_HAVE_NCURSES_H
#cmakedefine01 CURSES_HAVE_NCURSES_NCURSES_H
#cmakedefine01 CURSES_HAVE_NCURSES_CURSES_H
#cmakedefine01 CURSES_HAVE_NCURSESW_NCURSES_H
#cmakedefine01 CURSES_HAVE_NCURSESW_CURSES_H
#endif #endif

View File

@ -166,3 +166,4 @@ void content_mapnode_get_name_id_mapping(NameIdMapping *nimap)
nimap->set(CONTENT_IGNORE, "ignore"); nimap->set(CONTENT_IGNORE, "ignore");
nimap->set(CONTENT_AIR, "air"); nimap->set(CONTENT_AIR, "air");
} }

View File

@ -37,6 +37,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "filesys.h" #include "filesys.h"
#endif #endif
#if USE_CURSES
#include "terminal_chat_console.h"
#endif
/* /*
Assert Assert
*/ */
@ -44,6 +48,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
void sanity_check_fn(const char *assertion, const char *file, void sanity_check_fn(const char *assertion, const char *file,
unsigned int line, const char *function) unsigned int line, const char *function)
{ {
#if USE_CURSES
g_term_console.stopAndWaitforThread();
#endif
errorstream << std::endl << "In thread " << std::hex errorstream << std::endl << "In thread " << std::hex
<< thr_get_current_thread_id() << ":" << std::endl; << thr_get_current_thread_id() << ":" << std::endl;
errorstream << file << ":" << line << ": " << function errorstream << file << ":" << line << ": " << function
@ -57,6 +65,10 @@ void sanity_check_fn(const char *assertion, const char *file,
void fatal_error_fn(const char *msg, const char *file, void fatal_error_fn(const char *msg, const char *file,
unsigned int line, const char *function) unsigned int line, const char *function)
{ {
#if USE_CURSES
g_term_console.stopAndWaitforThread();
#endif
errorstream << std::endl << "In thread " << std::hex errorstream << std::endl << "In thread " << std::hex
<< thr_get_current_thread_id() << ":" << std::endl; << thr_get_current_thread_id() << ":" << std::endl;
errorstream << file << ":" << line << ": " << function errorstream << file << ":" << line << ": " << function

View File

@ -49,10 +49,10 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")" #define PP(x) "("<<(x).X<<","<<(x).Y<<","<<(x).Z<<")"
Environment::Environment(): Environment::Environment():
m_time_of_day_speed(0),
m_time_of_day(9000), m_time_of_day(9000),
m_time_of_day_f(9000./24000), m_time_of_day_f(9000./24000),
m_time_of_day_speed(0), m_time_conversion_skew(0.0f),
m_time_counter(0),
m_enable_day_night_ratio_override(false), m_enable_day_night_ratio_override(false),
m_day_night_ratio_override(0.0f) m_day_night_ratio_override(0.0f)
{ {
@ -180,7 +180,7 @@ std::vector<Player*> Environment::getPlayers(bool ignore_disconnected)
u32 Environment::getDayNightRatio() u32 Environment::getDayNightRatio()
{ {
MutexAutoLock(this->m_time_lock); MutexAutoLock lock(this->m_time_lock);
if (m_enable_day_night_ratio_override) if (m_enable_day_night_ratio_override)
return m_day_night_ratio_override; return m_day_night_ratio_override;
return time_to_daynight_ratio(m_time_of_day_f * 24000, m_cache_enable_shaders); return time_to_daynight_ratio(m_time_of_day_f * 24000, m_cache_enable_shaders);
@ -188,45 +188,51 @@ u32 Environment::getDayNightRatio()
void Environment::setTimeOfDaySpeed(float speed) void Environment::setTimeOfDaySpeed(float speed)
{ {
MutexAutoLock(this->m_time_lock);
m_time_of_day_speed = speed; m_time_of_day_speed = speed;
} }
float Environment::getTimeOfDaySpeed() float Environment::getTimeOfDaySpeed()
{ {
MutexAutoLock(this->m_time_lock); return m_time_of_day_speed;
float retval = m_time_of_day_speed; }
return retval;
void Environment::setDayNightRatioOverride(bool enable, u32 value)
{
MutexAutoLock lock(this->m_time_lock);
m_enable_day_night_ratio_override = enable;
m_day_night_ratio_override = value;
} }
void Environment::setTimeOfDay(u32 time) void Environment::setTimeOfDay(u32 time)
{ {
MutexAutoLock(this->m_time_lock); MutexAutoLock lock(this->m_time_lock);
m_time_of_day = time; m_time_of_day = time;
m_time_of_day_f = (float)time / 24000.0; m_time_of_day_f = (float)time / 24000.0;
} }
u32 Environment::getTimeOfDay() u32 Environment::getTimeOfDay()
{ {
MutexAutoLock(this->m_time_lock); MutexAutoLock lock(this->m_time_lock);
u32 retval = m_time_of_day; return m_time_of_day;
return retval;
} }
float Environment::getTimeOfDayF() float Environment::getTimeOfDayF()
{ {
MutexAutoLock(this->m_time_lock); MutexAutoLock lock(this->m_time_lock);
float retval = m_time_of_day_f; return m_time_of_day_f;
return retval;
} }
void Environment::stepTimeOfDay(float dtime) void Environment::stepTimeOfDay(float dtime)
{ {
MutexAutoLock(this->m_time_lock); MutexAutoLock lock(this->m_time_lock);
m_time_counter += dtime; // Cached in order to prevent the two reads we do to give
f32 speed = m_time_of_day_speed * 24000. / (24. * 3600); // different results (can be written by code not under the lock)
u32 units = (u32)(m_time_counter * speed); f32 cached_time_of_day_speed = m_time_of_day_speed;
f32 speed = cached_time_of_day_speed * 24000. / (24. * 3600);
m_time_conversion_skew += dtime;
u32 units = (u32)(m_time_conversion_skew * speed);
bool sync_f = false; bool sync_f = false;
if (units > 0) { if (units > 0) {
// Sync at overflow // Sync at overflow
@ -237,10 +243,10 @@ void Environment::stepTimeOfDay(float dtime)
m_time_of_day_f = (float)m_time_of_day / 24000.0; m_time_of_day_f = (float)m_time_of_day / 24000.0;
} }
if (speed > 0) { if (speed > 0) {
m_time_counter -= (f32)units / speed; m_time_conversion_skew -= (f32)units / speed;
} }
if (!sync_f) { if (!sync_f) {
m_time_of_day_f += m_time_of_day_speed / 24 / 3600 * dtime; m_time_of_day_f += cached_time_of_day_speed / 24 / 3600 * dtime;
if (m_time_of_day_f > 1.0) if (m_time_of_day_f > 1.0)
m_time_of_day_f -= 1.0; m_time_of_day_f -= 1.0;
if (m_time_of_day_f < 0.0) if (m_time_of_day_f < 0.0)
@ -535,10 +541,10 @@ void ServerEnvironment::loadMeta()
} }
try { try {
m_time_of_day = args.getU64("time_of_day"); setTimeOfDay(args.getU64("time_of_day"));
} catch (SettingNotFoundException &e) { } catch (SettingNotFoundException &e) {
// This is not as important // This is not as important
m_time_of_day = 9000; setTimeOfDay(9000);
} }
} }

View File

@ -40,6 +40,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "mapnode.h" #include "mapnode.h"
#include "mapblock.h" #include "mapblock.h"
#include "threading/mutex.h" #include "threading/mutex.h"
#include "threading/atomic.h"
#include "network/networkprotocol.h" // for AccessDeniedCode #include "network/networkprotocol.h" // for AccessDeniedCode
class ServerEnvironment; class ServerEnvironment;
@ -92,11 +93,7 @@ public:
void setTimeOfDaySpeed(float speed); void setTimeOfDaySpeed(float speed);
float getTimeOfDaySpeed(); float getTimeOfDaySpeed();
void setDayNightRatioOverride(bool enable, u32 value) void setDayNightRatioOverride(bool enable, u32 value);
{
m_enable_day_night_ratio_override = enable;
m_day_night_ratio_override = value;
}
// counter used internally when triggering ABMs // counter used internally when triggering ABMs
u32 m_added_objects; u32 m_added_objects;
@ -105,22 +102,23 @@ protected:
// peer_ids in here should be unique, except that there may be many 0s // peer_ids in here should be unique, except that there may be many 0s
std::vector<Player*> m_players; std::vector<Player*> m_players;
GenericAtomic<float> m_time_of_day_speed;
/* /*
* Below: values under m_time_lock * Below: values managed by m_time_lock
*/ */
// Time of day in milli-hours (0-23999); determines day and night // Time of day in milli-hours (0-23999); determines day and night
u32 m_time_of_day; u32 m_time_of_day;
// Time of day in 0...1 // Time of day in 0...1
float m_time_of_day_f; float m_time_of_day_f;
float m_time_of_day_speed; // Stores the skew created by the float -> u32 conversion
// Used to buffer dtime for adding to m_time_of_day // to be applied at next conversion, so that there is no real skew.
float m_time_counter; float m_time_conversion_skew;
// Overriding the day-night ratio is useful for custom sky visuals // Overriding the day-night ratio is useful for custom sky visuals
bool m_enable_day_night_ratio_override; bool m_enable_day_night_ratio_override;
u32 m_day_night_ratio_override; u32 m_day_night_ratio_override;
/* /*
* Above: values under m_time_lock * Above: values managed by m_time_lock
*/ */
/* TODO: Add a callback function so these can be updated when a setting /* TODO: Add a callback function so these can be updated when a setting

View File

@ -493,7 +493,7 @@ private:
color(color) color(color)
{} {}
}; };
std::vector<Piece> m_log; std::deque<Piece> m_log;
public: public:
u32 m_log_max_size; u32 m_log_max_size;
@ -516,7 +516,7 @@ public:
{ {
std::map<std::string, Meta> m_meta; std::map<std::string, Meta> m_meta;
for (std::vector<Piece>::const_iterator k = m_log.begin(); for (std::deque<Piece>::const_iterator k = m_log.begin();
k != m_log.end(); ++k) { k != m_log.end(); ++k) {
const Piece &piece = *k; const Piece &piece = *k;
@ -604,7 +604,7 @@ public:
float lastscaledvalue = 0.0; float lastscaledvalue = 0.0;
bool lastscaledvalue_exists = false; bool lastscaledvalue_exists = false;
for (std::vector<Piece>::const_iterator j = m_log.begin(); for (std::deque<Piece>::const_iterator j = m_log.begin();
j != m_log.end(); ++j) { j != m_log.end(); ++j) {
const Piece &piece = *j; const Piece &piece = *j;
float value = 0; float value = 0;
@ -1696,10 +1696,6 @@ Game::Game() :
m_cache_hold_aux1 = false; // This is initialised properly later m_cache_hold_aux1 = false; // This is initialised properly later
#endif #endif
#ifdef __ANDROID__
m_cache_hold_aux1 = false; // This is initialised properly later
#endif
} }
@ -3717,8 +3713,12 @@ void Game::handlePointingAtNode(GameRunData *runData,
SimpleSoundSpec(); SimpleSoundSpec();
if (playeritem_def.node_placement_prediction == "" || if (playeritem_def.node_placement_prediction == "" ||
nodedef_manager->get(map.getNodeNoEx(nodepos)).rightclickable) nodedef_manager->get(map.getNodeNoEx(nodepos)).rightclickable) {
client->interact(3, pointed); // Report to server client->interact(3, pointed); // Report to server
} else {
soundmaker->m_player_rightpunch_sound =
playeritem_def.sound_place_failed;
}
} }
} }
} }

View File

@ -80,6 +80,7 @@ ItemDefinition& ItemDefinition::operator=(const ItemDefinition &def)
groups = def.groups; groups = def.groups;
node_placement_prediction = def.node_placement_prediction; node_placement_prediction = def.node_placement_prediction;
sound_place = def.sound_place; sound_place = def.sound_place;
sound_place_failed = def.sound_place_failed;
range = def.range; range = def.range;
return *this; return *this;
} }
@ -114,6 +115,7 @@ void ItemDefinition::reset()
} }
groups.clear(); groups.clear();
sound_place = SimpleSoundSpec(); sound_place = SimpleSoundSpec();
sound_place_failed = SimpleSoundSpec();
range = -1; range = -1;
node_placement_prediction = ""; node_placement_prediction = "";
@ -157,6 +159,8 @@ void ItemDefinition::serialize(std::ostream &os, u16 protocol_version) const
} }
if (protocol_version > 20) { if (protocol_version > 20) {
writeF1000(os, range); writeF1000(os, range);
os << serializeString(sound_place_failed.name);
writeF1000(os, sound_place_failed.gain);
} }
} }
@ -212,6 +216,8 @@ void ItemDefinition::deSerialize(std::istream &is)
// If you add anything here, insert it primarily inside the try-catch // If you add anything here, insert it primarily inside the try-catch
// block to not need to increase the version. // block to not need to increase the version.
try { try {
sound_place_failed.name = deSerializeString(is);
sound_place_failed.gain = readF1000(is);
} catch(SerializationError &e) {}; } catch(SerializationError &e) {};
} }

View File

@ -68,6 +68,7 @@ struct ItemDefinition
ToolCapabilities *tool_capabilities; ToolCapabilities *tool_capabilities;
ItemGroupList groups; ItemGroupList groups;
SimpleSoundSpec sound_place; SimpleSoundSpec sound_place;
SimpleSoundSpec sound_place_failed;
f32 range; f32 range;
// Client shall immediately place this node when player places the item. // Client shall immediately place this node when player places the item.

View File

@ -42,6 +42,7 @@ LocalPlayer::LocalPlayer(IGameDef *gamedef, const char *name):
last_pitch(0), last_pitch(0),
last_yaw(0), last_yaw(0),
last_keyPressed(0), last_keyPressed(0),
camera_impact(0.f),
last_animation(NO_ANIM), last_animation(NO_ANIM),
hotbar_image(""), hotbar_image(""),
hotbar_selected_image(""), hotbar_selected_image(""),
@ -515,13 +516,14 @@ void LocalPlayer::applyControl(float dtime)
if (continuous_forward) if (continuous_forward)
speedH += move_direction; speedH += move_direction;
if(control.up) if (control.up) {
{ if (continuous_forward) {
if(continuous_forward) if (fast_move)
superspeed = true; superspeed = true;
else } else {
speedH += move_direction; speedH += move_direction;
} }
}
if(control.down) if(control.down)
{ {
speedH -= move_direction; speedH -= move_direction;

View File

@ -181,6 +181,14 @@ void Logger::addOutput(ILogOutput *out, LogLevel lev)
m_outputs[lev].push_back(out); m_outputs[lev].push_back(out);
} }
void Logger::addOutputMasked(ILogOutput *out, LogLevelMask mask)
{
for (size_t i = 0; i < LL_MAX; i++) {
if (mask & LOGLEVEL_TO_MASKLEVEL(i))
m_outputs[i].push_back(out);
}
}
void Logger::addOutputMaxLevel(ILogOutput *out, LogLevel lev) void Logger::addOutputMaxLevel(ILogOutput *out, LogLevel lev)
{ {
assert(lev < LL_MAX); assert(lev < LL_MAX);
@ -188,16 +196,20 @@ void Logger::addOutputMaxLevel(ILogOutput *out, LogLevel lev)
m_outputs[i].push_back(out); m_outputs[i].push_back(out);
} }
void Logger::removeOutput(ILogOutput *out) LogLevelMask Logger::removeOutput(ILogOutput *out)
{ {
LogLevelMask ret_mask = 0;
for (size_t i = 0; i < LL_MAX; i++) { for (size_t i = 0; i < LL_MAX; i++) {
std::vector<ILogOutput *>::iterator it; std::vector<ILogOutput *>::iterator it;
it = std::find(m_outputs[i].begin(), m_outputs[i].end(), out); it = std::find(m_outputs[i].begin(), m_outputs[i].end(), out);
if (it != m_outputs[i].end()) if (it != m_outputs[i].end()) {
ret_mask |= LOGLEVEL_TO_MASKLEVEL(i);
m_outputs[i].erase(it); m_outputs[i].erase(it);
} }
} }
return ret_mask;
}
void Logger::setLevelSilenced(LogLevel lev, bool silenced) void Logger::setLevelSilenced(LogLevel lev, bool silenced)
{ {

View File

@ -25,6 +25,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <string> #include <string>
#include <fstream> #include <fstream>
#include "threads.h" #include "threads.h"
#include "irrlichttypes.h"
class ILogOutput; class ILogOutput;
@ -38,12 +39,16 @@ enum LogLevel {
LL_MAX, LL_MAX,
}; };
typedef u8 LogLevelMask;
#define LOGLEVEL_TO_MASKLEVEL(x) (1 << x)
class Logger { class Logger {
public: public:
void addOutput(ILogOutput *out); void addOutput(ILogOutput *out);
void addOutput(ILogOutput *out, LogLevel lev); void addOutput(ILogOutput *out, LogLevel lev);
void addOutputMasked(ILogOutput *out, LogLevelMask mask);
void addOutputMaxLevel(ILogOutput *out, LogLevel lev); void addOutputMaxLevel(ILogOutput *out, LogLevel lev);
void removeOutput(ILogOutput *out); LogLevelMask removeOutput(ILogOutput *out);
void setLevelSilenced(LogLevel lev, bool silenced); void setLevelSilenced(LogLevel lev, bool silenced);
void registerThread(const std::string &name); void registerThread(const std::string &name);

View File

@ -45,10 +45,15 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "httpfetch.h" #include "httpfetch.h"
#include "guiEngine.h" #include "guiEngine.h"
#include "map.h" #include "map.h"
#include "player.h"
#include "mapsector.h" #include "mapsector.h"
#include "fontengine.h" #include "fontengine.h"
#include "gameparams.h" #include "gameparams.h"
#include "database.h" #include "database.h"
#include "config.h"
#if USE_CURSES
#include "terminal_chat_console.h"
#endif
#ifndef SERVER #ifndef SERVER
#include "client/clientlauncher.h" #include "client/clientlauncher.h"
#endif #endif
@ -57,6 +62,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "touchscreengui.h" #include "touchscreengui.h"
#endif #endif
#if !defined(SERVER) && \
(IRRLICHT_VERSION_MAJOR == 1) && \
(IRRLICHT_VERSION_MINOR == 8) && \
(IRRLICHT_VERSION_REVISION == 2)
#error "Irrlicht 1.8.2 is known to be broken - please update Irrlicht to version >= 1.8.3"
#endif
#define DEBUGFILE "debug.txt" #define DEBUGFILE "debug.txt"
#define DEFAULT_SERVER_PORT 30000 #define DEFAULT_SERVER_PORT 30000
@ -277,6 +289,8 @@ static void set_allowed_options(OptionList *allowed_options)
_("Set gameid (\"--gameid list\" prints available ones)")))); _("Set gameid (\"--gameid list\" prints available ones)"))));
allowed_options->insert(std::make_pair("migrate", ValueSpec(VALUETYPE_STRING, allowed_options->insert(std::make_pair("migrate", ValueSpec(VALUETYPE_STRING,
_("Migrate from current map backend to another (Only works when using minetestserver or with --server)")))); _("Migrate from current map backend to another (Only works when using minetestserver or with --server)"))));
allowed_options->insert(std::make_pair("terminal", ValueSpec(VALUETYPE_FLAG,
_("Feature an interactive terminal (Only works when using minetestserver or with --server)"))));
#ifndef SERVER #ifndef SERVER
allowed_options->insert(std::make_pair("videomodes", ValueSpec(VALUETYPE_FLAG, allowed_options->insert(std::make_pair("videomodes", ValueSpec(VALUETYPE_FLAG,
_("Show available video modes")))); _("Show available video modes"))));
@ -300,7 +314,7 @@ static void set_allowed_options(OptionList *allowed_options)
static void print_help(const OptionList &allowed_options) static void print_help(const OptionList &allowed_options)
{ {
dstream << _("Allowed options:") << std::endl; std::cout << _("Allowed options:") << std::endl;
print_allowed_options(allowed_options); print_allowed_options(allowed_options);
} }
@ -313,22 +327,22 @@ static void print_allowed_options(const OptionList &allowed_options)
if (i->second.type != VALUETYPE_FLAG) if (i->second.type != VALUETYPE_FLAG)
os1 << _(" <value>"); os1 << _(" <value>");
dstream << padStringRight(os1.str(), 24); std::cout << padStringRight(os1.str(), 24);
if (i->second.help != NULL) if (i->second.help != NULL)
dstream << i->second.help; std::cout << i->second.help;
dstream << std::endl; std::cout << std::endl;
} }
} }
static void print_version() static void print_version()
{ {
dstream << PROJECT_NAME_C " " << g_version_hash << std::endl; std::cout << PROJECT_NAME_C " " << g_version_hash << std::endl;
#ifndef SERVER #ifndef SERVER
dstream << "Using Irrlicht " << IRRLICHT_SDK_VERSION << std::endl; std::cout << "Using Irrlicht " << IRRLICHT_SDK_VERSION << std::endl;
#endif #endif
dstream << "Build info: " << g_build_info << std::endl; std::cout << "Build info: " << g_build_info << std::endl;
} }
static void list_game_ids() static void list_game_ids()
@ -336,14 +350,14 @@ static void list_game_ids()
std::set<std::string> gameids = getAvailableGameIds(); std::set<std::string> gameids = getAvailableGameIds();
for (std::set<std::string>::const_iterator i = gameids.begin(); for (std::set<std::string>::const_iterator i = gameids.begin();
i != gameids.end(); ++i) i != gameids.end(); ++i)
dstream << (*i) <<std::endl; std::cout << (*i) <<std::endl;
} }
static void list_worlds() static void list_worlds()
{ {
dstream << _("Available worlds:") << std::endl; std::cout << _("Available worlds:") << std::endl;
std::vector<WorldSpec> worldspecs = getAvailableWorlds(); std::vector<WorldSpec> worldspecs = getAvailableWorlds();
print_worldspecs(worldspecs, dstream); print_worldspecs(worldspecs, std::cout);
} }
static void print_worldspecs(const std::vector<WorldSpec> &worldspecs, static void print_worldspecs(const std::vector<WorldSpec> &worldspecs,
@ -824,6 +838,66 @@ static bool run_dedicated_server(const GameParams &game_params, const Settings &
if (cmd_args.exists("migrate")) if (cmd_args.exists("migrate"))
return migrate_database(game_params, cmd_args); return migrate_database(game_params, cmd_args);
if (cmd_args.exists("terminal")) {
#if USE_CURSES
bool name_ok = true;
std::string admin_nick = g_settings->get("name");
name_ok = name_ok && !admin_nick.empty();
name_ok = name_ok && string_allowed(admin_nick, PLAYERNAME_ALLOWED_CHARS);
if (!name_ok) {
if (admin_nick.empty()) {
errorstream << "No name given for admin. "
<< "Please check your minetest.conf that it "
<< "contains a 'name = ' to your main admin account."
<< std::endl;
} else {
errorstream << "Name for admin '"
<< admin_nick << "' is not valid. "
<< "Please check that it only contains allowed characters. "
<< "Valid characters are: " << PLAYERNAME_ALLOWED_CHARS_USER_EXPL
<< std::endl;
}
return false;
}
ChatInterface iface;
bool &kill = *porting::signal_handler_killstatus();
try {
// Create server
Server server(game_params.world_path,
game_params.game_spec, false, bind_addr.isIPv6(), &iface);
g_term_console.setup(&iface, &kill, admin_nick);
g_term_console.start();
server.start(bind_addr);
// Run server
dedicated_server_loop(server, kill);
} catch (const ModError &e) {
g_term_console.stopAndWaitforThread();
errorstream << "ModError: " << e.what() << std::endl;
return false;
} catch (const ServerError &e) {
g_term_console.stopAndWaitforThread();
errorstream << "ServerError: " << e.what() << std::endl;
return false;
}
// Tell the console to stop, and wait for it to finish,
// only then leave context and free iface
g_term_console.stop();
g_term_console.wait();
g_term_console.clearKillStatus();
} else {
#else
errorstream << "Cmd arg --terminal passed, but "
<< "compiled without ncurses. Ignoring." << std::endl;
} {
#endif
try { try {
// Create server // Create server
Server server(game_params.world_path, game_params.game_spec, false, Server server(game_params.world_path, game_params.game_spec, false,
@ -833,6 +907,7 @@ static bool run_dedicated_server(const GameParams &game_params, const Settings &
// Run server // Run server
bool &kill = *porting::signal_handler_killstatus(); bool &kill = *porting::signal_handler_killstatus();
dedicated_server_loop(server, kill); dedicated_server_loop(server, kill);
} catch (const ModError &e) { } catch (const ModError &e) {
errorstream << "ModError: " << e.what() << std::endl; errorstream << "ModError: " << e.what() << std::endl;
return false; return false;
@ -840,6 +915,7 @@ static bool run_dedicated_server(const GameParams &game_params, const Settings &
errorstream << "ServerError: " << e.what() << std::endl; errorstream << "ServerError: " << e.what() << std::endl;
return false; return false;
} }
}
return true; return true;
} }

View File

@ -634,7 +634,11 @@ void MapgenFractal::generateCaves(s16 max_stone_y)
PseudoRandom ps(blockseed + 21343); PseudoRandom ps(blockseed + 21343);
u32 bruises_count = (ps.range(1, 4) == 1) ? ps.range(1, 2) : 0; u32 bruises_count = (ps.range(1, 4) == 1) ? ps.range(1, 2) : 0;
for (u32 i = 0; i < bruises_count; i++) { for (u32 i = 0; i < bruises_count; i++) {
<<<<<<< HEAD
CaveFractal cave(this, &ps); CaveFractal cave(this, &ps);
=======
CaveV5 cave(this, &ps);
>>>>>>> f3ac2517ea585d31d176070be25adf8a68624c87
cave.makeCave(node_min, node_max, max_stone_y); cave.makeCave(node_min, node_max, max_stone_y);
} }
} }

View File

@ -23,7 +23,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "mapgen.h" #include "mapgen.h"
#define MGFRACTAL_LARGE_CAVE_DEPTH -32 #define MGFRACTAL_LARGE_CAVE_DEPTH -33
/////////////////// Mapgen Fractal flags /////////////////// Mapgen Fractal flags
#define MGFRACTAL_JULIA 0x01 #define MGFRACTAL_JULIA 0x01

View File

@ -87,7 +87,7 @@ void Decoration::resolveNodeNames()
size_t Decoration::placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax) size_t Decoration::placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax)
{ {
PseudoRandom ps(blockseed + 53); PcgRandom ps(blockseed + 53);
int carea_size = nmax.X - nmin.X + 1; int carea_size = nmax.X - nmin.X + 1;
// Divide area into parts // Divide area into parts
@ -170,7 +170,7 @@ size_t Decoration::placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax)
#if 0 #if 0
void Decoration::placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax) void Decoration::placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax)
{ {
PseudoRandom pr(blockseed + 53); PcgRandom pr(blockseed + 53);
std::vector<CutoffData> handled_cutoffs; std::vector<CutoffData> handled_cutoffs;
// Copy over the cutoffs we're interested in so we don't needlessly hold a lock // Copy over the cutoffs we're interested in so we don't needlessly hold a lock
@ -286,7 +286,7 @@ bool DecoSimple::canPlaceDecoration(MMVManip *vm, v3s16 p)
} }
size_t DecoSimple::generate(MMVManip *vm, PseudoRandom *pr, v3s16 p) size_t DecoSimple::generate(MMVManip *vm, PcgRandom *pr, v3s16 p)
{ {
if (!canPlaceDecoration(vm, p)) if (!canPlaceDecoration(vm, p))
return 0; return 0;
@ -327,7 +327,7 @@ DecoSchematic::DecoSchematic()
} }
size_t DecoSchematic::generate(MMVManip *vm, PseudoRandom *pr, v3s16 p) size_t DecoSchematic::generate(MMVManip *vm, PcgRandom *pr, v3s16 p)
{ {
// Schematic could have been unloaded but not the decoration // Schematic could have been unloaded but not the decoration
// In this case generate() does nothing (but doesn't *fail*) // In this case generate() does nothing (but doesn't *fail*)
@ -351,7 +351,7 @@ size_t DecoSchematic::generate(MMVManip *vm, PseudoRandom *pr, v3s16 p)
bool force_placement = (flags & DECO_FORCE_PLACEMENT); bool force_placement = (flags & DECO_FORCE_PLACEMENT);
schematic->blitToVManip(p, vm, rot, force_placement); schematic->blitToVManip(vm, p, rot, force_placement);
return 1; return 1;
} }

View File

@ -27,7 +27,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
class Mapgen; class Mapgen;
class MMVManip; class MMVManip;
class PseudoRandom; class PcgRandom;
class Schematic; class Schematic;
enum DecorationType { enum DecorationType {
@ -71,7 +71,7 @@ public:
size_t placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); size_t placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
//size_t placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); //size_t placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
virtual size_t generate(MMVManip *vm, PseudoRandom *pr, v3s16 p) = 0; virtual size_t generate(MMVManip *vm, PcgRandom *pr, v3s16 p) = 0;
virtual int getHeight() = 0; virtual int getHeight() = 0;
u32 flags; u32 flags;
@ -90,7 +90,7 @@ public:
class DecoSimple : public Decoration { class DecoSimple : public Decoration {
public: public:
virtual size_t generate(MMVManip *vm, PseudoRandom *pr, v3s16 p); virtual size_t generate(MMVManip *vm, PcgRandom *pr, v3s16 p);
bool canPlaceDecoration(MMVManip *vm, v3s16 p); bool canPlaceDecoration(MMVManip *vm, v3s16 p);
virtual int getHeight(); virtual int getHeight();
@ -107,7 +107,7 @@ class DecoSchematic : public Decoration {
public: public:
DecoSchematic(); DecoSchematic();
virtual size_t generate(MMVManip *vm, PseudoRandom *pr, v3s16 p); virtual size_t generate(MMVManip *vm, PcgRandom *pr, v3s16 p);
virtual int getHeight(); virtual int getHeight();
Rotation rotation; Rotation rotation;

View File

@ -126,7 +126,7 @@ size_t Ore::placeOre(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax)
void OreScatter::generate(MMVManip *vm, int mapseed, u32 blockseed, void OreScatter::generate(MMVManip *vm, int mapseed, u32 blockseed,
v3s16 nmin, v3s16 nmax, u8 *biomemap) v3s16 nmin, v3s16 nmax, u8 *biomemap)
{ {
PseudoRandom pr(blockseed); PcgRandom pr(blockseed);
MapNode n_ore(c_ore, 0, ore_param2); MapNode n_ore(c_ore, 0, ore_param2);
u32 sizex = (nmax.X - nmin.X + 1); u32 sizex = (nmax.X - nmin.X + 1);
@ -175,7 +175,7 @@ void OreScatter::generate(MMVManip *vm, int mapseed, u32 blockseed,
void OreSheet::generate(MMVManip *vm, int mapseed, u32 blockseed, void OreSheet::generate(MMVManip *vm, int mapseed, u32 blockseed,
v3s16 nmin, v3s16 nmax, u8 *biomemap) v3s16 nmin, v3s16 nmax, u8 *biomemap)
{ {
PseudoRandom pr(blockseed + 4234); PcgRandom pr(blockseed + 4234);
MapNode n_ore(c_ore, 0, ore_param2); MapNode n_ore(c_ore, 0, ore_param2);
u16 max_height = column_height_max; u16 max_height = column_height_max;
@ -240,7 +240,7 @@ OrePuff::~OrePuff()
void OrePuff::generate(MMVManip *vm, int mapseed, u32 blockseed, void OrePuff::generate(MMVManip *vm, int mapseed, u32 blockseed,
v3s16 nmin, v3s16 nmax, u8 *biomemap) v3s16 nmin, v3s16 nmax, u8 *biomemap)
{ {
PseudoRandom pr(blockseed + 4234); PcgRandom pr(blockseed + 4234);
MapNode n_ore(c_ore, 0, ore_param2); MapNode n_ore(c_ore, 0, ore_param2);
int y_start = pr.range(nmin.Y, nmax.Y); int y_start = pr.range(nmin.Y, nmax.Y);
@ -313,7 +313,7 @@ void OrePuff::generate(MMVManip *vm, int mapseed, u32 blockseed,
void OreBlob::generate(MMVManip *vm, int mapseed, u32 blockseed, void OreBlob::generate(MMVManip *vm, int mapseed, u32 blockseed,
v3s16 nmin, v3s16 nmax, u8 *biomemap) v3s16 nmin, v3s16 nmax, u8 *biomemap)
{ {
PseudoRandom pr(blockseed + 2404); PcgRandom pr(blockseed + 2404);
MapNode n_ore(c_ore, 0, ore_param2); MapNode n_ore(c_ore, 0, ore_param2);
u32 sizex = (nmax.X - nmin.X + 1); u32 sizex = (nmax.X - nmin.X + 1);
@ -391,7 +391,7 @@ OreVein::~OreVein()
void OreVein::generate(MMVManip *vm, int mapseed, u32 blockseed, void OreVein::generate(MMVManip *vm, int mapseed, u32 blockseed,
v3s16 nmin, v3s16 nmax, u8 *biomemap) v3s16 nmin, v3s16 nmax, u8 *biomemap)
{ {
PseudoRandom pr(blockseed + 520); PcgRandom pr(blockseed + 520);
MapNode n_ore(c_ore, 0, ore_param2); MapNode n_ore(c_ore, 0, ore_param2);
u32 sizex = (nmax.X - nmin.X + 1); u32 sizex = (nmax.X - nmin.X + 1);

View File

@ -94,7 +94,7 @@ void Schematic::resolveNodeNames()
} }
void Schematic::blitToVManip(v3s16 p, MMVManip *vm, Rotation rot, bool force_place) void Schematic::blitToVManip(MMVManip *vm, v3s16 p, Rotation rot, bool force_place)
{ {
sanity_check(m_ndef != NULL); sanity_check(m_ndef != NULL);
@ -175,20 +175,21 @@ void Schematic::blitToVManip(v3s16 p, MMVManip *vm, Rotation rot, bool force_pla
} }
void Schematic::placeStructure(Map *map, v3s16 p, u32 flags, bool Schematic::placeOnVManip(MMVManip *vm, v3s16 p, u32 flags,
Rotation rot, bool force_place) Rotation rot, bool force_place)
{ {
assert(schemdata != NULL); // Pre-condition assert(vm != NULL);
assert(schemdata != NULL);
sanity_check(m_ndef != NULL); sanity_check(m_ndef != NULL);
MMVManip *vm = new MMVManip(map); //// Determine effective rotation and effective schematic dimensions
if (rot == ROTATE_RAND) if (rot == ROTATE_RAND)
rot = (Rotation)myrand_range(ROTATE_0, ROTATE_270); rot = (Rotation)myrand_range(ROTATE_0, ROTATE_270);
v3s16 s = (rot == ROTATE_90 || rot == ROTATE_270) ? v3s16 s = (rot == ROTATE_90 || rot == ROTATE_270) ?
v3s16(size.Z, size.Y, size.X) : size; v3s16(size.Z, size.Y, size.X) : size;
//// Adjust placement position if necessary
if (flags & DECO_PLACE_CENTER_X) if (flags & DECO_PLACE_CENTER_X)
p.X -= (s.X + 1) / 2; p.X -= (s.X + 1) / 2;
if (flags & DECO_PLACE_CENTER_Y) if (flags & DECO_PLACE_CENTER_Y)
@ -196,25 +197,60 @@ void Schematic::placeStructure(Map *map, v3s16 p, u32 flags,
if (flags & DECO_PLACE_CENTER_Z) if (flags & DECO_PLACE_CENTER_Z)
p.Z -= (s.Z + 1) / 2; p.Z -= (s.Z + 1) / 2;
v3s16 bp1 = getNodeBlockPos(p); blitToVManip(vm, p, rot, force_place);
v3s16 bp2 = getNodeBlockPos(p + s - v3s16(1,1,1));
vm->initialEmerge(bp1, bp2);
blitToVManip(p, vm, rot, force_place); return vm->m_area.contains(VoxelArea(p, p + s - v3s16(1,1,1)));
}
void Schematic::placeOnMap(Map *map, v3s16 p, u32 flags,
Rotation rot, bool force_place)
{
std::map<v3s16, MapBlock *> lighting_modified_blocks; std::map<v3s16, MapBlock *> lighting_modified_blocks;
std::map<v3s16, MapBlock *> modified_blocks; std::map<v3s16, MapBlock *> modified_blocks;
vm->blitBackAll(&modified_blocks); std::map<v3s16, MapBlock *>::iterator it;
assert(map != NULL);
assert(schemdata != NULL);
sanity_check(m_ndef != NULL);
//// Determine effective rotation and effective schematic dimensions
if (rot == ROTATE_RAND)
rot = (Rotation)myrand_range(ROTATE_0, ROTATE_270);
v3s16 s = (rot == ROTATE_90 || rot == ROTATE_270) ?
v3s16(size.Z, size.Y, size.X) : size;
//// Adjust placement position if necessary
if (flags & DECO_PLACE_CENTER_X)
p.X -= (s.X + 1) / 2;
if (flags & DECO_PLACE_CENTER_Y)
p.Y -= (s.Y + 1) / 2;
if (flags & DECO_PLACE_CENTER_Z)
p.Z -= (s.Z + 1) / 2;
//// Create VManip for effected area, emerge our area, modify area
//// inside VManip, then blit back.
v3s16 bp1 = getNodeBlockPos(p);
v3s16 bp2 = getNodeBlockPos(p + s - v3s16(1,1,1));
MMVManip vm(map);
vm.initialEmerge(bp1, bp2);
blitToVManip(&vm, p, rot, force_place);
vm.blitBackAll(&modified_blocks);
//// Carry out post-map-modification actions
//// Update lighting
// TODO: Optimize this by using Mapgen::calcLighting() instead // TODO: Optimize this by using Mapgen::calcLighting() instead
lighting_modified_blocks.insert(modified_blocks.begin(), modified_blocks.end()); lighting_modified_blocks.insert(modified_blocks.begin(), modified_blocks.end());
map->updateLighting(lighting_modified_blocks, modified_blocks); map->updateLighting(lighting_modified_blocks, modified_blocks);
//// Create & dispatch map modification events to observers
MapEditEvent event; MapEditEvent event;
event.type = MEET_OTHER; event.type = MEET_OTHER;
for (std::map<v3s16, MapBlock *>::iterator for (it = modified_blocks.begin(); it != modified_blocks.end(); ++it)
it = modified_blocks.begin();
it != modified_blocks.end(); ++it)
event.modified_blocks.insert(it->first); event.modified_blocks.insert(it->first);
map->dispatchEvent(&event); map->dispatchEvent(&event);

View File

@ -106,8 +106,9 @@ public:
bool serializeToLua(std::ostream *os, const std::vector<std::string> &names, bool serializeToLua(std::ostream *os, const std::vector<std::string> &names,
bool use_comments, u32 indent_spaces); bool use_comments, u32 indent_spaces);
void blitToVManip(v3s16 p, MMVManip *vm, Rotation rot, bool force_place); void blitToVManip(MMVManip *vm, v3s16 p, Rotation rot, bool force_place);
void placeStructure(Map *map, v3s16 p, u32 flags, Rotation rot, bool force_place); bool placeOnVManip(MMVManip *vm, v3s16 p, u32 flags, Rotation rot, bool force_place);
void placeOnMap(Map *map, v3s16 p, u32 flags, Rotation rot, bool force_place);
void applyProbabilities(v3s16 p0, void applyProbabilities(v3s16 p0,
std::vector<std::pair<v3s16, u8> > *plist, std::vector<std::pair<v3s16, u8> > *plist,

View File

@ -216,6 +216,8 @@ Mapper::Mapper(IrrlichtDevice *device, Client *client)
this->m_shdrsrc = client->getShaderSource(); this->m_shdrsrc = client->getShaderSource();
this->m_ndef = client->getNodeDefManager(); this->m_ndef = client->getNodeDefManager();
m_angle = 0.f;
// Initialize static settings // Initialize static settings
m_enable_shaders = g_settings->getBool("enable_shaders"); m_enable_shaders = g_settings->getBool("enable_shaders");
m_surface_mode_scan_height = m_surface_mode_scan_height =

View File

@ -1059,69 +1059,14 @@ void Server::handleCommand_ChatMessage(NetworkPacket* pkt)
return; return;
} }
// If something goes wrong, this player is to blame
RollbackScopeActor rollback_scope(m_rollback,
std::string("player:")+player->getName());
// Get player name of this client // Get player name of this client
std::wstring name = narrow_to_wide(player->getName()); std::string name = player->getName();
std::wstring wname = narrow_to_wide(name);
// Run script hook std::wstring answer_to_sender = handleChat(name, wname, message, pkt->getPeerId());
bool ate = m_script->on_chat_message(player->getName(), if (!answer_to_sender.empty()) {
wide_to_narrow(message)); // Send the answer to sender
// If script ate the message, don't proceed SendChatMessage(pkt->getPeerId(), answer_to_sender);
if (ate)
return;
// Line to send to players
std::wstring line;
// Whether to send to the player that sent the line
bool send_to_sender_only = false;
// Commands are implemented in Lua, so only catch invalid
// commands that were not "eaten" and send an error back
if (message[0] == L'/') {
message = message.substr(1);
send_to_sender_only = true;
if (message.length() == 0)
line += L"-!- Empty command";
else
line += L"-!- Invalid command: " + str_split(message, L' ')[0];
}
else {
if (checkPriv(player->getName(), "shout")) {
line += L"<";
line += name;
line += L"> ";
line += message;
} else {
line += L"-!- You don't have permission to shout.";
send_to_sender_only = true;
}
}
if (line != L"")
{
/*
Send the message to sender
*/
if (send_to_sender_only) {
SendChatMessage(pkt->getPeerId(), line);
}
/*
Send the message to others
*/
else {
actionstream << "CHAT: " << wide_to_narrow(line)<<std::endl;
std::vector<u16> clients = m_clients.getClientIDs();
for (std::vector<u16>::iterator i = clients.begin();
i != clients.end(); ++i) {
if (*i != pkt->getPeerId())
SendChatMessage(*i, line);
}
}
} }
} }

View File

@ -158,21 +158,21 @@ s32 PcgRandom::randNormalDist(s32 min, s32 max, int num_trials)
float noise2d(int x, int y, int seed) float noise2d(int x, int y, int seed)
{ {
int n = (NOISE_MAGIC_X * x + NOISE_MAGIC_Y * y unsigned int n = (NOISE_MAGIC_X * x + NOISE_MAGIC_Y * y
+ NOISE_MAGIC_SEED * seed) & 0x7fffffff; + NOISE_MAGIC_SEED * seed) & 0x7fffffff;
n = (n >> 13) ^ n; n = (n >> 13) ^ n;
n = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff; n = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;
return 1.f - (float)n / 0x40000000; return 1.f - (float)(int)n / 0x40000000;
} }
float noise3d(int x, int y, int z, int seed) float noise3d(int x, int y, int z, int seed)
{ {
int n = (NOISE_MAGIC_X * x + NOISE_MAGIC_Y * y + NOISE_MAGIC_Z * z unsigned int n = (NOISE_MAGIC_X * x + NOISE_MAGIC_Y * y + NOISE_MAGIC_Z * z
+ NOISE_MAGIC_SEED * seed) & 0x7fffffff; + NOISE_MAGIC_SEED * seed) & 0x7fffffff;
n = (n >> 13) ^ n; n = (n >> 13) ^ n;
n = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff; n = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;
return 1.f - (float)n / 0x40000000; return 1.f - (float)(int)n / 0x40000000;
} }

View File

@ -20,7 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#ifndef OBJDEF_HEADER #ifndef OBJDEF_HEADER
#define OBJDEF_HEADER #define OBJDEF_HEADER
#include "basicmacros.h" #include "util/basic_macros.h"
#include "porting.h" #include "porting.h"
class IGameDef; class IGameDef;

View File

@ -29,6 +29,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#define PLAYERNAME_SIZE 20 #define PLAYERNAME_SIZE 20
#define PLAYERNAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_" #define PLAYERNAME_ALLOWED_CHARS "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_"
#define PLAYERNAME_ALLOWED_CHARS_USER_EXPL "'a' to 'z', 'A' to 'Z', '0' to '9', '-', '_'"
struct PlayerControl struct PlayerControl
{ {

View File

@ -29,6 +29,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <sys/types.h> #include <sys/types.h>
#include <sys/sysctl.h> #include <sys/sysctl.h>
#elif defined(_WIN32) #elif defined(_WIN32)
#include <windows.h>
#include <wincrypt.h>
#include <algorithm> #include <algorithm>
#endif #endif
#if !defined(_WIN32) #if !defined(_WIN32)
@ -701,5 +703,44 @@ v2u32 getDisplaySize()
# endif // __ANDROID__ # endif // __ANDROID__
#endif // SERVER #endif // SERVER
} //namespace porting
////
//// OS-specific Secure Random
////
#ifdef WIN32
bool secure_rand_fill_buf(void *buf, size_t len)
{
HCRYPTPROV wctx;
if (!CryptAcquireContext(&wctx, NULL, NULL, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT))
return false;
CryptGenRandom(wctx, len, (BYTE *)buf);
CryptReleaseContext(wctx, 0);
return true;
}
#else
bool secure_rand_fill_buf(void *buf, size_t len)
{
// N.B. This function checks *only* for /dev/urandom, because on most
// common OSes it is non-blocking, whereas /dev/random is blocking, and it
// is exceptionally uncommon for there to be a situation where /dev/random
// exists but /dev/urandom does not. This guesswork is necessary since
// random devices are not covered by any POSIX standard...
FILE *fp = fopen("/dev/urandom", "rb");
if (!fp)
return false;
bool success = fread(buf, len, 1, fp) == 1;
fclose(fp);
return success;
}
#endif
} //namespace porting

View File

@ -343,6 +343,7 @@ void setXorgClassHint(const video::SExposedVideoData &video_data,
// threads in the process inherit this exception handler // threads in the process inherit this exception handler
void setWin32ExceptionHandler(); void setWin32ExceptionHandler();
bool secure_rand_fill_buf(void *buf, size_t len);
} // namespace porting } // namespace porting
#ifdef __ANDROID__ #ifdef __ANDROID__

View File

@ -100,6 +100,9 @@ ItemDefinition read_item_definition(lua_State* L,int index,
lua_getfield(L, -1, "place"); lua_getfield(L, -1, "place");
read_soundspec(L, -1, def.sound_place); read_soundspec(L, -1, def.sound_place);
lua_pop(L, 1); lua_pop(L, 1);
lua_getfield(L, -1, "place_failed");
read_soundspec(L, -1, def.sound_place_failed);
lua_pop(L, 1);
} }
lua_pop(L, 1); lua_pop(L, 1);

View File

@ -67,10 +67,11 @@ public:
ScriptApiBase ScriptApiBase
*/ */
ScriptApiBase::ScriptApiBase() ScriptApiBase::ScriptApiBase() :
m_luastackmutex(true)
{ {
#ifdef SCRIPTAPI_LOCK_DEBUG #ifdef SCRIPTAPI_LOCK_DEBUG
m_locked = false; m_lock_recursion_count = 0;
#endif #endif
m_luastack = luaL_newstate(); m_luastack = luaL_newstate();
@ -157,9 +158,14 @@ void ScriptApiBase::loadScript(const std::string &script_path)
// - runs the callbacks // - runs the callbacks
// - replaces the table and arguments with the return value, // - replaces the table and arguments with the return value,
// computed depending on mode // computed depending on mode
// This function must only be called with scriptlock held (i.e. inside of a
// code block with SCRIPTAPI_PRECHECKHEADER declared)
void ScriptApiBase::runCallbacksRaw(int nargs, void ScriptApiBase::runCallbacksRaw(int nargs,
RunCallbacksMode mode, const char *fxn) RunCallbacksMode mode, const char *fxn)
{ {
#ifdef SCRIPTAPI_LOCK_DEBUG
assert(m_lock_recursion_count > 0);
#endif
lua_State *L = getStack(); lua_State *L = getStack();
FATAL_ERROR_IF(lua_gettop(L) < nargs + 1, "Not enough arguments"); FATAL_ERROR_IF(lua_gettop(L) < nargs + 1, "Not enough arguments");

View File

@ -28,6 +28,7 @@ extern "C" {
} }
#include "irrlichttypes.h" #include "irrlichttypes.h"
#include "threads.h"
#include "threading/mutex.h" #include "threading/mutex.h"
#include "threading/mutex_auto_lock.h" #include "threading/mutex_auto_lock.h"
#include "common/c_types.h" #include "common/c_types.h"
@ -53,12 +54,6 @@ extern "C" {
#define setOriginFromTable(index) \ #define setOriginFromTable(index) \
setOriginFromTableRaw(index, __FUNCTION__) setOriginFromTableRaw(index, __FUNCTION__)
#define SCRIPT_MOD_NAME_FIELD "current_mod_name"
// MUST be an invalid mod name so that mods can't
// use that name to bypass security!
#define BUILTIN_MOD_NAME "*builtin*"
class Server; class Server;
class Environment; class Environment;
class GUIEngine; class GUIEngine;
@ -117,7 +112,8 @@ protected:
std::string m_last_run_mod; std::string m_last_run_mod;
bool m_secure; bool m_secure;
#ifdef SCRIPTAPI_LOCK_DEBUG #ifdef SCRIPTAPI_LOCK_DEBUG
bool m_locked; int m_lock_recursion_count;
threadid_t m_owning_thread;
#endif #endif
private: private:

View File

@ -157,3 +157,42 @@ void ScriptApiEnv::initializeEnvironment(ServerEnvironment *env)
} }
lua_pop(L, 1); lua_pop(L, 1);
} }
void ScriptApiEnv::on_emerge_area_completion(
v3s16 blockpos, int action, ScriptCallbackState *state)
{
Server *server = getServer();
// Note that the order of these locks is important! Envlock must *ALWAYS*
// be acquired before attempting to acquire scriptlock, or else ServerThread
// will try to acquire scriptlock after it already owns envlock, thus
// deadlocking EmergeThread and ServerThread
MutexAutoLock envlock(server->m_env_mutex);
SCRIPTAPI_PRECHECKHEADER
int error_handler = PUSH_ERROR_HANDLER(L);
lua_rawgeti(L, LUA_REGISTRYINDEX, state->callback_ref);
luaL_checktype(L, -1, LUA_TFUNCTION);
push_v3s16(L, blockpos);
lua_pushinteger(L, action);
lua_pushinteger(L, state->refcount);
lua_rawgeti(L, LUA_REGISTRYINDEX, state->args_ref);
setOriginDirect(state->origin.c_str());
try {
PCALL_RES(lua_pcall(L, 4, 0, error_handler));
} catch (LuaError &e) {
server->setAsyncFatalError(e.what());
}
lua_pop(L, 1); // Pop error handler
if (state->refcount == 0) {
luaL_unref(L, LUA_REGISTRYINDEX, state->callback_ref);
luaL_unref(L, LUA_REGISTRYINDEX, state->args_ref);
}
}

View File

@ -24,20 +24,23 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "irr_v3d.h" #include "irr_v3d.h"
class ServerEnvironment; class ServerEnvironment;
struct MapgenParams; struct ScriptCallbackState;
class ScriptApiEnv class ScriptApiEnv : virtual public ScriptApiBase {
: virtual public ScriptApiBase
{
public: public:
// On environment step // Called on environment step
void environment_Step(float dtime); void environment_Step(float dtime);
// After generating a piece of map
// Called after generating a piece of map
void environment_OnGenerated(v3s16 minp, v3s16 maxp, u32 blockseed); void environment_OnGenerated(v3s16 minp, v3s16 maxp, u32 blockseed);
//called on player event // Called on player event
void player_event(ServerActiveObject *player, std::string type); void player_event(ServerActiveObject *player, std::string type);
// Called after emerge of a block queued from core.emerge_area()
void on_emerge_area_completion(v3s16 blockpos, int action,
ScriptCallbackState *state);
void initializeEnvironment(ServerEnvironment *env); void initializeEnvironment(ServerEnvironment *env);
}; };

View File

@ -32,28 +32,50 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#ifdef SCRIPTAPI_LOCK_DEBUG #ifdef SCRIPTAPI_LOCK_DEBUG
#include "debug.h" // assert() #include "debug.h" // assert()
class LockChecker { class LockChecker {
public: public:
LockChecker(bool *variable) { LockChecker(int *recursion_counter, threadid_t *owning_thread)
assert(*variable == false); {
m_lock_recursion_counter = recursion_counter;
m_owning_thread = owning_thread;
m_original_level = *recursion_counter;
m_variable = variable; if (*m_lock_recursion_counter > 0)
*m_variable = true; assert(thr_is_current_thread(*m_owning_thread));
else
*m_owning_thread = thr_get_current_thread_id();
(*m_lock_recursion_counter)++;
} }
~LockChecker() {
*m_variable = false; ~LockChecker()
{
assert(thr_is_current_thread(*m_owning_thread));
assert(*m_lock_recursion_counter > 0);
(*m_lock_recursion_counter)--;
assert(*m_lock_recursion_counter == m_original_level);
} }
private: private:
bool *m_variable; int *m_lock_recursion_counter;
int m_original_level;
threadid_t *m_owning_thread;
}; };
#define SCRIPTAPI_LOCK_CHECK LockChecker(&(this->m_locked)) #define SCRIPTAPI_LOCK_CHECK \
LockChecker scriptlock_checker( \
&this->m_lock_recursion_count, \
&this->m_owning_thread)
#else #else
#define SCRIPTAPI_LOCK_CHECK while(0) #define SCRIPTAPI_LOCK_CHECK while(0)
#endif #endif
#define SCRIPTAPI_PRECHECKHEADER \ #define SCRIPTAPI_PRECHECKHEADER \
MutexAutoLock(this->m_luastackmutex); \ MutexAutoLock scriptlock(this->m_luastackmutex); \
SCRIPTAPI_LOCK_CHECK; \ SCRIPTAPI_LOCK_CHECK; \
realityCheck(); \ realityCheck(); \
lua_State *L = getStack(); \ lua_State *L = getStack(); \

View File

@ -194,3 +194,7 @@ ScriptApiPlayer::~ScriptApiPlayer()
{ {
} }
ScriptApiPlayer::~ScriptApiPlayer()
{
}

View File

@ -83,6 +83,21 @@ void LuaABM::trigger(ServerEnvironment *env, v3s16 p, MapNode n,
lua_pop(L, 1); // Pop error handler lua_pop(L, 1); // Pop error handler
} }
void LuaEmergeAreaCallback(v3s16 blockpos, EmergeAction action, void *param)
{
ScriptCallbackState *state = (ScriptCallbackState *)param;
assert(state != NULL);
assert(state->script != NULL);
assert(state->refcount > 0);
state->refcount--;
state->script->on_emerge_area_completion(blockpos, action, state);
if (state->refcount == 0)
delete state;
}
// Exported functions // Exported functions
// set_node(pos, node) // set_node(pos, node)
@ -748,24 +763,46 @@ int ModApiEnvMod::l_line_of_sight(lua_State *L)
return 1; return 1;
} }
// emerge_area(p1, p2, [callback, context])
// emerge_area(p1, p2) // emerge mapblocks in area p1..p2, calls callback with context upon completion
// emerge mapblocks in area p1..p2
int ModApiEnvMod::l_emerge_area(lua_State *L) int ModApiEnvMod::l_emerge_area(lua_State *L)
{ {
GET_ENV_PTR; GET_ENV_PTR;
EmergeCompletionCallback callback = NULL;
ScriptCallbackState *state = NULL;
EmergeManager *emerge = getServer(L)->getEmergeManager(); EmergeManager *emerge = getServer(L)->getEmergeManager();
v3s16 bpmin = getNodeBlockPos(read_v3s16(L, 1)); v3s16 bpmin = getNodeBlockPos(read_v3s16(L, 1));
v3s16 bpmax = getNodeBlockPos(read_v3s16(L, 2)); v3s16 bpmax = getNodeBlockPos(read_v3s16(L, 2));
sortBoxVerticies(bpmin, bpmax); sortBoxVerticies(bpmin, bpmax);
size_t num_blocks = VoxelArea(bpmin, bpmax).getVolume();
assert(num_blocks != 0);
if (lua_isfunction(L, 3)) {
callback = LuaEmergeAreaCallback;
lua_pushvalue(L, 3);
int callback_ref = luaL_ref(L, LUA_REGISTRYINDEX);
lua_pushvalue(L, 4);
int args_ref = luaL_ref(L, LUA_REGISTRYINDEX);
state = new ScriptCallbackState;
state->script = getServer(L)->getScriptIface();
state->callback_ref = callback_ref;
state->args_ref = args_ref;
state->refcount = num_blocks;
state->origin = getScriptApiBase(L)->getOrigin();
}
for (s16 z = bpmin.Z; z <= bpmax.Z; z++) for (s16 z = bpmin.Z; z <= bpmax.Z; z++)
for (s16 y = bpmin.Y; y <= bpmax.Y; y++) for (s16 y = bpmin.Y; y <= bpmax.Y; y++)
for (s16 x = bpmin.X; x <= bpmax.X; x++) { for (s16 x = bpmin.X; x <= bpmax.X; x++) {
v3s16 chunkpos(x, y, z); emerge->enqueueBlockEmergeEx(v3s16(x, y, z), PEER_ID_INEXISTENT,
emerge->enqueueBlockEmerge(PEER_ID_INEXISTENT, chunkpos, false, true); BLOCK_EMERGE_ALLOW_GEN | BLOCK_EMERGE_FORCE_QUEUE, callback, state);
} }
return 0; return 0;

View File

@ -172,8 +172,7 @@ public:
static void Initialize(lua_State *L, int top); static void Initialize(lua_State *L, int top);
}; };
class LuaABM : public ActiveBlockModifier class LuaABM : public ActiveBlockModifier {
{
private: private:
int m_id; int m_id;
@ -219,4 +218,12 @@ public:
u32 active_object_count, u32 active_object_count_wider); u32 active_object_count, u32 active_object_count_wider);
}; };
struct ScriptCallbackState {
GameScripting *script;
int callback_ref;
int args_ref;
unsigned int refcount;
std::string origin;
};
#endif /* L_ENV_H_ */ #endif /* L_ENV_H_ */

View File

@ -1271,12 +1271,54 @@ int ModApiMapgen::l_place_schematic(lua_State *L)
return 0; return 0;
} }
schem->placeStructure(map, p, 0, (Rotation)rot, force_placement); schem->placeOnMap(map, p, 0, (Rotation)rot, force_placement);
lua_pushboolean(L, true); lua_pushboolean(L, true);
return 1; return 1;
} }
int ModApiMapgen::l_place_schematic_on_vmanip(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
SchematicManager *schemmgr = getServer(L)->getEmergeManager()->schemmgr;
//// Read VoxelManip object
MMVManip *vm = LuaVoxelManip::checkobject(L, 1)->vm;
//// Read position
v3s16 p = check_v3s16(L, 2);
//// Read rotation
int rot = ROTATE_0;
const char *enumstr = lua_tostring(L, 4);
if (enumstr)
string_to_enum(es_Rotation, rot, std::string(enumstr));
//// Read force placement
bool force_placement = true;
if (lua_isboolean(L, 6))
force_placement = lua_toboolean(L, 6);
//// Read node replacements
StringMap replace_names;
if (lua_istable(L, 5))
read_schematic_replacements(L, 5, &replace_names);
//// Read schematic
Schematic *schem = get_or_load_schematic(L, 3, schemmgr, &replace_names);
if (!schem) {
errorstream << "place_schematic: failed to get schematic" << std::endl;
return 0;
}
bool schematic_did_fit = schem->placeOnVManip(
vm, p, 0, (Rotation)rot, force_placement);
lua_pushboolean(L, schematic_did_fit);
return 1;
}
// serialize_schematic(schematic, format, options={...}) // serialize_schematic(schematic, format, options={...})
int ModApiMapgen::l_serialize_schematic(lua_State *L) int ModApiMapgen::l_serialize_schematic(lua_State *L)
{ {
@ -1355,5 +1397,6 @@ void ModApiMapgen::Initialize(lua_State *L, int top)
API_FCT(generate_decorations); API_FCT(generate_decorations);
API_FCT(create_schematic); API_FCT(create_schematic);
API_FCT(place_schematic); API_FCT(place_schematic);
API_FCT(place_schematic_on_vmanip);
API_FCT(serialize_schematic); API_FCT(serialize_schematic);
} }

View File

@ -85,9 +85,13 @@ private:
// create_schematic(p1, p2, probability_list, filename) // create_schematic(p1, p2, probability_list, filename)
static int l_create_schematic(lua_State *L); static int l_create_schematic(lua_State *L);
// place_schematic(p, schematic, rotation, replacement) // place_schematic(p, schematic, rotation, replacements, force_placement)
static int l_place_schematic(lua_State *L); static int l_place_schematic(lua_State *L);
// place_schematic_on_vmanip(vm, p, schematic,
// rotation, replacements, force_placement)
static int l_place_schematic_on_vmanip(lua_State *L);
// serialize_schematic(schematic, format, options={...}) // serialize_schematic(schematic, format, options={...})
static int l_serialize_schematic(lua_State *L); static int l_serialize_schematic(lua_State *L);

View File

@ -22,6 +22,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "common/c_converter.h" #include "common/c_converter.h"
#include "common/c_content.h" #include "common/c_content.h"
#include "log.h" #include "log.h"
#include "porting.h"
#include "util/numeric.h"
/////////////////////////////////////// ///////////////////////////////////////
/* /*
@ -600,3 +602,116 @@ const luaL_reg LuaPcgRandom::methods[] = {
luamethod(LuaPcgRandom, rand_normal_dist), luamethod(LuaPcgRandom, rand_normal_dist),
{0,0} {0,0}
}; };
///////////////////////////////////////
/*
LuaSecureRandom
*/
bool LuaSecureRandom::fillRandBuf()
{
return porting::secure_rand_fill_buf(m_rand_buf, RAND_BUF_SIZE);
}
int LuaSecureRandom::l_next_bytes(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
LuaSecureRandom *o = checkobject(L, 1);
u32 count = lua_isnumber(L, 2) ? lua_tointeger(L, 2) : 1;
// Limit count
count = MYMIN(RAND_BUF_SIZE, count);
// Find out whether we can pass directly from our array, or have to do some gluing
size_t count_remaining = RAND_BUF_SIZE - o->m_rand_idx;
if (count_remaining >= count) {
lua_pushlstring(L, o->m_rand_buf + o->m_rand_idx, count);
o->m_rand_idx += count;
} else {
char output_buf[RAND_BUF_SIZE];
// Copy over with what we have left from our current buffer
memcpy(output_buf, o->m_rand_buf + o->m_rand_idx, count_remaining);
// Refill buffer and copy over the remainder of what was requested
o->fillRandBuf();
memcpy(output_buf + count_remaining, o->m_rand_buf, count - count_remaining);
// Update index
o->m_rand_idx = count - count_remaining;
lua_pushlstring(L, output_buf, count);
}
return 1;
}
int LuaSecureRandom::create_object(lua_State *L)
{
LuaSecureRandom *o = new LuaSecureRandom();
// Fail and return nil if we can't securely fill the buffer
if (!o->fillRandBuf()) {
delete o;
return 0;
}
*(void **)(lua_newuserdata(L, sizeof(void *))) = o;
luaL_getmetatable(L, className);
lua_setmetatable(L, -2);
return 1;
}
int LuaSecureRandom::gc_object(lua_State *L)
{
LuaSecureRandom *o = *(LuaSecureRandom **)(lua_touserdata(L, 1));
delete o;
return 0;
}
LuaSecureRandom *LuaSecureRandom::checkobject(lua_State *L, int narg)
{
luaL_checktype(L, narg, LUA_TUSERDATA);
void *ud = luaL_checkudata(L, narg, className);
if (!ud)
luaL_typerror(L, narg, className);
return *(LuaSecureRandom **)ud;
}
void LuaSecureRandom::Register(lua_State *L)
{
lua_newtable(L);
int methodtable = lua_gettop(L);
luaL_newmetatable(L, className);
int metatable = lua_gettop(L);
lua_pushliteral(L, "__metatable");
lua_pushvalue(L, methodtable);
lua_settable(L, metatable);
lua_pushliteral(L, "__index");
lua_pushvalue(L, methodtable);
lua_settable(L, metatable);
lua_pushliteral(L, "__gc");
lua_pushcfunction(L, gc_object);
lua_settable(L, metatable);
lua_pop(L, 1);
luaL_openlib(L, 0, methods, 0);
lua_pop(L, 1);
lua_register(L, className, create_object);
}
const char LuaSecureRandom::className[] = "SecureRandom";
const luaL_reg LuaSecureRandom::methods[] = {
luamethod(LuaSecureRandom, next_bytes),
{0,0}
};

View File

@ -160,4 +160,37 @@ public:
static void Register(lua_State *L); static void Register(lua_State *L);
}; };
/*
LuaSecureRandom
*/
class LuaSecureRandom : public ModApiBase {
private:
static const size_t RAND_BUF_SIZE = 2048;
static const char className[];
static const luaL_reg methods[];
u32 m_rand_idx;
char m_rand_buf[RAND_BUF_SIZE];
// Exported functions
// garbage collector
static int gc_object(lua_State *L);
// next_bytes(self, count) -> get count many bytes
static int l_next_bytes(lua_State *L);
public:
bool fillRandBuf();
// LuaSecureRandom()
// Creates an LuaSecureRandom and leaves it on top of stack
static int create_object(lua_State *L);
static LuaSecureRandom *checkobject(lua_State *L, int narg);
static void Register(lua_State *L);
};
#endif /* L_NOISE_H_ */ #endif /* L_NOISE_H_ */

View File

@ -45,6 +45,16 @@ int ModApiServer::l_get_server_status(lua_State *L)
return 1; return 1;
} }
// print(text)
int ModApiServer::l_print(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
std::string text;
text = luaL_checkstring(L, 1);
getServer(L)->printToConsoleOnly(text);
return 0;
}
// chat_send_all(text) // chat_send_all(text)
int ModApiServer::l_chat_send_all(lua_State *L) int ModApiServer::l_chat_send_all(lua_State *L)
{ {
@ -505,6 +515,8 @@ void ModApiServer::Initialize(lua_State *L, int top)
API_FCT(get_modpath); API_FCT(get_modpath);
API_FCT(get_modnames); API_FCT(get_modnames);
API_FCT(print);
API_FCT(chat_send_all); API_FCT(chat_send_all);
API_FCT(chat_send_player); API_FCT(chat_send_player);
API_FCT(show_formspec); API_FCT(show_formspec);

View File

@ -46,6 +46,9 @@ private:
// the returned list is sorted alphabetically for you // the returned list is sorted alphabetically for you
static int l_get_modnames(lua_State *L); static int l_get_modnames(lua_State *L);
// print(text)
static int l_print(lua_State *L);
// chat_send_all(text) // chat_send_all(text)
static int l_chat_send_all(lua_State *L); static int l_chat_send_all(lua_State *L);

View File

@ -38,7 +38,7 @@ private:
// log([level,] text) // log([level,] text)
// Writes a line to the logger. // Writes a line to the logger.
// The one-argument version logs to infostream. // The one-argument version logs to infostream.
// The two-argument version accept a log level: error, action, info, or verbose. // The two-argument version accepts a log level.
static int l_log(lua_State *L); static int l_log(lua_State *L);
// get us precision time // get us precision time

View File

@ -98,6 +98,7 @@ void GameScripting::InitializeModApi(lua_State *L, int top)
LuaPerlinNoiseMap::Register(L); LuaPerlinNoiseMap::Register(L);
LuaPseudoRandom::Register(L); LuaPseudoRandom::Register(L);
LuaPcgRandom::Register(L); LuaPcgRandom::Register(L);
LuaSecureRandom::Register(L);
LuaVoxelManip::Register(L); LuaVoxelManip::Register(L);
NodeMetaRef::Register(L); NodeMetaRef::Register(L);
NodeTimerRef::Register(L); NodeTimerRef::Register(L);

View File

@ -148,7 +148,8 @@ Server::Server(
const std::string &path_world, const std::string &path_world,
const SubgameSpec &gamespec, const SubgameSpec &gamespec,
bool simple_singleplayer_mode, bool simple_singleplayer_mode,
bool ipv6 bool ipv6,
ChatInterface *iface
): ):
m_path_world(path_world), m_path_world(path_world),
m_gamespec(gamespec), m_gamespec(gamespec),
@ -175,6 +176,7 @@ Server::Server(
m_clients(&m_con), m_clients(&m_con),
m_shutdown_requested(false), m_shutdown_requested(false),
m_shutdown_ask_reconnect(false), m_shutdown_ask_reconnect(false),
m_admin_chat(iface),
m_ignore_map_edit_events(false), m_ignore_map_edit_events(false),
m_ignore_map_edit_events_peer_id(0), m_ignore_map_edit_events_peer_id(0),
m_next_sound_id(0) m_next_sound_id(0)
@ -566,6 +568,25 @@ void Server::AsyncRunStep(bool initial_step)
m_env->getMap().timerUpdate(map_timer_and_unload_dtime, m_env->getMap().timerUpdate(map_timer_and_unload_dtime,
g_settings->getFloat("server_unload_unused_data_timeout"), g_settings->getFloat("server_unload_unused_data_timeout"),
U32_MAX); U32_MAX);
<<<<<<< HEAD
=======
}
/*
Listen to the admin chat, if available
*/
if (m_admin_chat) {
if (!m_admin_chat->command_queue.empty()) {
MutexAutoLock lock(m_env_mutex);
while (!m_admin_chat->command_queue.empty()) {
ChatEvent *evt = m_admin_chat->command_queue.pop_frontNoEx();
handleChatInterfaceEvent(evt);
delete evt;
}
}
m_admin_chat->outgoing_queue.push_back(
new ChatEventTimeInfo(m_env->getGameTime(), m_env->getTimeOfDay()));
>>>>>>> f3ac2517ea585d31d176070be25adf8a68624c87
} }
/* /*
@ -1093,16 +1114,19 @@ PlayerSAO* Server::StageTwoClientInit(u16 peer_id)
// Send information about joining in chat // Send information about joining in chat
{ {
std::wstring name = L"unknown"; std::string name = "unknown";
Player *player = m_env->getPlayer(peer_id); Player *player = m_env->getPlayer(peer_id);
if(player != NULL) if(player != NULL)
name = narrow_to_wide(player->getName()); name = player->getName();
std::wstring message; std::wstring message;
message += L"*** "; message += L"*** ";
message += name; message += narrow_to_wide(name);
message += L" joined the game."; message += L" joined the game.";
SendChatMessage(PEER_ID_INEXISTENT,message); SendChatMessage(PEER_ID_INEXISTENT,message);
if (m_admin_chat)
m_admin_chat->outgoing_queue.push_back(
new ChatEventNick(CET_NICK_ADD, name));
} }
} }
Address addr = getPeerAddress(player->peer_id); Address addr = getPeerAddress(player->peer_id);
@ -1430,6 +1454,16 @@ void Server::handlePeerChanges()
} }
} }
void Server::printToConsoleOnly(const std::string &text)
{
if (m_admin_chat) {
m_admin_chat->outgoing_queue.push_back(
new ChatEventChat("", utf8_to_wide(text)));
} else {
std::cout << text << std::endl;
}
}
void Server::Send(NetworkPacket* pkt) void Server::Send(NetworkPacket* pkt)
{ {
m_clients.send(pkt->getPeerId(), m_clients.send(pkt->getPeerId(),
@ -2663,9 +2697,13 @@ void Server::DeleteClient(u16 peer_id, ClientDeletionReason reason)
os << player->getName() << " "; os << player->getName() << " ";
} }
actionstream << player->getName() << " " std::string name = player->getName();
actionstream << name << " "
<< (reason == CDR_TIMEOUT ? "times out." : "leaves game.") << (reason == CDR_TIMEOUT ? "times out." : "leaves game.")
<< " List of players: " << os.str() << std::endl; << " List of players: " << os.str() << std::endl;
if (m_admin_chat)
m_admin_chat->outgoing_queue.push_back(
new ChatEventNick(CET_NICK_REMOVE, name));
} }
} }
{ {
@ -2698,6 +2736,96 @@ void Server::UpdateCrafting(Player* player)
plist->changeItem(0, preview); plist->changeItem(0, preview);
} }
void Server::handleChatInterfaceEvent(ChatEvent *evt)
{
if (evt->type == CET_NICK_ADD) {
// The terminal informed us of its nick choice
m_admin_nick = ((ChatEventNick *)evt)->nick;
if (!m_script->getAuth(m_admin_nick, NULL, NULL)) {
errorstream << "You haven't set up an account." << std::endl
<< "Please log in using the client as '"
<< m_admin_nick << "' with a secure password." << std::endl
<< "Until then, you can't execute admin tasks via the console," << std::endl
<< "and everybody can claim the user account instead of you," << std::endl
<< "giving them full control over this server." << std::endl;
}
} else {
assert(evt->type == CET_CHAT);
handleAdminChat((ChatEventChat *)evt);
}
}
std::wstring Server::handleChat(const std::string &name, const std::wstring &wname,
const std::wstring &wmessage, u16 peer_id_to_avoid_sending)
{
// If something goes wrong, this player is to blame
RollbackScopeActor rollback_scope(m_rollback,
std::string("player:") + name);
// Line to send
std::wstring line;
// Whether to send line to the player that sent the message, or to all players
bool broadcast_line = true;
// Run script hook
bool ate = m_script->on_chat_message(name,
wide_to_utf8(wmessage));
// If script ate the message, don't proceed
if (ate)
return L"";
// Commands are implemented in Lua, so only catch invalid
// commands that were not "eaten" and send an error back
if (wmessage[0] == L'/') {
std::wstring wcmd = wmessage.substr(1);
broadcast_line = false;
if (wcmd.length() == 0)
line += L"-!- Empty command";
else
line += L"-!- Invalid command: " + str_split(wcmd, L' ')[0];
} else {
line += L"<";
line += wname;
line += L"> ";
line += wmessage;
}
/*
Tell calling method to send the message to sender
*/
if (!broadcast_line) {
return line;
} else {
/*
Send the message to others
*/
actionstream << "CHAT: " << wide_to_narrow(line) << std::endl;
std::vector<u16> clients = m_clients.getClientIDs();
for (u16 i = 0; i < clients.size(); i++) {
u16 cid = clients[i];
if (cid != peer_id_to_avoid_sending)
SendChatMessage(cid, line);
}
}
return L"";
}
void Server::handleAdminChat(const ChatEventChat *evt)
{
std::string name = evt->nick;
std::wstring wname = utf8_to_wide(name);
std::wstring wmessage = evt->evt_msg;
std::wstring answer = handleChat(name, wname, wmessage);
// If asked to send answer to sender
if (!answer.empty()) {
m_admin_chat->outgoing_queue.push_back(new ChatEventChat("", answer));
}
}
RemoteClient* Server::getClient(u16 peer_id, ClientState state_min) RemoteClient* Server::getClient(u16 peer_id, ClientState state_min)
{ {
RemoteClient *client = getClientNoEx(peer_id,state_min); RemoteClient *client = getClientNoEx(peer_id,state_min);
@ -2829,9 +2957,19 @@ void Server::notifyPlayer(const char *name, const std::wstring &msg)
if (!m_env) if (!m_env)
return; return;
<<<<<<< HEAD
Player *player = m_env->getPlayer(name); Player *player = m_env->getPlayer(name);
if (!player) if (!player)
=======
if (m_admin_nick == name && !m_admin_nick.empty()) {
m_admin_chat->outgoing_queue.push_back(new ChatEventChat("", msg));
}
Player *player = m_env->getPlayer(name);
if (!player) {
>>>>>>> f3ac2517ea585d31d176070be25adf8a68624c87
return; return;
}
if (player->peer_id == PEER_ID_INEXISTENT) if (player->peer_id == PEER_ID_INEXISTENT)
return; return;
@ -3411,4 +3549,8 @@ void dedicated_server_loop(Server &server, bool &kill)
} }
} }
} }
<<<<<<< HEAD
} }
=======
}
>>>>>>> f3ac2517ea585d31d176070be25adf8a68624c87

View File

@ -32,6 +32,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include "util/numeric.h" #include "util/numeric.h"
#include "util/thread.h" #include "util/thread.h"
#include "environment.h" #include "environment.h"
#include "chat_interface.h"
#include "clientiface.h" #include "clientiface.h"
#include "network/networkpacket.h" #include "network/networkpacket.h"
#include <string> #include <string>
@ -171,7 +172,8 @@ public:
const std::string &path_world, const std::string &path_world,
const SubgameSpec &gamespec, const SubgameSpec &gamespec,
bool simple_singleplayer_mode, bool simple_singleplayer_mode,
bool ipv6 bool ipv6,
ChatInterface *iface = NULL
); );
~Server(); ~Server();
void start(Address bind_addr); void start(Address bind_addr);
@ -370,6 +372,8 @@ public:
u8* ser_vers, u16* prot_vers, u8* major, u8* minor, u8* patch, u8* ser_vers, u16* prot_vers, u8* major, u8* minor, u8* patch,
std::string* vers_string); std::string* vers_string);
void printToConsoleOnly(const std::string &text);
void SendPlayerHPOrDie(PlayerSAO *player); void SendPlayerHPOrDie(PlayerSAO *player);
void SendPlayerBreath(u16 peer_id); void SendPlayerBreath(u16 peer_id);
void SendInventory(PlayerSAO* playerSAO); void SendInventory(PlayerSAO* playerSAO);
@ -378,6 +382,9 @@ public:
// Bind address // Bind address
Address m_bind_addr; Address m_bind_addr;
// Environment mutex (envlock)
Mutex m_env_mutex;
private: private:
friend class EmergeThread; friend class EmergeThread;
@ -470,6 +477,14 @@ private:
void DeleteClient(u16 peer_id, ClientDeletionReason reason); void DeleteClient(u16 peer_id, ClientDeletionReason reason);
void UpdateCrafting(Player *player); void UpdateCrafting(Player *player);
void handleChatInterfaceEvent(ChatEvent *evt);
// This returns the answer to the sender of wmessage, or "" if there is none
std::wstring handleChat(const std::string &name, const std::wstring &wname,
const std::wstring &wmessage,
u16 peer_id_to_avoid_sending = PEER_ID_INEXISTENT);
void handleAdminChat(const ChatEventChat *evt);
v3f findSpawnPos(); v3f findSpawnPos();
// When called, connection mutex should be locked // When called, connection mutex should be locked
@ -518,7 +533,6 @@ private:
// Environment // Environment
ServerEnvironment *m_env; ServerEnvironment *m_env;
Mutex m_env_mutex;
// server connection // server connection
con::Connection m_con; con::Connection m_con;
@ -596,6 +610,9 @@ private:
std::string m_shutdown_msg; std::string m_shutdown_msg;
bool m_shutdown_ask_reconnect; bool m_shutdown_ask_reconnect;
ChatInterface *m_admin_chat;
std::string m_admin_nick;
/* /*
Map edit event queue. Automatically receives all map edits. Map edit event queue. Automatically receives all map edits.
The constructor of this class registers us to receive them through The constructor of this class registers us to receive them through

View File

@ -345,6 +345,8 @@ fake_function() {
gettext("Whether to allow players to damage and kill each other."); gettext("Whether to allow players to damage and kill each other.");
gettext("Static spawnpoint"); gettext("Static spawnpoint");
gettext("If this is set, players will always (re)spawn at the given position."); gettext("If this is set, players will always (re)spawn at the given position.");
gettext("Vertical spawn range");
gettext("Maximum distance above water level for player spawn.\nLarger values result in spawn points closer to (x = 0, z = 0).\nSmaller values may result in a suitable spawn point not being found,\nresulting in a spawn at (0, 0, 0) possibly buried underground.");
gettext("Disallow empty passwords"); gettext("Disallow empty passwords");
gettext("If enabled, new players cannot join with an empty password."); gettext("If enabled, new players cannot join with an empty password.");
gettext("Disable anticheat"); gettext("Disable anticheat");
@ -449,9 +451,9 @@ fake_function() {
gettext("Mapgen v5 cave2 noise parameters"); gettext("Mapgen v5 cave2 noise parameters");
gettext("Mapgen v6"); gettext("Mapgen v6");
gettext("Mapgen v6 flags"); gettext("Mapgen v6 flags");
gettext("Map generation attributes specific to Mapgen V6.\nWhen snowbiomes are enabled jungles are enabled and the jungles flag is ignored.\nFlags that are not specified in the flag string are not modified from the default.\nFlags starting with \"no\" are used to explicitly disable them."); gettext("Map generation attributes specific to Mapgen v6.\nWhen snowbiomes are enabled jungles are enabled and the jungles flag is ignored.\nFlags that are not specified in the flag string are not modified from the default.\nFlags starting with \"no\" are used to explicitly disable them.");
gettext("Mapgen v6 desert frequency"); gettext("Mapgen v6 desert frequency");
gettext("Controls size of deserts and beaches in Mapgen V6.\nWhen snowbiomes are enabled 'mgv6_freq_desert' is ignored."); gettext("Controls size of deserts and beaches in Mapgen v6.\nWhen snowbiomes are enabled 'mgv6_freq_desert' is ignored.");
gettext("Mapgen v6 beach frequency"); gettext("Mapgen v6 beach frequency");
gettext("Mapgen v6 terrain base noise parameters"); gettext("Mapgen v6 terrain base noise parameters");
gettext("Mapgen v6 terrain altitude noise parameters"); gettext("Mapgen v6 terrain altitude noise parameters");
@ -466,7 +468,7 @@ fake_function() {
gettext("Mapgen v6 apple trees noise parameters"); gettext("Mapgen v6 apple trees noise parameters");
gettext("Mapgen v7"); gettext("Mapgen v7");
gettext("Mapgen v7 flags"); gettext("Mapgen v7 flags");
gettext("Map generation attributes specific to Mapgen V7.\n'ridges' are the rivers.\nFlags that are not specified in the flag string are not modified from the default.\nFlags starting with \"no\" are used to explicitly disable them."); gettext("Map generation attributes specific to Mapgen v7.\n'ridges' are the rivers.\nFlags that are not specified in the flag string are not modified from the default.\nFlags starting with \"no\" are used to explicitly disable them.");
gettext("Mapgen v7 terrain base noise parameters"); gettext("Mapgen v7 terrain base noise parameters");
gettext("Mapgen v7 terrain altitude noise parameters"); gettext("Mapgen v7 terrain altitude noise parameters");
gettext("Mapgen v7 terrain persistation noise parameters"); gettext("Mapgen v7 terrain persistation noise parameters");
@ -478,6 +480,37 @@ fake_function() {
gettext("Mapgen v7 ridge noise parameters"); gettext("Mapgen v7 ridge noise parameters");
gettext("Mapgen v7 cave1 noise parameters"); gettext("Mapgen v7 cave1 noise parameters");
gettext("Mapgen v7 cave2 noise parameters"); gettext("Mapgen v7 cave2 noise parameters");
gettext("Mapgen fractal");
gettext("Mapgen fractal flags");
gettext("Map generation attributes specific to Mapgen fractal.\n'julia' selects a julia set to be generated instead of a mandelbrot set.\nFlags that are not specified in the flag string are not modified from the default.\nFlags starting with \"no\" are used to explicitly disable them.");
gettext("Mapgen fractal mandelbrot iterations");
gettext("Mandelbrot set: Iterations of the recursive function.\nControls scale of finest detail.");
gettext("Mapgen fractal mandelbrot scale");
gettext("Mandelbrot set: Approximate (X,Y,Z) scales in nodes.");
gettext("Mapgen fractal mandelbrot offset");
gettext("Mandelbrot set: (X,Y,Z) offsets from world centre.\nRange roughly -2 to 2, multiply by m_scale for offsets in nodes.");
gettext("Mapgen fractal mandelbrot slice w");
gettext("Mandelbrot set: W co-ordinate of the generated 3D slice of the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal julia iterations");
gettext("Julia set: Iterations of the recursive function.\nControls scale of finest detail.");
gettext("Mapgen fractal julia scale");
gettext("Julia set: Approximate (X,Y,Z) scales in nodes.");
gettext("Mapgen fractal julia offset");
gettext("Julia set: (X,Y,Z) offsets from world centre.\nRange roughly -2 to 2, multiply by j_scale for offsets in nodes.");
gettext("Mapgen fractal julia slice w");
gettext("Julia set: W co-ordinate of the generated 3D slice of the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal julia x");
gettext("Julia set: X value determining the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal julia y");
gettext("Julia set: Y value determining the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal julia z");
gettext("Julia set: Z value determining the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal julia w");
gettext("Julia set: W value determining the 4D shape.\nRange roughly -2 to 2.");
gettext("Mapgen fractal seabed noise parameters");
gettext("Mapgen fractal filler depth noise parameters");
gettext("Mapgen fractal cave1 noise parameters");
gettext("Mapgen fractal cave2 noise parameters");
gettext("Security"); gettext("Security");
gettext("Enable mod security"); gettext("Enable mod security");
gettext("Prevent mods from doing insecure things like running shell commands."); gettext("Prevent mods from doing insecure things like running shell commands.");

View File

@ -44,6 +44,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#include <windows.h> #include <windows.h>
#include <winsock2.h> #include <winsock2.h>
#include <ws2tcpip.h> #include <ws2tcpip.h>
#define LAST_SOCKET_ERR() WSAGetLastError()
typedef SOCKET socket_t; typedef SOCKET socket_t;
typedef int socklen_t; typedef int socklen_t;
#else #else
@ -54,6 +55,7 @@ typedef int socklen_t;
#include <netdb.h> #include <netdb.h>
#include <unistd.h> #include <unistd.h>
#include <arpa/inet.h> #include <arpa/inet.h>
#define LAST_SOCKET_ERR() (errno)
typedef int socket_t; typedef int socket_t;
#endif #endif
@ -339,7 +341,8 @@ bool UDPSocket::init(bool ipv6, bool noExceptions)
if (noExceptions) { if (noExceptions) {
return false; return false;
} else { } else {
throw SocketException("Failed to create socket"); throw SocketException(std::string("Failed to create socket: error ")
+ itos(LAST_SOCKET_ERR()));
} }
} }

View File

@ -45,7 +45,7 @@ extern bool socket_enable_debug_output;
class SocketException : public BaseException class SocketException : public BaseException
{ {
public: public:
SocketException(const char *s): SocketException(const std::string &s):
BaseException(s) BaseException(s)
{ {
} }
@ -54,7 +54,7 @@ public:
class ResolveError : public BaseException class ResolveError : public BaseException
{ {
public: public:
ResolveError(const char *s): ResolveError(const std::string &s):
BaseException(s) BaseException(s)
{ {
} }
@ -63,7 +63,7 @@ public:
class SendFailedException : public BaseException class SendFailedException : public BaseException
{ {
public: public:
SendFailedException(const char *s): SendFailedException(const std::string &s):
BaseException(s) BaseException(s)
{ {
} }

View File

@ -0,0 +1,452 @@
/*
Minetest
Copyright (C) 2015 est31 <MTest31@outlook.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#include "config.h"
#if USE_CURSES
#include "version.h"
#include "terminal_chat_console.h"
#include "porting.h"
#include "settings.h"
#include "util/numeric.h"
#include "util/string.h"
TerminalChatConsole g_term_console;
// include this last to avoid any conflicts
// (likes to set macros to common names, conflicting various stuff)
#if CURSES_HAVE_NCURSESW_NCURSES_H
#include <ncursesw/ncurses.h>
#elif CURSES_HAVE_NCURSESW_CURSES_H
#include <ncursesw/curses.h>
#elif CURSES_HAVE_CURSES_H
#include <curses.h>
#elif CURSES_HAVE_NCURSES_H
#include <ncurses.h>
#elif CURSES_HAVE_NCURSES_NCURSES_H
#include <ncurses/ncurses.h>
#elif CURSES_HAVE_NCURSES_CURSES_H
#include <ncurses/curses.h>
#endif
// Some functions to make drawing etc position independent
static bool reformat_backend(ChatBackend *backend, int rows, int cols)
{
if (rows < 2)
return false;
backend->reformat(cols, rows - 2);
return true;
}
static void move_for_backend(int row, int col)
{
move(row + 1, col);
}
void TerminalChatConsole::initOfCurses()
{
initscr();
cbreak(); //raw();
noecho();
keypad(stdscr, TRUE);
nodelay(stdscr, TRUE);
timeout(100);
// To make esc not delay up to one second. According to the internet,
// this is the value vim uses, too.
set_escdelay(25);
getmaxyx(stdscr, m_rows, m_cols);
m_can_draw_text = reformat_backend(&m_chat_backend, m_rows, m_cols);
}
void TerminalChatConsole::deInitOfCurses()
{
endwin();
}
void *TerminalChatConsole::run()
{
BEGIN_DEBUG_EXCEPTION_HANDLER
std::cout << "========================" << std::endl;
std::cout << "Begin log output over terminal"
<< " (no stdout/stderr backlog during that)" << std::endl;
// Make the loggers to stdout/stderr shut up.
// Go over our own loggers instead.
LogLevelMask err_mask = g_logger.removeOutput(&stderr_output);
LogLevelMask out_mask = g_logger.removeOutput(&stdout_output);
g_logger.addOutput(&m_log_output);
// Inform the server of our nick
m_chat_interface->command_queue.push_back(
new ChatEventNick(CET_NICK_ADD, m_nick));
{
// Ensures that curses is deinitialized even on an exception being thrown
CursesInitHelper helper(this);
while (!stopRequested()) {
int ch = getch();
if (stopRequested())
break;
step(ch);
}
}
if (m_kill_requested)
*m_kill_requested = true;
g_logger.removeOutput(&m_log_output);
g_logger.addOutputMasked(&stderr_output, err_mask);
g_logger.addOutputMasked(&stdout_output, out_mask);
std::cout << "End log output over terminal"
<< " (no stdout/stderr backlog during that)" << std::endl;
std::cout << "========================" << std::endl;
END_DEBUG_EXCEPTION_HANDLER
return NULL;
}
void TerminalChatConsole::typeChatMessage(const std::wstring &msg)
{
// Discard empty line
if (msg.empty())
return;
// Send to server
m_chat_interface->command_queue.push_back(
new ChatEventChat(m_nick, msg));
// Print if its a command (gets eaten by server otherwise)
if (msg[0] == L'/') {
m_chat_backend.addMessage(L"", (std::wstring)L"Issued command: " + msg);
}
}
void TerminalChatConsole::handleInput(int ch, bool &complete_redraw_needed)
{
// Helpful if you want to collect key codes that aren't documented
/*if (ch != ERR) {
m_chat_backend.addMessage(L"",
(std::wstring)L"Pressed key " + utf8_to_wide(
std::string(keyname(ch)) + " (code " + itos(ch) + ")"));
complete_redraw_needed = true;
}//*/
// All the key codes below are compatible to xterm
// Only add new ones if you have tried them there,
// to ensure compatibility with not just xterm but the wide
// range of terminals that are compatible to xterm.
switch (ch) {
case ERR: // no input
break;
case 27: // ESC
// Toggle ESC mode
m_esc_mode = !m_esc_mode;
break;
case KEY_PPAGE:
m_chat_backend.scrollPageUp();
complete_redraw_needed = true;
break;
case KEY_NPAGE:
m_chat_backend.scrollPageDown();
complete_redraw_needed = true;
break;
case KEY_ENTER:
case '\r':
case '\n': {
std::wstring text = m_chat_backend.getPrompt().submit();
typeChatMessage(text);
break;
}
case KEY_UP:
m_chat_backend.getPrompt().historyPrev();
break;
case KEY_DOWN:
m_chat_backend.getPrompt().historyNext();
break;
case KEY_LEFT:
// Left pressed
// move character to the left
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_LEFT,
ChatPrompt::CURSOROP_SCOPE_CHARACTER);
break;
case 545:
// Ctrl-Left pressed
// move word to the left
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_LEFT,
ChatPrompt::CURSOROP_SCOPE_WORD);
break;
case KEY_RIGHT:
// Right pressed
// move character to the right
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_CHARACTER);
break;
case 560:
// Ctrl-Right pressed
// move word to the right
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_WORD);
break;
case KEY_HOME:
// Home pressed
// move to beginning of line
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_LEFT,
ChatPrompt::CURSOROP_SCOPE_LINE);
break;
case KEY_END:
// End pressed
// move to end of line
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_MOVE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_LINE);
break;
case KEY_BACKSPACE:
case '\b':
case 127:
// Backspace pressed
// delete character to the left
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_DELETE,
ChatPrompt::CURSOROP_DIR_LEFT,
ChatPrompt::CURSOROP_SCOPE_CHARACTER);
break;
case KEY_DC:
// Delete pressed
// delete character to the right
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_DELETE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_CHARACTER);
break;
case 519:
// Ctrl-Delete pressed
// delete word to the right
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_DELETE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_WORD);
break;
case 21:
// Ctrl-U pressed
// kill line to left end
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_DELETE,
ChatPrompt::CURSOROP_DIR_LEFT,
ChatPrompt::CURSOROP_SCOPE_LINE);
break;
case 11:
// Ctrl-K pressed
// kill line to right end
m_chat_backend.getPrompt().cursorOperation(
ChatPrompt::CURSOROP_DELETE,
ChatPrompt::CURSOROP_DIR_RIGHT,
ChatPrompt::CURSOROP_SCOPE_LINE);
break;
case KEY_TAB:
// Tab pressed
// Nick completion
m_chat_backend.getPrompt().nickCompletion(m_nicks, false);
break;
default:
// Add character to the prompt,
// assuming UTF-8.
if (IS_UTF8_MULTB_START(ch)) {
m_pending_utf8_bytes.append(1, (char)ch);
m_utf8_bytes_to_wait += UTF8_MULTB_START_LEN(ch) - 1;
} else if (m_utf8_bytes_to_wait != 0) {
m_pending_utf8_bytes.append(1, (char)ch);
m_utf8_bytes_to_wait--;
if (m_utf8_bytes_to_wait == 0) {
std::wstring w = utf8_to_wide(m_pending_utf8_bytes);
m_pending_utf8_bytes = "";
// hopefully only one char in the wstring...
for (size_t i = 0; i < w.size(); i++) {
m_chat_backend.getPrompt().input(w.c_str()[i]);
}
}
} else if (IS_ASCII_PRINTABLE_CHAR(ch)) {
m_chat_backend.getPrompt().input(ch);
} else {
// Silently ignore characters we don't handle
//warningstream << "Pressed invalid character '"
// << keyname(ch) << "' (code " << itos(ch) << ")" << std::endl;
}
break;
}
}
void TerminalChatConsole::step(int ch)
{
bool complete_redraw_needed = false;
// empty queues
while (!m_chat_interface->outgoing_queue.empty()) {
ChatEvent *evt = m_chat_interface->outgoing_queue.pop_frontNoEx();
switch (evt->type) {
case CET_NICK_REMOVE:
m_nicks.remove(((ChatEventNick *)evt)->nick);
break;
case CET_NICK_ADD:
m_nicks.push_back(((ChatEventNick *)evt)->nick);
break;
case CET_CHAT:
complete_redraw_needed = true;
// This is only used for direct replies from commands
// or for lua's print() functionality
m_chat_backend.addMessage(L"", ((ChatEventChat *)evt)->evt_msg);
break;
case CET_TIME_INFO:
ChatEventTimeInfo *tevt = (ChatEventTimeInfo *)evt;
m_game_time = tevt->game_time;
m_time_of_day = tevt->time;
};
delete evt;
}
while (!m_log_output.queue.empty()) {
complete_redraw_needed = true;
std::pair<LogLevel, std::string> p = m_log_output.queue.pop_frontNoEx();
if (p.first > m_log_level)
continue;
m_chat_backend.addMessage(
utf8_to_wide(Logger::getLevelLabel(p.first)),
utf8_to_wide(p.second));
}
// handle input
if (!m_esc_mode) {
handleInput(ch, complete_redraw_needed);
} else {
switch (ch) {
case ERR: // no input
break;
case 27: // ESC
// Toggle ESC mode
m_esc_mode = !m_esc_mode;
break;
case 'L':
m_log_level--;
m_log_level = MYMAX(m_log_level, LL_NONE + 1); // LL_NONE isn't accessible
break;
case 'l':
m_log_level++;
m_log_level = MYMIN(m_log_level, LL_MAX - 1);
break;
}
}
// was there a resize?
int xn, yn;
getmaxyx(stdscr, yn, xn);
if (xn != m_cols || yn != m_rows) {
m_cols = xn;
m_rows = yn;
m_can_draw_text = reformat_backend(&m_chat_backend, m_rows, m_cols);
complete_redraw_needed = true;
}
// draw title
move(0, 0);
clrtoeol();
addstr(PROJECT_NAME_C);
addstr(" ");
addstr(g_version_hash);
u32 minutes = m_time_of_day % 1000;
u32 hours = m_time_of_day / 1000;
minutes = (float)minutes / 1000 * 60;
if (m_game_time)
printw(" | Game %d Time of day %02d:%02d ",
m_game_time, hours, minutes);
// draw text
if (complete_redraw_needed && m_can_draw_text)
draw_text();
// draw prompt
if (!m_esc_mode) {
// normal prompt
ChatPrompt& prompt = m_chat_backend.getPrompt();
std::string prompt_text = wide_to_utf8(prompt.getVisiblePortion());
move(m_rows - 1, 0);
clrtoeol();
addstr(prompt_text.c_str());
// Draw cursor
s32 cursor_pos = prompt.getVisibleCursorPosition();
if (cursor_pos >= 0) {
move(m_rows - 1, cursor_pos);
}
} else {
// esc prompt
move(m_rows - 1, 0);
clrtoeol();
printw("[ESC] Toggle ESC mode |"
" [CTRL+C] Shut down |"
" (L) in-, (l) decrease loglevel %s",
Logger::getLevelLabel((LogLevel) m_log_level).c_str());
}
refresh();
}
void TerminalChatConsole::draw_text()
{
ChatBuffer& buf = m_chat_backend.getConsoleBuffer();
for (u32 row = 0; row < buf.getRows(); row++) {
move_for_backend(row, 0);
clrtoeol();
const ChatFormattedLine& line = buf.getFormattedLine(row);
if (line.fragments.empty())
continue;
for (u32 i = 0; i < line.fragments.size(); ++i) {
const ChatFormattedFragment& fragment = line.fragments[i];
addstr(wide_to_utf8(fragment.text).c_str());
}
}
}
void TerminalChatConsole::stopAndWaitforThread()
{
clearKillStatus();
stop();
wait();
}
#endif

131
src/terminal_chat_console.h Normal file
View File

@ -0,0 +1,131 @@
/*
Minetest
Copyright (C) 2015 est31 <MTest31@outlook.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.
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.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
#ifndef TERMINAL_CHAT_CONSOLE_H
#define TERMINAL_CHAT_CONSOLE_H
#include "chat.h"
#include "threading/thread.h"
#include "chat_interface.h"
#include "log.h"
#include <sstream>
class TermLogOutput : public ILogOutput {
public:
void logRaw(LogLevel lev, const std::string &line)
{
queue.push_back(std::make_pair(lev, line));
}
virtual void log(LogLevel lev, const std::string &combined,
const std::string &time, const std::string &thread_name,
const std::string &payload_text)
{
std::ostringstream os(std::ios_base::binary);
os << time << ": [" << thread_name << "] " << payload_text;
queue.push_back(std::make_pair(lev, os.str()));
}
MutexedQueue<std::pair<LogLevel, std::string> > queue;
};
class TerminalChatConsole : public Thread {
public:
TerminalChatConsole() :
Thread("TerminalThread"),
m_log_level(LL_ACTION),
m_utf8_bytes_to_wait(0),
m_kill_requested(NULL),
m_esc_mode(false),
m_game_time(0),
m_time_of_day(0)
{}
void setup(
ChatInterface *iface,
bool *kill_requested,
const std::string &nick)
{
m_nick = nick;
m_kill_requested = kill_requested;
m_chat_interface = iface;
}
virtual void *run();
// Highly required!
void clearKillStatus() { m_kill_requested = NULL; }
void stopAndWaitforThread();
private:
// these have stupid names so that nobody missclassifies them
// as curses functions. Oh, curses has stupid names too?
// Well, at least it was worth a try...
void initOfCurses();
void deInitOfCurses();
void draw_text();
void typeChatMessage(const std::wstring &m);
void handleInput(int ch, bool &complete_redraw_needed);
void step(int ch);
// Used to ensure the deinitialisation is always called.
struct CursesInitHelper {
TerminalChatConsole *cons;
CursesInitHelper(TerminalChatConsole * a_console)
: cons(a_console)
{ cons->initOfCurses(); }
~CursesInitHelper() { cons->deInitOfCurses(); }
};
int m_log_level;
std::string m_nick;
u8 m_utf8_bytes_to_wait;
std::string m_pending_utf8_bytes;
std::list<std::string> m_nicks;
int m_cols;
int m_rows;
bool m_can_draw_text;
bool *m_kill_requested;
ChatBackend m_chat_backend;
ChatInterface *m_chat_interface;
TermLogOutput m_log_output;
bool m_esc_mode;
u64 m_game_time;
u32 m_time_of_day;
};
extern TerminalChatConsole g_term_console;
#endif

View File

@ -24,73 +24,116 @@ with this program; if not, write to the Free Software Foundation, Inc.,
#if __cplusplus >= 201103L #if __cplusplus >= 201103L
#include <atomic> #include <atomic>
template<typename T> using Atomic = std::atomic<T>; template<typename T> using Atomic = std::atomic<T>;
template<typename T> using GenericAtomic = std::atomic<T>;
#else #else
#define GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__) #define GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__)
#define CLANG_VERSION (__clang_major__ * 100 + __clang_minor__) #define CLANG_VERSION (__clang_major__ * 100 + __clang_minor__)
#if GCC_VERSION >= 407 || CLANG_VERSION >= 302 #if GCC_VERSION >= 407 || CLANG_VERSION >= 302
#define ATOMIC_LOAD_GENERIC(T, v) do { \
T _val; \
__atomic_load(&(v), &(_val), __ATOMIC_SEQ_CST); \
return _val; \
} while(0)
#define ATOMIC_LOAD(T, v) return __atomic_load_n (&(v), __ATOMIC_SEQ_CST) #define ATOMIC_LOAD(T, v) return __atomic_load_n (&(v), __ATOMIC_SEQ_CST)
#define ATOMIC_STORE(T, v, x) __atomic_store (&(v), &(x), __ATOMIC_SEQ_CST); return x #define ATOMIC_STORE(T, v, x) __atomic_store (&(v), &(x), __ATOMIC_SEQ_CST); return x
#define ATOMIC_EXCHANGE(T, v, x) return __atomic_exchange (&(v), &(x), __ATOMIC_SEQ_CST)
#define ATOMIC_ADD_EQ(T, v, x) return __atomic_add_fetch (&(v), (x), __ATOMIC_SEQ_CST) #define ATOMIC_ADD_EQ(T, v, x) return __atomic_add_fetch (&(v), (x), __ATOMIC_SEQ_CST)
#define ATOMIC_SUB_EQ(T, v, x) return __atomic_sub_fetch (&(v), (x), __ATOMIC_SEQ_CST) #define ATOMIC_SUB_EQ(T, v, x) return __atomic_sub_fetch (&(v), (x), __ATOMIC_SEQ_CST)
#define ATOMIC_POST_INC(T, v) return __atomic_fetch_add (&(v), 1, __ATOMIC_SEQ_CST) #define ATOMIC_POST_INC(T, v) return __atomic_fetch_add (&(v), 1, __ATOMIC_SEQ_CST)
#define ATOMIC_POST_DEC(T, v) return __atomic_fetch_sub (&(v), 1, __ATOMIC_SEQ_CST) #define ATOMIC_POST_DEC(T, v) return __atomic_fetch_sub (&(v), 1, __ATOMIC_SEQ_CST)
#define ATOMIC_CAS(T, v, e, d) return __atomic_compare_exchange(&(v), &(e), &(d), \
false, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST)
#else #else
#define ATOMIC_USE_LOCK #define ATOMIC_USE_LOCK
#include "threading/mutex.h" #include "threading/mutex.h"
#define ATOMIC_LOCK_OP(T, op) do { \ #define ATOMIC_LOCK_OP(T, op) do { \
mutex.lock(); \ m_mutex.lock(); \
T _val = (op); \ T _val = (op); \
mutex.unlock(); \ m_mutex.unlock(); \
return _val; \
} while (0)
#define ATOMIC_LOCK_CAS(T, v, e, d) do { \
m_mutex.lock(); \
bool _eq = (v == e); \
if (_eq) \
v = d; \
m_mutex.unlock(); \
return _eq; \
} while (0)
#define ATOMIC_LOAD(T, v) ATOMIC_LOCK_OP(T, v)
#define ATOMIC_LOAD_GENERIC(T, v) ATOMIC_LOAD(T, v)
#define ATOMIC_STORE(T, v, x) ATOMIC_LOCK_OP(T, v = x)
#define ATOMIC_EXCHANGE(T, v, x) do { \
m_mutex.lock(); \
T _val = v; \
v = x; \
m_mutex.unlock(); \
return _val; \ return _val; \
} while (0) } while (0)
#define ATOMIC_LOAD(T, v) \
if (sizeof(T) <= sizeof(void*)) return v; \
else ATOMIC_LOCK_OP(T, v);
#define ATOMIC_STORE(T, v, x) \
if (sizeof(T) <= sizeof(void*)) return v = x; \
else ATOMIC_LOCK_OP(T, v = x);
#if GCC_VERSION >= 401 #if GCC_VERSION >= 401
#define ATOMIC_ADD_EQ(T, v, x) return __sync_add_and_fetch(&(v), (x)) #define ATOMIC_ADD_EQ(T, v, x) return __sync_add_and_fetch(&(v), (x))
#define ATOMIC_SUB_EQ(T, v, x) return __sync_sub_and_fetch(&(v), (x)) #define ATOMIC_SUB_EQ(T, v, x) return __sync_sub_and_fetch(&(v), (x))
#define ATOMIC_POST_INC(T, v) return __sync_fetch_and_add(&(v), 1) #define ATOMIC_POST_INC(T, v) return __sync_fetch_and_add(&(v), 1)
#define ATOMIC_POST_DEC(T, v) return __sync_fetch_and_sub(&(v), 1) #define ATOMIC_POST_DEC(T, v) return __sync_fetch_and_sub(&(v), 1)
#define ATOMIC_CAS(T, v, e, d) return __sync_bool_compare_and_swap(&(v), &(e), (d))
#else #else
#define ATOMIC_ADD_EQ(T, v, x) ATOMIC_LOCK_OP(T, v += x) #define ATOMIC_ADD_EQ(T, v, x) ATOMIC_LOCK_OP(T, v += x)
#define ATOMIC_SUB_EQ(T, v, x) ATOMIC_LOCK_OP(T, v -= x) #define ATOMIC_SUB_EQ(T, v, x) ATOMIC_LOCK_OP(T, v -= x)
#define ATOMIC_POST_INC(T, v) ATOMIC_LOCK_OP(T, v++) #define ATOMIC_POST_INC(T, v) ATOMIC_LOCK_OP(T, v++)
#define ATOMIC_POST_DEC(T, v) ATOMIC_LOCK_OP(T, v--) #define ATOMIC_POST_DEC(T, v) ATOMIC_LOCK_OP(T, v--)
#define ATOMIC_CAS(T, v, e, d) ATOMIC_LOCK_CAS(T, v, e, d)
#endif #endif
#endif #endif
// For usage with integral types.
template<typename T> template<typename T>
class Atomic class Atomic {
{
// Like C++11 std::enable_if, but defaults to char since C++03 doesn't support SFINAE
template<bool B, typename T_ = void> struct enable_if { typedef char type; };
template<typename T_> struct enable_if<true, T_> { typedef T_ type; };
public: public:
Atomic(const T &v=0) : val(v) {} Atomic(const T &v = 0) : m_val(v) {}
operator T () { ATOMIC_LOAD(T, val); } operator T () { ATOMIC_LOAD(T, m_val); }
T operator = (T x) { ATOMIC_STORE(T, val, x); }
T operator += (T x) { ATOMIC_ADD_EQ(T, val, x); } T exchange(T x) { ATOMIC_EXCHANGE(T, m_val, x); }
T operator -= (T x) { ATOMIC_SUB_EQ(T, val, x); } bool compare_exchange_strong(T &expected, T desired) { ATOMIC_CAS(T, m_val, expected, desired); }
T operator = (T x) { ATOMIC_STORE(T, m_val, x); }
T operator += (T x) { ATOMIC_ADD_EQ(T, m_val, x); }
T operator -= (T x) { ATOMIC_SUB_EQ(T, m_val, x); }
T operator ++ () { return *this += 1; } T operator ++ () { return *this += 1; }
T operator -- () { return *this -= 1; } T operator -- () { return *this -= 1; }
T operator ++ (int) { ATOMIC_POST_INC(T, val); } T operator ++ (int) { ATOMIC_POST_INC(T, m_val); }
T operator -- (int) { ATOMIC_POST_DEC(T, val); } T operator -- (int) { ATOMIC_POST_DEC(T, m_val); }
private: private:
volatile T val; T m_val;
#ifdef ATOMIC_USE_LOCK #ifdef ATOMIC_USE_LOCK
typename enable_if<sizeof(T) <= sizeof(void*), Mutex>::type mutex; Mutex m_mutex;
#endif
};
// For usage with non-integral types like float for example.
// Needed because the other operations aren't provided by gcc
// for non-integral types:
// https://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/_005f_005fatomic-Builtins.html
template<typename T>
class GenericAtomic {
public:
GenericAtomic(const T &v = 0) : m_val(v) {}
operator T () { ATOMIC_LOAD_GENERIC(T, m_val); }
T exchange(T x) { ATOMIC_EXCHANGE(T, m_val, x); }
bool compare_exchange_strong(T &expected, T desired) { ATOMIC_CAS(T, m_val, expected, desired); }
T operator = (T x) { ATOMIC_STORE(T, m_val, x); }
private:
T m_val;
#ifdef ATOMIC_USE_LOCK
Mutex m_mutex;
#endif #endif
}; };
#endif // C++11 #endif // C++11
#endif #endif

Some files were not shown because too many files have changed in this diff Show More