Merge remote-tracking branch 'upstream/master' into dev

This commit is contained in:
bri cassa 2023-11-26 13:53:43 +01:00
commit 127629a029
87 changed files with 755 additions and 737 deletions

View File

@ -1,6 +1,10 @@
unused_args = false
allow_defined_top = true
globals = {
"default"
}
read_globals = {
"DIR_DELIM",
"minetest",

View File

@ -1028,6 +1028,27 @@ Trees
* `default.grow_blueberry_bush(pos)`
* Grows a blueberry bush at pos
* `default.on_grow_failed(pos)`
* Reset the node timer to 300 seconds, used as default callback when the growth of a sapling fails
* `default.sapling_growth_defs`
* Table that contains all the definitions for the growable saplings, see `default.register_sapling_growth`
* `default.register_sapling_growth(name, def)`
* Register a new sapling growth configuration. Useful to add custom sapling and trees to the game in a compact way.
default.register_sapling_growth(
"default:sapling", -- Name of the sapling
{
can_grow = default.can_grow, -- Function called to determine whether the sapling can grow, should return a boolean
on_grow_failed = default.on_grow_failed, -- Function called when the growth fails
grow = function(pos) -- Function called when the growth has success. This should replace the sapling with a tree.
}
)
* `default.grow_sapling(pos)`
* Attempt to grow a sapling at the given position. Useful as on_timer callback.
Carts
-----
@ -1142,8 +1163,9 @@ the log.
`default.set_inventory_action_loggers(def, name)`
* sets the callbacks `on_metadata_inventory_move`,
* hooks the callbacks `on_metadata_inventory_move`,
`on_metadata_inventory_put` and `on_metadata_inventory_take`
that log corresponding actions
* after logging the action, the original callback (if any) is called
* `def` See [Node definition]
* `name` Description of the node in the log message

View File

@ -115,8 +115,8 @@ function beds.register_bed(name, def)
local dir = minetest.facedir_to_dir(node.param2)
local p = vector.add(pos, dir)
local node2 = minetest.get_node_or_nil(p)
if not node2 or not minetest.get_item_group(node2.name, "bed") == 2 or
not node.param2 == node2.param2 then
if not node2 or minetest.get_item_group(node2.name, "bed") ~= 2 or
node.param2 ~= node2.param2 then
return false
end
if minetest.is_protected(p, user:get_player_name()) then

View File

@ -65,7 +65,7 @@ beds.register_bed("beds:bed", {
"beds_bed_top_bottom.png^[transformR90",
"beds_bed_under.png",
"beds_bed_side_bottom_r.png",
"beds_bed_side_bottom_r.png^[transformfx",
"beds_bed_side_bottom_r.png^[transformFX",
"beds_transparent.png",
"beds_bed_side_bottom.png"
},
@ -73,7 +73,7 @@ beds.register_bed("beds:bed", {
"beds_bed_top_top.png^[transformR90",
"beds_bed_under.png",
"beds_bed_side_top_r.png",
"beds_bed_side_top_r.png^[transformfx",
"beds_bed_side_top_r.png^[transformFX",
"beds_bed_side_top.png",
"beds_transparent.png",
}

View File

@ -181,6 +181,26 @@ function beds.skip_night()
minetest.set_timeofday(0.23)
end
local update_scheduled = false
local function schedule_update()
if update_scheduled then
-- there already is an update scheduled; don't schedule more to prevent races
return
end
update_scheduled = true
minetest.after(2, function()
update_scheduled = false
if not is_sp then
update_formspecs(is_night_skip_enabled())
end
if is_night_skip_enabled() then
-- skip the night and let all players stand up
beds.skip_night()
beds.kick_players()
end
end)
end
function beds.on_rightclick(pos, player)
local name = player:get_player_name()
local ppos = player:get_pos()
@ -206,17 +226,8 @@ function beds.on_rightclick(pos, player)
update_formspecs(false)
end
-- skip the night and let all players stand up
if check_in_beds() then
minetest.after(2, function()
if not is_sp then
update_formspecs(is_night_skip_enabled())
end
if is_night_skip_enabled() then
beds.skip_night()
beds.kick_players()
end
end)
schedule_update()
end
end
@ -249,13 +260,7 @@ minetest.register_on_leaveplayer(function(player)
lay_down(player, nil, nil, false, true)
beds.player[name] = nil
if check_in_beds() then
minetest.after(2, function()
update_formspecs(is_night_skip_enabled())
if is_night_skip_enabled() then
beds.skip_night()
beds.kick_players()
end
end)
schedule_update()
end
end)

View File

@ -1,10 +1,10 @@
# textdomain: beds
Fancy Bed=Деталізована Постіль
Simple Bed=Звичайна Постіль
This bed is already occupied!=Ця постіль вже зайнята!
You have to stop moving before going to bed!=Не можна скористатись постіллю на ходу!
Fancy Bed=Гарне ліжко
Simple Bed=Просте ліжко
This bed is already occupied!=Це ліжко вже зайняте!
You have to stop moving before going to bed!=Зупиніться перед тим як лягти!
Good morning.=Доброго ранку.
@1 of @2 players are in bed=@1 з @2 гравців в ліжку
@1 of @2 players are in bed=@1 з @2 гравців(-я) у ліжку
Force night skip=Пропустити ніч
You can only sleep at night.=Ви можете спати тільки вночі.
You can only sleep at night.=Ви можете спати лише вночі.
Leave Bed=Встати з ліжка

View File

@ -1,3 +1,3 @@
# textdomain: binoculars
Binoculars=Teropong
Use with 'Zoom' key=Pakai dengan tombol 'Zum'
Use with 'Zoom' key=Gunakan dengan tombol 'Zum'

View File

@ -1,3 +1,3 @@
# textdomain: binoculars
Binoculars=Бінокль
Use with 'Zoom' key=Використовується з правами 'Zoom'
Use with 'Zoom' key=Використовується клавішею 'Наближення'

View File

@ -28,7 +28,7 @@ local bones_formspec =
local share_bones_time = tonumber(minetest.settings:get("share_bones_time")) or 1200
local share_bones_time_early = tonumber(minetest.settings:get("share_bones_time_early")) or share_bones_time / 4
minetest.register_node("bones:bones", {
local bones_def = {
description = S("Bones"),
tiles = {
"bones_top.png^[transform2",
@ -130,7 +130,11 @@ minetest.register_node("bones:bones", {
end,
on_blast = function(pos)
end,
})
}
default.set_inventory_action_loggers(bones_def, "bones")
minetest.register_node("bones:bones", bones_def)
local function may_replace(pos, player)
local node_name = minetest.get_node(pos).name
@ -224,7 +228,7 @@ minetest.register_on_dieplayer(function(player)
-- check if it's possible to place bones, if not find space near player
if bones_mode == "bones" and not may_replace(pos, player) then
local air = minetest.find_node_near(pos, 1, {"air"})
if air and not minetest.is_protected(air, player_name) then
if air then
pos = air
else
bones_mode = "drop"

View File

@ -1,8 +1,8 @@
# textdomain: bones
Bones=Кістки
@1's old bones=старі кістки @1
@1 died at @2.=@1 помер в @2.
@1 died at @2, and dropped their inventory.=@1 помер в @2, та загубив вміст свого інвентарю.
@1 died at @2, and bones were placed.=@1 помер в @2, розміщені кістки.
@1's fresh bones=нові кістки @1
@1's bones=кістки @1
@1's old bones=Старі кістки @1
@1 died at @2.=@1 загинув на координатах @2.
@1 died at @2, and dropped their inventory.=@1 загинув на координатах @2 та втратив вміст свого інвентарю.
@1 died at @2, and bones were placed.=@1 загинув на координатах @2, було розміщено кістки.
@1's fresh bones=Свіжі кістки @1
@1's bones=Кістки @1

View File

@ -1,5 +1,5 @@
# textdomain: bucket
Empty Bucket=Пусте Відро
Water Bucket=Відро З Водою
River Water Bucket=Відро З Річною Водою
Lava Bucket=Відро З Лавою
Empty Bucket=Порожнє відро
Water Bucket=Відро з водою
River Water Bucket=Відро з річковою водою
Lava Bucket=Відро з лавою

View File

@ -1,4 +1,4 @@
# textdomain: butterflies
White Butterfly=Білий Метелик
Red Butterfly=Червоний Метелик
Violet Butterfly=Фіолетовий Метелик
White Butterfly=Білий метелик
Red Butterfly=Червоний метелик
Violet Butterfly=Фіолетовий метелик

View File

@ -1,6 +1,6 @@
# textdomain: carts
Cart=Вагонетка
(Sneak+Click to pick up)=(Пригніться та клікніть по вагонетці, щоб забрати)
(Sneak+Click to pick up)=(Пригніться та натисніть, щоби підібрати)
Rail=Рейки
Powered Rail=Задіяні Рейки
Brake Rail=Гальмівні Рейки
Powered Rail=Електричні рейки
Brake Rail=Гальмівні рейки

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Spieler erlauben, das Kreativinventar zu benutzen
No items to show.=Keine Gegenstände vorhanden.
Search=Suchen
Reset=Zurücksetzen
Previous page=Vorherige Seite

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Permesi ke la ludanto uzu la kreeman stokon
No items to show.=
Search=Serĉi
Reset=Rekomencigi
Previous page=Antaŭa paĝo

View File

@ -1,7 +1,8 @@
# textdomain: creative
Allow player to use creative inventory=Permitir al jugador usar el inventario creativo
No items to show.=Sin artículos que mostrar.
Search=Buscar
Reset=Resetear
Reset=Reiniciar
Previous page=Pág. siguiente
Next page=Pág. anterior
All=Todos

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Permettre aux joueurs d'utiliser l'inventaire du mode créatif
No items to show.=
Search=Rechercher
Reset=Réinitialiser
Previous page=Page précédente

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Bolehkan pemain memakai inventaris kreatif
Allow player to use creative inventory=Bolehkan pemain menggunakan inventaris kreatif
No items to show.=Tiada barang untuk ditampilkan.
Search=Cari
Reset=Atur ulang
Previous page=Halaman sebelumnya

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Permette al giocatore di usare l'inventario creativo
No items to show.=
Search=Cerca
Reset=Azzera
Previous page=Pagina precedente

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=プレーヤーにクリエイティブ インベントリーの使用を許可する
No items to show.=
Search=検索
Reset=リセット
Previous page=前のページ

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=zifre le ka pilno le finti ke dacti liste
No items to show.=
Search=sisku
Reset=kraga'igau
Previous page=lidne

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Benarkan pemain menggunakan inventori kreatif
No items to show.=
Search=Cari
Reset=Set semula
Previous page=Halaman sebelumnya

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Zezwól graczom na używanie kreatywnego ekwipunku
No items to show.=
Search=Wyszukaj
Reset=Zresetuj
Previous page=Poprzednia strona

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Permitir o jogador usar o inventário criativo
No items to show.=
Search=Pesquisar
Reset=Redefinir
Previous page=Página anterior

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Разрешить игроку использовать творческий инвентарь
No items to show.=
Search=Поиск
Reset=Сброс
Previous page=Предыдущая страница

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Povolí hráčovi použivať kreatívny inventár
No items to show.=
Search=Hľadaj
Reset=Vrátiť späť
Previous page=Predchádzajúca stránka

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Tillåt spelare att använda kreativa saker
No items to show.=
Search=Sök
Reset=Återställ
Previous page=Förra sida

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=Дозволити гравцеві використати творчий інвентар
Allow player to use creative inventory=Дозволити гравцю використовувати творчий інвентар
No items to show.=Немає результатів.
Search=Пошук
Reset=Скинути
Previous page=Попередня сторінка

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=允许玩家使用创造模式物品栏
No items to show.=
Search=搜索
Reset=重置
Previous page=上一页

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=允許玩家使用創造模式物品欄
No items to show.=
Search=搜索
Reset=重置
Previous page=上一頁

View File

@ -1,5 +1,6 @@
# textdomain: creative
Allow player to use creative inventory=
No items to show.=
Search=
Reset=
Previous page=

View File

@ -38,16 +38,23 @@ function default.chest.chest_lid_close(pn)
default.chest.open_chests[pn] = nil
for k, v in pairs(default.chest.open_chests) do
if v.pos.x == pos.x and v.pos.y == pos.y and v.pos.z == pos.z then
if vector.equals(v.pos, pos) then
-- another player is also looking at the chest
return true
end
end
local node = minetest.get_node(pos)
minetest.after(0.2, minetest.swap_node, pos, { name = swap,
param2 = node.param2 })
minetest.sound_play(sound, {gain = 0.3, pos = pos,
max_hear_distance = 10}, true)
minetest.after(0.2, function()
local current_node = minetest.get_node(pos)
if current_node.name ~= swap .. "_open" then
-- the chest has already been replaced, don't try to replace what's there.
return
end
minetest.swap_node(pos, {name = swap, param2 = node.param2})
minetest.sound_play(sound, {gain = 0.3, pos = pos,
max_hear_distance = 10}, true)
end)
end
default.chest.open_chests = {}

View File

@ -744,16 +744,23 @@ function default.log_player_action(player, ...)
minetest.log("action", msg)
end
local nop = function() end
function default.set_inventory_action_loggers(def, name)
local on_move = def.on_metadata_inventory_move or nop
def.on_metadata_inventory_move = function(pos, from_list, from_index,
to_list, to_index, count, player)
default.log_player_action(player, "moves stuff in", name, "at", pos)
return on_move(pos, from_list, from_index, to_list, to_index, count, player)
end
local on_put = def.on_metadata_inventory_put or nop
def.on_metadata_inventory_put = function(pos, listname, index, stack, player)
default.log_player_action(player, "moves", stack:get_name(), "to", name, "at", pos)
default.log_player_action(player, "moves", stack:get_name(), stack:get_count(), "to", name, "at", pos)
return on_put(pos, listname, index, stack, player)
end
local on_take = def.on_metadata_inventory_take or nop
def.on_metadata_inventory_take = function(pos, listname, index, stack, player)
default.log_player_action(player, "takes", stack:get_name(), "from", name, "at", pos)
default.log_player_action(player, "takes", stack:get_name(), stack:get_count(), "from", name, "at", pos)
return on_take(pos, listname, index, stack, player)
end
end

View File

@ -19,7 +19,7 @@ Licenses of media (textures, models and sounds)
-----------------------------------------------
Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0)
Copyright (C) 2010-2018:
Copyright (C) 2010-2023:
celeron55, Perttu Ahola <celeron55@gmail.com>
Cisoun
@ -52,6 +52,7 @@ Copyright (C) 2010-2018:
random-geek
Extex101
An0n3m0us
Lopano
You are free to:
Share — copy and redistribute the material in any medium or format.

View File

@ -108,7 +108,7 @@ Acacia Tree Sapling=Akazienbaumsetzling
Aspen Tree=Espenbaum
Aspen Wood Planks=Espenholzplanken
Aspen Tree Leaves=Espenbaumblätter
Aspen Tree Sapling=Esepenbaumsetzling
Aspen Tree Sapling=Espenbaumsetzling
Coal Ore=Kohleerz
Coal Block=Kohleblock
Iron Ore=Eisenerz

View File

@ -111,7 +111,7 @@ Aspen Tree Leaves=Feuilles de tremble
Aspen Tree Sapling=Pousse de tremble
Coal Ore=Minerai de charbon
Coal Block=Bloc de charbon
Iron Ore=Bloc de fer
Iron Ore=Minerai de fer
Steel Block=Bloc d'acier
Copper Ore=Minerai de cuivre
Copper Block=Bloc de cuivre

View File

@ -1,44 +1,44 @@
# textdomain: default
Locked Chest=Заблокована Скриня
Locked Chest (owned by @1)=Заблокована Скриня (власник: @1)
You do not own this chest.=Ви не власник цієї скрині.
a locked chest=заблокована скриня
Locked Chest=Замкнена скриня
Locked Chest (owned by @1)=Замкнена скриня (власник — @1)
You do not own this chest.=Ви не власник цієї скрині.
a locked chest=замкнена скриня
Chest=Скриня
Write=Писати
Read=Читати
Title:=Заголовок:
Contents:=Вміст:
Save=Зберегти
by @1=@1
by @1=Автор: @1
Page @1 of @2=Сторінка @1 з @2
The book you were writing to mysteriously disappeared.=
"@1" by @2="@1" @2
The book you were writing to mysteriously disappeared.=Книга, в яку ви писали, загадковим чином зникла.
"@1" by @2=@2 — "@1"
Blueberries=Чорниці
Book=Книга
Book with Text=Книга З Текстом
Bronze Ingot=Бронзовий Злиток
Clay Brick=Глиняна Цегла
Clay Lump=Шматок Глини
Coal Lump=Шматок Вугілля
Copper Ingot=Мідний Злиток
Copper Lump=Шматок Меді
Diamond=Алмаз
Book with Text=Книга з текстом
Bronze Ingot=Бронзовий злиток
Clay Brick=Глиняна цегла
Clay Lump=Шматок глини
Coal Lump=Шматок вугілля
Copper Ingot=Мідний злиток
Copper Lump=Шматок міді
Diamond=Діамант
Flint=Кремінь
Gold Ingot=Золотий Злиток
Gold Lump=Шматок Золота
Iron Lump=Шматок Заліза
Gold Ingot=Золотий злиток
Gold Lump=Шматок золота
Iron Lump=Шматок заліза
Mese Crystal=Кристал Месе
Mese Crystal Fragment=Уламок Кристалу Месе
Obsidian Shard=Обсидіановий Уламок
Mese Crystal Fragment=Уламок кристалу Месе
Obsidian Shard=Обсидіановий уламок
Paper=Папір
Steel Ingot=Залізний Злиток
Stick=Палка
Tin Ingot=Шматок Олова
Tin Lump=Уламок Олова
Furnace is empty=Пічка Порожня
100% (output full)=100% (повне приготування)
Steel Ingot=Сталевий злиток
Stick=Палиця
Tin Ingot=Олов'яний злиток
Tin Lump=Шматок олова
Furnace is empty=Піч порожня
100% (output full)=100% (піч переповнена)
@1%=@1%
Not cookable=Не може бути приготовлено
Not cookable=Не може бути приготовано
Empty=Порожньо
Furnace active=Піч запалена
Furnace inactive=Піч не запалена
@ -46,170 +46,170 @@ Furnace inactive=Піч не запалена
Furnace=Піч
Stone=Камінь
Cobblestone=Кругляк
Stone Brick=Кам'яна Цегла
Stone Block=Кам'яний Блок
Mossy Cobblestone=Моховий Кругляк
Desert Stone=Пустельний Камінь
Desert Cobblestone=Пустельний Камінь
Desert Stone Brick=Пустельна Кам'яна Цегла
Desert Stone Block=Пустельний Кам'яний Блок
Sandstone=Піщаник
Sandstone Brick=Цегла З Піщанику
Sandstone Block=Блок З Піщанику
Desert Sandstone=Пустельний Піщаник
Desert Sandstone Brick=Пустельна Цегла З Піщанику
Desert Sandstone Block=Пустельний Блок З Піщанику
Silver Sandstone=Срібний Піщаник
Silver Sandstone Brick=Цегла Із Срібного Піщанику
Silver Sandstone Block=Блок Із Срібного Піщанику
Stone Brick=Кам'яна цегла
Stone Block=Блок каменю
Mossy Cobblestone=Моховитий кругляк
Desert Stone=Пустельний камінь
Desert Cobblestone=Пустельний кругляк
Desert Stone Brick=Цегла з пустельного каменю
Desert Stone Block=Блок пустельного каменю
Sandstone=Пісковик
Sandstone Brick=Пісковикова цегла
Sandstone Block=Блок пісковику
Desert Sandstone=Пустельний пісковик
Desert Sandstone Brick=Цегла з пустельного пісковику
Desert Sandstone Block=Блок пустельного пісковику
Silver Sandstone=Срібний пісковик
Silver Sandstone Brick=Цегла зі срібного пісковику
Silver Sandstone Block=Блок срібного пісковику
Obsidian=Обсидіан
Obsidian Brick=Обсидіанова Цегла
Obsidian Block=Обсидіановий Блок
Obsidian Brick=Обсидіанова цегла
Obsidian Block=Блок обсидіану
Dirt=Земля
Dirt with Grass=Земля З Травою
Dirt with Grass and Footsteps=Земля З Травою Та Слідами
Dirt with Savanna Grass=Земля Із Саванною Травою
Dirt with Snow=Земля Зі Снігом
Dirt with Rainforest Litter=Земля Із Тропічною Підстилкою
Dirt with Coniferous Litter=Земля Із Сосновою Підстилкою
Savanna Dirt=Саваннова Земля
Savanna Dirt with Savanna Grass=Саваннова Земля Із Травою
Permafrost=Заморожений Ґрунт
Permafrost with Stones=Заморожений Ґрунт Із Камінням
Permafrost with Moss=Заморожений Ґрунт Із Мохом
Dirt with Grass=Земля з травою
Dirt with Grass and Footsteps=Земля з травою та слідами
Dirt with Savanna Grass=Земля із саванною травою
Dirt with Snow=Земля зі снігом
Dirt with Rainforest Litter=Земля з тропічно-лісовою підстилкою
Dirt with Coniferous Litter=Земля з хвойно-лісовою підстилкою
Savanna Dirt=Саванна земля
Savanna Dirt with Savanna Grass=Саванна земля із саванною травою
Permafrost=Вічна мерзлота
Permafrost with Stones=Вічна мерзлота з камінням
Permafrost with Moss=Вічна мерзлота з мохом
Sand=Пісок
Desert Sand=Пустельний Пісок
Silver Sand=Срібний Пісок
Desert Sand=Пустельний пісок
Silver Sand=Срібний пісок
Gravel=Гравій
Clay=Глиняний Блок
Clay=Глина
Snow=Сніг
Snow Block=Сніговий Блок
Ice=Лід
Cave Ice=Печерний Лід
Apple Tree=Стовбур Яблуні
Apple Wood Planks=Яблуневі Дошки
Apple Tree Sapling=Саджанець Яблуні
Apple Tree Leaves=Яблуневе Листя
Snow Block=Блок снігу
Ice=Крига
Cave Ice=Печерова крига
Apple Tree=Стовбур яблуні
Apple Wood Planks=Яблуневі дошки
Apple Tree Sapling=Саджанець яблуні
Apple Tree Leaves=Яблуневе листя
Apple=Яблуко
Apple Marker=Яблучна Мітка
Jungle Tree=Стовбур Тропічного Дерева
Jungle Wood Planks=Дошки З Тропічного Дерева
Jungle Tree Leaves=Листя Тропічного Дерева
Jungle Tree Sapling=Саджанець Тропічного Дерева
Emergent Jungle Tree Sapling=Саджанець Тропічного Дерева, Що Виріс
Pine Tree=Сосновий Стовбур
Pine Wood Planks=Соснові Дошки
Pine Needles=Соснова Хвоя
Pine Tree Sapling=Саджанець Сосни
Acacia Tree=Стовбур Акації
Acacia Wood Planks=Дошки Акації
Acacia Tree Leaves=Листя Акації
Acacia Tree Sapling=Саджанець Акації
Aspen Tree=Стовбур Осики
Aspen Wood Planks=Осикові Дошки
Aspen Tree Leaves=Осикове Листя
Aspen Tree Sapling=Саджанець Осики
Coal Ore=Поклади Вугілля
Coal Block=Вугільний Блок
Iron Ore=Залізна Руда
Steel Block=Сталевий Блок
Copper Ore=Мідна Руда
Copper Block=Мідний Блок
Tin Ore=Олов'яна Руда
Tin Block=Олов'яний Блок
Bronze Block=Бронзовий Блок
Mese Ore=Месева Руда
Mese Block=Месевий Блок
Gold Ore=Золота Руда
Gold Block=Золотий Блок
Diamond Ore=Поклади Алмазу
Diamond Block=Алмазний Блок
Apple Marker=Мітка яблука
Jungle Tree=Стовбур тропічного дерева
Jungle Wood Planks=Дошки з тропічного дерева
Jungle Tree Leaves=Листя тропічного дерева
Jungle Tree Sapling=Саджанець тропічного дерева
Emergent Jungle Tree Sapling=Молодий саджанець тропічного дерева
Pine Tree=Сосновий стовбур
Pine Wood Planks=Соснові дошки
Pine Needles=Соснова хвоя
Pine Tree Sapling=Саджанець сосни
Acacia Tree=Акацієвий стовбур
Acacia Wood Planks=Акацієві дошки
Acacia Tree Leaves=Акацієве листя
Acacia Tree Sapling=Саджанець акації
Aspen Tree=Осиковий стовбур
Aspen Wood Planks=Осикові дошки
Aspen Tree Leaves=Осикове листя
Aspen Tree Sapling=Саджанець осики
Coal Ore=Поклади вугілля
Coal Block=Блок вугілля
Iron Ore=Поклади заліза
Steel Block=Блок сталі
Copper Ore=Поклади міді
Copper Block=Блок міді
Tin Ore=Поклади олова
Tin Block=Блок олова
Bronze Block=Блок бронзи
Mese Ore=Поклади Месе
Mese Block=Блок Месе
Gold Ore=Поклади золота
Gold Block=Блок золота
Diamond Ore=Поклади діамантів
Diamond Block=Блок діамантів
Cactus=Кактус
Large Cactus Seedling=Саджанець Кактуса
Large Cactus Seedling=Великий саджанець кактуса
Papyrus=Папірус
Dry Shrub=Сухий Кущ
Jungle Grass=Тропічна Трава
Dry Shrub=Сухий кущ
Jungle Grass=Тропічна трава
Grass=Трава
Savanna Grass=Саваннова Трава
Savanna Grass=Саванна трава
Fern=Папороть
Marram Grass=Пісколюб
Bush Stem=Стебла Куща
Bush Leaves=Листя Куща
Bush Sapling=Саджанець Куща
Blueberry Bush Leaves with Berries=Кущ Чорниці З Ягодами
Blueberry Bush Leaves=Кущ Чорниці
Blueberry Bush Sapling=Саджанець Куща Чорниці
Acacia Bush Stem=Стебла Куща Акації
Acacia Bush Leaves=Листя Куща Акації
Acacia Bush Sapling=Саджанець Куща Акації
Pine Bush Stem=Стебла Хвойного Куща
Pine Bush Needles=Хвоя Куща
Pine Bush Sapling=Саджанець Хвойного Куща
Marram Grass=Пляжна трава
Bush Stem=Стебла куща
Bush Leaves=Листя куща
Bush Sapling=Саджанець куща
Blueberry Bush Leaves with Berries=Кущ чорниці з ягодами
Blueberry Bush Leaves=Кущ чорниці
Blueberry Bush Sapling=Саджанець куща чорниці
Acacia Bush Stem=Стебла акацієвого куща
Acacia Bush Leaves=Листя акацієвого куща
Acacia Bush Sapling=Саджанець акацієвого куща
Pine Bush Stem=Стебла соснового куща
Pine Bush Needles=Хвоя соснового куща
Pine Bush Sapling=Саджанець соснового куща
Kelp=Ламінарія
Green Coral=Зелений Корал
Pink Coral=Рожевий Корал
Cyan Coral=Блакитний Корал
Brown Coral=Коричневий Корал
Orange Coral=Помаранчевий Корал
Coral Skeleton=Кораловий Остов
Water Source=Водне Джерело
Flowing Water=Проточна Вода
River Water Source=Річкове Водне Джерело
Flowing River Water=Проточна Річна Вода
Lava Source=Лавове Джерело
Flowing Lava=Проточна Лава
Empty Bookshelf=Порожня Книжкова Полиця
Bookshelf (@1 written, @2 empty books)=Книжкова Полиця (@1 книг з записами, @2 чисті книги)
Bookshelf=Книжкова Полиця
Text too long=Текст надто довгий
Green Coral=Зелений корал
Pink Coral=Рожевий корал
Cyan Coral=Блакитний корал
Brown Coral=Коричневий корал
Orange Coral=Помаранчевий корал
Coral Skeleton=Скелет корала
Water Source=Водне джерело
Flowing Water=Проточна вода
River Water Source=Річкове водне джерело
Flowing River Water=Проточна річкова вода
Lava Source=Лавове джерело
Flowing Lava=Проточна лава
Empty Bookshelf=Порожня книжкова полиця
Bookshelf (@1 written, @2 empty books)=Книжкова полиця (книги: @1 з текстом, @2 без тексту)
Bookshelf=Книжкова полиця
Text too long=Текст занадто довгий
"@1"="@1"
Wooden Sign=Дерев'яна Табличка
Steel Sign=Сталева Табличка
Wooden Ladder=Дерев'яна Драбина
Steel Ladder=Сталеві Сходи
Apple Wood Fence=Яблуневий Дерев'яний Паркан
Acacia Wood Fence=Дерев'яний Паркан З Акації
Jungle Wood Fence=Дерев'яний Паркан З Тропічного Дерева
Pine Wood Fence=Сосновий Дерев'яний Паркан
Aspen Wood Fence=Осиковий Дерев'яний Паркан
Apple Wood Fence Rail=Яблуневий Дерев'яний Рейковий Паркан
Acacia Wood Fence Rail=Дерев'яний Рейковий Паркан З Акації
Jungle Wood Fence Rail=Дерев'яний Рейковий Паркан З Тропічного Дерева
Pine Wood Fence Rail=Сосновий Дерев'яний Рейковий Паркан
Aspen Wood Fence Rail=Осиковий Дерев'яний Рейковий Паркан
Wooden Sign=Дерев'яна табличка
Steel Sign=Сталева табличка
Wooden Ladder=Дерев'яна драбина
Steel Ladder=Сталева драбина
Apple Wood Fence=Яблуневий паркан
Acacia Wood Fence=Акацієвий паркан
Jungle Wood Fence=Паркан із тропічного дерева
Pine Wood Fence=Сосновий паркан
Aspen Wood Fence=Осиковий паркан
Apple Wood Fence Rail=Яблуневий рейковий паркан
Acacia Wood Fence Rail=Акацієвий рейковий паркан
Jungle Wood Fence Rail=Рейковий паркан з тропічного дерева
Pine Wood Fence Rail=Сосновий рейковий паркан
Aspen Wood Fence Rail=Осиковий рейковий паркан
Glass=Скло
Obsidian Glass=Обсидіанове Скло
Brick Block=Цегляний Блок
Mese Lamp=Месе Лампа
Apple Wood Mese Post Light=Стовповий Месе Світильник З Яблуні
Acacia Wood Mese Post Light=Стовповий Месе Світильник З Акації
Jungle Wood Mese Post Light=Стовповий Месе Світильник Із Тропічного Дерева
Pine Wood Mese Post Light=Стовповий Месе Світильник Із Сосни
Aspen Wood Mese Post Light=Стовповий Месе Світильник З Осики
Obsidian Glass=Обсидіанове скло
Brick Block=Цегляний блок
Mese Lamp=Месеампа
Apple Wood Mese Post Light=Яблуневий стовповий Месе-світильник
Acacia Wood Mese Post Light=Акацієвий стовповий Месе-світильник
Jungle Wood Mese Post Light=Стовповий Месе-світильник із тропічного дерева
Pine Wood Mese Post Light=Сосновий стовповий Месе-світильник
Aspen Wood Mese Post Light=Осиковий стовповий Месе-світильник
Cloud=Хмара
Wooden Pickaxe=Дерев'яна Кірка
Stone Pickaxe=Кам'яна Кірка
Bronze Pickaxe=Бронзова Кірка
Steel Pickaxe=Сталева Кірка
Mese Pickaxe=Месе Кірка
Diamond Pickaxe=Алмазна Кірка
Wooden Shovel=Дерев'янна Лопата
Stone Shovel=Кам'яна Лопата
Bronze Shovel=Бронзова Лопата
Steel Shovel=Сталева Лопата
Mese Shovel=Месе Лопата
Diamond Shovel=Алмазна Лопата
Wooden Axe=Дерев'яна Сокира
Stone Axe=Кам'яна Сокира
Bronze Axe=Бронзова Сокира
Steel Axe=Сталева Сокира
Mese Axe=Месе Сокира
Diamond Axe=Алмазна Сокира
Wooden Sword=Дерев'яний Меч
Stone Sword=Кам'яний Меч
Bronze Sword=Бронзовий Меч
Steel Sword=Сталевий Меч
Mese Sword=Месе Меч
Diamond Sword=Алмазний Меч
Torch=Факел
@1 will intersect protection on growth.=@1 перетне захист за зростанням.
Wooden Pickaxe=Дерев'яне кайло
Stone Pickaxe=Кам'яне кайло
Bronze Pickaxe=Бронзове кайло
Steel Pickaxe=Сталеве кайло
Mese Pickaxe=Месе-кайло
Diamond Pickaxe=Діамантове кайло
Wooden Shovel=Дерев'яна лопата
Stone Shovel=Кам'яна лопата
Bronze Shovel=Бронзова лопата
Steel Shovel=Сталева лопата
Mese Shovel=Месеопата
Diamond Shovel=Діамантова лопата
Wooden Axe=Дерев'яна сокира
Stone Axe=Кам'яна сокира
Bronze Axe=Бронзова сокира
Steel Axe=Сталева сокира
Mese Axe=Месе-сокира
Diamond Axe=Діамантова сокира
Wooden Sword=Дерев'яний меч
Stone Sword=Кам'яний меч
Bronze Sword=Бронзовий меч
Steel Sword=Сталевий меч
Mese Sword=Месееч
Diamond Sword=Діамантовий меч
Torch=Смолоскип
@1 will intersect protection on growth.=@1 перетне захист коли виросте.

View File

@ -2024,7 +2024,7 @@ minetest.register_node("default:sand_with_kelp", {
return itemstack
end,
after_destruct = function(pos, oldnode)
after_dig_node = function(pos, oldnode, oldmetadata, digger)
minetest.set_node(pos, {name = "default:sand"})
end
})
@ -2099,7 +2099,7 @@ minetest.register_node("default:coral_green", {
on_place = coral_on_place,
after_destruct = function(pos, oldnode)
after_dig_node = function(pos, oldnode, oldmetadata, digger)
minetest.set_node(pos, {name = "default:coral_skeleton"})
end,
})
@ -2130,7 +2130,7 @@ minetest.register_node("default:coral_pink", {
on_place = coral_on_place,
after_destruct = function(pos, oldnode)
after_dig_node = function(pos, oldnode, oldmetadata, digger)
minetest.set_node(pos, {name = "default:coral_skeleton"})
end,
})
@ -2161,7 +2161,7 @@ minetest.register_node("default:coral_cyan", {
on_place = coral_on_place,
after_destruct = function(pos, oldnode)
after_dig_node = function(pos, oldnode, oldmetadata, digger)
minetest.set_node(pos, {name = "default:coral_skeleton"})
end,
})
@ -2549,6 +2549,15 @@ local default_bookshelf_def = {
end
return 0
end,
on_metadata_inventory_put = function(pos)
update_bookshelf(pos)
end,
on_metadata_inventory_take = function(pos)
update_bookshelf(pos)
end,
on_metadata_inventory_move = function(pos)
update_bookshelf(pos)
end,
on_blast = function(pos)
local drops = {}
default.get_inventory_drops(pos, "books", drops)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 247 B

After

Width:  |  Height:  |  Size: 312 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 327 B

After

Width:  |  Height:  |  Size: 336 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 514 B

After

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 449 B

After

Width:  |  Height:  |  Size: 463 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 135 B

After

Width:  |  Height:  |  Size: 388 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 238 B

After

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 236 B

After

Width:  |  Height:  |  Size: 221 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 398 B

After

Width:  |  Height:  |  Size: 447 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 B

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 676 B

After

Width:  |  Height:  |  Size: 641 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 590 B

After

Width:  |  Height:  |  Size: 630 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.9 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

After

Width:  |  Height:  |  Size: 560 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@ -26,6 +26,10 @@ function default.can_grow(pos)
return true
end
function default.on_grow_failed(pos)
minetest.get_node_timer(pos):start(300)
end
-- 'is snow nearby' function
@ -34,84 +38,6 @@ local function is_snow_nearby(pos)
end
-- Grow sapling
function default.grow_sapling(pos)
if not default.can_grow(pos) then
-- try again 5 min later
minetest.get_node_timer(pos):start(300)
return
end
local mg_name = minetest.get_mapgen_setting("mg_name")
local node = minetest.get_node(pos)
if node.name == "default:sapling" then
minetest.log("action", "A sapling grows into a tree at "..
minetest.pos_to_string(pos))
if mg_name == "v6" then
default.grow_tree(pos, random(1, 4) == 1)
else
default.grow_new_apple_tree(pos)
end
elseif node.name == "default:junglesapling" then
minetest.log("action", "A jungle sapling grows into a tree at "..
minetest.pos_to_string(pos))
if mg_name == "v6" then
default.grow_jungle_tree(pos)
else
default.grow_new_jungle_tree(pos)
end
elseif node.name == "default:pine_sapling" then
minetest.log("action", "A pine sapling grows into a tree at "..
minetest.pos_to_string(pos))
local snow = is_snow_nearby(pos)
if mg_name == "v6" then
default.grow_pine_tree(pos, snow)
elseif snow then
default.grow_new_snowy_pine_tree(pos)
else
default.grow_new_pine_tree(pos)
end
elseif node.name == "default:acacia_sapling" then
minetest.log("action", "An acacia sapling grows into a tree at "..
minetest.pos_to_string(pos))
default.grow_new_acacia_tree(pos)
elseif node.name == "default:aspen_sapling" then
minetest.log("action", "An aspen sapling grows into a tree at "..
minetest.pos_to_string(pos))
default.grow_new_aspen_tree(pos)
elseif node.name == "default:bush_sapling" then
minetest.log("action", "A bush sapling grows into a bush at "..
minetest.pos_to_string(pos))
default.grow_bush(pos)
elseif node.name == "default:blueberry_bush_sapling" then
minetest.log("action", "A blueberry bush sapling grows into a bush at "..
minetest.pos_to_string(pos))
default.grow_blueberry_bush(pos)
elseif node.name == "default:acacia_bush_sapling" then
minetest.log("action", "An acacia bush sapling grows into a bush at "..
minetest.pos_to_string(pos))
default.grow_acacia_bush(pos)
elseif node.name == "default:pine_bush_sapling" then
minetest.log("action", "A pine bush sapling grows into a bush at "..
minetest.pos_to_string(pos))
default.grow_pine_bush(pos)
elseif node.name == "default:emergent_jungle_sapling" then
minetest.log("action", "An emergent jungle sapling grows into a tree at "..
minetest.pos_to_string(pos))
default.grow_new_emergent_jungle_tree(pos)
end
end
minetest.register_lbm({
name = "default:convert_saplings_to_node_timer",
nodenames = {"default:sapling", "default:junglesapling",
"default:pine_sapling", "default:acacia_sapling",
"default:aspen_sapling"},
action = function(pos)
minetest.get_node_timer(pos):start(math.random(300, 1500))
end
})
--
-- Tree generation
@ -209,7 +135,6 @@ function default.grow_tree(pos, is_apple_tree, bad)
vm:update_map()
end
-- Jungle tree
function default.grow_jungle_tree(pos, bad)
@ -604,3 +529,78 @@ function default.sapling_on_place(itemstack, placer, pointed_thing,
return itemstack
end
-- Grow sapling
default.sapling_growth_defs = {}
function default.register_sapling_growth(name, def)
default.sapling_growth_defs[name] = {
can_grow = def.can_grow or default.can_grow,
on_grow_failed = def.on_grow_failed or default.on_grow_failed,
grow = assert(def.grow)
}
end
function default.grow_sapling(pos)
local node = minetest.get_node(pos)
local sapling_def = default.sapling_growth_defs[node.name]
if not sapling_def then
minetest.log("warning", "default.grow_sapling called on undefined sapling " .. node.name)
return
end
if not sapling_def.can_grow(pos) then
sapling_def.on_grow_failed(pos)
return
end
minetest.log("action", "Growing sapling " .. node.name .. " at " .. minetest.pos_to_string(pos))
sapling_def.grow(pos)
end
local function register_sapling_growth(nodename, grow)
default.register_sapling_growth("default:" .. nodename, {grow = grow})
end
if minetest.get_mapgen_setting("mg_name") == "v6" then
register_sapling_growth("sapling", function(pos)
default.grow_tree(pos, random(1, 4) == 1)
end)
register_sapling_growth("junglesapling", default.grow_jungle_tree)
register_sapling_growth("pine_sapling", function(pos)
local snow = is_snow_nearby(pos)
default.grow_pine_tree(pos, snow)
end)
else
register_sapling_growth("sapling", default.grow_new_apple_tree)
register_sapling_growth("junglesapling", default.grow_new_jungle_tree)
register_sapling_growth("pine_sapling", function(pos)
local snow = is_snow_nearby(pos)
if snow then
default.grow_new_snowy_pine_tree(pos)
else
default.grow_new_pine_tree(pos)
end
end)
end
register_sapling_growth("acacia_sapling", default.grow_new_acacia_tree)
register_sapling_growth("aspen_sapling", default.grow_new_aspen_tree)
register_sapling_growth("bush_sapling", default.grow_bush)
register_sapling_growth("blueberry_bush_sapling", default.grow_blueberry_bush)
register_sapling_growth("acacia_bush_sapling", default.grow_acacia_bush)
register_sapling_growth("pine_bush_sapling", default.grow_pine_bush)
register_sapling_growth("emergent_jungle_sapling", default.grow_new_emergent_jungle_tree)
-- Backwards compatibility for saplings that used to use ABMs; does not need to include newer saplings.
minetest.register_lbm({
name = "default:convert_saplings_to_node_timer",
nodenames = {"default:sapling", "default:junglesapling",
"default:pine_sapling", "default:acacia_sapling",
"default:aspen_sapling"},
action = function(pos)
minetest.get_node_timer(pos):start(math.random(300, 1500))
end
})

View File

@ -19,6 +19,10 @@ local function replace_old_owner_information(pos)
end
end
local function is_doors_upper_node(pos)
return minetest.get_node(pos).name == "doors:hidden"
end
-- returns an object to a door object or nil
function doors.get(pos)
local node_name = minetest.get_node(pos).name
@ -388,8 +392,11 @@ function doors.register(name, def)
end
end
def.after_dig_node = function(pos, node, meta, digger)
minetest.remove_node({x = pos.x, y = pos.y + 1, z = pos.z})
minetest.check_for_falling({x = pos.x, y = pos.y + 1, z = pos.z})
local above = pos:offset(0, 1, 0)
if is_doors_upper_node(above) then
minetest.remove_node(above)
end
minetest.check_for_falling(above)
end
def.on_rotate = function(pos, node, user, mode, new_param2)
return false
@ -427,14 +434,20 @@ function doors.register(name, def)
else
def.on_blast = function(pos, intensity)
minetest.remove_node(pos)
local above = pos:offset(0, 1, 0)
-- hidden node doesn't get blasted away.
minetest.remove_node({x = pos.x, y = pos.y + 1, z = pos.z})
if is_doors_upper_node(above) then
minetest.remove_node(above)
end
return {name}
end
end
def.on_destruct = function(pos)
minetest.remove_node({x = pos.x, y = pos.y + 1, z = pos.z})
local above = pos:offset(0, 1, 0)
if is_doors_upper_node(above) then
minetest.remove_node(above)
end
end
def.drawtype = "mesh"

View File

@ -1,18 +1,18 @@
# textdomain: doors
Hidden Door Segment=Захована Частина Дверей
Hidden Door Segment=Прихована частина дверей
Owned by @1=Власник: @1
You do not own this locked door.=Ви не власник цих заблокованих дверей.
a locked door=заблоковані двері
You do not own this locked door.=Ви — не власник цих замкнених дверей.
a locked door=замкнені двері
Wooden Door=Дерев'яні двері
Steel Door=Сталеві Двері
Steel Door=Сталеві двері
Glass Door=Скляні двері
Obsidian Glass Door=Двері З Обсидіанового Скла
You do not own this trapdoor.=Ви не є власником цього люка.
a locked trapdoor=заблокований люк
Wooden Trapdoor=Дерев'яний Люк
Steel Trapdoor=Сталевий Люк
Apple Wood Fence Gate=Яблунева Дерев'яна Хвіртка
Acacia Wood Fence Gate=Дерев'яна Хвіртка З Акації
Jungle Wood Fence Gate=Дерев'яна Хвіртка З Тропічного Дерева
Pine Wood Fence Gate=Соснова Дерев'яна Хвіртка
Aspen Wood Fence Gate=Осикова Дерев'яна Хвіртка
Obsidian Glass Door=Двері з обсидіанового скла
You do not own this trapdoor.=Ви не власник цього люка.
a locked trapdoor=замкнений люк
Wooden Trapdoor=Дерев'яний люк
Steel Trapdoor=Сталевий люк
Apple Wood Fence Gate=Яблунева хвіртка
Acacia Wood Fence Gate=Акацієва хвіртка
Jungle Wood Fence Gate=Хвіртка з тропічного дерева
Pine Wood Fence Gate=Соснова хвіртка
Aspen Wood Fence Gate=Осикова хвіртка

View File

@ -1,16 +1,16 @@
# textdomain: dye
White Dye=Біла Фарба
Grey Dye=Сіра Фарба
Dark Grey Dye=Темно-Сіра фарба
Black Dye=Чорна Фарба
Violet Dye=Фіолетова Фарба
Blue Dye=Синя Фарба
Cyan Dye=Синьо-Зелена Фарба
Dark Green Dye=Темно-Зелена Фарба
Green Dye=Зелена Фарба
Yellow Dye=Жовта Фарба
Brown Dye=Коричнева Фарба
Orange Dye=Помаранчева Фарба
Red Dye=Червона Фарба
Magenta Dye=Пурпурна Фарба
Pink Dye=Рожева Фарба
White Dye=Білий барвник
Grey Dye=Сірий барвник
Dark Grey Dye=Темно-сірий барвник
Black Dye=Чорний барвник
Violet Dye=Фіолетовий барвник
Blue Dye=Синій барвник
Cyan Dye=Синьо-зелений барвник
Dark Green Dye=Темно-зелений барвник
Green Dye=Зелений барвник
Yellow Dye=Жовтий барвник
Brown Dye=Коричневий барвник
Orange Dye=Помаранчевий барвник
Red Dye=Червоний барвник
Magenta Dye=Пурпурний барвник
Pink Dye=Рожевий барвник

View File

@ -1,28 +1,28 @@
# textdomain: farming
Hoe=Мотига
Hoe=Мотика
Seed=Насіння
Wooden Hoe=Дерев'яна Мотига
Stone Hoe=Кам'яна Мотига
Steel Hoe=Сталева Мотига
Bronze Hoe=Бронзова Мотига
Mese Hoe=Месе Мотига
Diamond Hoe=Алмазна Мотига
Wheat Seed=Насіння Пшениці
Wooden Hoe=Дерев'яна мотика
Stone Hoe=Кам'яна мотика
Steel Hoe=Сталева мотика
Bronze Hoe=Бронзова мотика
Mese Hoe=Месе-мотика
Diamond Hoe=Діамантова мотика
Wheat Seed=Насіння пшениці
Wheat=Пшениця
Flour=Мука
Flour=Борошно
Bread=Хліб
Cotton Seed=Насіння Бавовнику
Cotton Seed=Насіння бавовнику
Cotton=Бавовна
String=Нитка
Soil=Ґрунт
Wet Soil=Вологий Ґрунт
Savanna Soil=Саванновий Ґрунт
Wet Savanna Soil=Вологий Саванновий Ґрунт
Desert Sand Soil=Пустинний Піщаний Ґрунт
Wet Desert Sand Soil=Вологий Пустельний Піщаний Ґрунт
Wet Soil=Вологий ґрунт
Savanna Soil=Саванний ґрунт
Wet Savanna Soil=Вологий саванний ґрунт
Desert Sand Soil=Пустельний піщаний ґрунт
Wet Desert Sand Soil=Вологий пустельний піщаний ґрунт
Straw=Солома
Straw Stair=Солом'яна Сходинка
Inner Straw Stair=Кутова Солом'яна Сходинка (Внутрішній Кут)
Outer Straw Stair=Кутова Солом'яна Сходинка (Зовнішній Кут)
Straw Slab=Солом'яна Плита
Wild Cotton=Дикий Бавовник
Straw Stair=Солом'яна сходинка
Inner Straw Stair=Кутова солом'яна сходинка (внутрішній кут)
Outer Straw Stair=Кутова солом'яна сходинка (зовнішній кут)
Straw Slab=Солом'яна плита
Wild Cotton=Дикий бавовник

View File

@ -6,5 +6,4 @@ Flint and Steel=Briquet à silex en acier
##### not used anymore #####
# textdomain: fire
Permanent Flame=Flamme permanente

View File

@ -6,5 +6,4 @@ Flint and Steel=Acciarino
##### not used anymore #####
# textdomain: fire
Permanent Flame=Fiamma permanente

View File

@ -6,5 +6,4 @@ Flint and Steel=Pemetik Api
##### not used anymore #####
# textdomain: fire
Permanent Flame=Api Abadi

View File

@ -6,5 +6,4 @@ Flint and Steel=Огниво
##### not used anymore #####
# textdomain: fire
Permanent Flame=Вечный Огонь

View File

@ -1,4 +1,4 @@
# textdomain: fire
Fire=Вогонь
Permanent Fire=Вічний Вогонь
Flint and Steel=Кремінь і Сталь
Permanent Fire=Вічний вогонь
Flint and Steel=Кресало

View File

@ -1,5 +1,5 @@
# textdomain: fireflies
Firefly=Світлячок
Hidden Firefly=Світлячок, що причаївся
Bug Net=Сачок Для Ловлі Комах
Firefly in a Bottle=Світлячок у Пляшці
Firefly=Світляк
Hidden Firefly=Світляк, що причаївся
Bug Net=Сачок
Firefly in a Bottle=Світляк у пляшці

View File

@ -1,12 +1,12 @@
# textdomain: flowers
Red Rose=Червона Троянда
Orange Tulip=Помаранчевий Тюльпан
Yellow Dandelion=Жовта Кульбабка
Green Chrysanthemum=Зелена Хризантема
Blue Geranium=Синій Геран
Red Rose=Червона троянда
Orange Tulip=Помаранчевий тюльпан
Yellow Dandelion=Жовта кульбаба
Green Chrysanthemum=Зелена хризантема
Blue Geranium=Синій журавець
Viola=Фіалка
White Dandelion=Біла Кульбабка
Black Tulip=Чорний Тюльпан
Red Mushroom=Мухомор
Brown Mushroom=Коричневий Гриб
Waterlily=Водяна Лілія
White Dandelion=Біла кульбаба
Black Tulip=Чорний тюльпан
Red Mushroom=Червоний гриб
Brown Mushroom=Коричневий гриб
Waterlily=Латаття

View File

@ -1,4 +1,4 @@
# textdomain: game_commands
Kill yourself to respawn=Bunuh diri untuk bangkit kembali
No static_spawnpoint defined=Tiada static_spawnpoint (titik bangkit statis) yang diatur
No static_spawnpoint defined=Tidak ada static_spawnpoint (titik bangkit statis) yang diatur
You need to be online to be killed!=Anda harus daring untuk dibunuh!

View File

@ -1,4 +1,4 @@
# textdomain: game_commands
Kill yourself to respawn=Вбийте себе щоб відродися
No static_spawnpoint defined=static_spawnpoint не визначений
You need to be online to be killed!=Ви повинні бути онлайн, щоб вбити себе!
Kill yourself to respawn=Вбити себе, щоб відродитися
No static_spawnpoint defined=Немає визначеного static_spawnpoint
You need to be online to be killed!=Ви повинні бути онлайн, щоби Вас було вбито!

View File

@ -1,4 +1,4 @@
# textdomain: keys
Key=Ключ
Key to @1's @2=Ключ до @2 від @1
Skeleton Key=Ключ Кістяка
Key to @1's @2=Ключ з биркою "@2, власником якого(-ої/-их) є @1"
Skeleton Key=Заготовка ключа

View File

@ -1,3 +1,3 @@
# textdomain: map
Mapping Kit=Kit de carthographie
Use with 'Minimap' key=Utiliser avec le bouton « Minimap »
Use with 'Minimap' key=Utiliser avec le bouton « Mini-carte »

View File

@ -1,3 +1,3 @@
# textdomain: map
Mapping Kit=Alat Pemetaan
Use with 'Minimap' key=Pakai dengan tombol 'Peta Mini'
Use with 'Minimap' key=Gunakan dengan tombol 'Peta Mini'

View File

@ -1,3 +1,3 @@
# textdomain: map
Mapping Kit=Картографічний Комплект
Use with 'Minimap' key=Використовуйте за допомогою ключа 'Minimap'
Mapping Kit=Картографічний набір
Use with 'Minimap' key=Використовується клавішею 'Мінімапа'

View File

@ -34,7 +34,7 @@ G=G
Any item belonging to the group(s): @1=Barang apa pun yang termasuk grup: @1
Unknown Item=Barang Tak Diketahui
Fuel=Bahan Bakar
Usage @1 of @2=Pemakaian @1 dari @2
Usage @1 of @2=Penggunaan @1 dari @2
Recipe @1 of @2=Resep @1 dari @2
Previous recipe=Resep sebelumnya
Next recipe=Resep selanjutnya
@ -45,9 +45,9 @@ Search=Cari
Reset=Atur ulang
Previous page=Halaman sebelumnya
Next page=Halaman selanjutnya
No items to show.=Tiada barang untuk ditampilkan.
No usages.=Tiada pemakaian.
No items to show.=Tidak ada barang untuk ditampilkan.
No usages.=Tidak ada penggunaan.
Click again to show recipes.=Klik lagi untuk menampilkan resep.
No recipes.=Tiada resep.
Click again to show usages.=Klik lagi untuk menampilkan pemakaian.
No recipes.=Tidak ada resep.
Click again to show usages.=Klik lagi untuk menampilkan penggunaan.
Recipes=Resep

View File

@ -1,10 +1,10 @@
# textdomain: mtg_craftguide
Any coal=Будь-яке вугілля
Any sand=Будь-якій пісок
Any sand=Будь-який пісок
Any wool=Будь-яка вовна
Any stick=Будь-яка паличка
Any stick=Будь-яка палиця
Any vessel=Будь-який посуд
Any wood planks=Будь-які дерев'яні палички
Any wood planks=Будь-які дошки
Any kind of stone block=Будь-який кам'яний блок
Any red flower=Будь-яка червона квітка
Any blue flower=Будь-яка синя квітка
@ -14,40 +14,40 @@ Any white flower=Будь-яка біла квітка
Any orange flower=Будь-яка помаранчева квітка
Any violet flower=Будь-яка фіолетова квітка
Any yellow flower=Будь-яка жовта квітка
Any red dye=Будь-яка червона фарба
Any blue dye=Будь-яка синя фарба
Any cyan dye=Будь-яка синьо-зелена фарба
Any grey dye=Будь-яка сіра фарба
Any pink dye=Будь-яка рожева фарба
Any black dye=Будь-яка чорна фарба
Any brown dye=Будь-яка коричнева фарба
Any green dye=Будь-яка зелена фарба
Any white dye=Будь-яка біла фарба
Any orange dye=Будь-яка помаранчева фарба
Any violet dye=Будь-яка фіолетова фарба
Any yellow dye=Будь-яка жовта фарба
Any magenta dye=Будь-який пурпурна фарба
Any dark grey dye=Будь-яка темно-сіра фарба
Any dark green dye=Будь-яка темно-зелена фарба
Any red dye=Будь-який червоний барвник
Any blue dye=Будь-який синій барвник
Any cyan dye=Будь-який синьо-зелений барвник
Any grey dye=Будь-який сірий барвник
Any pink dye=Будь-який рожевий барвник
Any black dye=Будь-який чорний барвник
Any brown dye=Будь-який коричневий барвник
Any green dye=Будь-який зелений барвник
Any white dye=Будь-який білий барвник
Any orange dye=Будь-який помаранчевий барвник
Any violet dye=Будь-який фіолетовий барвник
Any yellow dye=Будь-який жовтий барвник
Any magenta dye=Будь-який пурпурний барвник
Any dark grey dye=Будь-який темно-сірий барвник
Any dark green dye=Будь-який темно-зелений барвник
# Label for group ingredients
G=
G=Г
Any item belonging to the group(s): @1=Будь-який предмет з груп(и): @1
Unknown Item=Невідомий предмет
Fuel=Паливо
Usage @1 of @2=Використано @1 з @2
Recipe @1 of @2=Рецепт @1 з @2
Usage @1 of @2=Матеріал: @1 з @2
Recipe @1 of @2=Рецепт: @1 з @2
Previous recipe=Попередній рецепт
Next recipe=Наступний рецепт
Recipe is too big to be displayed.=Рецепт занадто великий для показу.
Recipe is too big to be displayed.=Рецепт завеликий для показу.
Shapeless=Безформний
Cooking time: @1=Час виготовлення: @1
Search=Пошук
Reset=Скинути
Previous page=Попередня сторінка
Next page=Наступна сторінка
No items to show.=Немає елементів для показу.
No items to show.=Немає результатів.
No usages.=Не використовується.
Click again to show recipes.=Натисніть ще раз, щоб показати рецепти.
Click again to show recipes.=Натисніть ще раз для рецептів.
No recipes.=Немає рецептів.
Click again to show usages.=Натисніть ще раз, щоб показати використання.
Click again to show usages.=Натисніть ще раз для використань.
Recipes=Рецепти

View File

@ -1,3 +1,3 @@
# textdomain: screwdriver
Screwdriver=Викрутка
(left-click rotates face, right-click rotates axis)=(клік лівою кнопкою миші повертає край, клік правою кнопкою миші - вісь)
(left-click rotates face, right-click rotates axis)=(ЛКМ повертає грань, ПКМ — вісь)

View File

@ -1,5 +1,5 @@
# textdomain: sethome
This command can only be executed in-game!=
This command can only be executed in-game!=Cette commande peut seulement être exécutée en jeu !
Can use /sethome and /home=Peut utiliser /sethome et /home
Teleport you to your home point=Vous téléporter à votre domicile
Teleported to home!=Téléporté à votre domicile !

View File

@ -1,6 +1,6 @@
# textdomain: sethome
This command can only be executed in-game!=
Can use /sethome and /home=Boleh pakai /sethome dan /home
This command can only be executed in-game!=Perintah ini hanya bisa dijalankan dalam permainan!
Can use /sethome and /home=Boleh gunakan /sethome dan /home
Teleport you to your home point=Teleportasi ke rumah Anda
Teleported to home!=Teleportasi ke rumah!
Set a home using /sethome=Atur letak rumah dengan /sethome

View File

@ -1,9 +1,9 @@
# textdomain: sethome
This command can only be executed in-game!=
This command can only be executed in-game!=Ця команда може бути виконана тільки у грі!
Can use /sethome and /home=Можливість використання /sethome та /home
Teleport you to your home point=Ви телепортуєтесь у свою домашню точку
Teleported to home!=Ви телепортувались додому!
Teleport you to your home point=Телепортуватися до домашньої точки
Teleported to home!=Телепортовано додому!
Set a home using /sethome=Встановіть домашню точку, використовуючи /sethome
Set your home point=Встановіть домашню точку
Home set!=Домашня точка встановлена!
Player not found!=Гравець не визначений!
Set your home point=Встановити домашню точку
Home set!=Домашню точку встановлено!
Player not found!=Гравця не знайдено!

View File

@ -1,2 +1,2 @@
# textdomain: sfinv
Crafting=Крафтинг
Crafting=Майстрування

View File

@ -63,16 +63,19 @@ local function warn_if_exists(nodename)
end
end
-- get node settings to use for stairs
local function get_node_vars(nodename)
local def = minetest.registered_nodes[nodename]
if def then
return def.light_source, def.use_texture_alpha, def.sunlight_propagates
-- Set backface culling and world-aligned textures
local function set_textures(images, worldaligntex)
local stair_images = {}
for i, image in ipairs(images) do
stair_images[i] = type(image) == "string" and {name = image} or table.copy(image)
if stair_images[i].backface_culling == nil then
stair_images[i].backface_culling = true
end
if worldaligntex and stair_images[i].align_style == nil then
stair_images[i].align_style = "world"
end
end
return nil, nil, nil
return stair_images
end
-- Register stair
@ -80,29 +83,8 @@ end
function stairs.register_stair(subname, recipeitem, groups, images, description,
sounds, worldaligntex)
local light_source, texture_alpha, sunlight = get_node_vars(recipeitem)
-- Set backface culling and world-aligned textures
local stair_images = {}
for i, image in ipairs(images) do
if type(image) == "string" then
stair_images[i] = {
name = image,
backface_culling = true,
}
if worldaligntex then
stair_images[i].align_style = "world"
end
else
stair_images[i] = table.copy(image)
if stair_images[i].backface_culling == nil then
stair_images[i].backface_culling = true
end
if worldaligntex and stair_images[i].align_style == nil then
stair_images[i].align_style = "world"
end
end
end
local def = minetest.registered_nodes[recipeitem] or {}
local stair_images = set_textures(images, worldaligntex)
local new_groups = table.copy(groups)
new_groups.stair = 1
warn_if_exists("stairs:stair_" .. subname)
@ -110,14 +92,14 @@ function stairs.register_stair(subname, recipeitem, groups, images, description,
description = description,
drawtype = "nodebox",
tiles = stair_images,
use_texture_alpha = texture_alpha,
sunlight_propagates = sunlight,
light_source = light_source,
use_texture_alpha = def.use_texture_alpha,
sunlight_propagates = def.sunlight_propagates,
light_source = def.light_source,
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = false,
groups = new_groups,
sounds = sounds,
sounds = sounds or def.sounds,
node_box = {
type = "fixed",
fixed = {
@ -184,25 +166,8 @@ end
function stairs.register_slab(subname, recipeitem, groups, images, description,
sounds, worldaligntex)
local light_source, texture_alpha, sunlight = get_node_vars(recipeitem)
-- Set world-aligned textures
local slab_images = {}
for i, image in ipairs(images) do
if type(image) == "string" then
slab_images[i] = {
name = image,
}
if worldaligntex then
slab_images[i].align_style = "world"
end
else
slab_images[i] = table.copy(image)
if worldaligntex and image.align_style == nil then
slab_images[i].align_style = "world"
end
end
end
local def = minetest.registered_nodes[recipeitem] or {}
local slab_images = set_textures(images, worldaligntex)
local new_groups = table.copy(groups)
new_groups.slab = 1
warn_if_exists("stairs:slab_" .. subname)
@ -210,14 +175,14 @@ function stairs.register_slab(subname, recipeitem, groups, images, description,
description = description,
drawtype = "nodebox",
tiles = slab_images,
use_texture_alpha = texture_alpha,
sunlight_propagates = sunlight,
light_source = light_source,
use_texture_alpha = def.use_texture_alpha,
sunlight_propagates = def.sunlight_propagates,
light_source = def.light_source,
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = false,
groups = new_groups,
sounds = sounds,
sounds = sounds or def.sounds,
node_box = {
type = "fixed",
fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5},
@ -324,29 +289,8 @@ end
function stairs.register_stair_inner(subname, recipeitem, groups, images,
description, sounds, worldaligntex, full_description)
local light_source, texture_alpha, sunlight = get_node_vars(recipeitem)
-- Set backface culling and world-aligned textures
local stair_images = {}
for i, image in ipairs(images) do
if type(image) == "string" then
stair_images[i] = {
name = image,
backface_culling = true,
}
if worldaligntex then
stair_images[i].align_style = "world"
end
else
stair_images[i] = table.copy(image)
if stair_images[i].backface_culling == nil then
stair_images[i].backface_culling = true
end
if worldaligntex and stair_images[i].align_style == nil then
stair_images[i].align_style = "world"
end
end
end
local def = minetest.registered_nodes[recipeitem] or {}
local stair_images = set_textures(images, worldaligntex)
local new_groups = table.copy(groups)
new_groups.stair = 1
if full_description then
@ -359,14 +303,14 @@ function stairs.register_stair_inner(subname, recipeitem, groups, images,
description = description,
drawtype = "nodebox",
tiles = stair_images,
use_texture_alpha = texture_alpha,
sunlight_propagates = sunlight,
light_source = light_source,
use_texture_alpha = def.use_texture_alpha,
sunlight_propagates = def.sunlight_propagates,
light_source = def.light_source,
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = false,
groups = new_groups,
sounds = sounds,
sounds = sounds or def.sounds,
node_box = {
type = "fixed",
fixed = {
@ -416,29 +360,8 @@ end
function stairs.register_stair_outer(subname, recipeitem, groups, images,
description, sounds, worldaligntex, full_description)
local light_source, texture_alpha, sunlight = get_node_vars(recipeitem)
-- Set backface culling and world-aligned textures
local stair_images = {}
for i, image in ipairs(images) do
if type(image) == "string" then
stair_images[i] = {
name = image,
backface_culling = true,
}
if worldaligntex then
stair_images[i].align_style = "world"
end
else
stair_images[i] = table.copy(image)
if stair_images[i].backface_culling == nil then
stair_images[i].backface_culling = true
end
if worldaligntex and stair_images[i].align_style == nil then
stair_images[i].align_style = "world"
end
end
end
local def = minetest.registered_nodes[recipeitem] or {}
local stair_images = set_textures(images, worldaligntex)
local new_groups = table.copy(groups)
new_groups.stair = 1
if full_description then
@ -451,14 +374,14 @@ function stairs.register_stair_outer(subname, recipeitem, groups, images,
description = description,
drawtype = "nodebox",
tiles = stair_images,
use_texture_alpha = texture_alpha,
sunlight_propagates = sunlight,
light_source = light_source,
use_texture_alpha = def.use_texture_alpha,
sunlight_propagates = def.sunlight_propagates,
light_source = def.light_source,
paramtype = "light",
paramtype2 = "facedir",
is_ground_content = false,
groups = new_groups,
sounds = sounds,
sounds = sounds or def.sounds,
node_box = {
type = "fixed",
fixed = {

View File

@ -1,145 +1,145 @@
# textdomain: stairs
Glass Stair=Скляна Сходинка
Glass Slab=Скляна Плита
Inner Glass Stair=Кутова Скляна Сходинка (Внутрішній Кут)
Outer Glass Stair=Кутова Скляна Сходинка (Зовнішній Кут)
Obsidian Glass Stair=Скляна Сходинка З Обсидіану
Obsidian Glass Slab=Скляна Плита З Обсидіану
Inner Obsidian Glass Stair=Кутова Скляна Сходинка З Обсидіану (Внутрішній Кут)
Outer Obsidian Glass Stair=Кутова Скляна Сходинка З Обсидіану (Зовнішній Кут)
Wooden Stair=Яблунева Дерев'яна Сходинка
Inner Wooden Stair=Кутова Яблунева Дерев'яна Сходинка (Внутрішній Кут)
Outer Wooden Stair=Кутова Яблунева Дерев'яна Сходинка (Внутрішній Кут)
Wooden Slab=Яблунева Дерев'яна Плита
Jungle Wood Stair=Дерев'яна Сходинка З Тропічного Дерева
Inner Jungle Wood Stair=Кутова Дерев'яна Сходинка З Тропічного Дерева (Внутрішній Кут)
Outer Jungle Wood Stair=Кутова Дерев'яна Сходинка З Тропічного Дерева (Зовнішній Кут)
Jungle Wood Slab=Дерев'яна Плита З Тропічного Дерева
Pine Wood Stair=Дерев'яна Сходинка З Сосни
Inner Pine Wood Stair=Кутова Дерев'яна Сходинка З Сосни (Внутрішній Кут)
Outer Pine Wood Stair=Кутова Дерев'яна Сходинка З Сосни (Зовнішній Кут)
Pine Wood Slab=Дерев'яна Плита З Сосни
Acacia Wood Stair=Дерев'яна Сходинка З Акації
Inner Acacia Wood Stair=Кутова Дерев'яна Сходинка З Акації (Внутрішній Кут)
Outer Acacia Wood Stair=Кутова Дерев'яна Сходинка З Акації (Зовнішній Кут)
Acacia Wood Slab=Дерев'яна Плита З Акації
Aspen Wood Stair=Дерев'яна Сходинка З Осики
Inner Aspen Wood Stair=Кутова Дерев'яна Сходинка З Осики (Внутрішній Кут)
Outer Aspen Wood Stair=Кутова Дерев'яна Сходинка З Осики (Зовнішній Кут)
Aspen Wood Slab=Дерев'яна Плита З Осики
Stone Stair=Кам'яна Сходинка
Inner Stone Stair=Кутова Кам'яна Сходинка (Внутрішній Кут)
Outer Stone Stair=Кутова Кам'яна Сходинка (Зовнішній Кут)
Stone Slab=Кам'яна Плита
Cobblestone Stair=Сходинка З Кругляку
Inner Cobblestone Stair=Кутова Сходинка З Кругляку (Внутрішній Кут)
Outer Cobblestone Stair=Кутова Сходинка З Кругляку (Зовнішній Кут)
Cobblestone Slab=Плита З Кругляку
Mossy Cobblestone Stair=Мохова Сходинка З Кругляку
Inner Mossy Cobblestone Stair=Кутова Мохова Сходинка З Кругляку (Внутрішній Кут)
Outer Mossy Cobblestone Stair=Кутова Мохова Сходинка З Кругляку (Зовнішній Кут)
Mossy Cobblestone Slab=Мохова Плита З Кругляку
Stone Brick Stair=Сходинка З Кам'яної Цегли
Inner Stone Brick Stair=Кутова Сходинка З Кам'яної Цегли (Внутрішній Кут)
Outer Stone Brick Stair=Кутова Сходинка З Кам'яної Цегли (Зовнішній Кут)
Stone Brick Slab=Плита З Кам'яної Цегли
Stone Block Stair=Сходинка З Кам'яного Блоку
Inner Stone Block Stair=Кутова Сходинка З Кам'яного Блоку (Внутрішній Кут)
Outer Stone Block Stair=Кутова Сходинка З Кам'яного Блоку (Зовнішній Кут)
Stone Block Slab=Плита З Кам'яного Блоку
Desert Stone Stair=Сходинка З Пустельного Каменю
Inner Desert Stone Stair=Кутова Сходинка З Пустельного Каменю (Внутрішній Кут)
Outer Desert Stone Stair=Кутова Сходинка З Пустельного Каменю (Зовнішній Кут)
Desert Stone Slab=Плита З Пустельного Каменю
Desert Cobblestone Stair=Сходинка З Пустельного Кругляку
Inner Desert Cobblestone Stair=Кутова Сходинка З Пустельного Кругляку (Внутрішній Кут)
Outer Desert Cobblestone Stair=Кутова Сходинка З Пустельного Кругляку (Зовнішній Кут)
Desert Cobblestone Slab=Плита З Пустельного Каменю
Desert Stone Brick Stair=Сходинка З Цегли Із Пустельного Каменю
Inner Desert Stone Brick Stair=Кутова Сходинка З Цегли Із Пустельного Каменю (Внутрішній Кут)
Outer Desert Stone Brick Stair=Кутова Сходинка З Цегли Із Пустельного Каменю (Зовнішній Кут)
Desert Stone Brick Slab=Плита З Цегли Із Пустельного Каменю
Desert Stone Block Stair=Сходинка З Пустельного Кам'яного Блоку
Inner Desert Stone Block Stair=Кутова Сходинка З Пустельного Кам'яного Блоку (Внутрішній Кут)
Outer Desert Stone Block Stair=Кутова Сходинка З Пустельного Кам'яного Блоку (Зовнішній Кут)
Desert Stone Block Slab=Плита З Пустельного Кам'яного Блоку
Sandstone Stair=Сходинка З Піщанику
Inner Sandstone Stair=Кутова Сходинка З Піщанику (Внутрішній Кут)
Outer Sandstone Stair=Кутова Сходинка З Піщанику (Зовнішній Кут)
Sandstone Slab=Плита З Піщанику
Sandstone Brick Stair=Сходинка З Цегли Із Піщанику
Inner Sandstone Brick Stair=Кутова Сходинка З Цегли Із Піщанику (Внутрішній Кут)
Outer Sandstone Brick Stair=Кутова Сходинка З Цегли Із Піщанику (Зовнішній Кут)
Sandstone Brick Slab=Плита З Цегли Із Піщанику
Sandstone Block Stair=Сходинка З Блоку Із Піщанику
Inner Sandstone Block Stair=Кутова Сходинка З Блоку Із Піщанику (Внутрішній Кут)
Outer Sandstone Block Stair=Кутова Сходинка З Блоку Із Піщанику (Зовнішній Кут)
Sandstone Block Slab=Плита З Блоку Із Піщанику
Desert Sandstone Stair=Сходинка З Пустельного Піщанику
Inner Desert Sandstone Stair=Кутова Сходинка З Пустельного Піщанику (Внутрішній Кут)
Outer Desert Sandstone Stair=Кутова Сходинка З Пустельного Піщанику (Зовнішній Кут)
Desert Sandstone Slab=Плита З Пустельного Піщанику
Desert Sandstone Brick Stair=Сходинка З Цегли Із Пустельного Піщанику
Inner Desert Sandstone Brick Stair=Кутова Сходинка З Цегли Із Пустельного Піщанику (Внутрішній Кут)
Outer Desert Sandstone Brick Stair=Кутова Сходинка З Цегли Із Пустельного Піщанику (Зовнішній Кут)
Desert Sandstone Brick Slab=Плита З Цегли Із Пустельного Піщанику
Desert Sandstone Block Stair=Сходинка З Блоку Із Пустельного Піщанику
Inner Desert Sandstone Block Stair=Кутова Сходинка З Блоку Із Пустельного Піщанику (Внутрішній Кут)
Outer Desert Sandstone Block Stair=Кутова Сходинка З Блоку Із Пустельного Піщанику (Зовнішній Кут)
Desert Sandstone Block Slab=Плита З Блоку Із Пустельного Піщанику
Silver Sandstone Stair=Сходинка З Срібного Піщанику
Inner Silver Sandstone Stair=Кутова Сходинка З Срібного Піщанику (Внутрішній Кут)
Outer Silver Sandstone Stair=Кутова Сходинка З Срібного Піщанику (Зовнішній Кут)
Silver Sandstone Slab=Плита З Срібного Піщанику
Silver Sandstone Brick Stair=Сходинка З Цегли Із Срібного Піщанику
Inner Silver Sandstone Brick Stair=Кутова Сходинка З Цегли Із Срібного Піщанику (Внутрішній Кут)
Outer Silver Sandstone Brick Stair=Кутова Сходинка З Цегли Із Срібного Піщанику (Зовнішній Кут)
Silver Sandstone Brick Slab=Плита З Цегли Із Срібного Піщанику
Silver Sandstone Block Stair=Сходинка З Блоку Із Срібного Піщанику
Inner Silver Sandstone Block Stair=Кутова Сходинка З Блоку Із Срібного Піщанику (Внутрішній Кут)
Outer Silver Sandstone Block Stair=Кутова Сходинка З Блоку Із Срібного Піщанику (Зовнішній Кут)
Silver Sandstone Block Slab=Плита З Блоку Із Срібного Піщанику
Obsidian Stair=Обсидіанова Сходинка
Inner Obsidian Stair=Кутова Обсидіанова Сходинка (Внутрішній Кут)
Outer Obsidian Stair=Кутова Обсидіанова Сходинка (Зовнішній Кут)
Obsidian Slab=Обсидіанова Плита
Obsidian Brick Stair=Сходинка З Обсидіанової Цегли
Inner Obsidian Brick Stair=Кутова Сходинка З Обсидіанової Цегли (Внутрішній Кут)
Outer Obsidian Brick Stair=Кутова Сходинка З Обсидіанової Цегли (Зовнішній Кут)
Obsidian Brick Slab=Плита З Обсидіанової Цегли
Obsidian Block Stair=Сходинка З Обсидіанового Блоку
Inner Obsidian Block Stair=Кутова Сходинка З Обсидіанового Блоку (Внутрішній Кут)
Outer Obsidian Block Stair=Кутова Сходинка З Обсидіанового Блоку (Зовнішній Кут)
Obsidian Block Slab=Плита З Обсидіанового Блоку
Brick Stair=Сходинка З Цегли
Inner Brick Stair=Кутова Сходинка З Цегли (Внутрішній Кут)
Outer Brick Stair=Кутова Сходинка З Цегли (Зовнішній Кут)
Brick Slab=Плита З Цегли
Steel Block Stair=Сходинка Із Сталевого Блоку
Inner Steel Block Stair=Кутова Сходинка Із Сталевого Блоку (Внутрішній Кут)
Outer Steel Block Stair=Кутова Сходинка Із Сталевого Блоку (Зовнішній Кут)
Steel Block Slab=Плита Із Сталевого Блоку
Tin Block Stair=Сходинка З Олов'яного Блоку
Inner Tin Block Stair=Кутова Сходинка З Олов'яного Блоку (Внутрішній Кут)
Outer Tin Block Stair=Кутова Сходинка З Олов'яного Блоку (Зовнішній Кут)
Tin Block Slab=Плита З Олов'яного Блоку
Copper Block Stair=Сходинка З Мідного Блоку
Inner Copper Block Stair=Кутова Сходинка З Мідного Блоку (Внутрішній Кут)
Outer Copper Block Stair=Кутова Сходинка З Мідного Блоку (Зовнішній Кут)
Copper Block Slab=Плита З Мідного Блоку
Bronze Block Stair=Сходинка З Бронзового Блоку
Inner Bronze Block Stair=Кутова Сходинка З Бронзового Блоку (Внутрішній Кут)
Outer Bronze Block Stair=Кутова Сходинка З Бронзового Блоку (Зовнішній Кут)
Bronze Block Slab=Плита З Бронзового Блоку
Gold Block Stair=Сходинка З Золотого Блоку
Inner Gold Block Stair=Сходинка З Золотого Блоку (Внутрішній Кут)
Outer Gold Block Stair=Сходинка З Золотого Блоку (Зовнішній Кут)
Gold Block Slab=Плита З Золотого Блоку
Ice Stair=Крижана Сходинка
Inner Ice Stair=Кутова Крижана Сходинка (Внутрішній Кут)
Outer Ice Stair=Кутова Крижана Сходинка (Зовнішній Кут)
Ice Slab=Крижана Плита
Snow Block Stair=Ступінь З Крижаного Блоку
Inner Snow Block Stair=Кутова Ступінь З Крижаного Блоку (Внутрішній Кут)
Outer Snow Block Stair=Кутова Ступінь З Крижаного Блоку (Зовнішній Кут)
Snow Block Slab=Плита З Крижаного Блоку
Glass Stair=Скляна сходинка
Glass Slab=Скляна плита
Inner Glass Stair=Кутова скляна сходинка (внутрішній кут)
Outer Glass Stair=Кутова скляна сходинка (зовнішній кут)
Obsidian Glass Stair=Сходинка з обсидіанового скла
Obsidian Glass Slab=Плита з обсидіанового скла
Inner Obsidian Glass Stair=Кутова сходинка з обсидіанового скла (внутрішній кут)
Outer Obsidian Glass Stair=Кутова сходинка з обсидіанового скла (зовнішній кут)
Wooden Stair=Дерев'яна сходинка
Inner Wooden Stair=Кутова дерев'яна сходинка (внутрішній кут)
Outer Wooden Stair=Кутова дерев'яна сходинка (зовнішній кут)
Wooden Slab=Дерев'яна плита
Jungle Wood Stair=Сходинка з тропічного дерева
Inner Jungle Wood Stair=Кутова сходинка з тропічного дерева (внутрішній кут)
Outer Jungle Wood Stair=Кутова сходинка з тропічного дерева (зовнішній кут)
Jungle Wood Slab=Плита з тропічного дерева
Pine Wood Stair=Соснова сходинка
Inner Pine Wood Stair=Кутова соснова сходинка (внутрішній кут)
Outer Pine Wood Stair=Кутова соснова сходинка (зовнішній кут)
Pine Wood Slab=Соснова плита
Acacia Wood Stair=Акацієва сходинка
Inner Acacia Wood Stair=Кутова акацієва сходинка (внутрішній кут)
Outer Acacia Wood Stair=Кутова акацієва сходинка (зовнішній кут)
Acacia Wood Slab=Акацієва плита
Aspen Wood Stair=Осикова сходинка
Inner Aspen Wood Stair=Кутова осикова сходинка (внутрішній кут)
Outer Aspen Wood Stair=Кутова осикова сходинка (зовнішній кут)
Aspen Wood Slab=Осикова плита
Stone Stair=Кам'яна сходинка
Inner Stone Stair=Кутова кам'яна сходинка (внутрішній кут)
Outer Stone Stair=Кутова кам'яна сходинка (зовнішній кут)
Stone Slab=Кам'яна плита
Cobblestone Stair=Круглякова сходинка
Inner Cobblestone Stair=Кутова круглякова сходинка (внутрішній кут)
Outer Cobblestone Stair=Кутова круглякова сходинка (зовнішній кут)
Cobblestone Slab=Круглякова плита
Mossy Cobblestone Stair=Сходинка з моховитого кругляку
Inner Mossy Cobblestone Stair=Кутова сходинка з моховитого кругляку (внутрішній кут)
Outer Mossy Cobblestone Stair=Кутова сходинка з моховитого кругляку (зовнішній кут)
Mossy Cobblestone Slab=Плита з моховитого кругляку
Stone Brick Stair=Сходинка з кам'яної цегли
Inner Stone Brick Stair=Кутова сходинка з кам'яної цегли (внутрішній кут)
Outer Stone Brick Stair=Кутова сходинка з кам'яної цегли (зовнішній кут)
Stone Brick Slab=Плита з кам'яної цегли
Stone Block Stair=Сходинка з блоку каменю
Inner Stone Block Stair=Кутова сходинка з блоку каменю (внутрішній кут)
Outer Stone Block Stair=Кутова сходинка з блоку каменю (зовнішній кут)
Stone Block Slab=Плита з блоку каменю
Desert Stone Stair=Сходинка з пустельного каменю
Inner Desert Stone Stair=Кутова сходинка з пустельного каменю (внутрішній кут)
Outer Desert Stone Stair=Кутова сходинка з пустельного каменю (зовнішній кут)
Desert Stone Slab=Плита з пустельного каменю
Desert Cobblestone Stair=Сходинка з пустельного кругляку
Inner Desert Cobblestone Stair=Кутова сходинка з пустельного кругляку (внутрішній кут)
Outer Desert Cobblestone Stair=Кутова сходинка з пустельного кругляку (зовнішній кут)
Desert Cobblestone Slab=Плита з пустельного кругляку
Desert Stone Brick Stair=Сходинка з цегли з пустельного каменю
Inner Desert Stone Brick Stair=Кутова сходинка з цегли з пустельного каменю (внутрішній кут)
Outer Desert Stone Brick Stair=Кутова сходинка з цегли з пустельного каменю (зовнішній кут)
Desert Stone Brick Slab=Плита з цегли з пустельного каменю
Desert Stone Block Stair=Сходинка з блоку пустельного каменю
Inner Desert Stone Block Stair=Кутова сходинка з блоку пустельного каменю (внутрішній кут)
Outer Desert Stone Block Stair=Кутова сходинка з блоку пустельного каменю (зовнішній кут)
Desert Stone Block Slab=Плита з блоку пустельного каменю
Sandstone Stair=Пісковикова сходинка
Inner Sandstone Stair=Кутова пісковикова сходинка (внутрішній кут)
Outer Sandstone Stair=Кутова пісковикова сходинка (зовнішній кут)
Sandstone Slab=Пісковикова плита
Sandstone Brick Stair=Сходинка з пісковикової цегли
Inner Sandstone Brick Stair=Кутова сходинка з пісковикової цегли (внутрішній кут)
Outer Sandstone Brick Stair=Кутова сходинка з пісковикової цегли (зовнішній кут)
Sandstone Brick Slab=Плита з пісковикової цегли
Sandstone Block Stair=Сходинка з блоку пісковику
Inner Sandstone Block Stair=Кутова сходинка з блоку пісковику (внутрішній кут)
Outer Sandstone Block Stair=Кутова сходинка з блоку пісковику (зовнішній кут)
Sandstone Block Slab=Плита з блоку пісковику
Desert Sandstone Stair=Сходинка з пустельного пісковику
Inner Desert Sandstone Stair=Кутова сходинка з пустельного пісковику (внутрішній кут)
Outer Desert Sandstone Stair=Кутова сходинка з пустельного пісковику (зовнішній кут)
Desert Sandstone Slab=Плита з пустельного пісковику
Desert Sandstone Brick Stair=Сходинка з цегли з пустельного пісковику
Inner Desert Sandstone Brick Stair=Кутова сходинка з цегли з пустельного пісковику (внутрішній кут)
Outer Desert Sandstone Brick Stair=Кутова сходинка з цегли з пустельного пісковику (зовнішній кут)
Desert Sandstone Brick Slab=Плита з цегли з пустельного пісковику
Desert Sandstone Block Stair=Сходинка з блоку пустельного пісковику
Inner Desert Sandstone Block Stair=Кутова сходинка з блоку пустельного пісковику (внутрішній кут)
Outer Desert Sandstone Block Stair=Кутова сходинка з блоку пустельного пісковику (зовнішній кут)
Desert Sandstone Block Slab=Плита з блоку пустельного пісковику
Silver Sandstone Stair=Сходинка зі срібного пісковику
Inner Silver Sandstone Stair=Кутова сходинка зі срібного пісковику (внутрішній кут)
Outer Silver Sandstone Stair=Кутова сходинка зі срібного пісковику (зовнішній кут)
Silver Sandstone Slab=Плита зі срібного пісковику
Silver Sandstone Brick Stair=Сходинка з цегли зі срібного пісковику
Inner Silver Sandstone Brick Stair=Кутова сходинка з цегли зі срібного пісковику (внутрішній кут)
Outer Silver Sandstone Brick Stair=Кутова сходинка з цегли зі срібного пісковику (зовнішній кут)
Silver Sandstone Brick Slab=Плита з цегли зі срібного пісковику
Silver Sandstone Block Stair=Сходинка з блоку срібного пісковику
Inner Silver Sandstone Block Stair=Кутова сходинка з блоку срібного пісковику (внутрішній кут)
Outer Silver Sandstone Block Stair=Кутова сходинка з блоку срібного пісковику (зовнішній кут)
Silver Sandstone Block Slab=Плита з блоку срібного пісковику
Obsidian Stair=Обсидіанова сходинка
Inner Obsidian Stair=Кутова обсидіанова сходинка (внутрішній кут)
Outer Obsidian Stair=Кутова обсидіанова сходинка (зовнішній кут)
Obsidian Slab=Обсидіанова плита
Obsidian Brick Stair=Сходинка з обсидіанової цегли
Inner Obsidian Brick Stair=Кутова сходинка з обсидіанової цегли (внутрішній кут)
Outer Obsidian Brick Stair=Кутова сходинка з обсидіанової цегли (зовнішній кут)
Obsidian Brick Slab=Плита з обсидіанової цегли
Obsidian Block Stair=Сходинка з блоку обсидіану
Inner Obsidian Block Stair=Кутова сходинка з блоку обсидіану (внутрішній кут)
Outer Obsidian Block Stair=Кутова сходинка з блоку обсидіану (зовнішній кут)
Obsidian Block Slab=Плита з блоку обсидіану
Brick Stair=Цегляна сходинка
Inner Brick Stair=Кутова цегляна сходинка (внутрішній кут)
Outer Brick Stair=Кутова цегляна сходинка (зовнішній кут)
Brick Slab=Цегляна плита
Steel Block Stair=Сходинка з блоку сталі
Inner Steel Block Stair=Кутова сходинка з блоку сталі (внутрішній кут)
Outer Steel Block Stair=Кутова сходинка з блоку сталі (зовнішній кут)
Steel Block Slab=Плита з блоку сталі
Tin Block Stair=Сходинка з блоку олова
Inner Tin Block Stair=Кутова сходинка з блоку олова (внутрішній кут)
Outer Tin Block Stair=Кутова сходинка з блоку олова (зовнішній кут)
Tin Block Slab=Плита з блоку олова
Copper Block Stair=Сходинка з блоку міді
Inner Copper Block Stair=Кутова сходинка з блоку міді (внутрішній кут)
Outer Copper Block Stair=Кутова сходинка з блоку міді (зовнішній кут)
Copper Block Slab=Плита з блоку міді
Bronze Block Stair=Сходинка з блоку бронзи
Inner Bronze Block Stair=Кутова сходинка з блоку бронзи (внутрішній кут)
Outer Bronze Block Stair=Кутова сходинка з блоку бронзи (зовнішній кут)
Bronze Block Slab=Плита з блоку бронзи
Gold Block Stair=Сходинка з блоку золота
Inner Gold Block Stair=Кутова сходинка з блоку золота (внутрішній кут)
Outer Gold Block Stair=Кутова сходинка з блоку золота (зовнішній кут)
Gold Block Slab=Плита з блоку золота
Ice Stair=Крижана сходинка
Inner Ice Stair=Кутова крижана сходинка (внутрішній кут)
Outer Ice Stair=Кутова крижана сходинка (зовнішній кут)
Ice Slab=Крижана плита
Snow Block Stair=Сходинка з блоку снігу
Inner Snow Block Stair=Кутова сходинка з блоку снігу (внутрішній кут)
Outer Snow Block Stair=Кутова сходинка з блоку снігу (зовнішній кут)
Snow Block Slab=Плита з блоку снігу

View File

@ -1,4 +1,4 @@
# textdomain: tnt
Gun Powder=Порох
TNT Stick=Тротилова Паличка
TNT Stick=Тротилова шашка
TNT=Тротил

View File

@ -81,6 +81,15 @@ local vessels_shelf_def = {
minetest.remove_node(pos)
return drops
end,
on_metadata_inventory_put = function(pos)
update_vessels_shelf(pos)
end,
on_metadata_inventory_take = function(pos)
update_vessels_shelf(pos)
end,
on_metadata_inventory_move = function(pos)
update_vessels_shelf(pos)
end,
}
default.set_inventory_action_loggers(vessels_shelf_def, "vessels shelf")
minetest.register_node("vessels:shelf", vessels_shelf_def)

View File

@ -1,8 +1,8 @@
# textdomain: vessels
Empty Vessels Shelf=Полиця з Пустим Посудом
Vessels Shelf (@1 items)=Полиця з Посудом (@1 предмета)
Vessels Shelf=Полиця з Посудом
Empty Glass Bottle=Порожня Скляна Пляшка
Empty Drinking Glass=Порожня Склянка
Empty Heavy Steel Bottle=Порожня Сталева Пляшка
Glass Fragments=Скляні Уламки
Empty Vessels Shelf=Пуста полиця для посуду
Vessels Shelf (@1 items)=Полиця для посуду (@1 предм.)
Vessels Shelf=Полиця для посуду
Empty Glass Bottle=Порожня скляна пляшка
Empty Drinking Glass=Порожня склянка
Empty Heavy Steel Bottle=Порожня важка сталева пляшка
Glass Fragments=Скляні уламки

View File

@ -1,4 +1,4 @@
# textdomain: walls
Cobblestone Wall=Паркан З Кругляку
Mossy Cobblestone Wall=Паркан З Мохового Кругляку
Desert Cobblestone Wall=Паркан З Пустельного Кругляку
Cobblestone Wall=Кругляковий паркан
Mossy Cobblestone Wall=Паркан з моховитого кругляку
Desert Cobblestone Wall=Паркан з пустельного кругляку

View File

@ -1,16 +1,16 @@
# textdomain: wool
White Wool=Біла Шерсть
Grey Wool=Сіра Шерсть
Dark Grey Wool=Темно-Сіра Шерсть
Black Wool=Чорна Шерсть
Violet Wool=Фіолетова Шерсть
Blue Wool=Синя Шерсть
Cyan Wool=Голуба Шерсть
Dark Green Wool=Темно-Зелена Шерсть
Green Wool=Зелена Шерсть
Yellow Wool=Жовта Шерсть
Brown Wool=Коричнева Шерсть
Orange Wool=Оранжева Шерсть
Red Wool=Червона Шерсть
Magenta Wool=Пурпурна Шерсть
Pink Wool=Рожева Шерсть
White Wool=Біла вовна
Grey Wool=Сіра вовна
Dark Grey Wool=Темно-сіра вовна
Black Wool=Чорна вовна
Violet Wool=Фіолетова вовна
Blue Wool=Синя вовна
Cyan Wool=Синьо-зелена вовна
Dark Green Wool=Темно-зелена вовна
Green Wool=Зелена вовна
Yellow Wool=Жовта вовна
Brown Wool=Коричнева вовна
Orange Wool=Помаранчева вовна
Red Wool=Червона вовна
Magenta Wool=Пурпурна вовна
Pink Wool=Рожева вовна

View File

@ -1,6 +1,6 @@
# textdomain: xpanes
Glass Pane=Скляна Панель
Obsidian Glass Pane=Скляна Панель З Обсидіану
Steel Bars=Сталева Решітка
Steel Bar Door=Сталеві Двері З Решіткою
Steel Bar Trapdoor=Сталевий Люк З Решіткою
Glass Pane=Скляна панель
Obsidian Glass Pane=Панель з обсидіанового скла
Steel Bars=Ґрати
Steel Bar Door=Двері з ґратами
Steel Bar Trapdoor=Люк з ґратами