Merge branch 'mt5-locale' into 'master'

Use builtin translation system

See merge request VanessaE/currency!3
This commit is contained in:
Vanessa Dannenberg 2020-03-01 15:47:05 +00:00
commit 1aa9b1532e
20 changed files with 286 additions and 1043 deletions

@ -1,8 +1,6 @@
barter = {} barter = {}
-- internationalization boilerplate local S = minetest.get_translator("currency")
local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP.."/intllib.lua")
barter.chest = {} barter.chest = {}
barter.chest.expire_after = tonumber(minetest.settings:get('barter.chest.expireafter')) or 15 * 60 barter.chest.expire_after = tonumber(minetest.settings:get('barter.chest.expireafter')) or 15 * 60
@ -12,20 +10,20 @@ barter.chest.formspec = {
"list[current_name;pl2;5,0;3,4;]".. "list[current_name;pl2;5,0;3,4;]"..
"list[current_player;main;0,5;8,4;]", "list[current_player;main;0,5;8,4;]",
pl1 = { pl1 = {
start = "button[3,1;1,1;pl1_start;" .. S("Start") .. "]", start = "button[0,4;3,1;pl1_start;" .. S("Start") .. "]",
player = function(name) return "label[3,0;"..name.."]" end, player = function(name) return "label[0,4;"..name.."]" end,
accept1 = "button[3,1;1,1;pl1_accept1;" .. S("Confirm") .. "]".. accept1 = "button[2.9,1;1.2,1;pl1_accept1;" .. S("Confirm") .. "]"..
"button[3,2;1,1;pl1_cancel;" .. S("Cancel") .. "]", "button[2.9,2;1.2,1;pl1_cancel;" .. S("Cancel") .. "]",
accept2 = "button[3,1;1,1;pl1_accept2;" .. S("Exchange") .. "]".. accept2 = "button[2.9,1;1.2,1;pl1_accept2;" .. S("Exchange") .. "]"..
"button[3,2;1,1;pl1_cancel;" .. S("Cancel") .. "]", "button[2.9,2;1.2,1;pl1_cancel;" .. S("Cancel") .. "]",
}, },
pl2 = { pl2 = {
start = "button[4,1;1,1;pl2_start;" .. S("Start") .. "]", start = "button[5,4;3,1;pl2_start;" .. S("Start") .. "]",
player = function(name) return "label[4,0;"..name.."]" end, player = function(name) return "label[5,4;"..name.."]" end,
accept1 = "button[4,1;1,1;pl2_accept1;" .. S("Confirm") .. "]".. accept1 = "button[3.9,1;1.2,1;pl2_accept1;" .. S("Confirm") .. "]"..
"button[4,2;1,1;pl2_cancel;" .. S("Cancel") .. "]", "button[3.9,2;1.2,1;pl2_cancel;" .. S("Cancel") .. "]",
accept2 = "button[4,1;1,1;pl2_accept2;" .. S("Exchange") .. "]".. accept2 = "button[3.9,1;1.2,1;pl2_accept2;" .. S("Exchange") .. "]"..
"button[4,2;1,1;pl2_cancel;" .. S("Cancel") .. "]", "button[3.9,2;1.2,1;pl2_cancel;" .. S("Cancel") .. "]",
}, },
} }

