I have not tested this
master
Maksim Gamarnik 2015-12-28 11:26:50 +02:00
commit 23614e9479
29 changed files with 2109 additions and 1300 deletions

View File

@ -17,12 +17,16 @@
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
local function filter_texture_pack_list(list) local function filter_texture_pack_list(list)
local retval = {fgettext("None")} local retval = {}
for _, item in ipairs(list) do for _, item in ipairs(list) do
if item ~= "base" then if item ~= "base" then
table.insert(retval, item) table.insert(retval, item)
end end
end end
table.sort(retval)
table.insert(retval, 1, fgettext("None"))
return retval return retval
end end

View File

@ -2544,6 +2544,19 @@ This is basically a reference to a C++ `ServerActiveObject`
* `set_properties(object property table)` * `set_properties(object property table)`
* `get_properties()`: returns object property table * `get_properties()`: returns object property table
* `is_player()`: returns true for players, false otherwise * `is_player()`: returns true for players, false otherwise
* `get_nametag_attributes()`
* returns a table with the attributes of the nametag of an object
* {
color = {a=0..255, r=0..255, g=0..255, b=0..255},
text = "",
}
* `set_nametag_attributes(attributes)`
* sets the attributes of the nametag of an object
* `attributes`:
{
color = ColorSpec,
text = "My Nametag",
}
##### LuaEntitySAO-only (no-op for other objects) ##### LuaEntitySAO-only (no-op for other objects)
* `setvelocity({x=num, y=num, z=num})` * `setvelocity({x=num, y=num, z=num})`
@ -2644,17 +2657,6 @@ This is basically a reference to a C++ `ServerActiveObject`
* in first person view * in first person view
* in third person view (max. values `{x=-10/10,y=-10,15,z=-5/5}`) * in third person view (max. values `{x=-10/10,y=-10,15,z=-5/5}`)
* `get_eye_offset()`: returns offset_first and offset_third * `get_eye_offset()`: returns offset_first and offset_third
* `get_nametag_attributes()`
* returns a table with the attributes of the nametag of the player
* {
color = {a=0..255, r=0..255, g=0..255, b=0..255},
}
* `set_nametag_attributes(attributes)`
* sets the attributes of the nametag of the player
* `attributes`:
{
color = ColorSpec,
}
### `InvRef` ### `InvRef`
An `InvRef` is a reference to an inventory. An `InvRef` is a reference to an inventory.
@ -3231,7 +3233,11 @@ Definition tables
stepheight = 0, stepheight = 0,
automatic_face_movement_dir = 0.0, automatic_face_movement_dir = 0.0,
-- ^ automatically set yaw to movement direction; offset in degrees; false to disable -- ^ automatically set yaw to movement direction; offset in degrees; false to disable
automatic_face_movement_max_rotation_per_sec = -1,
-- ^ limit automatic rotation to this value in degrees per second. values < 0 no limit
backface_culling = true, -- false to disable backface_culling for model backface_culling = true, -- false to disable backface_culling for model
nametag = "", -- by default empty, for players their name is shown if empty
nametag_color = <color>, -- sets color of nametag as ColorSpec
} }
### Entity definition (`register_entity`) ### Entity definition (`register_entity`)

View File

@ -7,18 +7,10 @@
# ../multicraft.conf # ../multicraft.conf
# ../../multicraft.conf # ../../multicraft.conf
# Any other path can be chosen by passing the path as a parameter # Any other path can be chosen by passing the path as a parameter
# to the program, eg. "multicraft.exe --config ../multicraft.conf.example". # to the program, eg. "minetest.exe --config ../multicraft.conf.example".
# By default, all the settings are commented and not functional. # Further documentation:
# Uncomment settings by removing the preceding #. # http://wiki.minetest.net/
# NOTE: This file might not be up-to-date, refer to the
# defaultsettings.cpp file for an up-to-date list:
# src/defaultsettings.cpp
# A vim command to convert most of defaultsettings.cpp to conf file format:
# :'<,'>s/\tsettings->setDefault("\([^"]*\)", "\([^"]*\)");.*/#\1 = \2/g
# Note: Some of the settings are implemented in Lua.
# #
# Client # Client
@ -262,7 +254,7 @@
# URL to the server list displayed in the Multiplayer Tab. # URL to the server list displayed in the Multiplayer Tab.
# type: string # type: string
# serverlist_url = servers.multicraft.net # serverlist_url = servers.minetest.net
# File in client/serverlist/ that contains your favorite servers displayed in the Multiplayer Tab. # File in client/serverlist/ that contains your favorite servers displayed in the Multiplayer Tab.
# type: string # type: string
@ -703,7 +695,7 @@
# Name of the server, to be displayed when players join and in the serverlist. # Name of the server, to be displayed when players join and in the serverlist.
# type: string # type: string
# server_name = multicraft server # server_name = Minetest server
# Description of server, to be displayed when players join and in the serverlist. # Description of server, to be displayed when players join and in the serverlist.
# type: string # type: string
@ -711,20 +703,20 @@
# Domain name of server, to be displayed in the serverlist. # Domain name of server, to be displayed in the serverlist.
# type: string # type: string
# server_address = game.multicraft.net # server_address = game.minetest.net
# Homepage of server, to be displayed in the serverlist. # Homepage of server, to be displayed in the serverlist.
# type: string # type: string
# server_url = http://multicraft.net # server_url = http://minetest.net
# Automaticaly report to the serverlist. # Automaticaly report to the serverlist.
# type: bool # type: bool
# server_announce = false # server_announce = false
# Announce to this serverlist. # Announce to this serverlist.
# If you want to announce your ipv6 address, use serverlist_url = v6.servers.multicraft.net. # If you want to announce your ipv6 address, use serverlist_url = v6.servers.minetest.net.
# type: string # type: string
# serverlist_url = servers.multicraft.net # serverlist_url = servers.minetest.net
## Network ## Network
@ -782,7 +774,7 @@
# Default game when creating a new world. # Default game when creating a new world.
# This will be overridden when creating a world from the main menu. # This will be overridden when creating a world from the main menu.
# type: string # type: string
# default_game = multicraft # default_game = minetest
# Message of the day displayed to players connecting. # Message of the day displayed to players connecting.
# type: string # type: string
@ -1008,7 +1000,7 @@
# 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.
# type: enum values: v5, v6, v7, singlenode # type: enum values: v5, v6, v7, flat, fractal, singlenode
# mg_name = v6 # mg_name = v6
# Water surface level of the world. # Water surface level of the world.
@ -1029,11 +1021,12 @@
# map_generation_limit = 31000 # map_generation_limit = 31000
# Global map generation attributes. # Global map generation attributes.
# In Mapgen v6 the 'decorations' flag controls all decorations except trees
# and junglegrass, in all other mapgens this flag controls all decorations.
# 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.
# 'trees' and 'flat' flags only have effect in mgv6. # type: flags possible values: caves, dungeons, light, decorations, nocaves, nodungeons, nolight, nodecorations
# type: flags possible values: trees, caves, dungeons, light, flat, notrees, nocaves, nodungeons, nolight, noflat # mg_flags = caves,dungeons,light,decorations
# mg_flags = trees,caves,dungeons,light
### Advanced ### Advanced
@ -1097,14 +1090,14 @@
#### 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.
# type: flags possible values: jungles, biomeblend, mudflow, snowbiomes, nojungles, nobiomeblend, nomudflow, nosnowbiomes # type: flags possible values: jungles, biomeblend, mudflow, snowbiomes, flat, trees, nojungles, nobiomeblend, nomudflow, nosnowbiomes, noflat, notrees
# mgv6_spflags = jungles,biomeblend,mudflow,snowbiomes # mgv6_spflags = jungles,biomeblend,mudflow,snowbiomes,trees
# 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.
# type: float # type: float
# mgv6_freq_desert = 0.45 # mgv6_freq_desert = 0.45
@ -1147,7 +1140,7 @@
#### 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.
@ -1241,20 +1234,30 @@
#### Mapgen fractal #### Mapgen fractal
# Choice of 8 4-dimensional fractals. # Choice of 18 fractals from 9 formulas.
# 1 = "Roundy" mandelbrot set. # 1 = 4D "Roundy" mandelbrot set.
# 2 = "Roundy" julia set. # 2 = 4D "Roundy" julia set.
# 3 = "Squarry" mandelbrot set. # 3 = 4D "Squarry" mandelbrot set.
# 4 = "Squarry" julia set. # 4 = 4D "Squarry" julia set.
# 5 = "Mandy Cousin" mandelbrot set. # 5 = 4D "Mandy Cousin" mandelbrot set.
# 6 = "Mandy Cousin" julia set. # 6 = 4D "Mandy Cousin" julia set.
# 7 = "Variation" mandelbrot set. # 7 = 4D "Variation" mandelbrot set.
# 8 = "Variation" julia set. # 8 = 4D "Variation" julia set.
# type: int min: 1 max: 8 # 9 = 3D "Mandelbrot/Mandelbar" mandelbrot set.
# mgfractal_formula = 1 # 10 = 3D "Mandelbrot/Mandelbar" julia set.
# 11 = 3D "Christmas Tree" mandelbrot set.
# 12 = 3D "Christmas Tree" julia set.
# 13 = 3D "Mandelbulb" mandelbrot set.
# 14 = 3D "Mandelbulb" julia set.
# 15 = 3D "Cosine Mandelbulb" mandelbrot set.
# 16 = 3D "Cosine Mandelbulb" julia set.
# 17 = 4D "Mandelbulb" mandelbrot set.
# 18 = 4D "Mandelbulb" julia set.
# type: int min: 1 max: 18
# mgfractal_fractal = 1
# Iterations of the recursive function. # Iterations of the recursive function.
# Controls scale of finest detail. # Controls the amount of fine detail.
# type: int # type: int
# mgfractal_iterations = 11 # mgfractal_iterations = 11
@ -1262,36 +1265,37 @@
# type: v3f # type: v3f
# mgfractal_scale = (4096.0, 1024.0, 4096.0) # mgfractal_scale = (4096.0, 1024.0, 4096.0)
# (X,Y,Z) offset of fractal from world centre. # (X,Y,Z) offset of fractal from world centre in units of 'scale'.
# Used to move a suitable spawn area of low land close to (0, 0). # Used to move a suitable spawn area of low land close to (0, 0).
# The default is suitable for mandelbrot sets, it needs to be edited for julia sets, # The default is suitable for mandelbrot sets, it needs to be edited for julia sets.
# do this by greatly reducing 'scale' and setting 'offset' initially to (0, 0, 0).
# Range roughly -2 to 2. Multiply by 'scale' for offset in nodes. # Range roughly -2 to 2. Multiply by 'scale' for offset in nodes.
# type: v3f # type: v3f
# mgfractal_offset = (1.79, 0.0, 0.0) # mgfractal_offset = (1.79, 0.0, 0.0)
# W co-ordinate of the generated 3D slice of the 4D shape. # W co-ordinate of the generated 3D slice of a 4D fractal.
# Alters the generated 3D shape. # Determines which 3D slice of the 4D shape is generated.
# Has no effect on 3D fractals.
# Range roughly -2 to 2. # Range roughly -2 to 2.
# type: float # type: float
# mgfractal_slice_w = 0.0 # mgfractal_slice_w = 0.0
# Julia set only: X value determining the 4D shape. # Julia set only: X component of hypercomplex constant determining julia shape.
# Range roughly -2 to 2. # Range roughly -2 to 2.
# type: float # type: float
# mgfractal_julia_x = 0.33 # mgfractal_julia_x = 0.33
# Julia set only: Y value determining the 4D shape. # Julia set only: Y component of hypercomplex constant determining julia shape.
# Range roughly -2 to 2. # Range roughly -2 to 2.
# type: float # type: float
# mgfractal_julia_y = 0.33 # mgfractal_julia_y = 0.33
# Julia set only: Z value determining the 4D shape. # Julia set only: Z component of hypercomplex constant determining julia shape.
# Range roughly -2 to 2. # Range roughly -2 to 2.
# type: float # type: float
# mgfractal_julia_z = 0.33 # mgfractal_julia_z = 0.33
# Julia set only: W value determining the 4D shape. # Julia set only: W component of hypercomplex constant determining julia shape.
# Has no effect on 3D fractals.
# Range roughly -2 to 2. # Range roughly -2 to 2.
# type: float # type: float
# mgfractal_julia_w = 0.33 # mgfractal_julia_w = 0.33
@ -1383,16 +1387,10 @@
# main_menu_mod_mgr = 1 # main_menu_mod_mgr = 1
# type: string # type: string
# modstore_download_url = https://forum.multicraft.net/media/ # modstore_download_url = https://forum.minetest.net/media/
# type: string # type: string
# modstore_listmods_url = https://forum.multicraft.net/mmdb/mods/ # modstore_listmods_url = https://forum.minetest.net/mmdb/mods/
# type: string # type: string
# modstore_details_url = https://forum.multicraft.net/mmdb/mod/*/ # modstore_details_url = https://forum.minetest.net/mmdb/mod/*/
# Prevent mods from doing insecure things like running shell commands.
#secure.enable_security = false
# Comma-separated list of trusted mods that are allowed to access insecure
# functions even when mod security is on (via request_insecure_environment()).
#secure.trusted_mods =

File diff suppressed because it is too large Load Diff

View File

@ -8,7 +8,7 @@ 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-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-11-11 12:12+0000\n" "PO-Revision-Date: 2015-11-19 16:52+0000\n"
"Last-Translator: Kristjan Räts <kristjanrats@gmail.com>\n" "Last-Translator: Kristjan Räts <kristjanrats@gmail.com>\n"
"Language-Team: Estonian " "Language-Team: Estonian "
"<https://hosted.weblate.org/projects/minetest/minetest/et/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/et/>\n"
@ -21,11 +21,11 @@ msgstr ""
#: 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 "Lue skriptis ilmnes viga; nagu näiteks mod:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured:" msgid "An error occured:"
msgstr "" msgstr "Ilmnes viga:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "Main menu" msgid "Main menu"
@ -41,35 +41,37 @@ msgstr "Taasta ühendus"
#: 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 taotles taasühendumist:"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."
msgstr "" msgstr "Laadimine..."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Protocol version mismatch. " msgid "Protocol version mismatch. "
msgstr "" msgstr "Protokolli versioon ei sobi. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. " msgid "Server enforces protocol version $1. "
msgstr "" msgstr "Server jõustab protokolli versiooni $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 toetab protokolli versioone $1 kuni $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 ""
"Proovi lubada uuesti avalik serverite loend ja kontrollo oma Interneti "
"ühendust."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We only support protocol version $1." msgid "We only support protocol version $1."
msgstr "" msgstr "Meie toetame ainult protokolli versiooni $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 "Meie toetame protokolli versioone $1 kuni $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,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 ""
"Mod \"$1\" kasutamine nurjus, sest ka sisaldab keelatud sümboleid. Lubatud "
"märgid on ainult [a-z0-9_]."
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide Game" msgid "Hide Game"
@ -105,11 +109,11 @@ msgstr "Peida mäng"
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide mp content" msgid "Hide mp content"
msgstr "" msgstr "Peida mod. pakkide sisu"
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Mod:" msgid "Mod:"
msgstr "" msgstr "Mod:"
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_settings.lua
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
@ -134,11 +138,11 @@ msgstr "Loo"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Download a subgame, such as minetest_game, from minetest.net" msgid "Download a subgame, such as minetest_game, from minetest.net"
msgstr "" msgstr "Laadi alla alammäng, näiteks minetest_game, aadressilt minetest.net"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Download one from minetest.net" msgid "Download one from minetest.net"
msgstr "" msgstr "Laadi minetest.net-st üks mäng alla"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game" msgid "Game"
@ -154,11 +158,11 @@ msgstr "No nimi või no mäng valitud"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Seed" msgid "Seed"
msgstr "" msgstr "Seed"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Warning: The minimal development test is meant for developers." msgid "Warning: The minimal development test is meant for developers."
msgstr "" msgstr "Hoiatus: minimaalne arendustest on mõeldud arendajatele."
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "World name" msgid "World name"
@ -166,7 +170,7 @@ msgstr "Maailma nimi"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "You have no subgames installed." msgid "You have no subgames installed."
msgstr "" msgstr "Sa ei ole alammänge paigaldanud."
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Are you sure you want to delete \"$1\"?" msgid "Are you sure you want to delete \"$1\"?"

View File

@ -10,8 +10,8 @@ msgstr ""
"POT-Creation-Date: 2015-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-10-26 16:22+0200\n" "PO-Revision-Date: 2015-10-26 16:22+0200\n"
"Last-Translator: ChaosWormz <chaoswormz@openmailbox.org>\n" "Last-Translator: ChaosWormz <chaoswormz@openmailbox.org>\n"
"Language-Team: Hebrew <https://hosted.weblate.org/projects/minetest/minetest/" "Language-Team: Hebrew "
"he/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/he/>\n"
"Language: he\n" "Language: he\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"
@ -78,7 +78,6 @@ msgid "Cancel"
msgstr "ביטול" msgstr "ביטול"
#: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_mods.lua #: builtin/mainmenu/dlg_config_world.lua builtin/mainmenu/tab_mods.lua
#, fuzzy
msgid "Depends:" msgid "Depends:"
msgstr "תלוי ב:" msgstr "תלוי ב:"
@ -91,7 +90,6 @@ msgid "Enable MP"
msgstr "" msgstr ""
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Enable all" msgid "Enable all"
msgstr "אפשר בכל" msgstr "אפשר בכל"
@ -110,7 +108,6 @@ msgid "Hide mp content"
msgstr "" msgstr ""
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "Mod:" msgid "Mod:"
msgstr "מוד:" msgstr "מוד:"
@ -124,7 +121,6 @@ msgid "World:"
msgstr "עולם:" msgstr "עולם:"
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
#, fuzzy
msgid "enabled" msgid "enabled"
msgstr "מופעל" msgstr "מופעל"
@ -201,7 +197,6 @@ msgid "No"
msgstr "לא" msgstr "לא"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp #: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
#, fuzzy
msgid "Accept" msgid "Accept"
msgstr "קבל" msgstr "קבל"
@ -281,7 +276,7 @@ msgstr ""
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
msgid "Credits" msgid "Credits"
msgstr "" msgstr "קרדיטים"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors" msgid "Previous Contributors"
@ -301,7 +296,7 @@ msgstr ""
#: builtin/mainmenu/tab_mods.lua builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_mods.lua builtin/mainmenu/tab_settings.lua
msgid "Mods" msgid "Mods"
msgstr "" msgstr "מודים"
#: builtin/mainmenu/tab_mods.lua #: builtin/mainmenu/tab_mods.lua
msgid "No mod description available" msgid "No mod description available"
@ -325,16 +320,15 @@ msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua #: builtin/mainmenu/tab_multiplayer.lua
msgid "Address / Port :" msgid "Address / Port :"
msgstr "" msgstr "כתובת / פורט :"
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp #: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
#, fuzzy
msgid "Client" msgid "Client"
msgstr "קלינט" msgstr "קלינט"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Connect" msgid "Connect"
msgstr "" msgstr "התחבר"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Creative mode" msgid "Creative mode"
@ -347,19 +341,19 @@ msgstr ""
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp #: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Delete" msgid "Delete"
msgstr "" msgstr "מחק"
#: builtin/mainmenu/tab_multiplayer.lua #: builtin/mainmenu/tab_multiplayer.lua
msgid "Name / Password :" msgid "Name / Password :"
msgstr "" msgstr "שם/סיסמה :"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Public Serverlist" msgid "Public Serverlist"
msgstr "" msgstr "רשימת שרתים פומבי"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "PvP enabled" msgid "PvP enabled"
msgstr "" msgstr "PvP אפשר"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Bind Address" msgid "Bind Address"
@ -367,45 +361,45 @@ msgstr ""
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure" msgid "Configure"
msgstr "" msgstr "קביעת תצורה"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_singleplayer.lua
msgid "Creative Mode" msgid "Creative Mode"
msgstr "" msgstr "משחק יצירתי"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_singleplayer.lua
msgid "Enable Damage" msgid "Enable Damage"
msgstr "" msgstr "אפשר נזק"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
msgid "Name/Password" msgid "Name/Password"
msgstr "" msgstr "שם/סיסמה"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "New" msgid "New"
msgstr "" msgstr "חדש"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "No world created or selected!" msgid "No world created or selected!"
msgstr "" msgstr "אין עולם נוצר או נבחר!"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Port" msgid "Port"
msgstr "" msgstr "פורט"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Public" msgid "Public"
msgstr "" msgstr "ציבורי"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Select World:" msgid "Select World:"
msgstr "" msgstr "בחר עולם:"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Server" msgid "Server"
msgstr "" msgstr "שרת"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Server Port" msgid "Server Port"
@ -413,7 +407,7 @@ msgstr ""
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Start Game" msgid "Start Game"
msgstr "" msgstr "התחל משחק"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"$1\" is not a valid flag." msgid "\"$1\" is not a valid flag."
@ -455,7 +449,7 @@ msgstr ""
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Games" msgid "Games"
msgstr "" msgstr "משחקים"
#: 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."
@ -515,7 +509,7 @@ msgstr ""
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp #: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play" msgid "Play"
msgstr "" msgstr "שחק"
#: builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_singleplayer.lua
msgid "Singleplayer" msgid "Singleplayer"
@ -535,7 +529,7 @@ msgstr ""
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "Texturepacks" msgid "Texturepacks"
msgstr "" msgstr "חבילות מרקם"
#: src/client.cpp #: src/client.cpp
msgid "Connection timed out." msgid "Connection timed out."
@ -3126,7 +3120,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Server / Singleplayer" msgid "Server / Singleplayer"
msgstr "" msgstr "שרת"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Server URL" msgid "Server URL"