@ -1,58 +1,56 @@
-- internationalization boilerplate local S = minetest.get_translator("currency")
local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP.."/intllib.lua")
minetest.register_craftitem("currency:minegeld_cent_5", { minetest.register_craftitem("currency:minegeld_cent_5", {
description = S("5 Minegeld cent coin"), description = S("@1 Minegeld cent coin", "5"),
inventory_image = "minegeld_cent_5.png", inventory_image = "minegeld_cent_5.png",
stack_max = 1000, stack_max = 1000,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_cent_10", { minetest.register_craftitem("currency:minegeld_cent_10", {
description = S("10 Minegeld cent coin"), description = S("@1 Minegeld cent coin", "10"),
inventory_image = "minegeld_cent_10.png", inventory_image = "minegeld_cent_10.png",
stack_max = 1000, stack_max = 1000,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_cent_25", { minetest.register_craftitem("currency:minegeld_cent_25", {
description = S("25 Minegeld cent coin"), description = S("@1 Minegeld cent coin", "25"),
inventory_image = "minegeld_cent_25.png", inventory_image = "minegeld_cent_25.png",
stack_max = 1000, stack_max = 1000,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld", { minetest.register_craftitem("currency:minegeld", {
description = S("1 Minegeld Note"), description = S("@1 Minegeld Note", "1"),
inventory_image = "minegeld.png", inventory_image = "minegeld.png",
stack_max = 65535, stack_max = 65535,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_5", { minetest.register_craftitem("currency:minegeld_5", {
description = S("5 Minegeld Note"), description = S("@1 Minegeld Note", "5"),
inventory_image = "minegeld_5.png", inventory_image = "minegeld_5.png",
stack_max = 65535, stack_max = 65535,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_10", { minetest.register_craftitem("currency:minegeld_10", {
description = S("10 Minegeld Note"), description = S("@1 Minegeld Note", "10"),
inventory_image = "minegeld_10.png", inventory_image = "minegeld_10.png",
stack_max = 65535, stack_max = 65535,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_50", { minetest.register_craftitem("currency:minegeld_50", {
description = S("50 Minegeld Note"), description = S("@1 Minegeld Note", "50"),
inventory_image = "minegeld_50.png", inventory_image = "minegeld_50.png",
stack_max = 65535, stack_max = 65535,
groups = {minegeld = 1} groups = {minegeld = 1}
}) })
minetest.register_craftitem("currency:minegeld_100", { minetest.register_craftitem("currency:minegeld_100", {
description = S("100 Minegeld Note"), description = S("@1 Minegeld Note", "100"),
inventory_image = "minegeld_100.png", inventory_image = "minegeld_100.png",
stack_max = 65535, stack_max = 65535,
groups = {minegeld = 1} groups = {minegeld = 1}

@ -1,4 +0,0 @@
default
intllib?
loot?
pipeworks?

@ -1 +0,0 @@
Provides shops, barter tables, safes, and multiple denominations of currency, called "Minegeld".

@ -1,9 +1,5 @@
local players_income = {} local players_income = {}
-- internationalization boilerplate
local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP.."/intllib.lua")
local income_enabled = minetest.settings:get_bool("currency.income_enabled", true) local income_enabled = minetest.settings:get_bool("currency.income_enabled", true)
local income_item = minetest.settings:get("currency.income_item") or "currency:minegeld_10" local income_item = minetest.settings:get("currency.income_item") or "currency:minegeld_10"
local income_count = tonumber(minetest.settings:get("currency.income_count")) or 1 local income_count = tonumber(minetest.settings:get("currency.income_count")) or 1
@ -18,7 +14,7 @@ if income_enabled then
for _, player in ipairs(minetest.get_connected_players()) do for _, player in ipairs(minetest.get_connected_players()) do
local name = player:get_player_name() local name = player:get_player_name()
players_income[name] = income_count players_income[name] = income_count
minetest.log("info", "[Currency] "..S("basic income for @1", name)) minetest.log("info", "[Currency] basic income for "..name)
end end
end end
end) end)
@ -32,7 +28,7 @@ if income_enabled then
local inv = player:get_inventory() local inv = player:get_inventory()
inv:add_item("main", {name=income_item, count=income_count}) inv:add_item("main", {name=income_item, count=income_count})
players_income[name] = nil players_income[name] = nil
minetest.log("info", "[Currency] "..S("added basic income for @1 to inventory", name)) minetest.log("info", "[Currency] added basic income for "..name.." to inventory")
end end
end end

@ -1,24 +1,21 @@
local modpath = minetest.get_modpath("currency") local modpath = minetest.get_modpath("currency")
-- internationalization boilerplate minetest.log("info", "Currency mod loading...")
local S, NS = dofile(modpath.."/intllib.lua")
minetest.log("info", S("Currency mod loading..."))
dofile(modpath.."/craftitems.lua") dofile(modpath.."/craftitems.lua")
minetest.log("info", "[Currency] "..S("Craft_items Loaded!")) minetest.log("info", "[Currency] Craft_items Loaded!")
dofile(modpath.."/shop.lua") dofile(modpath.."/shop.lua")
minetest.log("info", "[Currency] "..S("Shop Loaded!")) minetest.log("info", "[Currency] Shop Loaded!")
dofile(modpath.."/barter.lua") dofile(modpath.."/barter.lua")
minetest.log("info", "[Currency] "..S("Barter Loaded!")) minetest.log("info", "[Currency] Barter Loaded!")
dofile(modpath.."/safe.lua") dofile(modpath.."/safe.lua")
minetest.log("info", "[Currency] "..S("Safe Loaded!")) minetest.log("info", "[Currency] Safe Loaded!")
dofile(modpath.."/crafting.lua") dofile(modpath.."/crafting.lua")
minetest.log("info", "[Currency] "..S("Crafting Loaded!")) minetest.log("info", "[Currency] Crafting Loaded!")
if minetest.settings:get_bool("creative_mode") then if minetest.settings:get_bool("creative_mode") then
minetest.log("info", "[Currency] "..S("Creative mode in use, skipping basic income.")) minetest.log("info", "[Currency] Creative mode in use, skipping basic income.")
else else
dofile(modpath.."/income.lua") dofile(modpath.."/income.lua")
minetest.log("info", "[Currency] "..S("Income Loaded!")) minetest.log("info", "[Currency] Income Loaded!")
end end

@ -1,45 +0,0 @@
-- Fallback functions for when `intllib` is not installed.
-- Code released under Unlicense <http://unlicense.org>.
-- Get the latest version of this file at:
-- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua
local function format(str, ...)
local args = { ... }
local function repl(escape, open, num, close)
if escape == "" then
local replacement = tostring(args[tonumber(num)])
if open == "" then
replacement = replacement..close
end
return replacement
else
return "@"..open..num..close
end
end
return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl))
end
local gettext, ngettext
if minetest.get_modpath("intllib") then
if intllib.make_gettext_pair then
-- New method using gettext.
gettext, ngettext = intllib.make_gettext_pair()
else
-- Old method using text files.
gettext = intllib.Getter()
end
end
-- Fill in missing functions.
gettext = gettext or function(msgid, ...)
return format(msgid, ...)
end
ngettext = ngettext or function(msgid, msgid_plural, n, ...)
return format(n==1 and msgid or msgid_plural, ...)
end
return gettext, ngettext

46
locale/currency.de.tr Normal file

@ -0,0 +1,46 @@
# textdomain: currency
# A.C.M. <undertakers_help@yahoo.com>, 2018
### barter.lua ###
Barter Table=Tausch Tisch
Cancel=Abbruch
Confirm=Bestätigen
Start=Start
### shop.lua ###
Exchange=Tausch
### craftitems.lua ###
@1 Minegeld Note=@1 Minegeld Banknote
@1 Minegeld cent coin=
Bundle of random Minegeld notes=Bündel von verschiedenen Minegeld Banknoten
### safe.lua ###
Safe=Safe
Safe (owned by @1)=Safe (gehört @1)
### shop.lua ###
Customer gets:=Kunde bekommt:
Customer gives (pay here!)=Kunde gibt (bezahl hier!)
Customers gave:=Kunde gab:
Exchange can not be done, check if you put all items!=Tausch kann nicht abgeschlossen werden, prüfe nochmal alles was du hinein gelegt hast!
Exchange can not be done, contact the shop owner.=Tausch kann nicht abgeschlossen werden, benachrichtige den Geschäftsinhaber.
Exchange shop (owned by @1)=Tauschgeschäft (gehört @1)
Exchanged!=Getauscht!
In exchange, you give:=Im Tausch, du gibst:
Owner gives:=Inhaber gibt:
Owner wants:=Inhaber will:
Owner, Use (E)+Place (right mouse button) for customer interface=Inhaber, Benutze (E)+Platziere (rechte Maustaste) für Kunde ...
Shop=Geschäft
This is your own shop, you can't exchange to yourself!=Das ist dein eigenes Geschäft, du kannst nicht mit dir selbst tauschen!
You want:=Du willst:
Your stock:=Dein Lager:

47
locale/currency.fr.tr Normal file

@ -0,0 +1,47 @@
# textdomain: currency
# Papou30, 2018.
# Louis Royer, 2020.
### barter.lua ###
Barter Table=Table de troc
Cancel=Annuler
Confirm=Valider
Start=Commencer
### shop.lua ###
Exchange=Troquer
### craftitems.lua ###
@1 Minegeld Note=@1 MineGeld
@1 Minegeld cent coin=Pièce de @1 centimes de MineGeld
Bundle of random Minegeld notes=Liasse de Minegeld de diverses valeurs
### safe.lua ###
Safe=Coffre-fort
Safe (owned by @1)=Coffre-fort (appartenant à @1)
### shop.lua ###
Customer gets:=Client obtient:
Customer gives (pay here!)=Client donne (payer ici!)
Customers gave:=Le client a donné:
Exchange can not be done, check if you put all items!=L'echange ne peut pas être fait, vérifiez que vous avez placé tous les articles!
Exchange can not be done, contact the shop owner.=L'échange ne peut être fait, contactez le propriétaire du magasin.
Exchange shop (owned by @1)=Boutique d'échange (appartenant à @1)
Exchanged!=Échangé!
In exchange, you give:=En échange, vous donnez :
Owner gives:=Le propriétaire donne :
Owner wants:=Le propriétaire veut :
Owner, Use (E)+Place (right mouse button) for customer interface=Propriétaire, utilisez Spécial+clic droit pour l'interface client
Shop=Boutique
This is your own shop, you can't exchange to yourself!=C'est votre propre boutique, vous ne pouvez pas échanger avec vous-même!
You want:=Vous voulez :
Your stock:=Votre stock :

46
locale/currency.ms.tr Normal file

@ -0,0 +1,46 @@
# textdomain: currency
### barter.lua ###
Barter Table=Meja Barter
Cancel=Batal
Confirm=Sah
Start=Mula
### shop.lua ###
Exchange=Tukar
### craftitems.lua ###
@1 Minegeld Note=Wang @1 MineGeld
@1 Minegeld cent coin=
Bundle of random Minegeld notes=Seberkas wang Minegeld rawak
### safe.lua ###
Safe=Peti besi
Safe (owned by @1)=Peti besi (pemilik: @1)
### shop.lua ###
Customer gets:=Pelanggan dapat:
Customer gives (pay here!)=Pelanggan beri (bayar sini!)
Customers gave:=Pelanggan berikan:
Exchange can not be done, check if you put all items!=Tak boleh jual, pastikan anda ada apa yang penjual mahukan!
Exchange can not be done, contact the shop owner.=Tak boleh jual, hubungi penjual.
Exchange shop (owned by @1)=Kedai (pemilik: @1)
Exchanged!=Jual!
In exchange, you give:=Anda berikan:
Owner gives:=Penjual berikan:
Owner wants:=Penjual inginkan:
Owner, Use (E)+Place (right mouse button) for customer interface=Penjual, Gunakan (E) + Letak (butang tetikus kanan) untuk antaramuka pelanggan
Shop=Kedai
This is your own shop, you can't exchange to yourself!=Ini kedai anda, anda tidak boleh menjual kepada diri sendiri!
You want:=Anda mahukan:
Your stock:=Stok anda:

46
locale/currency.ru.tr Normal file

@ -0,0 +1,46 @@
# textdomain: currency
### barter.lua ###
Barter Table=Таблица бартера
Cancel=Отмена
Confirm=Подтверждение
Start=Старт
### shop.lua ###
Exchange=Обмен
### craftitems.lua ###
@1 Minegeld Note=Банкнота в @1 MineGeld
@1 Minegeld cent coin=
Bundle of random Minegeld notes=Пачка случайных банкнот Minegeld
### safe.lua ###
Safe=Сейф
Safe (owned by @1)=Сейф (принадлежит @1)
### shop.lua ###
Customer gets:=Покупатель получает:
Customer gives (pay here!)=Покупатель отдаёт (здесь оплата!)
Customers gave:=Покупатель отдал:
Exchange can not be done, check if you put all items!=Обмен невозможен, проверьте, что вы положили все предметы!
Exchange can not be done, contact the shop owner.=Обмен невозможен, свяжитесь с владельцем магазина.
Exchange shop (owned by @1)=Пункт обмена (принадлежит @1)
Exchanged!=Обмен произведён!
In exchange, you give:=Взамен вы даёте:
Owner gives:=Владелец отдаёт:
Owner wants:=Владелец хочет:
Owner, Use (E)+Place (right mouse button) for customer interface=Владелец, используйте (E)+Разместить (правая кнопка мыши) для открытия интерфейса покупателя
Shop=Магазин
This is your own shop, you can't exchange to yourself!=Это ваш собственный магазин, вы не можете обмениваться с самим собой!
You want:=Вы хотите:
Your stock:=Ваш запас:

@ -1,183 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-24 22:01+0200\n"
"PO-Revision-Date: 2018-05-24 22:48+0200\n"
"Last-Translator: A.C.M. <undertakers_help@yahoo.com>\n"
"Language-Team: \n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.7\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: barter.lua
msgid "Start"
msgstr "Start"
#: barter.lua
msgid "Confirm"
msgstr "Bestätigen"
#: barter.lua
msgid "Cancel"
msgstr "Abbruch"
#: barter.lua shop.lua
msgid "Exchange"
msgstr "Tausch"
#: barter.lua
msgid "Barter Table"
msgstr "Tausch Tisch"
#: craftitems.lua
msgid "1 MineGeld Note"
msgstr "1 Minegeld Banknote"
#: craftitems.lua
msgid "5 MineGeld Note"
msgstr "5 Minegeld Banknote"
#: craftitems.lua
msgid "10 MineGeld Note"
msgstr "10 Minegeld Banknote"
#: craftitems.lua
msgid "50 MineGeld Note"
msgstr "50 Minegeld Banknote"
#: craftitems.lua
msgid "Bundle of random Minegeld notes"
msgstr "Bündel von verschiedenen Minegeld Banknoten"
#: income.lua
msgid "basic income for @1"
msgstr "Grundeinkommen für @1"
#: income.lua
msgid "added basic income for @1 to inventory"
msgstr "Grundeinkommen für @1 ins Inventar gelegt"
#: init.lua
msgid "Currency mod loading..."
msgstr "Currency mod lädt..."
#: init.lua
msgid "Craft_items Loaded!"
msgstr "Craft_items geladen!"
#: init.lua
msgid "Shop Loaded!"
msgstr "Geschäft geladen!"
#: init.lua
msgid "Barter Loaded!"
msgstr "Tauschtisch geladen!"
#: init.lua
msgid "Safe Loaded!"
msgstr "Safe geladen!"
#: init.lua
msgid "Crafting Loaded!"
msgstr "Crafting geladen!"
#: init.lua
msgid "Creative mode in use, skipping basic income."
msgstr "Kreativmodus eingeschalten, überspringe Grundeinkommen."
#: init.lua
msgid "Income Loaded!"
msgstr "Income geladen!"
#: safe.lua
msgid "Safe"
msgstr "Safe"
#: safe.lua
msgid "Safe (owned by @1)"
msgstr "Safe (gehört @1)"
#: safe.lua
msgid "@1 tried to access a safe belonging to @2 at @3"
msgstr "@1 versuchte den Zugriff auf Safe von @2 bei @3"
#: safe.lua
msgid "@1 moves stuff in safe at @2"
msgstr "@1 verschiebt Gegenstände in den Safe bei @2"
#: safe.lua
msgid "@1 moves stuff to safe at @2"
msgstr "@1 verschiebt Gegenstände nach Safe bei @2"
#: safe.lua
msgid "@1 takes stuff from safe at @2"
msgstr "@1 nimmt Gegenstände aus Safe bei @2"
#: shop.lua
msgid "Customer gives (pay here!)"
msgstr "Kunde gibt (bezahl hier!)"
#: shop.lua
msgid "Customer gets:"
msgstr "Kunde bekommt:"
#: shop.lua
msgid "Owner wants:"
msgstr "Inhaber will:"
#: shop.lua
msgid "Owner gives:"
msgstr "Inhaber gibt:"
#: shop.lua
msgid "Customers gave:"
msgstr "Kunde gab:"
#: shop.lua
msgid "Your stock:"
msgstr "Dein Lager:"
#: shop.lua
msgid "You want:"
msgstr "Du willst:"
#: shop.lua
msgid "In exchange, you give:"
msgstr "Im Tausch, du gibst:"
#: shop.lua
msgid "Owner, Use (E)+Place (right mouse button) for customer interface"
msgstr "Inhaber, Benutze (E)+Platziere (rechte Maustaste) für Kunde ..."
#: shop.lua
msgid "Shop"
msgstr "Geschäft"
#: shop.lua
msgid "Exchange shop (owned by @1)"
msgstr "Tauschgeschäft (gehört @1)"
#: shop.lua
msgid "This is your own shop, you can't exchange to yourself!"
msgstr "Das ist dein eigenes Geschäft, du kannst nicht mit dir selbst tauschen!"
#: shop.lua
msgid "Exchanged!"
msgstr "Getauscht!"
#: shop.lua
msgid "Exchange can not be done, contact the shop owner."
msgstr "Tausch kann nicht abgeschlossen werden, benachrichtige den Geschäftsinhaber."
#: shop.lua
msgid "Exchange can not be done, check if you put all items!"
msgstr "Tausch kann nicht abgeschlossen werden, prüfe nochmal alles was du hinein gelegt hast!"