View File

@ -8,8 +8,8 @@ msgstr ""
"Project-Id-Version: Minetest 0.4.9\n" "Project-Id-Version: Minetest 0.4.9\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2015-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-11-14 22:10+0000\n" "PO-Revision-Date: 2015-12-21 22:09+0000\n"
"Last-Translator: LelixSuperHD <lele98super@gmail.com>\n" "Last-Translator: Gianluca Luparini <gianlucalup@openmailbox.org>\n"
"Language-Team: Italian " "Language-Team: Italian "
"<https://hosted.weblate.org/projects/minetest/minetest/it/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/it/>\n"
"Language: it\n" "Language: it\n"
@ -38,7 +38,7 @@ msgstr "Ok"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "Reconnect" msgid "Reconnect"
msgstr "Riconnettiti" msgstr "Riconnettersi"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
@ -240,7 +240,6 @@ msgstr ""
"per il pacchetto moduli $1" "per il pacchetto moduli $1"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
#, fuzzy
msgid "Close store" msgid "Close store"
msgstr "Chiudi deposito" msgstr "Chiudi deposito"
@ -265,9 +264,8 @@ msgid "Search"
msgstr "Cerca" msgstr "Cerca"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
#, fuzzy
msgid "Shortname:" msgid "Shortname:"
msgstr "Nome del mondo" msgstr "Nome corto:"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Successfully installed:" msgid "Successfully installed:"
@ -298,9 +296,8 @@ msgid "Previous Contributors"
msgstr "Contributori precedenti" msgstr "Contributori precedenti"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Previous Core Developers" msgid "Previous Core Developers"
msgstr "Sviluppatori del motore precedenti" msgstr "Precedente Nucleo sviluppatori"
#: builtin/mainmenu/tab_mods.lua #: builtin/mainmenu/tab_mods.lua
msgid "Installed Mods:" msgid "Installed Mods:"
@ -455,7 +452,7 @@ msgstr "Attivato"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets." msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr "" msgstr "Il formato è da 3 numeri separati da virgole e dentro parentesi."
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
@ -642,7 +639,6 @@ msgid "Creating client..."
msgstr "Creazione del client..." msgstr "Creazione del client..."
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "Creating server..." msgid "Creating server..."
msgstr "Creazione del server..." msgstr "Creazione del server..."
@ -673,7 +669,6 @@ msgstr ""
"- T: chat\n" "- T: chat\n"
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "" msgid ""
"Default Controls:\n" "Default Controls:\n"
"No menu visible:\n" "No menu visible:\n"
@ -755,7 +750,6 @@ msgid "You died."
msgstr "Siete morti." msgstr "Siete morti."
#: src/guiFormSpecMenu.cpp #: src/guiFormSpecMenu.cpp
#, fuzzy
msgid "Enter " msgid "Enter "
msgstr "Invio " msgstr "Invio "
@ -890,6 +884,7 @@ msgid "Apps"
msgstr "Applicazioni" msgstr "Applicazioni"
#: src/keycode.cpp #: src/keycode.cpp
#, fuzzy
msgid "Attn" msgid "Attn"
msgstr "Attn" msgstr "Attn"
@ -1188,7 +1183,6 @@ msgid "3D mode"
msgstr "Modalità 3D" msgstr "Modalità 3D"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "" msgid ""
"3D support.\n" "3D support.\n"
"Currently supported:\n" "Currently supported:\n"
@ -1255,11 +1249,11 @@ msgstr ""
"impostazione." "impostazione."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
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 "dpi del tuo schermo (no X11/solo Android) per esempio schermi 4K." msgstr ""
"Regola i dpi del tuo schermo (no X11/solo Android) per esempio schermi 4K."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1268,7 +1262,6 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Advanced" msgid "Advanced"
msgstr "Avanzato" msgstr "Avanzato"
@ -1277,16 +1270,18 @@ msgid "Always fly and fast"
msgstr "" msgstr ""
#: 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
msgid "Anisotropic filtering" msgid "Anisotropic filtering"
msgstr "Filtro anisotropico" msgstr "Filtro anisotropico"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Announce server" msgid "Announce server"
msgstr "" msgstr "Server annunciato"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1309,7 +1304,7 @@ msgstr "Tasto Indietro"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Basic" msgid "Basic"
msgstr "" msgstr "Base"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Bilinear filtering" msgid "Bilinear filtering"
@ -1322,7 +1317,7 @@ msgstr "Risoluzione dell'indirizzo..."
#: 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 "Bit per pixel (profondita del colore) in schermo intero."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Build inside player" msgid "Build inside player"
@ -1330,7 +1325,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Bumpmapping" msgid "Bumpmapping"
msgstr "" msgstr "Bumpmapping"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera smoothing" msgid "Camera smoothing"
@ -1342,7 +1337,7 @@ msgstr "Ammorbidisci la visuale in modalità cinematica"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera update toggle key" msgid "Camera update toggle key"
msgstr "" msgstr "Tasto Attiva/Disattiva aggiornamento della camera."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Chat key" msgid "Chat key"
@ -1355,7 +1350,7 @@ msgstr "Tasto mostra/nascondi chat"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Chunk size" msgid "Chunk size"
msgstr "" msgstr "dimensione del blocco"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Cinematic mode" msgid "Cinematic mode"

View File

@ -3,8 +3,8 @@ 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-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-11-12 02:44+0000\n" "PO-Revision-Date: 2015-12-19 11:07+0000\n"
"Last-Translator: nobb <nobb.hero+weblate@gmail.com>\n" "Last-Translator: Rui <rui914t@gmail.com>\n"
"Language-Team: Japanese " "Language-Team: Japanese "
"<https://hosted.weblate.org/projects/minetest/minetest/ja/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/ja/>\n"
"Language: ja\n" "Language: ja\n"
@ -36,7 +36,7 @@ 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..."
@ -86,7 +86,7 @@ msgstr "有効化"
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Enable all" msgid "Enable all"
msgstr "すべて有効化" msgstr "て有効化"
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "" msgid ""
@ -123,7 +123,7 @@ msgstr "有効化"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "A world named \"$1\" already exists" msgid "A world named \"$1\" already exists"
msgstr "ワールド名\"$1\"はすでに使用されています" msgstr "ワールド名\"$1\"はに使用されています"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Create" msgid "Create"
@ -131,11 +131,12 @@ msgstr "作成"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Download a subgame, such as minetest_game, from minetest.net" msgid "Download a subgame, such as minetest_game, from minetest.net"
msgstr "minetest.netからminetest_gameのゲームをダウンロードしてください" msgstr "minetest.netからminetest_gameなどサブゲームをダウンロードしてください"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
#, fuzzy
msgid "Download one from minetest.net" msgid "Download one from minetest.net"
msgstr "minetest.netからダウンロードしてください" msgstr "minetest.netからダウンロードしてください"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game" msgid "Game"
@ -155,7 +156,7 @@ msgstr "Seed値"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Warning: The minimal development test is meant for developers." msgid "Warning: The minimal development test is meant for developers."
msgstr "警告: Minimal development testは開発者のためのゲームです。" msgstr "警告: Minimal development testは開発者です。"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "World name" msgid "World name"
@ -163,7 +164,7 @@ msgstr "ワールド名"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "You have no subgames installed." msgid "You have no subgames installed."
msgstr "ゲームがインストールされていません。" msgstr "サブゲームがインストールされていません。"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Are you sure you want to delete \"$1\"?" msgid "Are you sure you want to delete \"$1\"?"
@ -171,11 +172,11 @@ msgstr "本当に\"$1\"を削除してよろしいですか?"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Modmgr: failed to delete \"$1\"" msgid "Modmgr: failed to delete \"$1\""
msgstr "Modマネージャ: \"$1\"の削除に失敗しました" msgstr "Modマネージャ: \"$1\"の削除に失敗しました"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Modmgr: invalid modpath \"$1\"" msgid "Modmgr: invalid modpath \"$1\""
msgstr "Modマネージャ: Mod\"$1\"の場所が不明です" msgstr "Modマネージャ: Mod\"$1\"の場所が不明です"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "No of course not!" msgid "No of course not!"
@ -199,7 +200,7 @@ msgstr "決定"
#: builtin/mainmenu/dlg_rename_modpack.lua #: builtin/mainmenu/dlg_rename_modpack.lua
msgid "Rename Modpack:" msgid "Rename Modpack:"
msgstr "名を変更:" msgstr "Modパック名を変更:"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "" msgid ""
@ -229,7 +230,7 @@ msgstr ""
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Close store" msgid "Close store"
msgstr "閉じる" msgstr "ストアを閉じる"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Downloading $1, please wait..." msgid "Downloading $1, please wait..."
@ -269,7 +270,7 @@ msgstr "再インストール"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
msgid "Active Contributors" msgid "Active Contributors"
msgstr "開発協力者" msgstr "活動中の開発協力者"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
msgid "Core Developers" msgid "Core Developers"
@ -357,6 +358,7 @@ msgid "PvP enabled"
msgstr "PvP有効" msgstr "PvP有効"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
#, fuzzy
msgid "Bind Address" msgid "Bind Address"
msgstr "バインドアドレス" msgstr "バインドアドレス"
@ -411,6 +413,7 @@ msgid "Start Game"
msgstr "ゲームスタート" msgstr "ゲームスタート"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "\"$1\" is not a valid flag." msgid "\"$1\" is not a valid flag."
msgstr "\"$1\"は有効なフラグではありません。" msgstr "\"$1\"は有効なフラグではありません。"
@ -439,10 +442,12 @@ msgid "Enabled"
msgstr "有効" msgstr "有効"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Format is 3 numbers separated by commas and inside brackets." msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr "書式は、コンマとかっこで区切られた 3 つの数字です。" msgstr "書式は、コンマとかっこで区切られた 3 つの数字です。"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "" msgid ""
"Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, " "Format: <offset>, <scale>, (<spreadX>, <spreadY>, <spreadZ>), <seed>, "
"<octaves>, <persistence>" "<octaves>, <persistence>"
@ -460,6 +465,7 @@ msgid "Optionally the lacunarity can be appended with a leading comma."
msgstr "空隙性随意大手カンマを付加することができます。" msgstr "空隙性随意大手カンマを付加することができます。"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Please enter a comma seperated list of flags." msgid "Please enter a comma seperated list of flags."
msgstr "フラグのリストはカンマで区切って入力してください。" msgstr "フラグのリストはカンマで区切って入力してください。"
@ -481,6 +487,7 @@ msgid "Restore Default"
msgstr "初期設定に戻す" msgstr "初期設定に戻す"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
#, fuzzy
msgid "Select path" msgid "Select path"
msgstr "ファイルパスを選択" msgstr "ファイルパスを選択"
@ -495,7 +502,7 @@ 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 "$1より大き値でなければいけません。" msgstr "$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."
@ -547,11 +554,11 @@ msgstr "完了!"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes" msgid "Initializing nodes"
msgstr "ノードを設定中" msgstr "ノードを初期化中"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes..." msgid "Initializing nodes..."
msgstr "ノードの設定中..." msgstr "ノードを初期化中..."
#: src/client.cpp #: src/client.cpp
msgid "Item textures..." msgid "Item textures..."
@ -559,21 +566,23 @@ msgstr "テクスチャを設定中..."
#: src/client.cpp #: src/client.cpp
msgid "Loading textures..." msgid "Loading textures..."
msgstr "テクスチャ読み込み中..." msgstr "テクスチャ読み込み中..."
#: src/client.cpp #: src/client.cpp
msgid "Rebuilding shaders..." msgid "Rebuilding shaders..."
msgstr "シェーダー構築中..." msgstr "シェーダーを再構築中..."
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Connection error (timed out?)" msgid "Connection error (timed out?)"
msgstr "接続失敗(またはタイムアウト)" msgstr "接続エラー (タイムアウト?)"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
#, fuzzy
msgid "Could not find or load game \"" msgid "Could not find or load game \""
msgstr "ゲーム\"の読み込みができません" msgstr "以下のゲームの読み込みができません\""
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
#, fuzzy
msgid "Invalid gamespec." msgid "Invalid gamespec."
msgstr "無効なgamespecです。" msgstr "無効なgamespecです。"
@ -582,14 +591,16 @@ msgid "Main Menu"
msgstr "メインメニュー" msgstr "メインメニュー"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
#, fuzzy
msgid "No world selected and no address provided. Nothing to do." msgid "No world selected and no address provided. Nothing to do."
msgstr "ワールドが選択されていないアドレスです。続行できません。" msgstr "ワールドが選択されていないアドレスです。続行できません。"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Player name too long." msgid "Player name too long."
msgstr "名が長過ぎます。" msgstr "プレイヤー名が長過ぎます。"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
#, fuzzy
msgid "Provided world path doesn't exist: " msgid "Provided world path doesn't exist: "
msgstr "ワールドが存在しません: " msgstr "ワールドが存在しません: "
@ -603,7 +614,7 @@ msgid ""
"Check debug.txt for details." "Check debug.txt for details."
msgstr "" msgstr ""
"\n" "\n"
"詳細はdebug.txtをご覧ください。" "詳細はdebug.txtを確認してください。"
#: src/game.cpp #: src/game.cpp
msgid "Change Keys" msgid "Change Keys"
@ -615,7 +626,7 @@ msgstr "パスワード変更"
#: src/game.cpp #: src/game.cpp
msgid "Connecting to server..." msgid "Connecting to server..."
msgstr "サーバー接続中..." msgstr "サーバー接続中..."
#: src/game.cpp #: src/game.cpp
msgid "Continue" msgid "Continue"
@ -623,11 +634,11 @@ msgstr "再開"
#: src/game.cpp #: src/game.cpp
msgid "Creating client..." msgid "Creating client..."
msgstr "クライアント起動中..." msgstr "クライアント起動中..."
#: src/game.cpp #: src/game.cpp
msgid "Creating server..." msgid "Creating server..."
msgstr "サーバー起動中..." msgstr "サーバー起動中..."
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -643,19 +654,20 @@ msgid ""
"- Mouse wheel: select item\n" "- Mouse wheel: select item\n"
"- T: chat\n" "- T: chat\n"
msgstr "" msgstr ""
"基本操作:\n" "デフォルトの操作:\n"
"- WASD: 移動\n" "- WASD: 移動\n"
"- スペース: ジャンプ登る\n" "- スペース: ジャンプ/登る\n"
"- Shift: スニーク、降りる\n" "- Shift: スニーク/降りる\n"
"- Q: アイテムを落とす\n" "- Q: アイテムを落とす\n"
"- I: インベントリ\n" "- I: インベントリ\n"
"- マウス: 見回す\n" "- マウス: 見回す\n"
"- 左クリック: 破壊パンチ\n" "- 左クリック: 破壊/パンチ\n"
"- 右クリック: 設置使用\n" "- 右クリック: 設置/使用\n"
"- ホイール: アイテム選択\n" "- マウスホイール: アイテム選択\n"
"- T: チャット画面\n" "- T: チャット\n"
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "" msgid ""
"Default Controls:\n" "Default Controls:\n"
"No menu visible:\n" "No menu visible:\n"
@ -670,7 +682,7 @@ msgid ""
"- touch&drag, tap 2nd finger\n" "- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n" " --> place single item to slot\n"
msgstr "" msgstr ""
"基本操作:\n" "デフォルトの操作:\n"
"タッチ操作:\n" "タッチ操作:\n"
"- シングルタップ: ブロックの破壊\n" "- シングルタップ: ブロックの破壊\n"
"- ダブルタップ: 設置、使用\n" "- ダブルタップ: 設置、使用\n"
@ -693,7 +705,7 @@ msgstr "終了"
#: src/game.cpp #: src/game.cpp
msgid "Item definitions..." msgid "Item definitions..."
msgstr "アイテム定義中..." msgstr "アイテム定義中..."
#: src/game.cpp #: src/game.cpp
msgid "KiB/s" msgid "KiB/s"
@ -709,7 +721,7 @@ msgstr "MB/秒"
#: src/game.cpp #: src/game.cpp
msgid "Node definitions..." msgid "Node definitions..."
msgstr "ノード定義中..." msgstr "ノード定義中..."
#: src/game.cpp src/guiFormSpecMenu.cpp #: src/game.cpp src/guiFormSpecMenu.cpp
msgid "Proceed" msgid "Proceed"
@ -717,7 +729,7 @@ msgstr "決定"
#: src/game.cpp #: src/game.cpp
msgid "Resolving address..." msgid "Resolving address..."
msgstr "アドレス解決中..." msgstr "アドレス解決中..."
#: src/game.cpp #: src/game.cpp
msgid "Respawn" msgid "Respawn"
@ -789,9 +801,7 @@ msgstr "キーが重複しています"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr "" msgstr "操作設定です。 (変更に失敗した場合、minetest.confから該当する設定を削除してください)"
"操作設定です。変更に失敗した場合、minetest.confから該当する設定を削除してく"
"ださい)"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp #: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Left" msgid "Left"
@ -883,15 +893,15 @@ msgstr "Caps Lock"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Clear" msgid "Clear"
msgstr "消す" msgstr "クリア"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Comma" msgid "Comma"
msgstr "読点" msgstr ","
#: src/keycode.cpp #: src/keycode.cpp
msgid "Control" msgid "Control"
msgstr "コントロール" msgstr "Ctrl"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Convert" msgid "Convert"
@ -907,7 +917,7 @@ msgstr "下"
#: src/keycode.cpp #: src/keycode.cpp
msgid "End" msgid "End"
msgstr "終了" msgstr "エンド"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Erase OEF" msgid "Erase OEF"
@ -1161,13 +1171,14 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "3D clouds" msgid "3D clouds"
msgstr "立体雲" msgstr "立体雲"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "3D mode" msgid "3D mode"
msgstr "3Dモード" msgstr "3Dモード"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "" msgid ""
"3D support.\n" "3D support.\n"
"Currently supported:\n" "Currently supported:\n"
@ -1177,6 +1188,13 @@ 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 ""
"3Dサポート\n"
"現在サポートしている:\n"
"- none: 3D出力なし\n"
"- anaglyph: cyan/magenta color 3d.\n"
"- interlaced: odd/even line based polarisation screen support.\n"
"- topbottom: split screen top/bottom.\n"
"- sidebyside: split screen side by side."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -3507,7 +3525,7 @@ msgstr "音量"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Walking speed" msgid "Walking speed"
msgstr "歩速度" msgstr "歩速度"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Wanted FPS" msgid "Wanted FPS"
@ -3643,7 +3661,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr "cURLタイムアウト"
#~ msgid "2x" #~ msgid "2x"
#~ msgstr "2倍" #~ msgstr "2倍"

View File