@ -1,187 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-24 23:06+0200\n"
"PO-Revision-Date: 2018-05-12 14:55+0200\n"
"Last-Translator: Papou30\n"
"Language-Team: \n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.7\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: barter.lua
msgid "Start"
msgstr "Début"
#: barter.lua
msgid "Confirm"
msgstr "Confirmer"
#: barter.lua
msgid "Cancel"
msgstr "Annuler"
#: barter.lua shop.lua
msgid "Exchange"
msgstr "Échange"
#: barter.lua
msgid "Barter Table"
msgstr "Table de troc"
#: craftitems.lua
msgid "1 MineGeld Note"
msgstr "1 MineGeld"
#: craftitems.lua
msgid "5 MineGeld Note"
msgstr "5 MineGeld"
#: craftitems.lua
msgid "10 MineGeld Note"
msgstr "10 MineGeld"
#: craftitems.lua
#, fuzzy
msgid "50 MineGeld Note"
msgstr "5 MineGeld"
#: craftitems.lua
msgid "Bundle of random Minegeld notes"
msgstr "Liasse de Minegeld aléatoire"
#: income.lua
msgid "basic income for @1"
msgstr "revenu de base pour @1"
#: income.lua
msgid "added basic income for @1 to inventory"
msgstr "revenu de base ajouté pour @1 à l'inventaire"
#: init.lua
msgid "Currency mod loading..."
msgstr "Chargement du mod Currency..."
#: init.lua
msgid "Craft_items Loaded!"
msgstr "Fabrication d'objets (Craft_items) chargé!"
#: init.lua
msgid "Shop Loaded!"
msgstr "Boutique (Shop) chargée!"
#: init.lua
msgid "Barter Loaded!"
msgstr "Troc (Barter) chargé!"
#: init.lua
msgid "Safe Loaded!"
msgstr "Coffre-fort (Safe) chargé!"
#: init.lua
msgid "Crafting Loaded!"
msgstr "Artisanat (Crafting) chargé!"
#: init.lua
msgid "Creative mode in use, skipping basic income."
msgstr "Mod créatif en cours d'utilisation, ignoré le revenu de base."
#: init.lua
msgid "Income Loaded!"
msgstr "Revenu de base (Income) chargé!"
#: safe.lua
msgid "Safe"
msgstr "Coffre-fort"
#: safe.lua
msgid "Safe (owned by @1)"
msgstr "Coffre-fort (appartenant à @1)"
#: safe.lua
msgid "@1 tried to access a safe belonging to @2 at @3"
msgstr "@1 a tenté d'accéder à un coffre-fort appartenant à @2 à @3"
#: safe.lua
msgid "@1 moves stuff in safe at @2"
msgstr "@1 déplace le matériel dans coffre-fort à @2"
#: safe.lua
msgid "@1 moves stuff to safe at @2"
msgstr "@1 déplace le matériel vers coffre-fort à @2"
#: safe.lua
msgid "@1 takes stuff from safe at @2"
msgstr "@1 prend le matériel dans le coffre-fort à @2"
#: shop.lua
msgid "Customer gives (pay here!)"
msgstr "Client donne (payer ici!)"
#: shop.lua
msgid "Customer gets:"
msgstr "Client obtient:"
#: shop.lua
msgid "Owner wants:"
msgstr "Le propriétaire veut:"
#: shop.lua
msgid "Owner gives:"
msgstr "Propriétaire donne:"
#: shop.lua
msgid "Customers gave:"
msgstr "Le client a donné:"
#: shop.lua
msgid "Your stock:"
msgstr "Votre stock:"
#: shop.lua
msgid "You want:"
msgstr "Vous voulez:"
#: shop.lua
msgid "In exchange, you give:"
msgstr "En échange, vous donnez:"
#: shop.lua
msgid "Owner, Use (E)+Place (right mouse button) for customer interface"
msgstr ""
"Propriétaire, utilisez (E) + place (bouton droit de la souris) pour "
"l'interface client"
#: shop.lua
msgid "Shop"
msgstr "Boutique"
#: shop.lua
msgid "Exchange shop (owned by @1)"
msgstr "Boutique d'échange (détenue par @1)"
#: shop.lua
msgid "This is your own shop, you can't exchange to yourself!"
msgstr "C'est ta propre boutique, tu ne peux pas échanger avec toi-même!"
#: shop.lua
msgid "Exchanged!"
msgstr "Échangé!"
#: shop.lua
msgid "Exchange can not be done, contact the shop owner."
msgstr "L'échange ne peut être fait, contactez le propriétaire du magasin."
#: shop.lua
msgid "Exchange can not be done, check if you put all items!"
msgstr ""
"L'echange ne peut pas etre fait, verifiez si vous mettez tous les articles!"

@ -1,186 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-24 23:06+0200\n"
"PO-Revision-Date: 2017-10-17 02:03+0800\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: ms\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.4\n"
"Plural-Forms: nplurals=1; plural=0;\n"
#: barter.lua
msgid "Start"
msgstr "Mula"
#: barter.lua
msgid "Confirm"
msgstr "Sah"
#: barter.lua
msgid "Cancel"
msgstr "Batal"
#: barter.lua shop.lua
msgid "Exchange"
msgstr "Tukar"
#: barter.lua
msgid "Barter Table"
msgstr "Meja Barter"
#: craftitems.lua
msgid "1 MineGeld Note"
msgstr "Wang 1 MineGeld"
#: craftitems.lua
msgid "5 MineGeld Note"
msgstr "Wang 5 MineGeld"
#: craftitems.lua
msgid "10 MineGeld Note"
msgstr "Wang 10 MineGeld"
#: craftitems.lua
#, fuzzy
msgid "50 MineGeld Note"
msgstr "Wang 5 MineGeld"
#: craftitems.lua
msgid "Bundle of random Minegeld notes"
msgstr "Seberkas wang Minegeld rawak"
#: income.lua
msgid "basic income for @1"
msgstr "pendapatan asas untuk @1"
#: income.lua
msgid "added basic income for @1 to inventory"
msgstr "pendapatan asas untuk @1 ditambah masuk ke dalam inventori"
#: init.lua
msgid "Currency mod loading..."
msgstr "Memuatkan mods Currency..."
#: init.lua
msgid "Craft_items Loaded!"
msgstr "Item pertukangan dimuatkan!"
#: init.lua
msgid "Shop Loaded!"
msgstr "Kedai dimuatkan!"
#: init.lua
msgid "Barter Loaded!"
msgstr "Meja barter dimuatkan!"
#: init.lua
msgid "Safe Loaded!"
msgstr "Peti besi dimuatkan!"
#: init.lua
msgid "Crafting Loaded!"
msgstr "Pertukangan dimuatkan!"
#: init.lua
msgid "Creative mode in use, skipping basic income."
msgstr "Dalam mod kreatif, pendapatan asas diabaikan."
#: init.lua
msgid "Income Loaded!"
msgstr "Pendapatan dimuatkan!"
#: safe.lua
msgid "Safe"
msgstr "Peti besi"
#: safe.lua
msgid "Safe (owned by @1)"
msgstr "Peti besi (pemilik: @1)"
#: safe.lua
msgid "@1 tried to access a safe belonging to @2 at @3"
msgstr "@1 cuba untuk mengakses peti besi milik @2 di @3"
#: safe.lua
msgid "@1 moves stuff in safe at @2"
msgstr "@1 pindahkan barang dalam peti besi di @2"
#: safe.lua
msgid "@1 moves stuff to safe at @2"
msgstr "@1 masukkan barang dalam peti besi di @2"
#: safe.lua
msgid "@1 takes stuff from safe at @2"
msgstr "@1 keluarkan barang dari peti besi di @2"
#: shop.lua
msgid "Customer gives (pay here!)"
msgstr "Pelanggan beri (bayar sini!)"
#: shop.lua
msgid "Customer gets:"
msgstr "Pelanggan dapat:"
#: shop.lua
msgid "Owner wants:"
msgstr "Penjual inginkan:"
#: shop.lua
msgid "Owner gives:"
msgstr "Penjual berikan:"
#: shop.lua
msgid "Customers gave:"
msgstr "Pelanggan berikan:"
#: shop.lua
msgid "Your stock:"
msgstr "Stok anda:"
#: shop.lua
msgid "You want:"
msgstr "Anda mahukan:"
#: shop.lua
msgid "In exchange, you give:"
msgstr "Anda berikan:"
#: shop.lua
msgid "Owner, Use (E)+Place (right mouse button) for customer interface"
msgstr ""
"Penjual, Gunakan (E) + Letak (butang tetikus kanan) untuk antaramuka "
"pelanggan"
#: shop.lua
msgid "Shop"
msgstr "Kedai"
#: shop.lua
msgid "Exchange shop (owned by @1)"
msgstr "Kedai (pemilik: @1)"
#: shop.lua
msgid "This is your own shop, you can't exchange to yourself!"
msgstr "Ini kedai anda, anda tidak boleh menjual kepada diri sendiri!"
#: shop.lua
msgid "Exchanged!"
msgstr "Jual!"
#: shop.lua
msgid "Exchange can not be done, contact the shop owner."
msgstr "Tak boleh jual, hubungi penjual."
#: shop.lua
msgid "Exchange can not be done, check if you put all items!"
msgstr "Tak boleh jual, pastikan anda ada apa yang penjual mahukan!"

@ -1,187 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-24 23:06+0200\n"
"PO-Revision-Date: 2017-08-11 19:03+0300\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: ru\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.3\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#: barter.lua
msgid "Start"
msgstr "Старт"
#: barter.lua
msgid "Confirm"
msgstr "Подтверждение"
#: barter.lua
msgid "Cancel"
msgstr "Отмена"
#: barter.lua shop.lua
msgid "Exchange"
msgstr "Обмен"
#: barter.lua
msgid "Barter Table"
msgstr "Таблица бартера"
#: craftitems.lua
msgid "1 MineGeld Note"
msgstr "Банкнота в 1 MineGeld"
#: craftitems.lua
msgid "5 MineGeld Note"
msgstr "Банкнота в 5 MineGeld"
#: craftitems.lua
msgid "10 MineGeld Note"
msgstr "Банкнота в 10 MineGeld"
#: craftitems.lua
#, fuzzy
msgid "50 MineGeld Note"
msgstr "Банкнота в 5 MineGeld"
#: craftitems.lua
msgid "Bundle of random Minegeld notes"
msgstr "Пачка случайных банкнот Minegeld"
#: income.lua
msgid "basic income for @1"
msgstr "базовая прибыль для @1"
#: income.lua
msgid "added basic income for @1 to inventory"
msgstr "базовая прибыль для @1 добавлена в инвентарь"
#: init.lua
msgid "Currency mod loading..."
msgstr "Загружается мод Currency..."
#: init.lua
msgid "Craft_items Loaded!"
msgstr "Предметы для сборки загружены!"
#: init.lua
msgid "Shop Loaded!"
msgstr "Магазин загружен!"
#: init.lua
msgid "Barter Loaded!"
msgstr "Бартер загружен!"
#: init.lua
msgid "Safe Loaded!"
msgstr "Сейф загружен!"
#: init.lua
msgid "Crafting Loaded!"
msgstr "Механизм сборки загружен!"
#: init.lua
msgid "Creative mode in use, skipping basic income."
msgstr "Используется режим творчества, пропускаем базовую прибыль."
#: init.lua
msgid "Income Loaded!"
msgstr "Прибыль загружена!"
#: safe.lua
msgid "Safe"
msgstr "Сейф"
#: safe.lua
msgid "Safe (owned by @1)"
msgstr "Сейф (принадлежит @1)"
#: safe.lua
msgid "@1 tried to access a safe belonging to @2 at @3"
msgstr "@1 попробовал открыть сейф, принадлежащий @2 в @3"
#: safe.lua
msgid "@1 moves stuff in safe at @2"
msgstr "@1 перемещает вещи в сейфе в @2"
#: safe.lua
msgid "@1 moves stuff to safe at @2"
msgstr "@1 кладёт вещи в сейф в @2"
#: safe.lua
msgid "@1 takes stuff from safe at @2"
msgstr "@1 забирает вещи из сейфа в @2"
#: shop.lua
msgid "Customer gives (pay here!)"
msgstr "Покупатель отдаёт (здесь оплата!)"
#: shop.lua
msgid "Customer gets:"
msgstr "Покупатель получает:"
#: shop.lua
msgid "Owner wants:"
msgstr "Владелец хочет:"
#: shop.lua
msgid "Owner gives:"
msgstr "Владелец отдаёт:"
#: shop.lua
msgid "Customers gave:"
msgstr "Покупатель отдал:"
#: shop.lua
msgid "Your stock:"
msgstr "Ваш запас:"
#: shop.lua
msgid "You want:"
msgstr "Вы хотите:"
#: shop.lua
msgid "In exchange, you give:"
msgstr "Взамен вы даёте:"
#: shop.lua
msgid "Owner, Use (E)+Place (right mouse button) for customer interface"
msgstr ""
"Владелец, используйте (E)+Разместить (правая кнопка мыши) для открытия "
"интерфейса покупателя"
#: shop.lua
msgid "Shop"
msgstr "Магазин"
#: shop.lua
msgid "Exchange shop (owned by @1)"
msgstr "Пункт обмена (принадлежит @1)"
#: shop.lua
msgid "This is your own shop, you can't exchange to yourself!"
msgstr "Это ваш собственный магазин, вы не можете обмениваться с самим собой!"
#: shop.lua
msgid "Exchanged!"
msgstr "Обмен произведён!"
#: shop.lua
msgid "Exchange can not be done, contact the shop owner."
msgstr "Обмен невозможен, свяжитесь с владельцем магазина."
#: shop.lua
msgid "Exchange can not be done, check if you put all items!"
msgstr "Обмен невозможен, проверьте, что вы положили все предметы!"