@ -8,16 +8,16 @@ 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-11-08 21:23+0100\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-11-22 06:05+0000\n"
"Last-Translator: Wuzzy <almikes@aol.com>\n" "Last-Translator: senpi <saikos@openmailbox.org>\n"
"Language-Team: Lojban <https://hosted.weblate.org/projects/minetest/minetest/" "Language-Team: Lojban "
"jbo/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/jbo/>\n"
"Language: jbo\n" "Language: jbo\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 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:"
@ -43,7 +43,7 @@ msgstr "samjongau"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
msgstr "" msgstr "le samse'u cu pu cpedu lo nu samjongau"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."

View File

@ -8,27 +8,27 @@ 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-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2013-12-11 19:23+0200\n" "PO-Revision-Date: 2015-11-19 05:14+0000\n"
"Last-Translator: Jonas Kriaučiūnas <jonukas@gmail.com>\n" "Last-Translator: Liudas Ališauskas <liudas@akmc.lt>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: Lithuanian "
"<https://hosted.weblate.org/projects/minetest/minetest/lt/>\n"
"Language: lt\n" "Language: lt\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%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"%100<10 || n%100>=20) ? 1 : 2;\n" "(n%100<10 || n%100>=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:"
msgstr "" msgstr "Klaida įvyko Lua scenarijuje, tokiame kaip papildinys:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "An error occured:" msgid "An error occured:"
msgstr "" msgstr "Įvyko klaida:"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Main menu" msgid "Main menu"
msgstr "Pagrindinis meniu" msgstr "Pagrindinis meniu"
@ -37,13 +37,12 @@ msgid "Ok"
msgstr "Gerai" msgstr "Gerai"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
#, fuzzy
msgid "Reconnect" msgid "Reconnect"
msgstr "Jungtis" msgstr "Prisijungti iš naujo"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
msgid "The server has requested a reconnect:" msgid "The server has requested a reconnect:"
msgstr "" msgstr "Serveris paprašė prisijungti iš naujo:"
#: builtin/mainmenu/common.lua src/game.cpp #: builtin/mainmenu/common.lua src/game.cpp
msgid "Loading..." msgid "Loading..."
@ -51,11 +50,11 @@ msgstr "Įkeliama..."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Protocol version mismatch. " msgid "Protocol version mismatch. "
msgstr "" msgstr "Neatitinka protokolo versija. "
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "Server enforces protocol version $1. " msgid "Server enforces protocol version $1. "
msgstr "" msgstr "Serveris reikalauja naudoti versijos $1 protokolą. "
#: 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. "
@ -64,6 +63,8 @@ msgstr ""
#: 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 ""
"Pabandykite dar kart įjungti viešą serverių sąrašą ir patikrinkite savo "
"interneto ryšį."
#: builtin/mainmenu/common.lua #: builtin/mainmenu/common.lua
msgid "We only support protocol version $1." msgid "We only support protocol version $1."
@ -100,6 +101,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 ""
"Nepavyko įjungti papildinio „$1“, nes jis turi neleistų rašmenų. Tik "
"rašmenys [a-z0-9_] yra leidžiami."
#: builtin/mainmenu/dlg_config_world.lua #: builtin/mainmenu/dlg_config_world.lua
msgid "Hide Game" msgid "Hide Game"
@ -136,11 +139,11 @@ msgstr "Sukurti"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Download a subgame, such as minetest_game, from minetest.net" msgid "Download a subgame, such as minetest_game, from minetest.net"
msgstr "" msgstr "Atsisiųskite sub žaidimą, tokį kaip minetest_game, iš minetest.net"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Download one from minetest.net" msgid "Download one from minetest.net"
msgstr "" msgstr "Atsisiųsti vieną iš minetest.net"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Game" msgid "Game"
@ -148,20 +151,19 @@ msgstr "Žaidimas"
#: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp #: builtin/mainmenu/dlg_create_world.lua src/settings_translation_file.cpp
msgid "Mapgen" msgid "Mapgen"
msgstr "" msgstr "Žemėlapių generavimas"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "No worldname given or no game selected" msgid "No worldname given or no game selected"
msgstr "" msgstr "Nepateiktas joks pasaulio pavadinimas, arba nepasirinktas žaidimas"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
#, fuzzy
msgid "Seed" msgid "Seed"
msgstr "Sėkla" msgstr "Sėkla"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "Warning: The minimal development test is meant for developers." msgid "Warning: The minimal development test is meant for developers."
msgstr "" msgstr "Dėmesio: Minimalus kūrimo bandymas yra skirtas vystytojams."
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "World name" msgid "World name"
@ -169,25 +171,26 @@ msgstr "Pasaulio pavadinimas"
#: builtin/mainmenu/dlg_create_world.lua #: builtin/mainmenu/dlg_create_world.lua
msgid "You have no subgames installed." msgid "You have no subgames installed."
msgstr "" msgstr "Neturite įdiegę sub žaidimų."
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Are you sure you want to delete \"$1\"?" msgid "Are you sure you want to delete \"$1\"?"
msgstr "" msgstr "Ar tikrai norite ištrinti „$1“?"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Modmgr: failed to delete \"$1\"" msgid "Modmgr: failed to delete \"$1\""
msgstr "" msgstr "Papildtvrk: nepavyko ištrinti „$1“"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "Modmgr: invalid modpath \"$1\"" msgid "Modmgr: invalid modpath \"$1\""
msgstr "" msgstr "Papildtvrk: netinkamas papildinio kelias „$1“"
#: builtin/mainmenu/dlg_delete_mod.lua #: builtin/mainmenu/dlg_delete_mod.lua
msgid "No of course not!" msgid "No of course not!"
msgstr "" msgstr "Ne, tikrai ne!"
#: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua #: builtin/mainmenu/dlg_delete_mod.lua builtin/mainmenu/dlg_delete_world.lua
#: builtin/mainmenu/tab_settings.lua
msgid "Yes" msgid "Yes"
msgstr "Taip" msgstr "Taip"
@ -200,7 +203,6 @@ msgid "No"
msgstr "Ne" msgstr "Ne"
#: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp #: builtin/mainmenu/dlg_rename_modpack.lua src/keycode.cpp
#, fuzzy
msgid "Accept" msgid "Accept"
msgstr "Priimti" msgstr "Priimti"
@ -213,6 +215,8 @@ msgid ""
"\n" "\n"
"Install Mod: unsupported filetype \"$1\" or broken archive" "Install Mod: unsupported filetype \"$1\" or broken archive"
msgstr "" msgstr ""
"\n"
"Papildinio diegimas: nepalaikomas failo tipas „$1“, arba sugadintas archyvas"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "Failed to install $1 to $2" msgid "Failed to install $1 to $2"
@ -220,23 +224,25 @@ msgstr "Nepavyko įdiegti $1 į $2"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "Install Mod: file: \"$1\"" msgid "Install Mod: file: \"$1\""
msgstr "" msgstr "Įdiegti papildinį: failas: „$1“"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "Install Mod: unable to find real modname for: $1" msgid "Install Mod: unable to find real modname for: $1"
msgstr "" msgstr "Papildinio diegimas: nepavyksta rasti tikro pavadinimo skirto: $1"
#: builtin/mainmenu/modmgr.lua #: builtin/mainmenu/modmgr.lua
msgid "Install Mod: unable to find suitable foldername for modpack $1" msgid "Install Mod: unable to find suitable foldername for modpack $1"
msgstr "" msgstr ""
"Papildinio diegimas: nepavyksta rasti tinkamo aplanko pavadinimo papildinio "
"paketui $1"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Close store" msgid "Close store"
msgstr "" msgstr "Užverti parduotuvę"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Downloading $1, please wait..." msgid "Downloading $1, please wait..."
msgstr "" msgstr "Atsiunčiama $1, prašome palaukti..."
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Install" msgid "Install"
@ -244,28 +250,27 @@ msgstr "Įdiegti"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Page $1 of $2" msgid "Page $1 of $2"
msgstr "" msgstr "Puslapis $1 iš $2"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Rating" msgid "Rating"
msgstr "" msgstr "Įvertinimas"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Search" msgid "Search"
msgstr "" msgstr "Ieškoti"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
#, fuzzy
msgid "Shortname:" msgid "Shortname:"
msgstr "Pasaulio pavadinimas" msgstr "Trumpas pavadinimas:"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Successfully installed:" msgid "Successfully installed:"
msgstr "" msgstr "Sėkmingai įdiegta:"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "Unsorted" msgid "Unsorted"
msgstr "" msgstr "Nerikiuota"
#: builtin/mainmenu/store.lua #: builtin/mainmenu/store.lua
msgid "re-Install" msgid "re-Install"
@ -285,12 +290,11 @@ msgstr "Padėkos"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
msgid "Previous Contributors" msgid "Previous Contributors"
msgstr "" msgstr "Ankstesni bendradarbiai"
#: builtin/mainmenu/tab_credits.lua #: builtin/mainmenu/tab_credits.lua
#, fuzzy
msgid "Previous Core Developers" msgid "Previous Core Developers"
msgstr "Pagrindiniai kūrėjai" msgstr "Ankstesni pagrindiniai kūrėjai"
#: builtin/mainmenu/tab_mods.lua #: builtin/mainmenu/tab_mods.lua
msgid "Installed Mods:" msgid "Installed Mods:"
@ -325,9 +329,8 @@ msgid "Uninstall selected modpack"
msgstr "Pašalinti pasirinktą papildinį" msgstr "Pašalinti pasirinktą papildinį"
#: builtin/mainmenu/tab_multiplayer.lua #: builtin/mainmenu/tab_multiplayer.lua
#, fuzzy
msgid "Address / Port :" msgid "Address / Port :"
msgstr "Adresas/Prievadas" msgstr "Adresas / Prievadas :"
#: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp #: builtin/mainmenu/tab_multiplayer.lua src/settings_translation_file.cpp
msgid "Client" msgid "Client"
@ -338,14 +341,12 @@ msgid "Connect"
msgstr "Jungtis" msgstr "Jungtis"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Creative mode" msgid "Creative mode"
msgstr "Kūrybinė veiksena" msgstr "Kūrybinė veiksena"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Damage enabled" msgid "Damage enabled"
msgstr "įjungtas" msgstr "Žalojimas įjungtas"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_server.lua
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp #: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
@ -353,22 +354,20 @@ msgid "Delete"
msgstr "Ištrinti" msgstr "Ištrinti"
#: builtin/mainmenu/tab_multiplayer.lua #: builtin/mainmenu/tab_multiplayer.lua
#, fuzzy
msgid "Name / Password :" msgid "Name / Password :"
msgstr "Vardas/slaptažodis" msgstr "Vardas / Slaptažodis :"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
msgid "Public Serverlist" msgid "Public Serverlist"
msgstr "Viešų serverių sąrašas" msgstr "Viešų serverių sąrašas"
#: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_multiplayer.lua builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "PvP enabled" msgid "PvP enabled"
msgstr "įjungtas" msgstr "PvP įjungtas"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Bind Address" msgid "Bind Address"
msgstr "" msgstr "Susieti adresą"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "Configure" msgid "Configure"
@ -376,7 +375,6 @@ msgstr "Konfigūruoti"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_simple_main.lua
#: builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_singleplayer.lua
#, fuzzy
msgid "Creative Mode" msgid "Creative Mode"
msgstr "Kūrybinė veiksena" msgstr "Kūrybinė veiksena"
@ -395,11 +393,11 @@ msgstr "Naujas"
#: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua #: builtin/mainmenu/tab_server.lua builtin/mainmenu/tab_singleplayer.lua
msgid "No world created or selected!" msgid "No world created or selected!"
msgstr "" msgstr "Nesukurtas ar pasirinktas joks pasaulis!"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Port" msgid "Port"
msgstr "" msgstr "Prievadas"
#: builtin/mainmenu/tab_server.lua #: builtin/mainmenu/tab_server.lua
msgid "Public" msgid "Public"
@ -510,19 +508,16 @@ msgid "The value must be lower than $1."
msgstr "" msgstr ""
#: builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Config mods" msgid "Config mods"
msgstr "Konfigūruoti" msgstr "Konfigūruoti papildinius"
#: builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Main" msgid "Main"
msgstr "Pagrindinis meniu" msgstr "Pagrindinis"
#: builtin/mainmenu/tab_simple_main.lua #: builtin/mainmenu/tab_simple_main.lua
#, fuzzy
msgid "Start Singleplayer" msgid "Start Singleplayer"
msgstr "Žaisti vienam" msgstr "Atstatyti vieno žaidėjo pasaulį"
#: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp #: builtin/mainmenu/tab_singleplayer.lua src/keycode.cpp
msgid "Play" msgid "Play"
@ -534,61 +529,60 @@ msgstr "Žaisti vienam"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "No information available" msgid "No information available"
msgstr "" msgstr "Nėra pasiekiamos informacijos"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
#: builtin/mainmenu/tab_settings.lua
msgid "None" msgid "None"
msgstr "" msgstr "Joks"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "Select texture pack:" msgid "Select texture pack:"
msgstr "" msgstr "Pasirinkite tekstūros paketą:"
#: builtin/mainmenu/tab_texturepacks.lua #: builtin/mainmenu/tab_texturepacks.lua
msgid "Texturepacks" msgid "Texturepacks"
msgstr "" msgstr "Tekstūrų paketai"
#: src/client.cpp #: src/client.cpp
msgid "Connection timed out." msgid "Connection timed out."
msgstr "" msgstr "Baigėsi prijungimo laikas."
#: src/client.cpp #: src/client.cpp
msgid "Done!" msgid "Done!"
msgstr "" msgstr "Atlikta!"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes" msgid "Initializing nodes"
msgstr "" msgstr "Inicijuojami mazgai"
#: src/client.cpp #: src/client.cpp
msgid "Initializing nodes..." msgid "Initializing nodes..."
msgstr "" msgstr "Inicijuojami mazgai..."
#: src/client.cpp #: src/client.cpp
msgid "Item textures..." msgid "Item textures..."
msgstr "" msgstr "Elemento tekstūros..."
#: src/client.cpp #: src/client.cpp
#, fuzzy
msgid "Loading textures..." msgid "Loading textures..."
msgstr "Įkeliama..." msgstr "Įkeliamos tekstūros..."
#: src/client.cpp #: src/client.cpp
#, fuzzy
msgid "Rebuilding shaders..." msgid "Rebuilding shaders..."
msgstr "Ieškoma adreso..." msgstr "Perstatomi šešėliavimai..."
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Connection error (timed out?)" msgid "Connection error (timed out?)"
msgstr "" msgstr "Ryšio klaida (baigėsi prijungimo laikas?)"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Could not find or load game \"" msgid "Could not find or load game \""
msgstr "" msgstr "Nepavyko rasti ar įkelti žaidimo „"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Invalid gamespec." msgid "Invalid gamespec."
msgstr "" msgstr "Klaidingi žaidimo nustatymai."
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Main Menu" msgid "Main Menu"
@ -597,27 +591,29 @@ msgstr "Pagrindinis meniu"
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "No world selected and no address provided. Nothing to do." msgid "No world selected and no address provided. Nothing to do."
msgstr "" msgstr ""
"Nepasirinktas joks pasaulis ir nepateiktas joks adresas. Nėra ką daryti."
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Player name too long." msgid "Player name too long."
msgstr "" msgstr "Žaidėjo vardas per ilgas."
#: src/client/clientlauncher.cpp #: src/client/clientlauncher.cpp
msgid "Provided world path doesn't exist: " msgid "Provided world path doesn't exist: "
msgstr "" msgstr "Pateiktas pasaulio kelias neegzistuoja: "
#: src/fontengine.cpp #: src/fontengine.cpp
msgid "needs_fallback_font" msgid "needs_fallback_font"
msgstr "" msgstr "reikia_atsarginio_šrifto"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
"\n" "\n"
"Check debug.txt for details." "Check debug.txt for details."
msgstr "" msgstr ""
"\n"
"Patikrinkite debug.txt dėl papildomos informacijos."
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "Change Keys" msgid "Change Keys"
msgstr "Nustatyti klavišus" msgstr "Nustatyti klavišus"
@ -634,12 +630,10 @@ msgid "Continue"
msgstr "Tęsti" msgstr "Tęsti"
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "Creating client..." msgid "Creating client..."
msgstr "Kuriamas klientas..." msgstr "Kuriamas klientas..."
#: src/game.cpp #: src/game.cpp
#, fuzzy
msgid "Creating server..." msgid "Creating server..."
msgstr "Kuriamas serveris...." msgstr "Kuriamas serveris...."
@ -657,6 +651,17 @@ msgid ""
"- Mouse wheel: select item\n" "- Mouse wheel: select item\n"
"- T: chat\n" "- T: chat\n"
msgstr "" msgstr ""
"Numatytas valdymas:\n"
"- WASD: judėti\n"
"- Tarpas: šokti/lipti\n"
"- Lyg2: leistis/eiti žemyn\n"
"- Q: išmesti elementą\n"
"- I: inventorius\n"
"- Pelė: sukti/žiūrėti\n"
"- Pelės kairys: kasti/smugiuoti\n"
"- Pelės dešinys: padėti/naudoti\n"
"- Pelės ratukas: pasirinkti elementą\n"
"- T: kalbėtis\n"
#: src/game.cpp #: src/game.cpp
msgid "" msgid ""
@ -673,6 +678,18 @@ msgid ""
"- touch&drag, tap 2nd finger\n" "- touch&drag, tap 2nd finger\n"
" --> place single item to slot\n" " --> place single item to slot\n"
msgstr "" msgstr ""
"Numatytas valdymas:\n"
"Nematomi meniu:\n"
"- vienas palietimas: mygtukas aktyvuoti\n"
"- dvigubas palietimas: padėti/naudoti\n"
"- slinkti pirštu: žvalgytis aplink\n"
"Meniu/Inventorius matomi:\n"
"- dvigubas palietimas (išorėje):\n"
" -->uždaryti\n"
"- liesti rietuvę, liesti angą:\n"
" --> judinti rietuvę\n"
"- liesti&tempti, liesti antru pirštu\n"
" --> padėti vieną elementą į angą\n"
#: src/game.cpp #: src/game.cpp
msgid "Exit to Menu" msgid "Exit to Menu"
@ -684,28 +701,27 @@ msgstr "Išeiti iš žaidimo"
#: src/game.cpp #: src/game.cpp
msgid "Item definitions..." msgid "Item definitions..."
msgstr "" msgstr "Elemento apibrėžimai..."
#: src/game.cpp #: src/game.cpp
msgid "KiB/s" msgid "KiB/s"
msgstr "" msgstr "KiB/s"
#: src/game.cpp #: src/game.cpp
msgid "Media..." msgid "Media..."
msgstr "" msgstr "Medija..."
#: src/game.cpp #: src/game.cpp
msgid "MiB/s" msgid "MiB/s"
msgstr "" msgstr "MiB/s"
#: src/game.cpp #: src/game.cpp
msgid "Node definitions..." msgid "Node definitions..."
msgstr "" msgstr "Mazgo apibrėžimai..."
#: src/game.cpp src/guiFormSpecMenu.cpp #: src/game.cpp src/guiFormSpecMenu.cpp
#, fuzzy
msgid "Proceed" msgid "Proceed"
msgstr "Tęsti" msgstr "Vykdyti"
#: src/game.cpp #: src/game.cpp
msgid "Resolving address..." msgid "Resolving address..."
@ -717,11 +733,11 @@ msgstr "Prisikelti"
#: src/game.cpp #: src/game.cpp
msgid "Shutting down..." msgid "Shutting down..."
msgstr "" msgstr "Išjungiama..."
#: src/game.cpp #: src/game.cpp
msgid "Sound Volume" msgid "Sound Volume"
msgstr "" msgstr "Garso lygis"
#: src/game.cpp #: src/game.cpp
msgid "You died." msgid "You died."
@ -729,15 +745,15 @@ msgstr "Jūs numirėte."
#: src/guiFormSpecMenu.cpp #: src/guiFormSpecMenu.cpp
msgid "Enter " msgid "Enter "
msgstr "" msgstr "Įvesti"
#: src/guiFormSpecMenu.cpp #: src/guiFormSpecMenu.cpp
msgid "ok" msgid "ok"
msgstr "" msgstr "gerai"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "\"Use\" = climb down" msgid "\"Use\" = climb down"
msgstr "" msgstr "„Naudoti“ = kopti žemyn"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Backward" msgid "Backward"
@ -753,11 +769,11 @@ msgstr "Komanda"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Console" msgid "Console"
msgstr "" msgstr "Pultas"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Double tap \"jump\" to toggle fly" msgid "Double tap \"jump\" to toggle fly"
msgstr "" msgstr "Du kart paliesti „šokti“, kad įjungti skrydį"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Drop" msgid "Drop"
@ -781,7 +797,7 @@ msgstr "Klavišas jau naudojamas"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)" msgid "Keybindings. (If this menu screws up, remove stuff from minetest.conf)"
msgstr "" msgstr "Klavišai. (Jei šis meniu sugenda, pašalinkite įrašus iš minetest.conf)"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp #: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Left" msgid "Left"
@ -789,11 +805,11 @@ msgstr "Kairėn"
#: src/guiKeyChangeMenu.cpp src/settings_translation_file.cpp #: src/guiKeyChangeMenu.cpp src/settings_translation_file.cpp
msgid "Print stacks" msgid "Print stacks"
msgstr "" msgstr "Spausdinti rietuves"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Range select" msgid "Range select"
msgstr "" msgstr "Intervalo pasirinkimas"
#: src/guiKeyChangeMenu.cpp src/keycode.cpp #: src/guiKeyChangeMenu.cpp src/keycode.cpp
msgid "Right" msgid "Right"
@ -801,23 +817,23 @@ msgstr "Dešinėn"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Sneak" msgid "Sneak"
msgstr "" msgstr "Sėlinti"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Toggle Cinematic" msgid "Toggle Cinematic"
msgstr "" msgstr "Įjungti kinematografinį"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Toggle fast" msgid "Toggle fast"
msgstr "" msgstr "Įjungti greitą"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Toggle fly" msgid "Toggle fly"
msgstr "" msgstr "Įjungti skrydį"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Toggle noclip" msgid "Toggle noclip"
msgstr "" msgstr "Įjungti noclip"
#: src/guiKeyChangeMenu.cpp #: src/guiKeyChangeMenu.cpp
msgid "Use" msgid "Use"
@ -853,11 +869,11 @@ msgstr "Išeiti"
#: src/guiVolumeChange.cpp #: src/guiVolumeChange.cpp
msgid "Sound Volume: " msgid "Sound Volume: "
msgstr "" msgstr "Garso lygis: "
#: src/keycode.cpp #: src/keycode.cpp
msgid "Apps" msgid "Apps"
msgstr "" msgstr "Programos"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Attn" msgid "Attn"
@ -865,15 +881,15 @@ msgstr ""
#: src/keycode.cpp #: src/keycode.cpp
msgid "Back" msgid "Back"
msgstr "" msgstr "Atgal"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Capital" msgid "Capital"
msgstr "" msgstr "Sostinė"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Clear" msgid "Clear"
msgstr "" msgstr "Išvalyti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Comma" msgid "Comma"
@ -881,11 +897,11 @@ msgstr "Kablelis"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Control" msgid "Control"
msgstr "" msgstr "Valdymas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Convert" msgid "Convert"
msgstr "" msgstr "Konvertuoti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "CrSel" msgid "CrSel"
@ -897,15 +913,15 @@ msgstr "Žemyn"
#: src/keycode.cpp #: src/keycode.cpp
msgid "End" msgid "End"
msgstr "" msgstr "Baigti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Erase OEF" msgid "Erase OEF"
msgstr "" msgstr "Ištrinti OEF"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Escape" msgid "Escape"
msgstr "" msgstr "Atšaukti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "ExSel" msgid "ExSel"
@ -917,7 +933,7 @@ msgstr "Vykdyti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Final" msgid "Final"
msgstr "" msgstr "Galutinis"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Help" msgid "Help"
@ -925,7 +941,7 @@ msgstr "Pagalba"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Home" msgid "Home"
msgstr "" msgstr "Pradžia"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Insert" msgid "Insert"
@ -933,15 +949,15 @@ msgstr "Įterpti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Junja" msgid "Junja"
msgstr "" msgstr "Junja"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Kana" msgid "Kana"
msgstr "" msgstr "Kana"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Kanji" msgid "Kanji"
msgstr "" msgstr "Kanji"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Left Button" msgid "Left Button"
@ -953,7 +969,7 @@ msgstr "Kairysis Control"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Left Menu" msgid "Left Menu"
msgstr "" msgstr "Kairysis meniu"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Left Shift" msgid "Left Shift"
@ -961,7 +977,7 @@ msgstr "Kairysis Shift"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Left Windows" msgid "Left Windows"
msgstr "" msgstr "Kairieji langai"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Menu" msgid "Menu"
@ -973,15 +989,15 @@ msgstr "Vidurinis mygtukas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Minus" msgid "Minus"
msgstr "" msgstr "Minus"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Mode Change" msgid "Mode Change"
msgstr "" msgstr "Būsenos keitimas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Next" msgid "Next"
msgstr "" msgstr "Kitas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Nonconvert" msgid "Nonconvert"
@ -989,67 +1005,67 @@ msgstr ""
#: src/keycode.cpp #: src/keycode.cpp
msgid "Num Lock" msgid "Num Lock"
msgstr "" msgstr "Num Lock"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad *" msgid "Numpad *"
msgstr "" msgstr "SkaitKlav *"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad +" msgid "Numpad +"
msgstr "" msgstr "SkaitKlav +"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad -" msgid "Numpad -"
msgstr "" msgstr "SkaitKlav -"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad /" msgid "Numpad /"
msgstr "" msgstr "SkaitKlav /"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 0" msgid "Numpad 0"
msgstr "" msgstr "SkaitKlav 0"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 1" msgid "Numpad 1"
msgstr "" msgstr "SkaitKlav 1"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 2" msgid "Numpad 2"
msgstr "" msgstr "SkaitKlav 2"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 3" msgid "Numpad 3"
msgstr "" msgstr "SkaitKlav 3"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 4" msgid "Numpad 4"
msgstr "" msgstr "SkaitKlav 4"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 5" msgid "Numpad 5"
msgstr "" msgstr "SkaitKlav 5"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 6" msgid "Numpad 6"
msgstr "" msgstr "SkaitKlav 6"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 7" msgid "Numpad 7"
msgstr "" msgstr "SkaitKlav 7"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 8" msgid "Numpad 8"
msgstr "" msgstr "SkaitKlav 8"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Numpad 9" msgid "Numpad 9"
msgstr "" msgstr "SkaitKlav 9"
#: src/keycode.cpp #: src/keycode.cpp
msgid "OEM Clear" msgid "OEM Clear"
msgstr "" msgstr "OEM valymas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "PA1" msgid "PA1"
@ -1057,11 +1073,11 @@ msgstr ""
#: src/keycode.cpp #: src/keycode.cpp
msgid "Pause" msgid "Pause"
msgstr "" msgstr "Pause"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Period" msgid "Period"
msgstr "" msgstr "Periodas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Plus" msgid "Plus"
@ -1069,15 +1085,15 @@ msgstr "Plius"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Print" msgid "Print"
msgstr "" msgstr "Spausdinti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Prior" msgid "Prior"
msgstr "" msgstr "Ankstesnis"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Return" msgid "Return"
msgstr "" msgstr "Grįžti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Right Button" msgid "Right Button"
@ -1089,7 +1105,7 @@ msgstr "Dešinysis Control"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Right Menu" msgid "Right Menu"
msgstr "" msgstr "Dešinysis meniu"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Right Shift" msgid "Right Shift"
@ -1097,15 +1113,15 @@ msgstr "Dešinysis Shift"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Right Windows" msgid "Right Windows"
msgstr "" msgstr "Dešinieji langai"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Scroll Lock" msgid "Scroll Lock"
msgstr "" msgstr "Scroll Lock"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Select" msgid "Select"
msgstr "" msgstr "Pasirinkti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Shift" msgid "Shift"
@ -1113,11 +1129,11 @@ msgstr "Shift (Lyg2)"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Sleep" msgid "Sleep"
msgstr "" msgstr "Užmigdyti"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Snapshot" msgid "Snapshot"
msgstr "" msgstr "Užlaikymas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Space" msgid "Space"
@ -1125,7 +1141,7 @@ msgstr "Tarpas"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Tab" msgid "Tab"
msgstr "" msgstr "Tabuliacija"
#: src/keycode.cpp #: src/keycode.cpp
msgid "Up" msgid "Up"
@ -1133,14 +1149,13 @@ msgstr "Aukštyn"
#: src/keycode.cpp #: src/keycode.cpp
msgid "X Button 1" msgid "X Button 1"
msgstr "" msgstr "X mygtukas 1"
#: src/keycode.cpp #: src/keycode.cpp
msgid "X Button 2" msgid "X Button 2"
msgstr "" msgstr "X mygtukas 2"
#: src/keycode.cpp #: src/keycode.cpp
#, fuzzy
msgid "Zoom" msgid "Zoom"
msgstr "Pritraukti" msgstr "Pritraukti"
@ -2978,8 +2993,9 @@ msgid "Overall scale of parallax occlusion effect."
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#: builtin/mainmenu/tab_settings.lua
msgid "Parallax Occlusion" msgid "Parallax Occlusion"
msgstr "" msgstr "Paralaksinė okliuzija"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Parallax occlusion" msgid "Parallax occlusion"
@ -3236,9 +3252,9 @@ msgid ""
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy #: builtin/mainmenu/tab_settings.lua
msgid "Shaders" msgid "Shaders"
msgstr "Šešėliai" msgstr "Šešėliavimai"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -3646,16 +3662,14 @@ msgstr ""
msgid "cURL timeout" msgid "cURL timeout"
msgstr "" msgstr ""
#, fuzzy
#~ msgid "Opaque Leaves" #~ msgid "Opaque Leaves"
#~ msgstr "Nepermatomas vanduo" #~ msgstr "Nepermatomi lapai"
#~ msgid "Opaque Water" #~ msgid "Opaque Water"
#~ msgstr "Nepermatomas vanduo" #~ msgstr "Nepermatomas vanduo"
#, fuzzy
#~ msgid "Reset singleplayer world" #~ msgid "Reset singleplayer world"
#~ msgstr "Žaisti vienam" #~ msgstr "Atstatyti vieno žaidėjo pasaulį"
#~ msgid "Add mod:" #~ msgid "Add mod:"
#~ msgstr "Pridėti papildinį:" #~ msgstr "Pridėti papildinį:"