@ -1,182 +0,0 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-05-24 23:06+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
#: barter.lua
msgid "Start"
msgstr ""
#: barter.lua
msgid "Confirm"
msgstr ""
#: barter.lua
msgid "Cancel"
msgstr ""
#: barter.lua shop.lua
msgid "Exchange"
msgstr ""
#: barter.lua
msgid "Barter Table"
msgstr ""
#: craftitems.lua
msgid "1 MineGeld Note"
msgstr ""
#: craftitems.lua
msgid "5 MineGeld Note"
msgstr ""
#: craftitems.lua
msgid "10 MineGeld Note"
msgstr ""
#: craftitems.lua
msgid "50 MineGeld Note"
msgstr ""
#: craftitems.lua
msgid "Bundle of random Minegeld notes"
msgstr ""
#: income.lua
msgid "basic income for @1"
msgstr ""
#: income.lua
msgid "added basic income for @1 to inventory"
msgstr ""
#: init.lua
msgid "Currency mod loading..."
msgstr ""
#: init.lua
msgid "Craft_items Loaded!"
msgstr ""
#: init.lua
msgid "Shop Loaded!"
msgstr ""
#: init.lua
msgid "Barter Loaded!"
msgstr ""
#: init.lua
msgid "Safe Loaded!"
msgstr ""
#: init.lua
msgid "Crafting Loaded!"
msgstr ""
#: init.lua
msgid "Creative mode in use, skipping basic income."
msgstr ""
#: init.lua
msgid "Income Loaded!"
msgstr ""
#: safe.lua
msgid "Safe"
msgstr ""
#: safe.lua
msgid "Safe (owned by @1)"
msgstr ""
#: safe.lua
msgid "@1 tried to access a safe belonging to @2 at @3"
msgstr ""
#: safe.lua
msgid "@1 moves stuff in safe at @2"
msgstr ""
#: safe.lua
msgid "@1 moves stuff to safe at @2"
msgstr ""
#: safe.lua
msgid "@1 takes stuff from safe at @2"
msgstr ""
#: shop.lua
msgid "Customer gives (pay here!)"
msgstr ""
#: shop.lua
msgid "Customer gets:"
msgstr ""
#: shop.lua
msgid "Owner wants:"
msgstr ""
#: shop.lua
msgid "Owner gives:"
msgstr ""
#: shop.lua
msgid "Customers gave:"
msgstr ""
#: shop.lua
msgid "Your stock:"
msgstr ""
#: shop.lua
msgid "You want:"
msgstr ""
#: shop.lua
msgid "In exchange, you give:"
msgstr ""
#: shop.lua
msgid "Owner, Use (E)+Place (right mouse button) for customer interface"
msgstr ""
#: shop.lua
msgid "Shop"
msgstr ""
#: shop.lua
msgid "Exchange shop (owned by @1)"
msgstr ""
#: shop.lua
msgid "This is your own shop, you can't exchange to yourself!"
msgstr ""
#: shop.lua
msgid "Exchanged!"
msgstr ""
#: shop.lua
msgid "Exchange can not be done, contact the shop owner."
msgstr ""
#: shop.lua
msgid "Exchange can not be done, check if you put all items!"
msgstr ""

44
locale/template.txt Normal file

@ -0,0 +1,44 @@
# textdomain: currency
### barter.lua ###
Barter Table=
Cancel=
Confirm=
Start=
### shop.lua ###
Exchange=
### craftitems.lua ###
@1 Minegeld Note=
@1 Minegeld cent coin=
Bundle of random Minegeld notes=
### safe.lua ###
Safe=
Safe (owned by @1)=
### shop.lua ###
Customer gets:=
Customer gives (pay here!)=
Customers gave:=
Exchange can not be done, check if you put all items!=
Exchange can not be done, contact the shop owner.=
Exchange shop (owned by @1)=
Exchanged!=
In exchange, you give:=
Owner gives:=
Owner wants:=
Owner, Use (E)+Place (right mouse button) for customer interface=
Shop=
This is your own shop, you can't exchange to yourself!=
You want:=
Your stock:=

@ -1,3 +1,4 @@
name = currency name = currency
depends = default depends = default
optional_depends = intllib,loot,pipeworks optional_depends = loot, pipeworks
description = Provides shops, barter tables, safes, and multiple denominations of currency, called "Minegeld".

@ -1,6 +1,4 @@
-- internationalization boilerplate local S = minetest.get_translator("currency")
local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP.."/intllib.lua")
function default.get_safe_formspec(pos) function default.get_safe_formspec(pos)
local spos = pos.x .. "," .. pos.y .. "," ..pos.z local spos = pos.x .. "," .. pos.y .. "," ..pos.z
@ -60,8 +58,9 @@ minetest.register_node("currency:safe", {
allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
if not has_safe_privilege(meta, player) then if not has_safe_privilege(meta, player) then
minetest.log("action", S("@1 tried to access a safe belonging to @2 at @3", minetest.log("action", player:get_player_name().." tried to access a safe belonging to "
player:get_player_name(), meta:get_string("owner"), minetest.pos_to_string(pos))) ..meta:get_string("owner").." at "
..minetest.pos_to_string(pos))
return 0 return 0
end end
return count return count
@ -69,8 +68,9 @@ minetest.register_node("currency:safe", {
allow_metadata_inventory_put = function(pos, listname, index, stack, player) allow_metadata_inventory_put = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
if not has_safe_privilege(meta, player) then if not has_safe_privilege(meta, player) then
minetest.log("action", S("@1 tried to access a safe belonging to @2 at @3", minetest.log("action", player:get_player_name().." tried to access a safe belonging to "
player:get_player_name(), meta:get_string("owner"), minetest.pos_to_string(pos))) ..meta:get_string("owner").." at "
..minetest.pos_to_string(pos))
return 0 return 0
end end
return stack:get_count() return stack:get_count()
@ -78,20 +78,21 @@ minetest.register_node("currency:safe", {
allow_metadata_inventory_take = function(pos, listname, index, stack, player) allow_metadata_inventory_take = function(pos, listname, index, stack, player)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)
if not has_safe_privilege(meta, player) then if not has_safe_privilege(meta, player) then
minetest.log("action", S("@1 tried to access a safe belonging to @2 at @3", minetest.log("action", player:get_player_name().." tried to access a safe belonging to "
player:get_player_name(), meta:get_string("owner"), minetest.pos_to_string(pos))) ..meta:get_string("owner").." at "
..minetest.pos_to_string(pos))
return 0 return 0
end end
return stack:get_count() return stack:get_count()
end, end,
on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player)
minetest.log("action", S("@1 moves stuff in safe at @2", player:get_player_name(), minetest.pos_to_string(pos))) minetest.log("action", player:get_player_name().." moves stuff in safe at "..minetest.pos_to_string(pos))
end, end,
on_metadata_inventory_put = function(pos, listname, index, stack, player) on_metadata_inventory_put = function(pos, listname, index, stack, player)
minetest.log("action", S("@1 moves stuff to safe at @2", player:get_player_name(), minetest.pos_to_string(pos))) minetest.log("action", player:get_player_name().." moves stuff to safe at "..minetest.pos_to_string(pos))
end, end,
on_metadata_inventory_take = function(pos, listname, index, stack, player) on_metadata_inventory_take = function(pos, listname, index, stack, player)
minetest.log("action", S("@1 takes stuff from safe at @2", player:get_player_name(), minetest.pos_to_string(pos))) minetest.log("action", player:get_player_name().." takes stuff from safe at "..minetest.pos_to_string(pos))
end, end,
on_rightclick = function(pos, node, clicker) on_rightclick = function(pos, node, clicker)
local meta = minetest.get_meta(pos) local meta = minetest.get_meta(pos)

@ -1,6 +1,4 @@
-- internationalization boilerplate local S = minetest.get_translator("currency")
local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP.."/intllib.lua")
default.shop = {} default.shop = {}
default.shop.current_shop = {} default.shop.current_shop = {}
@ -27,10 +25,10 @@ default.shop.formspec = {
"list["..list_name..";customers_gave;0,0.5;3,2;]".. "list["..list_name..";customers_gave;0,0.5;3,2;]"..
"label[0,2.5;" .. S("Your stock:") .. "]".. "label[0,2.5;" .. S("Your stock:") .. "]"..
"list["..list_name..";stock;0,3;3,2;]".. "list["..list_name..";stock;0,3;3,2;]"..
"label[5,0;" .. S("You want:") .. "]".. "label[4,0;" .. S("You want:") .. "]"..
"list["..list_name..";owner_wants;5,0.5;3,2;]".. "list["..list_name..";owner_wants;4,0.5;3,2;]"..
"label[5,2.5;" .. S("In exchange, you give:") .. "]".. "label[4,2.5;" .. S("In exchange, you give:") .. "]"..
"list["..list_name..";owner_gives;5,3;3,2;]".. "list["..list_name..";owner_gives;4,3;3,2;]"..
"label[0,5;" .. S("Owner, Use (E)+Place (right mouse button) for customer interface") .. "]".. "label[0,5;" .. S("Owner, Use (E)+Place (right mouse button) for customer interface") .. "]"..
"list[current_player;main;0,5.5;8,4;]" "list[current_player;main;0,5.5;8,4;]"
return formspec return formspec