File diff suppressed because it is too large Load Diff

View File

@ -8,16 +8,16 @@ 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-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-11-08 10:10+0000\n" "PO-Revision-Date: 2015-12-18 09:44+0000\n"
"Last-Translator: Vasily Pavlov <halmet94@gmail.com>\n" "Last-Translator: Anton Tsyganenko <anton-tsyganenko@yandex.ru>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/minetest/" "Language-Team: Russian "
"minetest/ru/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/ru/>\n"
"Language: ru\n" "Language: ru\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%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<="
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 2.5-dev\n" "X-Generator: Weblate 2.5-dev\n"
#: builtin/fstk/ui.lua #: builtin/fstk/ui.lua
@ -446,7 +446,7 @@ msgstr "Включено"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets." msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr "" msgstr "Формат -- это 3 числа в скобках, разделенные точками."
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
@ -1292,7 +1292,7 @@ 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 #, fuzzy
@ -1305,7 +1305,7 @@ msgstr "Адрес бинда"
#: 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 "Биты на пиксель (глубина цвета) в полноэкранном режиме."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Build inside player" msgid "Build inside player"
@ -1325,7 +1325,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Camera update toggle key" msgid "Camera update toggle key"
msgstr "" msgstr "Клавиша переключения обновления камеры"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Chat key" msgid "Chat key"
@ -1357,7 +1357,7 @@ msgstr "Клиент и Сервер"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Climbing speed" msgid "Climbing speed"
msgstr "" msgstr "Скорость подъема"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Cloud height" msgid "Cloud height"
@ -1373,7 +1373,7 @@ 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
msgid "Clouds in menu" msgid "Clouds in menu"
@ -1403,7 +1403,7 @@ msgstr "Подключение к внешнему серверу..."
#: 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 "Соединяет стекло, если поддерживается нодой."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Console alpha" msgid "Console alpha"
@ -1435,12 +1435,17 @@ msgid ""
"Examples: 72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays " "Examples: 72 = 20min, 360 = 4min, 1 = 24hour, 0 = day/night/whatever stays "
"unchanged." "unchanged."
msgstr "" msgstr ""
"Задает длину цикла дня/ночи.\n"
"Примеры: 72 = 20 минут, 360 = 4 минуты, 1 = 24 часа, 0 = время суток не "
"меняется."
#: 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 ""
"Задает размеры пустыней и пляжей.\n"
"Когда включены снежные биомы, 'mgv6_freq_desert' игнорируется."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Crash message" msgid "Crash message"
@ -1448,23 +1453,24 @@ msgstr "Сообщение при падении"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Crosshair alpha" msgid "Crosshair alpha"
msgstr "" msgstr "Прозрачность перекрестия"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Crosshair alpha (opaqueness, between 0 and 255)." msgid "Crosshair alpha (opaqueness, between 0 and 255)."
msgstr "" msgstr "Прозрачность перекрестия (от 0 (прозрачно) до 255 (непрозрачно))."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Crosshair color" msgid "Crosshair color"
msgstr "" msgstr "Цвет перекрестия"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Crosshair color (R,G,B)." msgid "Crosshair color (R,G,B)."
msgstr "" msgstr "Цвет перекрестия (R,G,B)."
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Crouch speed" msgid "Crouch speed"
msgstr "" msgstr "Скорость спуска"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "DPI" msgid "DPI"
@ -1472,11 +1478,12 @@ msgstr "DPI"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Damage" msgid "Damage"
msgstr "Увечья" msgstr "Урон"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Debug info toggle key" msgid "Debug info toggle key"
msgstr "" msgstr "Клавиша переключения показа debug-информации"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Debug log level" msgid "Debug log level"
@ -1488,7 +1495,7 @@ msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Default acceleration" msgid "Default acceleration"
msgstr "" msgstr "Ускорение по умолчанию"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Default game" msgid "Default game"

View File

@ -8,10 +8,10 @@ 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-11-08 21:23+0100\n" "POT-Creation-Date: 2015-11-08 21:23+0100\n"
"PO-Revision-Date: 2015-11-08 10:49+0000\n" "PO-Revision-Date: 2015-12-10 08:13+0000\n"
"Last-Translator: Jeff Huang <s8321414@chakraos.org>\n" "Last-Translator: Jeff Huang <s8321414@chakraos.org>\n"
"Language-Team: Chinese (Taiwan) <https://hosted.weblate.org/projects/" "Language-Team: Chinese (Taiwan) "
"minetest/minetest/zh_TW/>\n" "<https://hosted.weblate.org/projects/minetest/minetest/zh_TW/>\n"
"Language: zh_TW\n" "Language: zh_TW\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"
@ -415,7 +415,7 @@ msgstr "開始遊戲"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "\"$1\" is not a valid flag." msgid "\"$1\" is not a valid flag."
msgstr "" msgstr "「$1」不是一個有效的旗標。"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "(No description of setting given)" msgid "(No description of setting given)"
@ -443,7 +443,7 @@ msgstr "已啟用"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "Format is 3 numbers separated by commas and inside brackets." msgid "Format is 3 numbers separated by commas and inside brackets."
msgstr "" msgstr "格式為 3 個在括號內的以逗號分離的數字。"
#: builtin/mainmenu/tab_settings.lua #: builtin/mainmenu/tab_settings.lua
msgid "" msgid ""
@ -1432,12 +1432,11 @@ msgstr ""
"範例72 = 20分鐘360 = 4分鐘1 = 24小時0 = 日/夜/一切保持不變。" "範例72 = 20分鐘360 = 4分鐘1 = 24小時0 = 日/夜/一切保持不變。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
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 ""
"控制在 Mapgen V6 中的沙漠與沙灘大小。\n" "控制在 Mapgen v6 中的沙漠與沙灘大小。\n"
"當 snowbiomes 啟用時「mgv6_freq_desert」會被忽略。" "當 snowbiomes 啟用時「mgv6_freq_desert」會被忽略。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
@ -1593,6 +1592,9 @@ msgid ""
"Note that this is not quite optimized and that smooth lighting on the\n" "Note that this is not quite optimized and that smooth lighting on the\n"
"water surface doesn't work with this." "water surface doesn't work with this."
msgstr "" msgstr ""
"啟用略低的的水面,所以它就不會完全「填滿」節點。\n"
"注意,這個功能並未最佳化完成,水面的\n"
"柔和光功能無法與此功能一同運作。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Enable mod security" msgid "Enable mod security"
@ -1724,39 +1726,41 @@ msgstr "後備字型大小"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fast key" msgid "Fast key"
msgstr "" msgstr "快速按鍵"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fast mode acceleration" msgid "Fast mode acceleration"
msgstr "" msgstr "快速模式加速"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fast mode speed" msgid "Fast mode speed"
msgstr "" msgstr "快速模式速度"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fast movement" msgid "Fast movement"
msgstr "" 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 \"fast\" privilege on the server." "This requires the \"fast\" privilege on the server."
msgstr "" msgstr ""
"快速移動(透過使用鍵)。\n"
"這需要伺服器上的「快速」特權。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Field of view" msgid "Field of view"
msgstr "" msgstr "視野"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Field of view in degrees." msgid "Field of view in degrees."
msgstr "" msgstr "以度計算的視野。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"File in client/serverlist/ that contains your favorite servers displayed in " "File in client/serverlist/ that contains your favorite servers displayed in "
"the Multiplayer Tab." "the Multiplayer Tab."
msgstr "" msgstr "在 客戶端/伺服器清單/ 中的檔案包含了顯示在多人遊戲分頁中您最愛的伺服器。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
@ -1765,6 +1769,10 @@ msgid ""
"light edge to transparent textures. Apply this filter to clean that up\n" "light edge to transparent textures. Apply this filter to clean that up\n"
"at texture load time." "at texture load time."
msgstr "" msgstr ""
"已過濾的材質會與完全透明的鄰居混合 RGB 值,\n"
"PNG 最佳化器通常會丟棄,有時候會導致透明材質\n"
"會有黑邊或亮邊。套用這個過濾器以在材質載入時\n"
"清理這些東西。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Filtering" msgid "Filtering"
@ -1772,47 +1780,47 @@ 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
msgid "Fly key" msgid "Fly key"
msgstr "" msgstr "飛行按鍵"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Flying" msgid "Flying"
msgstr "" msgstr "飛行"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fog" msgid "Fog"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fog toggle key" msgid "Fog toggle key"
msgstr "" msgstr "霧切換鍵"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font path" msgid "Font path"
msgstr "" msgstr "字型路徑"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font shadow" msgid "Font shadow"
msgstr "" msgstr "字型陰影"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font shadow alpha" msgid "Font shadow alpha"
msgstr "" msgstr "字型陰影 alpha 值"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font shadow alpha (opaqueness, between 0 and 255)." msgid "Font shadow alpha (opaqueness, between 0 and 255)."
msgstr "" msgstr "字型陰影 alpha不透明度介於 0 到 255"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font shadow offset, if 0 then shadow will not be drawn." msgid "Font shadow offset, if 0 then shadow will not be drawn."
msgstr "" msgstr "字型陰影偏移,若為 0 則陰影將不會被繪製。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Font size" msgid "Font size"
msgstr "" msgstr "字型大小"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Forward key" msgid "Forward key"
@ -1820,39 +1828,39 @@ msgstr "前進鍵"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Freetype fonts" msgid "Freetype fonts"
msgstr "" msgstr "Freetype 字型"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"From how far blocks are generated for clients, stated in mapblocks (16 " "From how far blocks are generated for clients, stated in mapblocks (16 "
"nodes)." "nodes)."
msgstr "" msgstr "要在客戶端上從多遠的區塊開始生成以地圖區塊計算16 個節點)。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"From how far blocks are sent to clients, stated in mapblocks (16 nodes)." "From how far blocks are sent to clients, stated in mapblocks (16 nodes)."
msgstr "" msgstr "要把多遠的區塊送到客戶端以地圖區塊計算16 個節點)。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "" msgid ""
"From how far clients know about objects, stated in mapblocks (16 nodes)." "From how far clients know about objects, stated in mapblocks (16 nodes)."
msgstr "" msgstr "客戶端上知道多遠的區塊上的物件以地圖區塊計算16 個節點)。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Full screen" msgid "Full screen"
msgstr "" msgstr "全螢幕"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Full screen BPP" msgid "Full screen BPP"
msgstr "" msgstr "全螢幕 BPP"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Fullscreen mode." msgid "Fullscreen mode."
msgstr "" msgstr "全螢幕模式。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "GUI scaling" msgid "GUI scaling"
msgstr "" msgstr "圖形使用者介面縮放比例"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "GUI scaling filter" msgid "GUI scaling filter"
@ -1860,11 +1868,11 @@ msgstr "圖形使用者介面縮放過濾器"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "GUI scaling filter txr2img" msgid "GUI scaling filter txr2img"
msgstr "" msgstr "圖形使用者介面縮放比例過濾器 txr2img"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Gamma" msgid "Gamma"
msgstr "" msgstr "Gamma"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Generate normalmaps" msgid "Generate normalmaps"
@ -1878,6 +1886,10 @@ msgid ""
"Flags starting with \"no\" are used to explicitly disable them.\n" "Flags starting with \"no\" are used to explicitly disable them.\n"
"'trees' and 'flat' flags only have effect in mgv6." "'trees' and 'flat' flags only have effect in mgv6."
msgstr "" msgstr ""
"全域地圖產生屬性。\n"
"未在旗標字串中指定的旗標將不會自預設值修改。\n"
"以「no」開頭的旗標字串將會用於明確的停用它們。\n"
"「trees」與「flat」旗標只在 mgv6 有效。"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Graphics" msgid "Graphics"
@ -2503,9 +2515,8 @@ msgid "Mapgen flags"
msgstr "地圖產生器旗標" msgstr "地圖產生器旗標"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal" msgid "Mapgen fractal"
msgstr "地圖產生器旗標" msgstr "地圖產生器分形"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen fractal cave1 noise parameters" msgid "Mapgen fractal cave1 noise parameters"
@ -2520,14 +2531,12 @@ msgid "Mapgen fractal filler depth noise parameters"
msgstr "" msgstr ""
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal flags" msgid "Mapgen fractal flags"
msgstr "地圖產生器旗標" msgstr "地圖產生器分形旗標"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
#, fuzzy
msgid "Mapgen fractal julia iterations" msgid "Mapgen fractal julia iterations"
msgstr "視差遮蔽迭代" msgstr "地圖產生器分形朱麗亞迭代"
#: src/settings_translation_file.cpp #: src/settings_translation_file.cpp
msgid "Mapgen fractal julia offset" msgid "Mapgen fractal julia offset"

View File

@ -551,7 +551,6 @@ GenericCAO::GenericCAO(IGameDef *gamedef, ClientEnvironment *env):
m_animated_meshnode(NULL), m_animated_meshnode(NULL),
m_wield_meshnode(NULL), m_wield_meshnode(NULL),
m_spritenode(NULL), m_spritenode(NULL),
m_nametag_color(video::SColor(255, 255, 255, 255)),
m_textnode(NULL), m_textnode(NULL),
m_position(v3f(0,10*BS,0)), m_position(v3f(0,10*BS,0)),
m_velocity(v3f(0,0,0)), m_velocity(v3f(0,0,0)),
@ -972,19 +971,19 @@ void GenericCAO::addToScene(scene::ISceneManager *smgr, ITextureSource *tsrc,
updateTextures(""); updateTextures("");
scene::ISceneNode *node = getSceneNode(); scene::ISceneNode *node = getSceneNode();
if (node && m_is_player && !m_is_local_player) { if (node && m_prop.nametag != "" && !m_is_local_player) {
// Add a text node for showing the name // Add a text node for showing the name
gui::IGUIEnvironment* gui = irr->getGUIEnvironment(); gui::IGUIEnvironment* gui = irr->getGUIEnvironment();
std::wstring wname = utf8_to_wide(m_name); std::wstring nametag_text = utf8_to_wide(m_prop.nametag);
m_textnode = smgr->addTextSceneNode(gui->getSkin()->getFont(), m_textnode = smgr->addTextSceneNode(gui->getSkin()->getFont(),
wname.c_str(), m_nametag_color, node); nametag_text.c_str(), m_prop.nametag_color, node);
m_textnode->grab(); m_textnode->grab();
m_textnode->setPosition(v3f(0, BS*1.1, 0)); m_textnode->setPosition(v3f(0, BS*1.1, 0));
// Enforce hiding nametag, // Enforce hiding nametag,
// because if freetype is enabled, a grey // because if freetype is enabled, a grey
// shadow can remain. // shadow can remain.
m_textnode->setVisible(m_nametag_color.getAlpha() > 0); m_textnode->setVisible(m_prop.nametag_color.getAlpha() > 0);
} }
updateNodePos(); updateNodePos();
@ -1604,6 +1603,9 @@ void GenericCAO::processMessage(const std::string &data)
m_tx_basepos = m_prop.initial_sprite_basepos; m_tx_basepos = m_prop.initial_sprite_basepos;
} }
if ((m_is_player && !m_is_local_player) && m_prop.nametag == "")
m_prop.nametag = m_name;
expireVisuals(); expireVisuals();
} }
else if(cmd == GENERIC_CMD_UPDATE_POSITION) else if(cmd == GENERIC_CMD_UPDATE_POSITION)
@ -1782,15 +1784,15 @@ void GenericCAO::processMessage(const std::string &data)
m_armor_groups[name] = rating; m_armor_groups[name] = rating;
} }
} else if (cmd == GENERIC_CMD_UPDATE_NAMETAG_ATTRIBUTES) { } else if (cmd == GENERIC_CMD_UPDATE_NAMETAG_ATTRIBUTES) {
// Deprecated, for backwards compatibility only.
readU8(is); // version readU8(is); // version
m_nametag_color = readARGB8(is); m_prop.nametag_color = readARGB8(is);
if (m_textnode != NULL) { if (m_textnode != NULL) {
m_textnode->setTextColor(m_nametag_color); m_textnode->setTextColor(m_prop.nametag_color);
// Enforce hiding nametag, // Enforce hiding nametag,
// because if freetype is enabled, a grey // because if freetype is enabled, a grey shadow can remain.
// shadow can remain. m_textnode->setVisible(m_prop.nametag_color.getAlpha() > 0);
m_textnode->setVisible(m_nametag_color.getAlpha() > 0);
} }
} }
} }

View File

@ -70,7 +70,6 @@ private:
scene::IAnimatedMeshSceneNode *m_animated_meshnode; scene::IAnimatedMeshSceneNode *m_animated_meshnode;
WieldMeshSceneNode *m_wield_meshnode; WieldMeshSceneNode *m_wield_meshnode;
scene::IBillboardSceneNode *m_spritenode; scene::IBillboardSceneNode *m_spritenode;
video::SColor m_nametag_color;
scene::ITextSceneNode* m_textnode; scene::ITextSceneNode* m_textnode;
v3f m_position; v3f m_position;
v3f m_velocity; v3f m_velocity;

View File

@ -769,8 +769,6 @@ PlayerSAO::PlayerSAO(ServerEnvironment *env_, Player *player_, u16 peer_id_,
m_bone_position_sent(false), m_bone_position_sent(false),
m_attachment_parent_id(0), m_attachment_parent_id(0),
m_attachment_sent(false), m_attachment_sent(false),
m_nametag_color(video::SColor(255, 255, 255, 255)),
m_nametag_sent(false),
// public // public
m_physics_override_speed(1), m_physics_override_speed(1),
m_physics_override_jump(1), m_physics_override_jump(1),
@ -869,7 +867,7 @@ std::string PlayerSAO::getClientInitializationData(u16 protocol_version)
os<<serializeLongString(gob_cmd_update_physics_override(m_physics_override_speed, os<<serializeLongString(gob_cmd_update_physics_override(m_physics_override_speed,
m_physics_override_jump, m_physics_override_gravity, m_physics_override_sneak, m_physics_override_jump, m_physics_override_gravity, m_physics_override_sneak,
m_physics_override_sneak_glitch)); // 5 m_physics_override_sneak_glitch)); // 5
os << serializeLongString(gob_cmd_update_nametag_attributes(m_nametag_color)); // 6 os << serializeLongString(gob_cmd_update_nametag_attributes(m_prop.nametag_color)); // 6 (GENERIC_CMD_UPDATE_NAMETAG_ATTRIBUTES) : Deprecated, for backwards compatibility only.
} }
else else
{ {
@ -1024,14 +1022,6 @@ void PlayerSAO::step(float dtime, bool send_recommended)
ActiveObjectMessage aom(getId(), true, str); ActiveObjectMessage aom(getId(), true, str);
m_messages_out.push(aom); m_messages_out.push(aom);
} }
if (m_nametag_sent == false) {
m_nametag_sent = true;
std::string str = gob_cmd_update_nametag_attributes(m_nametag_color);
// create message and add to list
ActiveObjectMessage aom(getId(), true, str);
m_messages_out.push(aom);
}
} }
void PlayerSAO::setBasePosition(const v3f &position) void PlayerSAO::setBasePosition(const v3f &position)
@ -1282,17 +1272,6 @@ void PlayerSAO::notifyObjectPropertiesModified()
m_properties_sent = false; m_properties_sent = false;
} }
void PlayerSAO::setNametagColor(video::SColor color)
{
m_nametag_color = color;
m_nametag_sent = false;
}
video::SColor PlayerSAO::getNametagColor()
{
return m_nametag_color;
}
Inventory* PlayerSAO::getInventory() Inventory* PlayerSAO::getInventory()
{ {
return m_inventory; return m_inventory;
@ -1408,4 +1387,3 @@ bool PlayerSAO::getCollisionBox(aabb3f *toset) {
bool PlayerSAO::collideWithObjects(){ bool PlayerSAO::collideWithObjects(){
return true; return true;
} }

View File

@ -213,8 +213,6 @@ public:
std::set<int> getAttachmentChildIds(); std::set<int> getAttachmentChildIds();
ObjectProperties* accessObjectProperties(); ObjectProperties* accessObjectProperties();
void notifyObjectPropertiesModified(); void notifyObjectPropertiesModified();
void setNametagColor(video::SColor color);
video::SColor getNametagColor();
/* /*
Inventory interface Inventory interface
@ -333,8 +331,6 @@ private:
v3f m_attachment_rotation; v3f m_attachment_rotation;
bool m_attachment_sent; bool m_attachment_sent;
video::SColor m_nametag_color;
bool m_nametag_sent;
public: public:
float m_physics_override_speed; float m_physics_override_speed;
@ -346,4 +342,3 @@ public:
}; };
#endif #endif

View File

@ -2181,7 +2181,7 @@ bool Game::initGui()
#ifdef HAVE_TOUCHSCREENGUI #ifdef HAVE_TOUCHSCREENGUI
if (g_touchscreengui) if (g_touchscreengui)
g_touchscreengui->init(texture_src, porting::getDisplayDensity()); g_touchscreengui->init(texture_src);
#endif #endif
@ -2581,7 +2581,7 @@ void Game::processUserInput(VolatileRunFlags *flags,
|| guienv->hasFocus(gui_chat_console)) { || guienv->hasFocus(gui_chat_console)) {
input->clear(); input->clear();
#ifdef HAVE_TOUCHSCREENGUI #ifdef HAVE_TOUCHSCREENGUI
g_touchscreengui->Hide(); g_touchscreengui->hide();
#endif #endif
} }
#ifdef HAVE_TOUCHSCREENGUI #ifdef HAVE_TOUCHSCREENGUI

View File

@ -66,7 +66,7 @@ MapgenFractal::MapgenFractal(int mapgenid, MapgenParams *params, EmergeManager *
MapgenFractalParams *sp = (MapgenFractalParams *)params->sparams; MapgenFractalParams *sp = (MapgenFractalParams *)params->sparams;
this->spflags = sp->spflags; this->spflags = sp->spflags;
this->formula = sp->formula; this->fractal = sp->fractal;
this->iterations = sp->iterations; this->iterations = sp->iterations;
this->scale = sp->scale; this->scale = sp->scale;
this->offset = sp->offset; this->offset = sp->offset;
@ -77,6 +77,9 @@ MapgenFractal::MapgenFractal(int mapgenid, MapgenParams *params, EmergeManager *
this->julia_z = sp->julia_z; this->julia_z = sp->julia_z;
this->julia_w = sp->julia_w; this->julia_w = sp->julia_w;
this->formula = fractal / 2 + fractal % 2;
this->julia = fractal % 2 == 0;
//// 2D terrain noise //// 2D terrain noise
noise_seabed = new Noise(&sp->np_seabed, seed, csize.X, csize.Z); noise_seabed = new Noise(&sp->np_seabed, seed, csize.X, csize.Z);
noise_filler_depth = new Noise(&sp->np_filler_depth, seed, csize.X, csize.Z); noise_filler_depth = new Noise(&sp->np_filler_depth, seed, csize.X, csize.Z);
@ -141,7 +144,7 @@ MapgenFractalParams::MapgenFractalParams()
{ {
spflags = 0; spflags = 0;
formula = 1; fractal = 1;
iterations = 11; iterations = 11;
scale = v3f(4096.0, 1024.0, 4096.0); scale = v3f(4096.0, 1024.0, 4096.0);
offset = v3f(1.79, 0.0, 0.0); offset = v3f(1.79, 0.0, 0.0);
@ -163,7 +166,7 @@ void MapgenFractalParams::readParams(const Settings *settings)
{ {
settings->getFlagStrNoEx("mgfractal_spflags", spflags, flagdesc_mapgen_fractal); settings->getFlagStrNoEx("mgfractal_spflags", spflags, flagdesc_mapgen_fractal);
settings->getU16NoEx("mgfractal_formula", formula); settings->getU16NoEx("mgfractal_fractal", fractal);
settings->getU16NoEx("mgfractal_iterations", iterations); settings->getU16NoEx("mgfractal_iterations", iterations);
settings->getV3FNoEx("mgfractal_scale", scale); settings->getV3FNoEx("mgfractal_scale", scale);
settings->getV3FNoEx("mgfractal_offset", offset); settings->getV3FNoEx("mgfractal_offset", offset);
@ -185,7 +188,7 @@ void MapgenFractalParams::writeParams(Settings *settings) const
{ {
settings->setFlagStr("mgfractal_spflags", spflags, flagdesc_mapgen_fractal, U32_MAX); settings->setFlagStr("mgfractal_spflags", spflags, flagdesc_mapgen_fractal, U32_MAX);
settings->setU16("mgfractal_formula", formula); settings->setU16("mgfractal_fractal", fractal);
settings->setU16("mgfractal_iterations", iterations); settings->setU16("mgfractal_iterations", iterations);
settings->setV3F("mgfractal_scale", scale); settings->setV3F("mgfractal_scale", scale);
settings->setV3F("mgfractal_offset", offset); settings->setV3F("mgfractal_offset", offset);
@ -368,7 +371,7 @@ bool MapgenFractal::getFractalAtPoint(s16 x, s16 y, s16 z)
{ {
float cx, cy, cz, cw, ox, oy, oz, ow; float cx, cy, cz, cw, ox, oy, oz, ow;
if (formula % 2 == 0) { // Julia sets, formula = 2, 4, 6, 8 if (julia) { // Julia set
cx = julia_x; cx = julia_x;
cy = julia_y; cy = julia_y;
cz = julia_z; cz = julia_z;
@ -377,7 +380,7 @@ bool MapgenFractal::getFractalAtPoint(s16 x, s16 y, s16 z)
oy = (float)y / scale.Y - offset.Y; oy = (float)y / scale.Y - offset.Y;
oz = (float)z / scale.Z - offset.Z; oz = (float)z / scale.Z - offset.Z;
ow = slice_w; ow = slice_w;
} else { // Mandelbrot sets, formula = 1, 3, 5, 7 } else { // Mandelbrot set
cx = (float)x / scale.X - offset.X; cx = (float)x / scale.X - offset.X;
cy = (float)y / scale.Y - offset.Y; cy = (float)y / scale.Y - offset.Y;
cz = (float)z / scale.Z - offset.Z; cz = (float)z / scale.Z - offset.Z;
@ -388,32 +391,87 @@ bool MapgenFractal::getFractalAtPoint(s16 x, s16 y, s16 z)
ow = 0.0f; ow = 0.0f;
} }
for (u16 iter = 0; iter < iterations; iter++) { float nx = 0.0f;
float nx = 0.0f; float ny = 0.0f;
float ny = 0.0f; float nz = 0.0f;
float nz = 0.0f; float nw = 0.0f;
float nw = 0.0f;
if (formula == 1 || formula == 2) { // 4D "Roundy" Mandelbrot/Julia Set for (u16 iter = 0; iter < iterations; iter++) {
if (formula == 1) { // 4D "Roundy"
nx = ox * ox - oy * oy - oz * oz - ow * ow + cx; nx = ox * ox - oy * oy - oz * oz - ow * ow + cx;
ny = 2.0f * (ox * oy + oz * ow) + cy; ny = 2.0f * (ox * oy + oz * ow) + cy;
nz = 2.0f * (ox * oz + oy * ow) + cz; nz = 2.0f * (ox * oz + oy * ow) + cz;
nw = 2.0f * (ox * ow + oy * oz) + cw; nw = 2.0f * (ox * ow + oy * oz) + cw;
} else if (formula == 3 || formula == 4) { // 4D "Squarry" Mandelbrot/Julia Set } else if (formula == 2) { // 4D "Squarry"
nx = ox * ox - oy * oy - oz * oz - ow * ow + cx; nx = ox * ox - oy * oy - oz * oz - ow * ow + cx;
ny = 2.0f * (ox * oy + oz * ow) + cy; ny = 2.0f * (ox * oy + oz * ow) + cy;
nz = 2.0f * (ox * oz + oy * ow) + cz; nz = 2.0f * (ox * oz + oy * ow) + cz;
nw = 2.0f * (ox * ow - oy * oz) + cw; nw = 2.0f * (ox * ow - oy * oz) + cw;
} else if (formula == 5 || formula == 6) { // 4D "Mandy Cousin" Mandelbrot/Julia Set } else if (formula == 3) { // 4D "Mandy Cousin"
nx = ox * ox - oy * oy - oz * oz + ow * ow + cx; nx = ox * ox - oy * oy - oz * oz + ow * ow + cx;
ny = 2.0f * (ox * oy + oz * ow) + cy; ny = 2.0f * (ox * oy + oz * ow) + cy;
nz = 2.0f * (ox * oz + oy * ow) + cz; nz = 2.0f * (ox * oz + oy * ow) + cz;
nw = 2.0f * (ox * ow + oy * oz) + cw; nw = 2.0f * (ox * ow + oy * oz) + cw;
} else if (formula == 7 || formula == 8) { // 4D "Variation" Mandelbrot/Julia Set } else if (formula == 4) { // 4D "Variation"
nx = ox * ox - oy * oy - oz * oz - ow * ow + cx; nx = ox * ox - oy * oy - oz * oz - ow * ow + cx;
ny = 2.0f * (ox * oy + oz * ow) + cy; ny = 2.0f * (ox * oy + oz * ow) + cy;
nz = 2.0f * (ox * oz - oy * ow) + cz; nz = 2.0f * (ox * oz - oy * ow) + cz;
nw = 2.0f * (ox * ow + oy * oz) + cw; nw = 2.0f * (ox * ow + oy * oz) + cw;
} else if (formula == 5) { // 3D "Mandelbrot/Mandelbar"
nx = ox * ox - oy * oy - oz * oz + cx;
ny = 2.0f * ox * oy + cy;
nz = -2.0f * ox * oz + cz;
} else if (formula == 6) { // 3D "Christmas Tree"
// Altering the formula here is necessary to avoid division by zero
if (fabs(oz) < 0.000000001f) {
nx = ox * ox - oy * oy - oz * oz + cx;
ny = 2.0f * oy * ox + cy;
nz = 4.0f * oz * ox + cz;
} else {
float a = (2.0f * ox) / (sqrt(oy * oy + oz * oz));
nx = ox * ox - oy * oy - oz * oz + cx;
ny = a * (oy * oy - oz * oz) + cy;
nz = a * 2.0f * oy * oz + cz;
}
} else if (formula == 7) { // 3D "Mandelbulb"
if (fabs(oy) < 0.000000001f) {
nx = ox * ox - oz * oz + cx;
ny = cy;
nz = -2.0f * oz * sqrt(ox * ox) + cz;
} else {
float a = 1.0f - (oz * oz) / (ox * ox + oy * oy);
nx = (ox * ox - oy * oy) * a + cx;
ny = 2.0f * ox * oy * a + cy;
nz = -2.0f * oz * sqrt(ox * ox + oy * oy) + cz;
}
} else if (formula == 8) { // 3D "Cosine Mandelbulb"
if (fabs(oy) < 0.000000001f) {
nx = 2.0f * ox * oz + cx;
ny = 4.0f * oy * oz + cy;
nz = oz * oz - ox * ox - oy * oy + cz;
} else {
float a = (2.0f * oz) / sqrt(ox * ox + oy * oy);
nx = (ox * ox - oy * oy) * a + cx;
ny = 2.0f * ox * oy * a + cy;
nz = oz * oz - ox * ox - oy * oy + cz;
}
} else if (formula == 9) { // 4D "Mandelbulb"
float rxy = sqrt(ox * ox + oy * oy);
float rxyz = sqrt(ox * ox + oy * oy + oz * oz);
if (fabs(ow) < 0.000000001f && fabs(oz) < 0.000000001f) {
nx = (ox * ox - oy * oy) + cx;
ny = 2.0f * ox * oy + cy;
nz = -2.0f * rxy * oz + cz;
nw = 2.0f * rxyz * ow + cw;
} else {
float a = 1.0f - (ow * ow) / (rxyz * rxyz);
float b = a * (1.0f - (oz * oz) / (rxy * rxy));
nx = (ox * ox - oy * oy) * b + cx;
ny = 2.0f * ox * oy * b + cy;
nz = -2.0f * rxy * oz * a + cz;
nw = 2.0f * rxyz * ow + cw;
}
} }
if (nx * nx + ny * ny + nz * nz + nw * nw > 4.0f) if (nx * nx + ny * ny + nz * nz + nw * nw > 4.0f)

View File

@ -3,6 +3,9 @@ Minetest
Copyright (C) 2010-2015 kwolekr, Ryan Kwolek <kwolekr@minetest.net> Copyright (C) 2010-2015 kwolekr, Ryan Kwolek <kwolekr@minetest.net>
Copyright (C) 2010-2015 paramat, Matt Gregory Copyright (C) 2010-2015 paramat, Matt Gregory
Fractal formulas from http://www.bugman123.com/Hypercomplex/index.html
by Paul Nylander, and from http://www.fractalforums.com, thank you.
This program is free software; you can redistribute it and/or modify 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 it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 3.0 of the License, or the Free Software Foundation; either version 3.0 of the License, or
@ -33,7 +36,7 @@ extern FlagDesc flagdesc_mapgen_fractal[];
struct MapgenFractalParams : public MapgenSpecificParams { struct MapgenFractalParams : public MapgenSpecificParams {
u32 spflags; u32 spflags;
u16 formula; u16 fractal;
u16 iterations; u16 iterations;
v3f scale; v3f scale;
v3f offset; v3f offset;
@ -63,14 +66,17 @@ public:
int ystride; int ystride;
int zstride; int zstride;
u32 spflags; u16 formula;
bool julia;
v3s16 node_min; v3s16 node_min;
v3s16 node_max; v3s16 node_max;
v3s16 full_node_min; v3s16 full_node_min;
v3s16 full_node_max; v3s16 full_node_max;
u16 formula; u32 spflags;
u16 fractal;
u16 iterations; u16 iterations;
v3f scale; v3f scale;
v3f offset; v3f offset;

View File

@ -108,7 +108,7 @@ public:
this->remove(); this->remove();
#ifdef HAVE_TOUCHSCREENGUI #ifdef HAVE_TOUCHSCREENGUI
if (g_touchscreengui) if (g_touchscreengui)
g_touchscreengui->Show(); g_touchscreengui->show();
#endif #endif
} }

View File

@ -261,6 +261,23 @@ void Player::clearHud()
} }
} }
RemotePlayer::RemotePlayer(IGameDef *gamedef, const char *name):
Player(gamedef, name),
m_sao(NULL)
{
movement_acceleration_default = g_settings->getFloat("movement_acceleration_default") * BS;
movement_acceleration_air = g_settings->getFloat("movement_acceleration_air") * BS;
movement_acceleration_fast = g_settings->getFloat("movement_acceleration_fast") * BS;
movement_speed_walk = g_settings->getFloat("movement_speed_walk") * BS;
movement_speed_crouch = g_settings->getFloat("movement_speed_crouch") * BS;
movement_speed_fast = g_settings->getFloat("movement_speed_fast") * BS;
movement_speed_climb = g_settings->getFloat("movement_speed_climb") * BS;
movement_speed_jump = g_settings->getFloat("movement_speed_jump") * BS;
movement_liquid_fluidity = g_settings->getFloat("movement_liquid_fluidity") * BS;
movement_liquid_fluidity_smooth = g_settings->getFloat("movement_liquid_fluidity_smooth") * BS;
movement_liquid_sink = g_settings->getFloat("movement_liquid_sink") * BS;
movement_gravity = g_settings->getFloat("movement_gravity") * BS;
}
void RemotePlayer::save(std::string savedir) void RemotePlayer::save(std::string savedir)
{ {

View File

@ -424,10 +424,7 @@ private:
class RemotePlayer : public Player class RemotePlayer : public Player
{ {
public: public:
RemotePlayer(IGameDef *gamedef, const char *name): RemotePlayer(IGameDef *gamedef, const char *name);
Player(gamedef, name),
m_sao(NULL)
{}
virtual ~RemotePlayer() {} virtual ~RemotePlayer() {}
void save(std::string savedir); void save(std::string savedir);

View File

@ -767,6 +767,59 @@ int ObjectRef::l_is_player(lua_State *L)
return 1; return 1;
} }
// set_nametag_attributes(self, attributes)
int ObjectRef::l_set_nametag_attributes(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
ObjectRef *ref = checkobject(L, 1);
ServerActiveObject *co = getobject(ref);
if (co == NULL)
return 0;
ObjectProperties *prop = co->accessObjectProperties();
if (!prop)
return 0;
lua_getfield(L, 2, "color");
if (!lua_isnil(L, -1)) {
video::SColor color = prop->nametag_color;
read_color(L, -1, &color);
prop->nametag_color = color;
}
lua_pop(L, 1);
std::string nametag = getstringfield_default(L, 2, "text", "");
if (nametag != "")
prop->nametag = nametag;
co->notifyObjectPropertiesModified();
lua_pushboolean(L, true);
return 1;
}
// get_nametag_attributes(self)
int ObjectRef::l_get_nametag_attributes(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
ObjectRef *ref = checkobject(L, 1);
ServerActiveObject *co = getobject(ref);
if (co == NULL)
return 0;
ObjectProperties *prop = co->accessObjectProperties();
if (!prop)
return 0;
video::SColor color = prop->nametag_color;
lua_newtable(L);
push_ARGB8(L, color);
lua_setfield(L, -2, "color");
lua_pushstring(L, prop->nametag.c_str());
lua_setfield(L, -2, "text");
return 1;
}
/* LuaEntitySAO-only */ /* LuaEntitySAO-only */
// setvelocity(self, {x=num, y=num, z=num}) // setvelocity(self, {x=num, y=num, z=num})
@ -1593,45 +1646,6 @@ int ObjectRef::l_get_day_night_ratio(lua_State *L)
return 1; return 1;
} }
// set_nametag_attributes(self, attributes)
int ObjectRef::l_set_nametag_attributes(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
ObjectRef *ref = checkobject(L, 1);
PlayerSAO *playersao = getplayersao(ref);
if (playersao == NULL)
return 0;
lua_getfield(L, 2, "color");
if (!lua_isnil(L, -1)) {
video::SColor color = playersao->getNametagColor();
if (!read_color(L, -1, &color))
return 0;
playersao->setNametagColor(color);
}
lua_pushboolean(L, true);
return 1;
}
// get_nametag_attributes(self)
int ObjectRef::l_get_nametag_attributes(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
ObjectRef *ref = checkobject(L, 1);
PlayerSAO *playersao = getplayersao(ref);
if (playersao == NULL)
return 0;
video::SColor color = playersao->getNametagColor();
lua_newtable(L);
push_ARGB8(L, color);
lua_setfield(L, -2, "color");
return 1;
}
ObjectRef::ObjectRef(ServerActiveObject *object): ObjectRef::ObjectRef(ServerActiveObject *object):
m_object(object) m_object(object)
{ {
@ -1719,6 +1733,8 @@ const luaL_reg ObjectRef::methods[] = {
luamethod(ObjectRef, set_detach), luamethod(ObjectRef, set_detach),
luamethod(ObjectRef, set_properties), luamethod(ObjectRef, set_properties),
luamethod(ObjectRef, get_properties), luamethod(ObjectRef, get_properties),
luamethod(ObjectRef, set_nametag_attributes),
luamethod(ObjectRef, get_nametag_attributes),
// LuaEntitySAO-only // LuaEntitySAO-only
luamethod(ObjectRef, setvelocity), luamethod(ObjectRef, setvelocity),
luamethod(ObjectRef, getvelocity), luamethod(ObjectRef, getvelocity),
@ -1768,7 +1784,5 @@ const luaL_reg ObjectRef::methods[] = {
luamethod(ObjectRef, get_local_animation), luamethod(ObjectRef, get_local_animation),
luamethod(ObjectRef, set_eye_offset), luamethod(ObjectRef, set_eye_offset),
luamethod(ObjectRef, get_eye_offset), luamethod(ObjectRef, get_eye_offset),
luamethod(ObjectRef, set_nametag_attributes),
luamethod(ObjectRef, get_nametag_attributes),
{0,0} {0,0}
}; };

View File

@ -47,7 +47,6 @@ const char *touchgui_button_imagenames[] = {
"inventory_btn.png", "inventory_btn.png",
"drop_btn.png", "drop_btn.png",
"jump_btn.png", "jump_btn.png",
"down.png",
#ifdef ENABLE_ANDROID_NOCLIP #ifdef ENABLE_ANDROID_NOCLIP
"fly_btn.png", "fly_btn.png",
"noclip_btn.png", "noclip_btn.png",
@ -55,8 +54,9 @@ const char *touchgui_button_imagenames[] = {
// "minimap_btn.png", // "minimap_btn.png",
"debug_btn.png", "debug_btn.png",
"chat_btn.png", "chat_btn.png",
// "camera_btn.png", "camera_btn.png",
"rangeview_btn.png" "rangeview_btn.png"
"down.png",
}; };
static irr::EKEY_CODE id2keycode(touch_gui_button_id id) static irr::EKEY_CODE id2keycode(touch_gui_button_id id)
@ -107,42 +107,26 @@ static irr::EKEY_CODE id2keycode(touch_gui_button_id id)
case chat_id: case chat_id:
key = "chat"; key = "chat";
break; break;
/* case camera_id: case camera_id:
key = "camera_mode"; key = "camera_mode";
break;*/ break;
case range_id: case range_id:
key = "rangeselect"; key = "rangeselect";
break; break;
} }
assert(key != ""); assert(key != "");
return keyname_to_keycode(g_settings->get("keymap_" + key).c_str()); return keyname_to_keycode(g_settings->get("keymap_" key).c_str());
} }
TouchScreenGUI *g_touchscreengui; TouchScreenGUI *g_touchscreengui;
TouchScreenGUI::TouchScreenGUI(IrrlichtDevice *device, IEventReceiver* receiver): static void load_button_texture(button_info* btn, const char* path,
m_device(device), rect<s32> button_rect, ISimpleTextureSource* tsrc, video::IVideoDriver *driver)
m_guienv(device->getGUIEnvironment()),
m_camera_yaw(0.0),
m_camera_pitch(0.0),
m_visible(false),
m_move_id(-1),
m_receiver(receiver)
{
for (unsigned int i=0; i < after_last_element_id; i++) {
m_buttons[i].guibutton = 0;
m_buttons[i].repeatcounter = -1;
m_buttons[i].repeatdelay = BUTTON_REPEAT_DELAY;
}
m_screensize = m_device->getVideoDriver()->getScreenSize();
}
void TouchScreenGUI::loadButtonTexture(button_info* btn, const char* path, rect<s32> button_rect)
{ {
unsigned int tid; unsigned int tid;
video::ITexture *texture = guiScalingImageButton(m_device->getVideoDriver(), video::ITexture *texture = guiScalingImageButton(driver,
m_texturesource->getTexture(path, &tid), button_rect.getWidth(), button_rect.getHeight()); tsrc->getTexture(path, &tid), button_rect.getWidth(),
button_rect.getHeight());
if (texture) { if (texture) {
btn->guibutton->setUseAlphaChannel(true); btn->guibutton->setUseAlphaChannel(true);
if (g_settings->getBool("gui_scaling_filter")) { if (g_settings->getBool("gui_scaling_filter")) {
@ -160,6 +144,314 @@ void TouchScreenGUI::loadButtonTexture(button_info* btn, const char* path, rect<
} }
} }
AutoHideButtonBar::AutoHideButtonBar(IrrlichtDevice *device,
IEventReceiver* receiver) :
m_texturesource(NULL),
m_driver(device->getVideoDriver()),
m_guienv(device->getGUIEnvironment()),
m_receiver(receiver),
m_active(false),
m_visible(true),
m_timeout(0),
m_timeout_value(3),
m_initialized(false),
m_dir(AHBB_Dir_Right_Left)
{
m_screensize = device->getVideoDriver()->getScreenSize();
}
void AutoHideButtonBar::init(ISimpleTextureSource* tsrc,
const char* starter_img, int button_id, v2s32 UpperLeft,
v2s32 LowerRight, autohide_button_bar_dir dir, float timeout)
{
m_texturesource = tsrc;
m_upper_left = UpperLeft;
m_lower_right = LowerRight;
/* init settings bar */
irr::core::rect<int> current_button = rect<s32>(UpperLeft.X, UpperLeft.Y,
LowerRight.X, LowerRight.Y);
m_starter.guibutton = m_guienv->addButton(current_button, 0, button_id, L"", 0);
m_starter.guibutton->grab();
m_starter.repeatcounter = -1;
m_starter.keycode = KEY_OEM_8; // use invalid keycode as it's not relevant
m_starter.immediate_release = true;
m_starter.ids.clear();
load_button_texture(&m_starter, starter_img, current_button,
m_texturesource, m_driver);
m_dir = dir;
m_timeout_value = timeout;
m_initialized = true;
}
AutoHideButtonBar::~AutoHideButtonBar()
{
m_starter.guibutton->setVisible(false);
m_starter.guibutton->drop();
}
void AutoHideButtonBar::addButton(touch_gui_button_id button_id,
const wchar_t* caption, const char* btn_image)
{
if (!m_initialized) {
errorstream << "AutoHideButtonBar::addButton not yet initialized!"
<< std::endl;
return;
}
int button_size = 0;
if ((m_dir == AHBB_Dir_Top_Bottom) || (m_dir == AHBB_Dir_Bottom_Top)) {
button_size = m_lower_right.X - m_upper_left.X;
} else {
button_size = m_lower_right.Y - m_upper_left.Y;
}
irr::core::rect<int> current_button;
if ((m_dir == AHBB_Dir_Right_Left) || (m_dir == AHBB_Dir_Left_Right)) {
int x_start = 0;
int x_end = 0;
if (m_dir == AHBB_Dir_Left_Right) {
x_start = m_lower_right.X (button_size * 1.25 * m_buttons.size())
+ (button_size * 0.25);
x_end = x_start button_size;
} else {
x_end = m_upper_left.X - (button_size * 1.25 * m_buttons.size())
- (button_size * 0.25);
x_start = x_end - button_size;
}
current_button = rect<s32>(x_start, m_upper_left.Y, x_end,
m_lower_right.Y);
} else {
int y_start = 0;
int y_end = 0;
if (m_dir == AHBB_Dir_Top_Bottom) {
y_start = m_lower_right.X (button_size * 1.25 * m_buttons.size())
+ (button_size * 0.25);
y_end = y_start button_size;
} else {
y_end = m_upper_left.X - (button_size * 1.25 * m_buttons.size())
- (button_size * 0.25);
y_start = y_end - button_size;
}
current_button = rect<s32>(m_upper_left.X, y_start, m_lower_right.Y,
y_end);
}
button_info* btn = new button_info();
btn->guibutton = m_guienv->addButton(current_button, 0, button_id, caption, 0);
btn->guibutton->grab();
btn->guibutton->setVisible(false);
btn->guibutton->setEnabled(false);
btn->repeatcounter = -1;
btn->keycode = id2keycode(button_id);
btn->immediate_release = true;
btn->ids.clear();
load_button_texture(btn, btn_image, current_button, m_texturesource,
m_driver);
m_buttons.push_back(btn);
}
bool AutoHideButtonBar::isButton(const SEvent &event)
{
IGUIElement* rootguielement = m_guienv->getRootGUIElement();
if (rootguielement == NULL) {
return false;
}
gui::IGUIElement *element = rootguielement->getElementFromPoint(
core::position2d<s32>(event.TouchInput.X, event.TouchInput.Y));
if (element == NULL) {
return false;
}
if (m_active) {
/* check for all buttons in vector */
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
if ((*iter)->guibutton == element) {
SEvent* translated = new SEvent();
memset(translated, 0, sizeof(SEvent));
translated->EventType = irr::EET_KEY_INPUT_EVENT;
translated->KeyInput.Key = (*iter)->keycode;
translated->KeyInput.Control = false;
translated->KeyInput.Shift = false;
translated->KeyInput.Char = 0;
/* add this event */
translated->KeyInput.PressedDown = true;
m_receiver->OnEvent(*translated);
/* remove this event */
translated->KeyInput.PressedDown = false;
m_receiver->OnEvent(*translated);
delete translated;
(*iter)->ids.push_back(event.TouchInput.ID);
m_timeout = 0;
return true;
}
++iter;
}
} else {
/* check for starter button only */
if (element == m_starter.guibutton) {
m_starter.ids.push_back(event.TouchInput.ID);
m_starter.guibutton->setVisible(false);
m_starter.guibutton->setEnabled(false);
m_active = true;
m_timeout = 0;
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
(*iter)->guibutton->setVisible(true);
(*iter)->guibutton->setEnabled(true);
++iter;
}
return true;
}
}
return false;
}
bool AutoHideButtonBar::isReleaseButton(int eventID)
{
std::vector<int>::iterator id = std::find(m_starter.ids.begin(),
m_starter.ids.end(), eventID);
if (id != m_starter.ids.end()) {
m_starter.ids.erase(id);
return true;
}
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
std::vector<int>::iterator id = std::find((*iter)->ids.begin(),
(*iter)->ids.end(), eventID);
if (id != (*iter)->ids.end()) {
(*iter)->ids.erase(id);
// TODO handle settings button release
return true;
}
++iter;
}
return false;
}
void AutoHideButtonBar::step(float dtime)
{
if (m_active) {
m_timeout= dtime;
if (m_timeout > m_timeout_value) {
deactivate();
}
}
}
void AutoHideButtonBar::deactivate()
{
if (m_visible == true) {
m_starter.guibutton->setVisible(true);
m_starter.guibutton->setEnabled(true);
}
m_active = false;
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
(*iter)->guibutton->setVisible(false);
(*iter)->guibutton->setEnabled(false);
++iter;
}
}
void AutoHideButtonBar::hide()
{
m_visible = false;
m_starter.guibutton->setVisible(false);
m_starter.guibutton->setEnabled(false);
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
(*iter)->guibutton->setVisible(false);
(*iter)->guibutton->setEnabled(false);
++iter;
}
}
void AutoHideButtonBar::show()
{
m_visible = true;
if (m_active) {
std::vector<button_info*>::iterator iter = m_buttons.begin();
while (iter != m_buttons.end()) {
(*iter)->guibutton->setVisible(true);
(*iter)->guibutton->setEnabled(true);
++iter;
}
} else {
m_starter.guibutton->setVisible(true);
m_starter.guibutton->setEnabled(true);
}
}
TouchScreenGUI::TouchScreenGUI(IrrlichtDevice *device, IEventReceiver* receiver):
m_device(device),
m_guienv(device->getGUIEnvironment()),
m_camera_yaw(0.0),
m_camera_pitch(0.0),
m_visible(false),
m_move_id(-1),
m_receiver(receiver),
m_move_has_really_moved(false),
m_move_downtime(0),
m_move_sent_as_mouse_event(false),
// use some downlocation way off screen as init value to avoid invalid behaviour
m_move_downlocation(v2s32(-10000, -10000)),
m_settingsbar(device, receiver),
m_rarecontrolsbar(device, receiver)
{
for (unsigned int i=0; i < after_last_element_id; i++) {
m_buttons[i].guibutton = 0;
m_buttons[i].repeatcounter = -1;
m_buttons[i].repeatdelay = BUTTON_REPEAT_DELAY;
}
m_screensize = m_device->getVideoDriver()->getScreenSize();
}
void TouchScreenGUI::initButton(touch_gui_button_id id, rect<s32> button_rect, void TouchScreenGUI::initButton(touch_gui_button_id id, rect<s32> button_rect,
std::wstring caption, bool immediate_release, float repeat_delay) std::wstring caption, bool immediate_release, float repeat_delay)
{ {
@ -173,29 +465,32 @@ void TouchScreenGUI::initButton(touch_gui_button_id id, rect<s32> button_rect,
btn->immediate_release = immediate_release; btn->immediate_release = immediate_release;
btn->ids.clear(); btn->ids.clear();
loadButtonTexture(btn,touchgui_button_imagenames[id], button_rect); load_button_texture(btn,touchgui_button_imagenames[id],button_rect,
m_texturesource, m_device->getVideoDriver());
} }
static int getMaxControlPadSize(float density) { static int getMaxControlPadSize(float density) {
return 235 * density * g_settings->getFloat("hud_scaling"); return 235 * density * g_settings->getFloat("hud_scaling");
} }
void TouchScreenGUI::init(ISimpleTextureSource* tsrc, float density) int TouchScreenGUI::getGuiButtonSize()
{
u32 control_pad_size = MYMIN((2 * m_screensize.Y) / 3,
getMaxControlPadSize(porting::getDisplayDensity()));
return control_pad_size / 3;
}
void TouchScreenGUI::init(ISimpleTextureSource* tsrc)
{ {
assert(tsrc != 0); assert(tsrc != 0);
const u32 spacing = 7; u32 button_size = getGuiButtonSize();
u32 control_pad_size =
MYMIN((2 * m_screensize.Y + spacing * 2) / 3,
getMaxControlPadSize(density));
u32 button_size = (control_pad_size - spacing * 2 ) / 3;
m_visible = true; m_visible = true;
m_texturesource = tsrc; m_texturesource = tsrc;
m_control_pad_rect = rect<s32>( m_control_pad_rect = rect<s32>(
spacing, m_screensize.Y - control_pad_size - spacing, spacing, m_screensize.Y - control_pad_size - spacing,
spacing + control_pad_size, m_screensize.Y - spacing); spacing control_pad_size, m_screensize.Y - spacing);
/* /*
draw control pad draw control pad
@ -204,14 +499,13 @@ void TouchScreenGUI::init(ISimpleTextureSource* tsrc, float density)
2 5 8 2 5 8
*/ */
int number = 0; int number = 0;
for (int y = 0; y < 3;+y)
for (int y = 0; y < 3; ++y) for (int x = 0; x < 3;+x,+number) {
for (int x = 0; x < 3; ++x, ++number) {
v2s32 tl; v2s32 tl;
tl.X = y * (button_size + spacing) + spacing; tl.X = y * (button_size spacing) spacing;
tl.Y = m_screensize.Y - (button_size + spacing) * (3 - x); tl.Y = m_screensize.Y - (button_size spacing) * (3 - x);
rect<s32> button_rect(tl.X, tl.Y, tl.X + button_size, tl.Y + button_size); rect<s32> button_rect(tl.X, tl.Y, tl.X button_size, tl.Y button_size);
touch_gui_button_id id = after_last_element_id; touch_gui_button_id id = after_last_element_id;
std::wstring caption; std::wstring caption;
switch (number) { switch (number) {
@ -319,11 +613,11 @@ void TouchScreenGUI::init(ISimpleTextureSource* tsrc, float density)
m_screensize.X, 0.75*button_size), m_screensize.X, 0.75*button_size),
L"Chat", true); L"Chat", true);
/* init camera button /* init camera button */
initButton(camera_id, initButton(camera_id,
rect<s32>(0, 0, rect<s32>(0, 0,
0.75*button_size, 0.75*button_size), 0.75*button_size, 0.75*button_size),
L"cam", false, SLOW_BUTTON_REPEAT);*/ L"cam", false, SLOW_BUTTON_REPEAT);
/* init rangeselect button */ /* init rangeselect button */
initButton(range_id, initButton(range_id,
@ -333,6 +627,37 @@ void TouchScreenGUI::init(ISimpleTextureSource* tsrc, float density)
rect<s32>(m_screensize.X - (1.5*button_size), 0, rect<s32>(m_screensize.X - (1.5*button_size), 0,
m_screensize.X - (0.75*button_size), 0.75*button_size), m_screensize.X - (0.75*button_size), 0.75*button_size),
L"far", false, SLOW_BUTTON_REPEAT); L"far", false, SLOW_BUTTON_REPEAT);
/* m_settingsbar.init(m_texturesource, "gear_icon.png", settings_starter_id,
v2s32(m_screensize.X - (button_size / 2),
m_screensize.Y - ((SETTINGS_BAR_Y_OFFSET 1) * button_size)
+ (button_size * 0.5)),
v2s32(m_screensize.X,
m_screensize.Y - (SETTINGS_BAR_Y_OFFSET * button_size)
+ (button_size * 0.5)), AHBB_Dir_Right_Left,
3.0);
m_settingsbar.addButton(fly_id, L"fly", "fly_btn.png");
m_settingsbar.addButton(noclip_id, L"noclip", "noclip_btn.png");
m_settingsbar.addButton(fast_id, L"fast", "fast_btn.png");
m_settingsbar.addButton(debug_id, L"debug", "debug_btn.png");
m_settingsbar.addButton(camera_id, L"camera", "camera_btn.png");
m_settingsbar.addButton(range_id, L"rangeview", "rangeview_btn.png");*/
/*m_rarecontrolsbar.init(m_texturesource, "rare_controls.png",
rare_controls_starter_id,
v2s32(0,
m_screensize.Y
- ((RARE_CONTROLS_BAR_Y_OFFSET 1) * button_size)
+ (button_size * 0.5)),
v2s32(button_size / 2,
m_screensize.Y - (RARE_CONTROLS_BAR_Y_OFFSET * button_size)
+ (button_size * 0.5)), AHBB_Dir_Left_Right,
2);
m_rarecontrolsbar.addButton(chat_id, L"Chat", "chat_btn.png");
m_rarecontrolsbar.addButton(inventory_id, L"inv", "inventory_btn.png");
m_rarecontrolsbar.addButton(drop_id, L"drop", "drop_btn.png");*/
} }
touch_gui_button_id TouchScreenGUI::getButtonID(s32 x, s32 y) touch_gui_button_id TouchScreenGUI::getButtonID(s32 x, s32 y)
@ -373,7 +698,7 @@ bool TouchScreenGUI::isHUDButton(const SEvent &event)
{ {
// check if hud item is pressed // check if hud item is pressed
for (std::map<int,rect<s32> >::iterator iter = m_hud_rects.begin(); for (std::map<int,rect<s32> >::iterator iter = m_hud_rects.begin();
iter != m_hud_rects.end(); ++iter) { iter != m_hud_rects.end();+iter) {
if (iter->second.isPointInside( if (iter->second.isPointInside(
v2s32(event.TouchInput.X, v2s32(event.TouchInput.X,
event.TouchInput.Y) event.TouchInput.Y)
@ -382,7 +707,7 @@ bool TouchScreenGUI::isHUDButton(const SEvent &event)
SEvent* translated = new SEvent(); SEvent* translated = new SEvent();
memset(translated,0,sizeof(SEvent)); memset(translated,0,sizeof(SEvent));
translated->EventType = irr::EET_KEY_INPUT_EVENT; translated->EventType = irr::EET_KEY_INPUT_EVENT;
translated->KeyInput.Key = (irr::EKEY_CODE) (KEY_KEY_1 + iter->first); translated->KeyInput.Key = (irr::EKEY_CODE) (KEY_KEY_1 iter->first);
translated->KeyInput.Control = false; translated->KeyInput.Control = false;
translated->KeyInput.Shift = false; translated->KeyInput.Shift = false;
translated->KeyInput.PressedDown = true; translated->KeyInput.PressedDown = true;
@ -416,7 +741,7 @@ bool TouchScreenGUI::isReleaseHUDButton(int eventID)
return false; return false;
} }
void TouchScreenGUI::ButtonEvent(touch_gui_button_id button, void TouchScreenGUI::handleButtonEvent(touch_gui_button_id button,
int eventID, bool action) int eventID, bool action)
{ {
button_info* btn = &m_buttons[button]; button_info* btn = &m_buttons[button];
@ -465,11 +790,15 @@ void TouchScreenGUI::handleReleaseEvent(int evt_id)
/* handle button events */ /* handle button events */
if (button != after_last_element_id) { if (button != after_last_element_id) {
ButtonEvent(button, evt_id, false); handleButtonEvent(button, evt_id, false);
} }
/* handle hud button events */ /* handle hud button events */
else if (isReleaseHUDButton(evt_id)) { else if (isReleaseHUDButton(evt_id)) {
/* nothing to do here */ /* nothing to do here */
} else if (m_settingsbar.isReleaseButton(evt_id)) {
/* nothing to do here */
} else if (m_rarecontrolsbar.isReleaseButton(evt_id)) {
/* nothing to do here */
} }
/* handle the point used for moving view */ /* handle the point used for moving view */
else if (evt_id == m_move_id) { else if (evt_id == m_move_id) {
@ -517,7 +846,7 @@ void TouchScreenGUI::handleReleaseEvent(int evt_id)
} }
for (std::vector<id_status>::iterator iter = m_known_ids.begin(); for (std::vector<id_status>::iterator iter = m_known_ids.begin();
iter != m_known_ids.end(); ++iter) { iter != m_known_ids.end();+iter) {
if (iter->id == evt_id) { if (iter->id == evt_id) {
m_known_ids.erase(iter); m_known_ids.erase(iter);
break; break;
@ -556,16 +885,26 @@ void TouchScreenGUI::translateEvent(const SEvent &event)
/* handle button events */ /* handle button events */
if (button != after_last_element_id) { if (button != after_last_element_id) {
ButtonEvent(button,eventID,true); handleButtonEvent(button, eventID, true);
} m_settingsbar.deactivate();
else if (isHUDButton(event)) m_rarecontrolsbar.deactivate();
{ } else if (isHUDButton(event)) {
m_settingsbar.deactivate();
m_rarecontrolsbar.deactivate();
/* already handled in isHUDButton() */ /* already handled in isHUDButton() */
} else if (m_settingsbar.isButton(event)) {
m_rarecontrolsbar.deactivate();
/* already handled in isSettingsBarButton() */
} else if (m_rarecontrolsbar.isButton(event)) {
m_settingsbar.deactivate();
/* already handled in isSettingsBarButton() */
} else if (m_control_pad_rect.isPointInside(v2s32(toadd.X, toadd.Y))) { } else if (m_control_pad_rect.isPointInside(v2s32(toadd.X, toadd.Y))) {
// ignore events inside the control pad not already handled // ignore events inside the control pad not already handled
} }
/* handle non button events */ /* handle non button events */
else { else {
m_settingsbar.deactivate();
m_rarecontrolsbar.deactivate();
/* if we don't already have a moving point make this the moving one */ /* if we don't already have a moving point make this the moving one */
if (m_move_id == -1) { if (m_move_id == -1) {
m_move_id = event.TouchInput.ID; m_move_id = event.TouchInput.ID;
@ -597,7 +936,7 @@ void TouchScreenGUI::translateEvent(const SEvent &event)
double distance = sqrt( double distance = sqrt(
(m_pointerpos[event.TouchInput.ID].X - event.TouchInput.X) * (m_pointerpos[event.TouchInput.ID].X - event.TouchInput.X) *
(m_pointerpos[event.TouchInput.ID].X - event.TouchInput.X) + (m_pointerpos[event.TouchInput.ID].X - event.TouchInput.X)
(m_pointerpos[event.TouchInput.ID].Y - event.TouchInput.Y) * (m_pointerpos[event.TouchInput.ID].Y - event.TouchInput.Y) *
(m_pointerpos[event.TouchInput.ID].Y - event.TouchInput.Y)); (m_pointerpos[event.TouchInput.ID].Y - event.TouchInput.Y));
@ -617,10 +956,10 @@ void TouchScreenGUI::translateEvent(const SEvent &event)
double old_pitch = m_camera_pitch; double old_pitch = m_camera_pitch;
m_camera_yaw -= dx * d; m_camera_yaw -= dx * d;
m_camera_pitch = MYMIN(MYMAX( m_camera_pitch + (dy * d),-180),180); m_camera_pitch = MYMIN(MYMAX( m_camera_pitch (dy * d),-180),180);
while (m_camera_yaw < 0) while (m_camera_yaw < 0)
m_camera_yaw += 360; m_camera_yaw= 360;
while (m_camera_yaw > 360) while (m_camera_yaw > 360)
m_camera_yaw -= 360; m_camera_yaw -= 360;
@ -641,8 +980,6 @@ void TouchScreenGUI::translateEvent(const SEvent &event)
->getRayFromScreenCoordinates( ->getRayFromScreenCoordinates(
v2s32(event.TouchInput.X,event.TouchInput.Y)); v2s32(event.TouchInput.X,event.TouchInput.Y));
} }
}
else {
handleChangedButton(event); handleChangedButton(event);
} }
} }
@ -655,8 +992,8 @@ void TouchScreenGUI::handleChangedButton(const SEvent &event)
if (m_buttons[i].ids.empty()) { if (m_buttons[i].ids.empty()) {
continue; continue;
} }
for(std::vector<int>::iterator iter = m_buttons[i].ids.begin(); for (std::vector<int>::iterator iter = m_buttons[i].ids.begin();
iter != m_buttons[i].ids.end(); ++iter) { iter != m_buttons[i].ids.end();+iter) {
if (event.TouchInput.ID == *iter) { if (event.TouchInput.ID == *iter) {
@ -668,12 +1005,12 @@ void TouchScreenGUI::handleChangedButton(const SEvent &event)
} }
/* remove old button */ /* remove old button */
ButtonEvent((touch_gui_button_id) i,*iter,false); handleButtonEvent((touch_gui_button_id) i,*iter,false);
if (current_button_id == after_last_element_id) { if (current_button_id == after_last_element_id) {
return; return;
} }
ButtonEvent((touch_gui_button_id) current_button_id,*iter,true); handleButtonEvent((touch_gui_button_id) current_button_id,*iter,true);
return; return;
} }
@ -687,8 +1024,11 @@ void TouchScreenGUI::handleChangedButton(const SEvent &event)
} }
button_info* btn = &m_buttons[current_button_id]; button_info* btn = &m_buttons[current_button_id];
if (std::find(btn->ids.begin(),btn->ids.end(), event.TouchInput.ID) == btn->ids.end()) { if (std::find(btn->ids.begin(),btn->ids.end(), event.TouchInput.ID)
ButtonEvent((touch_gui_button_id) current_button_id,event.TouchInput.ID,true); == btn->ids.end())
{
handleButtonEvent((touch_gui_button_id) current_button_id,
event.TouchInput.ID, true);
} }
} }
@ -702,20 +1042,20 @@ bool TouchScreenGUI::doubleTapDetection()
m_key_events[1].x = m_move_downlocation.X; m_key_events[1].x = m_move_downlocation.X;
m_key_events[1].y = m_move_downlocation.Y; m_key_events[1].y = m_move_downlocation.Y;
u32 delta = porting::getDeltaMs(m_key_events[0].down_time,getTimeMs()); u32 delta = porting::getDeltaMs(m_key_events[0].down_time, getTimeMs());
if (delta > 400) if (delta > 400)
return false; return false;
double distance = sqrt( double distance = sqrt(
(m_key_events[0].x - m_key_events[1].x) * (m_key_events[0].x - m_key_events[1].x) + (m_key_events[0].x - m_key_events[1].x) * (m_key_events[0].x - m_key_events[1].x)
(m_key_events[0].y - m_key_events[1].y) * (m_key_events[0].y - m_key_events[1].y)); (m_key_events[0].y - m_key_events[1].y) * (m_key_events[0].y - m_key_events[1].y));
if (distance >(20 + g_settings->getU16("touchscreen_threshold"))) if (distance > (20 + g_settings->getU16("touchscreen_threshold")))
return false; return false;
SEvent* translated = new SEvent(); SEvent* translated = new SEvent();
memset(translated,0,sizeof(SEvent)); memset(translated, 0, sizeof(SEvent));
translated->EventType = EET_MOUSE_INPUT_EVENT; translated->EventType = EET_MOUSE_INPUT_EVENT;
translated->MouseInput.X = m_key_events[0].x; translated->MouseInput.X = m_key_events[0].x;
translated->MouseInput.Y = m_key_events[0].y; translated->MouseInput.Y = m_key_events[0].y;
@ -744,7 +1084,7 @@ bool TouchScreenGUI::doubleTapDetection()
TouchScreenGUI::~TouchScreenGUI() TouchScreenGUI::~TouchScreenGUI()
{ {
for (unsigned int i=0; i < after_last_element_id; i++) { for (unsigned int i = 0; i < after_last_element_id; i++) {
button_info* btn = &m_buttons[i]; button_info* btn = &m_buttons[i];
if (btn->guibutton != 0) { if (btn->guibutton != 0) {
btn->guibutton->drop(); btn->guibutton->drop();
@ -756,11 +1096,11 @@ TouchScreenGUI::~TouchScreenGUI()
void TouchScreenGUI::step(float dtime) void TouchScreenGUI::step(float dtime)
{ {
/* simulate keyboard repeats */ /* simulate keyboard repeats */
for (unsigned int i=0; i < after_last_element_id; i++) { for (unsigned int i = 0; i < after_last_element_id; i++) {
button_info* btn = &m_buttons[i]; button_info* btn = &m_buttons[i];
if (btn->ids.size() > 0) { if (btn->ids.size() > 0) {
btn->repeatcounter += dtime; btn->repeatcounter= dtime;
/* in case we're moving around digging does not happen */ /* in case we're moving around digging does not happen */
if (m_move_id != -1) if (m_move_id != -1)
@ -770,7 +1110,7 @@ void TouchScreenGUI::step(float dtime)
btn->repeatcounter = 0; btn->repeatcounter = 0;
SEvent translated; SEvent translated;
memset(&translated,0,sizeof(SEvent)); memset(&translated, 0, sizeof(SEvent));
translated.EventType = irr::EET_KEY_INPUT_EVENT; translated.EventType = irr::EET_KEY_INPUT_EVENT;
translated.KeyInput.Key = btn->keycode; translated.KeyInput.Key = btn->keycode;
translated.KeyInput.PressedDown = false; translated.KeyInput.PressedDown = false;
@ -796,7 +1136,7 @@ void TouchScreenGUI::step(float dtime)
v2s32(m_move_downlocation.X,m_move_downlocation.Y)); v2s32(m_move_downlocation.X,m_move_downlocation.Y));
SEvent translated; SEvent translated;
memset(&translated,0,sizeof(SEvent)); memset(&translated, 0, sizeof(SEvent));
translated.EventType = EET_MOUSE_INPUT_EVENT; translated.EventType = EET_MOUSE_INPUT_EVENT;
translated.MouseInput.X = m_move_downlocation.X; translated.MouseInput.X = m_move_downlocation.X;
translated.MouseInput.Y = m_move_downlocation.Y; translated.MouseInput.Y = m_move_downlocation.Y;
@ -809,6 +1149,8 @@ void TouchScreenGUI::step(float dtime)
m_move_sent_as_mouse_event = true; m_move_sent_as_mouse_event = true;
} }
} }
m_settingsbar.step(dtime);
m_rarecontrolsbar.step(dtime);
} }
void TouchScreenGUI::resetHud() void TouchScreenGUI::resetHud()
@ -824,7 +1166,7 @@ void TouchScreenGUI::registerHudItem(int index, const rect<s32> &rect)
void TouchScreenGUI::Toggle(bool visible) void TouchScreenGUI::Toggle(bool visible)
{ {
m_visible = visible; m_visible = visible;
for (unsigned int i=0; i < after_last_element_id; i++) { for (unsigned int i = 0; i < after_last_element_id; i++) {
button_info* btn = &m_buttons[i]; button_info* btn = &m_buttons[i];
if (btn->guibutton != 0) { if (btn->guibutton != 0) {
btn->guibutton->setVisible(visible); btn->guibutton->setVisible(visible);
@ -836,11 +1178,17 @@ void TouchScreenGUI::Toggle(bool visible)
while (m_known_ids.size() > 0) { while (m_known_ids.size() > 0) {
handleReleaseEvent(m_known_ids.begin()->id); handleReleaseEvent(m_known_ids.begin()->id);
} }
m_settingsbar.hide();
m_rarecontrolsbar.hide();
} else {
m_settingsbar.show();
m_rarecontrolsbar.show();
} }
} }
void TouchScreenGUI::Hide() void TouchScreenGUI::hide()
{ {
if (!m_visible) if (!m_visible)
return; return;
@ -848,7 +1196,7 @@ void TouchScreenGUI::Hide()
Toggle(false); Toggle(false);
} }
void TouchScreenGUI::Show() void TouchScreenGUI::show()
{ {
if (m_visible) if (m_visible)
return; return;

View File

@ -40,10 +40,11 @@ typedef enum {
backward_id, backward_id,
left_id, left_id,
right_id, right_id,
inventory_id,
drop_id,
jump_id, jump_id,
crunch_id, crunch_id,
after_last_element_id,
// settings_starter_id,
// rare_controls_starter_id,
#ifdef ENABLE_ANDROID_NOCLIP #ifdef ENABLE_ANDROID_NOCLIP
fly_id, fly_id,
noclip_id, noclip_id,
@ -51,18 +52,97 @@ typedef enum {
#endif #endif
// minimap_id, // minimap_id,
debug_id, debug_id,
chat_id, camera_id,
// camera_id,
range_id, range_id,
after_last_element_id chat_id,
inventory_id,
drop_id
} touch_gui_button_id; } touch_gui_button_id;
typedef enum {
AHBB_Dir_Top_Bottom,
AHBB_Dir_Bottom_Top,
AHBB_Dir_Left_Right,
AHBB_Dir_Right_Left
} autohide_button_bar_dir;
#define MIN_DIG_TIME_MS 500 #define MIN_DIG_TIME_MS 500
#define MAX_TOUCH_COUNT 64 #define MAX_TOUCH_COUNT 64
#define BUTTON_REPEAT_DELAY 0.2f #define BUTTON_REPEAT_DELAY 0.2f
//#define SETTINGS_BAR_Y_OFFSET 6.5
//#define RARE_CONTROLS_BAR_Y_OFFSET 4
extern const char *touchgui_button_imagenames[]; extern const char *touchgui_button_imagenames[];
struct button_info {
float repeatcounter;
float repeatdelay;
irr::EKEY_CODE keycode;
std::vector<int> ids;
IGUIButton* guibutton;
bool immediate_release;
};
class AutoHideButtonBar
{
public:
AutoHideButtonBar( IrrlichtDevice *device, IEventReceiver* receiver );
void init(ISimpleTextureSource* tsrc, const char* starter_img,
int button_id, v2s32 UpperLeft, v2s32 LowerRight,
autohide_button_bar_dir dir, float timeout);
~AutoHideButtonBar();
/* add button to be shown */
void addButton(touch_gui_button_id id, const wchar_t* caption,
const char* btn_image);
/* detect settings bar button events */
bool isButton(const SEvent &event);
/* handle released hud buttons */
bool isReleaseButton(int eventID);
/* step handler */
void step(float dtime);
/* deactivate button bar */
void deactivate();
/* hide the whole buttonbar */
void hide();
/* unhide the buttonbar */
void show();
private:
ISimpleTextureSource* m_texturesource;
irr::video::IVideoDriver* m_driver;
IGUIEnvironment* m_guienv;
IEventReceiver* m_receiver;
v2u32 m_screensize;
button_info m_starter;
std::vector<button_info*> m_buttons;
v2s32 m_upper_left;
v2s32 m_lower_right;
/* show settings bar */
bool m_active;
bool m_visible;
/* settings bar timeout */
float m_timeout;
float m_timeout_value;
bool m_initialized;
autohide_button_bar_dir m_dir;
};
class TouchScreenGUI class TouchScreenGUI
{ {
public: public:
@ -71,7 +151,7 @@ public:
void translateEvent(const SEvent &event); void translateEvent(const SEvent &event);
void init(ISimpleTextureSource* tsrc,float density); void init(ISimpleTextureSource* tsrc);
double getYaw() { return m_camera_yaw; } double getYaw() { return m_camera_yaw; }
double getPitch() { return m_camera_pitch; } double getPitch() { return m_camera_pitch; }
@ -82,8 +162,8 @@ public:
void registerHudItem(int index, const rect<s32> &rect); void registerHudItem(int index, const rect<s32> &rect);
void Toggle(bool visible); void Toggle(bool visible);
void Hide(); void hide();
void Show(); void show();
private: private:
IrrlichtDevice* m_device; IrrlichtDevice* m_device;
@ -110,15 +190,6 @@ private:
bool m_move_sent_as_mouse_event; bool m_move_sent_as_mouse_event;
v2s32 m_move_downlocation; v2s32 m_move_downlocation;
struct button_info {
float repeatcounter;
float repeatdelay;
irr::EKEY_CODE keycode;
std::vector<int> ids;
IGUIButton* guibutton;
bool immediate_release;
};
button_info m_buttons[after_last_element_id]; button_info m_buttons[after_last_element_id];
/* gui button detection */ /* gui button detection */
@ -148,7 +219,7 @@ private:
std::vector<id_status> m_known_ids; std::vector<id_status> m_known_ids;
/* handle a button event */ /* handle a button event */
void ButtonEvent(touch_gui_button_id bID, int eventID, bool action); void handleButtonEvent(touch_gui_button_id bID, int eventID, bool action);
/* handle pressed hud buttons */ /* handle pressed hud buttons */
bool isHUDButton(const SEvent &event); bool isHUDButton(const SEvent &event);
@ -162,6 +233,9 @@ private:
/* handle release event */ /* handle release event */
void handleReleaseEvent(int evt_id); void handleReleaseEvent(int evt_id);
/* get size of regular gui control button */
int getGuiButtonSize();
/* doubleclick detection variables */ /* doubleclick detection variables */
struct key_event { struct key_event {
unsigned int down_time; unsigned int down_time;
@ -174,6 +248,12 @@ private:
/* array for doubletap detection */ /* array for doubletap detection */
key_event m_key_events[2]; key_event m_key_events[2];
/* settings bar */
AutoHideButtonBar m_settingsbar;
/* rare controls bar */
AutoHideButtonBar m_rarecontrolsbar;
}; };
extern TouchScreenGUI *g_touchscreengui; extern TouchScreenGUI *g_touchscreengui;
#endif #endif

View File

@ -30,31 +30,31 @@ mkdir -p $libdir
cd $builddir cd $builddir
# Get stuff # Get stuff
[ -e $packagedir/irrlicht-$irrlicht_version.zip ] || wget http://sfan5.pf-control.de/irrlicht-$irrlicht_version-win32.zip \ [ -e $packagedir/irrlicht-$irrlicht_version.zip ] || wget http://minetest.kitsunemimi.pw/irrlicht-$irrlicht_version-win32.zip \
-c -O $packagedir/irrlicht-$irrlicht_version.zip -c -O $packagedir/irrlicht-$irrlicht_version.zip
[ -e $packagedir/zlib-$zlib_version.zip ] || wget http://sfan5.pf-control.de/zlib-$zlib_version-win32.zip \ [ -e $packagedir/zlib-$zlib_version.zip ] || wget http://minetest.kitsunemimi.pw/zlib-$zlib_version-win32.zip \
-c -O $packagedir/zlib-$zlib_version.zip -c -O $packagedir/zlib-$zlib_version.zip
[ -e $packagedir/libogg-$ogg_version-dev.7z ] || wget http://sfan5.pf-control.de/libogg-$ogg_version-dev.7z \ [ -e $packagedir/libogg-$ogg_version-dev.7z ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-dev.7z \
-c -O $packagedir/libogg-$ogg_version-dev.7z -c -O $packagedir/libogg-$ogg_version-dev.7z
[ -e $packagedir/libogg-$ogg_version-dll.7z ] || wget http://sfan5.pf-control.de/libogg-$ogg_version-dll.7z \ [ -e $packagedir/libogg-$ogg_version-dll.7z ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-dll.7z \
-c -O $packagedir/libogg-$ogg_version-dll.7z -c -O $packagedir/libogg-$ogg_version-dll.7z
[ -e $packagedir/libvorbis-$vorbis_version-dev.7z ] || wget http://sfan5.pf-control.de/libvorbis-$vorbis_version-dev.7z \ [ -e $packagedir/libvorbis-$vorbis_version-dev.7z ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-dev.7z \
-c -O $packagedir/libvorbis-$vorbis_version-dev.7z -c -O $packagedir/libvorbis-$vorbis_version-dev.7z
[ -e $packagedir/libvorbis-$vorbis_version-dll.7z ] || wget http://sfan5.pf-control.de/libvorbis-$vorbis_version-dll.7z \ [ -e $packagedir/libvorbis-$vorbis_version-dll.7z ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-dll.7z \
-c -O $packagedir/libvorbis-$vorbis_version-dll.7z -c -O $packagedir/libvorbis-$vorbis_version-dll.7z
[ -e $packagedir/libcurl-$curl_version.zip ] || wget http://sfan5.pf-control.de/libcurl-$curl_version-win32.zip \ [ -e $packagedir/libcurl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/libcurl-$curl_version-win32.zip \
-c -O $packagedir/libcurl-$curl_version.zip -c -O $packagedir/libcurl-$curl_version.zip
[ -e $packagedir/gettext-$gettext_version.zip ] || wget http://sfan5.pf-control.de/gettext-$gettext_version.zip \ [ -e $packagedir/gettext-$gettext_version.zip ] || wget http://minetest.kitsunemimi.pw/gettext-$gettext_version.zip \
-c -O $packagedir/gettext-$gettext_version.zip -c -O $packagedir/gettext-$gettext_version.zip
[ -e $packagedir/libfreetype-$freetype_version.zip ] || wget http://sfan5.pf-control.de/libfreetype-$freetype_version-win32.zip \ [ -e $packagedir/libfreetype-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/libfreetype-$freetype_version-win32.zip \
-c -O $packagedir/libfreetype-$freetype_version.zip -c -O $packagedir/libfreetype-$freetype_version.zip
[ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://sfan5.pf-control.de/sqlite3-$sqlite3_version-win32.zip \ [ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://minetest.kitsunemimi.pw/sqlite3-$sqlite3_version-win32.zip \
-c -O $packagedir/sqlite3-$sqlite3_version.zip -c -O $packagedir/sqlite3-$sqlite3_version.zip
[ -e $packagedir/luajit-$luajit_version-static-win32.zip ] || wget http://sfan5.pf-control.de/luajit-$luajit_version-static-win32.zip \ [ -e $packagedir/luajit-$luajit_version-static-win32.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-static-win32.zip \
-c -O $packagedir/luajit-$luajit_version-static-win32.zip -c -O $packagedir/luajit-$luajit_version-static-win32.zip
[ -e $packagedir/libleveldb-$leveldb_version-win32.zip ] || wget http://sfan5.pf-control.de/libleveldb-$leveldb_version-win32.zip \ [ -e $packagedir/libleveldb-$leveldb_version-win32.zip ] || wget http://minetest.kitsunemimi.pw/libleveldb-$leveldb_version-win32.zip \
-c -O $packagedir/libleveldb-$leveldb_version-win32.zip -c -O $packagedir/libleveldb-$leveldb_version-win32.zip
[ -e $packagedir/openal_stripped.zip ] || wget http://sfan5.pf-control.de/openal_stripped.zip \ [ -e $packagedir/openal_stripped.zip ] || wget http://minetest.kitsunemimi.pw/openal_stripped.zip \
-c -O $packagedir/openal_stripped.zip -c -O $packagedir/openal_stripped.zip
# Extract stuff # Extract stuff

View File

@ -30,27 +30,27 @@ mkdir -p $libdir
cd $builddir cd $builddir
# Get stuff # Get stuff
[ -e $packagedir/irrlicht-$irrlicht_version.zip ] || wget http://sfan5.pf-control.de/irrlicht-$irrlicht_version-win64.zip \ [ -e $packagedir/irrlicht-$irrlicht_version.zip ] || wget http://minetest.kitsunemimi.pw/irrlicht-$irrlicht_version-win64.zip \
-c -O $packagedir/irrlicht-$irrlicht_version.zip -c -O $packagedir/irrlicht-$irrlicht_version.zip
[ -e $packagedir/zlib-$zlib_version.zip ] || wget http://sfan5.pf-control.de/zlib-$zlib_version-win64.zip \ [ -e $packagedir/zlib-$zlib_version.zip ] || wget http://minetest.kitsunemimi.pw/zlib-$zlib_version-win64.zip \
-c -O $packagedir/zlib-$zlib_version.zip -c -O $packagedir/zlib-$zlib_version.zip
[ -e $packagedir/libogg-$ogg_version.zip ] || wget http://sfan5.pf-control.de/libogg-$ogg_version-win64.zip \ [ -e $packagedir/libogg-$ogg_version.zip ] || wget http://minetest.kitsunemimi.pw/libogg-$ogg_version-win64.zip \
-c -O $packagedir/libogg-$ogg_version.zip -c -O $packagedir/libogg-$ogg_version.zip
[ -e $packagedir/libvorbis-$vorbis_version.zip ] || wget http://sfan5.pf-control.de/libvorbis-$vorbis_version-win64.zip \ [ -e $packagedir/libvorbis-$vorbis_version.zip ] || wget http://minetest.kitsunemimi.pw/libvorbis-$vorbis_version-win64.zip \
-c -O $packagedir/libvorbis-$vorbis_version.zip -c -O $packagedir/libvorbis-$vorbis_version.zip
[ -e $packagedir/libcurl-$curl_version.zip ] || wget http://sfan5.pf-control.de/libcurl-$curl_version-win64.zip \ [ -e $packagedir/libcurl-$curl_version.zip ] || wget http://minetest.kitsunemimi.pw/libcurl-$curl_version-win64.zip \
-c -O $packagedir/libcurl-$curl_version.zip -c -O $packagedir/libcurl-$curl_version.zip
[ -e $packagedir/gettext-$gettext_version.zip ] || wget http://sfan5.pf-control.de/gettext-$gettext_version-win64.zip \ [ -e $packagedir/gettext-$gettext_version.zip ] || wget http://minetest.kitsunemimi.pw/gettext-$gettext_version-win64.zip \
-c -O $packagedir/gettext-$gettext_version.zip -c -O $packagedir/gettext-$gettext_version.zip
[ -e $packagedir/freetype-$freetype_version.zip ] || wget http://sfan5.pf-control.de/libfreetype-$freetype_version-win64.zip \ [ -e $packagedir/freetype-$freetype_version.zip ] || wget http://minetest.kitsunemimi.pw/libfreetype-$freetype_version-win64.zip \
-c -O $packagedir/freetype-$freetype_version.zip -c -O $packagedir/freetype-$freetype_version.zip
[ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://sfan5.pf-control.de/sqlite3-$sqlite3_version-win64.zip \ [ -e $packagedir/sqlite3-$sqlite3_version.zip ] || wget http://minetest.kitsunemimi.pw/sqlite3-$sqlite3_version-win64.zip \
-c -O $packagedir/sqlite3-$sqlite3_version.zip -c -O $packagedir/sqlite3-$sqlite3_version.zip
[ -e $packagedir/luajit-$luajit_version.zip ] || wget http://sfan5.pf-control.de/luajit-$luajit_version-static-win64.zip \ [ -e $packagedir/luajit-$luajit_version.zip ] || wget http://minetest.kitsunemimi.pw/luajit-$luajit_version-static-win64.zip \
-c -O $packagedir/luajit-$luajit_version.zip -c -O $packagedir/luajit-$luajit_version.zip
[ -e $packagedir/libleveldb-$leveldb_version.zip ] || wget http://sfan5.pf-control.de/libleveldb-$leveldb_version-win64.zip \ [ -e $packagedir/libleveldb-$leveldb_version.zip ] || wget http://minetest.kitsunemimi.pw/libleveldb-$leveldb_version-win64.zip \
-c -O $packagedir/libleveldb-$leveldb_version.zip -c -O $packagedir/libleveldb-$leveldb_version.zip
[ -e $packagedir/openal_stripped.zip ] || wget http://sfan5.pf-control.de/openal_stripped64.zip \ [ -e $packagedir/openal_stripped.zip ] || wget http://minetest.kitsunemimi.pw/openal_stripped64.zip \
-c -O $packagedir/openal_stripped.zip -c -O $packagedir/openal_stripped.zip

View File

@ -15,16 +15,16 @@ if [[ $PLATFORM == "Linux" ]]; then
libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev \ libjpeg-dev libxxf86vm-dev libgl1-mesa-dev libsqlite3-dev \
libhiredis-dev libogg-dev libgmp-dev libvorbis-dev libopenal-dev gettext libhiredis-dev libogg-dev libgmp-dev libvorbis-dev libopenal-dev gettext
# Linking to LevelDB is broken, use a custom build # Linking to LevelDB is broken, use a custom build
wget http://sfan5.pf-control.de/libleveldb-1.18-ubuntu12.04.7z wget http://minetest.kitsunemimi.pw/libleveldb-1.18-ubuntu12.04.7z
sudo 7z x -o/usr libleveldb-1.18-ubuntu12.04.7z sudo 7z x -o/usr libleveldb-1.18-ubuntu12.04.7z
elif [[ $PLATFORM == "Win32" ]]; then elif [[ $PLATFORM == "Win32" ]]; then
wget http://sfan5.pf-control.de/mingw_w64_i686_ubuntu12.04_4.9.1.7z -O mingw.7z wget http://minetest.kitsunemimi.pw/mingw_w64_i686_ubuntu12.04_4.9.1.7z -O mingw.7z
sed -e "s|%PREFIX%|i686-w64-mingw32|" \ sed -e "s|%PREFIX%|i686-w64-mingw32|" \
-e "s|%ROOTPATH%|/usr/i686-w64-mingw32|" \ -e "s|%ROOTPATH%|/usr/i686-w64-mingw32|" \
< util/travis/toolchain_mingw.cmake.in > util/buildbot/toolchain_mingw.cmake < util/travis/toolchain_mingw.cmake.in > util/buildbot/toolchain_mingw.cmake
sudo 7z x -y -o/usr mingw.7z sudo 7z x -y -o/usr mingw.7z
elif [[ $PLATFORM == "Win64" ]]; then elif [[ $PLATFORM == "Win64" ]]; then
wget http://sfan5.pf-control.de/mingw_w64_x86_64_ubuntu12.04_4.9.1.7z -O mingw.7z wget http://minetest.kitsunemimi.pw/mingw_w64_x86_64_ubuntu12.04_4.9.1.7z -O mingw.7z
sed -e "s|%PREFIX%|x86_64-w64-mingw32|" \ sed -e "s|%PREFIX%|x86_64-w64-mingw32|" \
-e "s|%ROOTPATH%|/usr/x86_64-w64-mingw32|" \ -e "s|%ROOTPATH%|/usr/x86_64-w64-mingw32|" \
< util/travis/toolchain_mingw.cmake.in > util/buildbot/toolchain_mingw64.cmake < util/travis/toolchain_mingw.cmake.in > util/buildbot/toolchain_mingw64.cmake