updated Intllib support (thanks codexp)

master
TenPlus1 2018-07-10 18:59:29 +01:00
parent 9f18e935f1
commit 1386e0e7c9
16 changed files with 1065 additions and 263 deletions

View File

@ -53,7 +53,7 @@ Change log:
- 2.3 - Localise many of the protector functions and tidy code.
- 2.4 - Update to newer functions, Minetest 0.4.16 needed to run now.
- 2.5 - Added HUD text to show when player is inside a protected area (updates every 5 seconds)
- 2.6 - Add protection against CSM tampering
- 2.6 - Add protection against CSM tampering, updated Intllib support (thanks codexp)
Lucky Blocks: 10

View File

@ -5,7 +5,7 @@ protector.removal_names = ""
protector.replace_names = ""
minetest.register_chatcommand("protector_remove", {
params = "<names list>",
params = S("<names list>"),
description = S("Remove Protectors around players (separate names with spaces)"),
privs = {server = true},
func = function(name, param)
@ -13,8 +13,8 @@ minetest.register_chatcommand("protector_remove", {
if not param or param == "" then
minetest.chat_send_player(name,
"Protector Names to remove: "
.. protector.removal_names)
S("Protector Names to remove: @1",
protector.removal_names))
return
end
@ -36,7 +36,7 @@ minetest.register_chatcommand("protector_remove", {
minetest.register_chatcommand("protector_replace", {
params = "<owner name> <name to replace with>",
params = S("<owner name> <name to replace with>"),
description = S("Replace Protector Owner with name provided"),
privs = {server = true},
func = function(name, param)
@ -58,8 +58,8 @@ minetest.register_chatcommand("protector_replace", {
local names = protector.replace_names:split(" ")
minetest.chat_send_player(name,
"Replacing Protector name '" .. (names[1] or "")
.. "' with '" .. (names[2] or "").. "'")
S("Replacing Protector name '@1' with '@2'",
names[1] or "", names[2] or ""))
return
end
@ -82,7 +82,10 @@ minetest.register_abm({
return
end
local meta = minetest.get_meta(pos) ; if not meta then return end
local meta = minetest.get_meta(pos);
if not meta then return end
local owner = meta:get_string("owner")
--local members = meta:get_string("members")
@ -91,7 +94,6 @@ minetest.register_abm({
local names = protector.removal_names:split(" ")
for _, n in pairs(names) do
if n == owner then
minetest.set_node(pos, {name = "air"})
end
@ -103,9 +105,8 @@ minetest.register_abm({
local names = protector.replace_names:split(" ")
if names[1] and names[2] and owner == names[1] then
meta:set_string("owner", names[2])
meta:set_string("infotext", "Protection (owned by " .. names[2] .. ")")
meta:set_string("infotext", S("Protection (owned by @1)", names[2]))
end
end
@ -116,7 +117,7 @@ minetest.register_abm({
-- show protection areas of nearby protectors owned by you (thanks agaran)
minetest.register_chatcommand("protector_show", {
params = "",
description = "Show protected areas of your nearby protectors",
description = S("Show protected areas of your nearby protectors"),
privs = {},
func = function(name, param)

View File

@ -4,6 +4,7 @@
-- within this mod for local use.
local S = protector.intllib
local F = minetest.formspec_escape
-- Registers a door
function register_door(name, def)
@ -580,10 +581,10 @@ minetest.register_node("protector:chest", {
.. default.gui_bg_img
.. default.gui_slots
.. "list[nodemeta:".. spos .. ";main;0,0.3;8,4;]"
.. "button[0,4.5;2,0.25;toup;" .. S("To Chest") .. "]"
.. "button[0,4.5;2,0.25;toup;" .. F(S("To Chest")) .. "]"
.. "field[2.3,4.8;4,0.25;chestname;;"
.. meta:get_string("name") .. "]"
.. "button[6,4.5;2,0.25;todn;" .. S("To Inventory") .. "]"
.. "button[6,4.5;2,0.25;todn;" .. F(S("To Inventory")) .. "]"
.. "list[current_player;main;0,5;8,1;]"
.. "list[current_player;main;0,6.08;8,3;8]"
.. "listring[nodemeta:" .. spos .. ";main]"
@ -635,7 +636,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
end
end
end
elseif fields.todn then
-- copy contents of chest to players inventory

View File

@ -1,4 +1,5 @@
local S = protector.intllib
local radius = (tonumber(minetest.setting_get("protector_radius")) or 5)
local hud = {}
local hud_timer = 0
@ -27,7 +28,7 @@ minetest.register_globalstep(function(dtime)
local meta = minetest.get_meta(npos)
local nodeowner = meta:get_string("owner")
hud_text = "Owner: " .. nodeowner
hud_text = S("Owner: @1", nodeowner)
end
if not hud[name] then

View File

@ -1,7 +1,15 @@
local MP = minetest.get_modpath(minetest.get_current_modname())
-- Load support for intllib.
local S = dofile(MP .. "/intllib.lua")
local F = minetest.formspec_escape
protector = {}
protector.mod = "redo"
protector.modpath = MP
protector.max_share_count = 12
protector.intllib = S
-- get minetest.conf settings
protector.radius = tonumber(minetest.settings:get("protector_radius")) or 5
@ -15,21 +23,6 @@ local statspawn = minetest.string_to_pos(minetest.settings:get("static_spawnpoin
or {x = 0, y = 2, z = 0}
-- Intllib
local S
if minetest.get_modpath("intllib") then
S = intllib.Getter()
else
S = function(s, a, ...) a = {a, ...}
return s:gsub("@(%d+)", function(n)
return a[tonumber(n)]
end)
end
end
protector.intllib = S
-- return list of members as a table
local get_member_list = function(meta)
@ -115,10 +108,10 @@ local protector_formspec = function(meta)
.. default.gui_bg
.. default.gui_bg_img
.. default.gui_slots
.. "label[2.5,0;" .. S("-- Protector interface --") .. "]"
.. "label[0,1;" .. S("PUNCH node to show protected area") .. "]"
.. "label[0,2;" .. S("Members:") .. "]"
.. "button_exit[2.5,6.2;3,0.5;close_me;" .. S("Close") .. "]"
.. "label[2.5,0;" .. F(S("-- Protector interface --")) .. "]"
.. "label[0,1;" .. F(S("PUNCH node to show protected area")) .. "]"
.. "label[0,2;" .. F(S("Members:")) .. "]"
.. "button_exit[2.5,6.2;3,0.5;close_me;" .. F(S("Close")) .. "]"
.. "field_close_on_enter[protector_add_member;false]"
local members = get_member_list(meta)
@ -132,17 +125,17 @@ local protector_formspec = function(meta)
-- show username
formspec = formspec .. "button[" .. (i % 4 * 2)
.. "," .. math.floor(i / 4 + 3)
.. ";1.5,.5;protector_member;" .. members[n] .. "]"
.. ";1.5,.5;protector_member;" .. F(members[n]) .. "]"
-- username remove button
.. "button[" .. (i % 4 * 2 + 1.25) .. ","
.. math.floor(i / 4 + 3)
.. ";.75,.5;protector_del_member_" .. members[n] .. ";X]"
.. ";.75,.5;protector_del_member_" .. F(members[n]) .. ";X]"
end
i = i + 1
end
if i < npp then
-- user name entry field
@ -233,7 +226,7 @@ protector.can_dig = function(r, pos, digger, onlyowner, infolevel)
if onlyowner or not is_member(meta, digger) then
minetest.chat_send_player(digger,
S("This area is owned by @1!", owner))
S("This area is owned by @1", owner) .. "!")
return false
end
@ -242,7 +235,8 @@ protector.can_dig = function(r, pos, digger, onlyowner, infolevel)
-- when using protector as tool, show protector information
if infolevel == 2 then
minetest.chat_send_player(digger, S("This area is owned by @1.", owner))
minetest.chat_send_player(digger,
S("This area is owned by @1", owner) .. ".")
minetest.chat_send_player(digger,
S("Protection located at: @1", minetest.pos_to_string(pos[n])))
@ -658,14 +652,12 @@ minetest.register_node("protector:display_node", {
})
local path = minetest.get_modpath("protector")
dofile(path .. "/doors_chest.lua")
dofile(path .. "/pvp.lua")
dofile(path .. "/admin.lua")
dofile(path .. "/tool.lua")
dofile(path .. "/hud.lua")
dofile(path .. "/lucky_block.lua")
dofile(MP .. "/doors_chest.lua")
dofile(MP .. "/pvp.lua")
dofile(MP .. "/admin.lua")
dofile(MP .. "/tool.lua")
dofile(MP .. "/hud.lua")
dofile(MP .. "/lucky_block.lua")
-- stop mesecon pistons from pushing protectors

45
intllib.lua Normal file
View File

@ -0,0 +1,45 @@
-- 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

196
locale/de.po Normal file
View File

@ -0,0 +1,196 @@
# German translation for PROTECTOR MOD.
# Copyright (C) 2018 TenPlus1
# This file is distributed under the same license as the PROTECTOR MOD package.
# Xanthin <xanthin@wiuwiu.de>, 2016.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROTECTOR MOD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-10 17:33+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: CodeXP <codexp@gmx.net>\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"
#: admin.lua
#, fuzzy
msgid "Remove Protectors around players (separate names with spaces)"
msgstr ""
"Entferne Störschützer von bestimmten Namen in der Nähe von Spielern (trenne "
"Namen durch Leerzeichen)"
#: admin.lua
msgid "<names list>"
msgstr "<Namensliste der Spieler>"
#: admin.lua
msgid "Replace Protector Owner with name provided"
msgstr "Ersetze Besitzer der Störschützer mit neuem Besitzer"
#: admin.lua
msgid "<owner name> <name to replace with>"
msgstr "<Name des Besitzers> <Name des neuen Besitzers>"
#: admin.lua
msgid "Replacing Protector name '@1' with '@2'"
msgstr "Ersetze Besitzer der Störschützer von '@1' mit '@2'"
#: admin.lua
msgid "Show protected areas of your nearby protectors"
msgstr "Zeige geschützte Bereiche der Störschützer in der Nähe"
#: admin.lua
msgid "Protector Names to remove: @1"
msgstr "Störschutznamen zum Entfernen: @1"
#: admin.lua
msgid "Name List Reset"
msgstr "Namensliste zurückgesetzt"
#: doors_chest.lua
msgid "Protected Wooden Door"
msgstr "Geschützte Holztür"
#: doors_chest.lua
msgid "Protected Steel Door"
msgstr "Geschützte Stahltür"
#: doors_chest.lua
msgid "Protected Trapdoor"
msgstr "Geschützte Falltür"
#: doors_chest.lua
msgid "Protected Steel Trapdoor"
msgstr "Geschützte Stahlfalltür"
#: doors_chest.lua
msgid "Protected Chest"
msgstr "Geschützte Truhe"
#: doors_chest.lua
msgid "@1 moves stuff to protected chest at @2"
msgstr "@1 verlagert Dinge in geschützte Truhe bei @2"
#: doors_chest.lua
msgid "@1 takes stuff from protected chest at @2"
msgstr "@1 nimmt Dinge aus geschützter Truhe bei @2"
#: doors_chest.lua
msgid "@1 moves stuff inside protected chest at @2"
msgstr "@1 verschiebt Dinge innerhalb der geschützten Truhe bei @2"
#: doors_chest.lua
msgid "To Chest"
msgstr "Zur Truhe"
#: doors_chest.lua
msgid "To Inventory"
msgstr "Zum Inventar"
#: doors_chest.lua
msgid "Protected Chest (@1)"
msgstr "Geschützte Truhe (@1)"
#: init.lua
msgid "-- Protector interface --"
msgstr "-- Störschutz-Interface --"
#: init.lua
msgid "PUNCH node to show protected area"
msgstr "SCHLAGE Node, um geschützten Bereich anzuzeigen oder"
#: init.lua
msgid "USE for area check"
msgstr "BENUTZE für Bereichsprüfung"
#: init.lua
msgid "Members:"
msgstr "Mitglieder:"
#: init.lua
msgid "Close"
msgstr "Schließen"
#: init.lua
msgid "Protection located at: @1"
msgstr "Störschutz befindet sich bei: @1"
#: init.lua
msgid "Members: @1."
msgstr "Mitglieder: @1."
#: init.lua
msgid "This area is not protected."
msgstr "Dieser Bereich ist nicht geschützt."
#: init.lua
msgid "You can build here."
msgstr "Du kannst hier bauen."
#: init.lua tool.lua
msgid "Overlaps into above players protected area"
msgstr "Überlappung im geschützen Bereich eines Spielers"
#: init.lua
msgid "Protection Block"
msgstr "Störschutzblock"
#: admin.lua init.lua tool.lua
msgid "Protection (owned by @1)"
msgstr "Störschutz (gehört @1)"
#: init.lua
msgid "Protection Logo"
msgstr "Störschutzlogo"
#: init.lua
msgid "[MOD] Protector Redo loaded"
msgstr "[MOD] Protector Redo geladen"
#: init.lua
msgid "Spawn @1 has been protected up to a @2 block radius."
msgstr "Spawn @1 ist geschützt mit einem Radius von @2 Blöcke."
#: init.lua
msgid "This area is owned by @1"
msgstr "Dieser Bereich gehört @1"
#: pvp.lua
msgid "[Protector] on_punchplayer called with nil objects"
msgstr "on_punchplayer wurde durch \"nil objects\" aufgerufen"
#: pvp.lua
msgid "[Protector] pvp_protect not active, update your version of Minetest"
msgstr "pvp_protect ist nicht aktiv, aktualisiere deine Minetestversion"
#: pvp.lua
msgid "[Protector] pvp_protect is disabled"
msgstr "pvp_protect ist ausgeschaltet"
#: hud.lua
msgid "Owner: @1"
msgstr "Besitzer: @1"
#: tool.lua
msgid "Protector Placer Tool (stand near protector, face direction and use)"
msgstr ""
"Störschutz Platzier-Werkzeug (stehe neben Störschutz, schaue in die "
"gewünschte Richtung und anwenden)"
#: tool.lua
msgid "Protector already in place!"
msgstr "Störschutz is bereits platziert!"
#: tool.lua
msgid "No protectors available to place!"
msgstr "Keine Störschützer mehr im Inventar!"
#: tool.lua
msgid "Protector placed at @1"
msgstr "Störschutz befindet sich bei: @1"

View File

@ -1,44 +0,0 @@
# German Translation for protector mod
# Deutsche Übersetzung der protector Mod
# last update: 2016/June/5
# Author: Xanthin
#admin.lua
Remove Protectors near players with names provided (separate names with spaces) = Entferne Stoerschuetzer von bestimmten Namen in der Naehe von Spielern (trenne Namen durch Leerzeichen)
Protector Names to remove: @1 = Stoerschutznamen zum Entfernen: @1
Name List Reset = Namensliste zurueckgesetzt
#doors_chest.lua
Protected Wooden Door = Geschützte Holztür
Protected Steel Door = Geschützte Stahltür
Protected Trapdoor = Geschützte Falltür
Protected Steel Trapdoor = Geschützte Stahlfalltür
Protected Chest = Geschützte Truhe
@1 moves stuff to protected chest at @2 = @1 verlagert Dinge in geschützte Truhe bei @2
@1 takes stuff from protected chest at @2 = @1 nimmt Dinge aus geschützter Truhe bei @2
To Chest = Zur Truhe
To Inventory = Zum Inventar
Protected Chest (@1) = Geschützte Truhe (@1)
#init.lua
-- Protector interface -- = -- Störschutz-Interface --
PUNCH node to show protected area = SCHLAGE Node, um geschützten Bereich anzuzeigen oder
USE for area check = BENUTZE für Bereichsprüfung
Members: = Mitglieder:
Close = Schließen
This area is owned by @1! = Dieses Gebiet gehoert @1!
This area is owned by @1. = Dieses Gebiet gehoert @1.
Protection located at: @1 = Stoerschutz befindet sich bei: @1
Members: @1. = Mitglieder: @1.
This area is not protected. = Dieses Gebiet ist nicht geschuetzt.
You can build here. = Du kannst hier bauen.
Overlaps into above players protected area = Ueberlappt in geschuetzen Bereich eines Spielers
Protection Block = Störschutzblock
Protection (owned by @1) = Störschutz (gehört @1)
Protection Logo = Störschutzlogo
[MOD] Protector Redo loaded = [MOD] Protector Redo geladen
#pvp.lua
[Protector] on_punchplayer called with nil objects = on_punchplayer wurde durch "nil objects" aufgerufen
[Protector] pvp_protect not active, update your version of Minetest = pvp_protect ist nicht aktiv, aktualisiere deine Minetestversion
[Protector] pvp_protect is disabled = pvp_protect ist ausgeschaltet

198
locale/fr.po Normal file
View File

@ -0,0 +1,198 @@
# French translation for PROTECTOR MOD.
# Copyright (C) 2018 TenPlus1
# This file is distributed under the same license as the PROTECTOR MOD package.
# Doloment, 2017.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROTECTOR MOD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-10 17:33+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: CodeXP <codexp@gmx.net>\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"
#: admin.lua
#, fuzzy
msgid "Remove Protectors around players (separate names with spaces)"
msgstr ""
"Retirer les protecteurs près des joueurs avec les noms fournis (noms séparés "
"avec des espaces)"
#: admin.lua
msgid "<names list>"
msgstr ""
#: admin.lua
msgid "Replace Protector Owner with name provided"
msgstr ""
#: admin.lua
msgid "<owner name> <name to replace with>"
msgstr ""
#: admin.lua
msgid "Replacing Protector name '@1' with '@2'"
msgstr ""
#: admin.lua
msgid "Show protected areas of your nearby protectors"
msgstr ""
#: admin.lua
msgid "Protector Names to remove: @1"
msgstr "Noms de protecteurs à supprimer: @1"
#: admin.lua
msgid "Name List Reset"
msgstr "Liste de noms réinitialiser"
#: doors_chest.lua
msgid "Protected Wooden Door"
msgstr "Porte en bois protégée"
#: doors_chest.lua
msgid "Protected Steel Door"
msgstr "Porte en acier protégée"
#: doors_chest.lua
msgid "Protected Trapdoor"
msgstr "Trappe protégé"
#: doors_chest.lua
msgid "Protected Steel Trapdoor"
msgstr "Trap en acier protégé"
#: doors_chest.lua
msgid "Protected Chest"
msgstr "Coffre protégé"
#: doors_chest.lua
msgid "@1 moves stuff to protected chest at @2"
msgstr "@1 déplace des objets vers le coffre protégée à @2"
#: doors_chest.lua
msgid "@1 takes stuff from protected chest at @2"
msgstr "@1 prend des objets du coffre protégée à @2"
#: doors_chest.lua
#, fuzzy
msgid "@1 moves stuff inside protected chest at @2"
msgstr "@1 déplace des objets à l'intérieur de du coffre protégé à @2"
#: doors_chest.lua
msgid "To Chest"
msgstr "Vers le coffre"
#: doors_chest.lua
msgid "To Inventory"
msgstr "Vers l'inventaire"
#: doors_chest.lua
msgid "Protected Chest (@1)"
msgstr "Coffre protégé (@1)"
#: init.lua
msgid "-- Protector interface --"
msgstr "-- Interface Protector --"
#: init.lua
msgid "PUNCH node to show protected area"
msgstr "TAPÉ le bloc pour afficher la zone protégée"
#: init.lua
msgid "USE for area check"
msgstr "UTILISER pour vérifier la zone"
#: init.lua
msgid "Members:"
msgstr "Membres:"
#: init.lua
msgid "Close"
msgstr "Fermer"
#: init.lua
msgid "Protection located at: @1"
msgstr "Protection située à: @1"
#: init.lua
msgid "Members: @1."
msgstr "Membres: @1."
#: init.lua
msgid "This area is not protected."
msgstr "Cette zone n'est pas protégée."
#: init.lua
msgid "You can build here."
msgstr "Vous pouvez construire ici."
#: init.lua tool.lua
msgid "Overlaps into above players protected area"
msgstr "Vous chevauché une zone protégé."
#: init.lua
msgid "Protection Block"
msgstr "Bloc de protection"
#: admin.lua init.lua tool.lua
msgid "Protection (owned by @1)"
msgstr "Protection (détenue par @1)"
#: init.lua
msgid "Protection Logo"
msgstr "Logo de protection"
#: init.lua
msgid "[MOD] Protector Redo loaded"
msgstr "[MOD] Protector Redo chargé"
#: init.lua
msgid "Spawn @1 has been protected up to a @2 block radius."
msgstr ""
#: init.lua
#, fuzzy
msgid "This area is owned by @1"
msgstr "Cette zone appartient à @1!"
#: pvp.lua
msgid "[Protector] on_punchplayer called with nil objects"
msgstr "[Protector] on_punchplayer appelé avec des objets nil"
#: pvp.lua
msgid "[Protector] pvp_protect not active, update your version of Minetest"
msgstr ""
"[Protector] pvp_protect est désactivé, mettez à jour votre version de "
"Minetest"
#: pvp.lua
msgid "[Protector] pvp_protect is disabled"
msgstr "[Protector] pvp_protect est désactivé"
#: hud.lua
msgid "Owner: @1"
msgstr ""
#: tool.lua
msgid "Protector Placer Tool (stand near protector, face direction and use)"
msgstr ""
#: tool.lua
msgid "Protector already in place!"
msgstr ""
#: tool.lua
msgid "No protectors available to place!"
msgstr ""
#: tool.lua
msgid "Protector placed at @1"
msgstr "Protection située à: @1"

View File

@ -1,42 +0,0 @@
# Template for translations of protector mod
# last update: 2016/June/5
#admin.lua
Remove Protectors near players with names provided (separate names with spaces) = Retirer les protecteurs près des joueurs avec les noms fournis (noms séparés avec des espaces)
Protector Names to remove: @1 = Noms de protecteurs à supprimer: @1
Name List Reset = Liste de noms réinitialiser
#doors_chest.lua
Protected Wooden Door = Porte en bois protégée
Protected Steel Door = Porte en acier protégée
Protected Trapdoor = Trappe protégé
Protected Steel Trapdoor = Trap en acier protégé
Protected Chest = Coffre protégé
@1 moves stuff to protected chest at @2 = @1 déplace des objets vers le coffre protégée à @2
@1 takes stuff from protected chest at @2 = @1 prend des objets du coffre protégée à @2
To Chest = Vers le coffre
To Inventory = Vers l'inventaire
Protected Chest (@1) = Coffre protégé (@1)
#init.lua
-- Protector interface -- = -- Interface Protector --
PUNCH node to show protected area = TAPÉ le bloc pour afficher la zone protégée
USE for area check = UTILISER pour vérifier la zone
Members: = Membres:
Close = Fermer
This area is owned by @1! = Cette zone appartient à @1!
This area is owned by @1. = Cette zone appartient à @1.
Protection located at: @1 = Protection située à: @1
Members: @1. = Membres: @1.
This area is not protected. = Cette zone n'est pas protégée.
You can build here. = Vous pouvez construire ici.
Overlaps into above players protected area = Vous chevauché une zone protégé.
Protection Block = Bloc de protection
Protection (owned by @1) = Protection (détenue par @1)
Protection Logo = Logo de protection
[MOD] Protector Redo loaded = [MOD] Protector Redo chargé
#pvp.lua
[Protector] on_punchplayer called with nil objects = [Protector] on_punchplayer appelé avec des objets nil
[Protector] pvp_protect not active, update your version of Minetest = [Protector] pvp_protect est désactivé, mettez à jour votre version de Minetest
[Protector] pvp_protect is disabled = [Protector] pvp_protect est désactivé

197
locale/ru.po Normal file
View File

@ -0,0 +1,197 @@
# Russian translation for PROTECTOR MOD.
# Copyright (C) 2018 TenPlus1
# This file is distributed under the same license as the PROTECTOR MOD package.
# Doloment, 2017.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROTECTOR MOD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-10 17:33+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: CodeXP <codexp@gmx.net>\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"
#: admin.lua
#, fuzzy
msgid "Remove Protectors around players (separate names with spaces)"
msgstr ""
"Удалить защиту рядом с игроками (перечислить имена, разделяя пробелами)"
#: admin.lua
msgid "<names list>"
msgstr "<список имён>"
#: admin.lua
msgid "Replace Protector Owner with name provided"
msgstr "Заменить владельца защиты новым владельцем"
#: admin.lua
msgid "<owner name> <name to replace with>"
msgstr "<имя владельца> <имя нового владельца>"
#: admin.lua
msgid "Replacing Protector name '@1' with '@2'"
msgstr "Заменяется владелец защиты с '@1' на '@2'"
#: admin.lua
msgid "Show protected areas of your nearby protectors"
msgstr "Показать защищенные территории с ближней защитой"
#: admin.lua
msgid "Protector Names to remove: @1"
msgstr "Имена защит, подлежащих удалению: @1"
#: admin.lua
msgid "Name List Reset"
msgstr "Сброс списка имен"
#: doors_chest.lua
msgid "Protected Wooden Door"
msgstr "Защищенная яблоневая дверь"
#: doors_chest.lua
msgid "Protected Steel Door"
msgstr "Защищенная стальная дверь"
#: doors_chest.lua
msgid "Protected Trapdoor"
msgstr "Защищенный яблоневый люк"
#: doors_chest.lua
msgid "Protected Steel Trapdoor"
msgstr "Защищенный стальной люк"
#: doors_chest.lua
msgid "Protected Chest"
msgstr "Защищенный сундук"
#: doors_chest.lua
msgid "@1 moves stuff to protected chest at @2"
msgstr "@1 перемещает вещи в защищенный сундук на координатах @2"
#: doors_chest.lua
msgid "@1 takes stuff from protected chest at @2"
msgstr "@1 берет вещи из защищенного сундука на координатах @2"
#: doors_chest.lua
msgid "@1 moves stuff inside protected chest at @2"
msgstr "@1 перемещает вещи внутри защищенного сундука на координатах @2"
#: doors_chest.lua
msgid "To Chest"
msgstr "В сундук"
#: doors_chest.lua
msgid "To Inventory"
msgstr "В инвентрарь"
#: doors_chest.lua
msgid "Protected Chest (@1)"
msgstr "Защищенный сундук (@1)"
#: init.lua
msgid "-- Protector interface --"
msgstr "-- Настройка защиты --"
#: init.lua
msgid "PUNCH node to show protected area"
msgstr "СТУКНУТЬ узел для подсведки защищенной территории"
#: init.lua
msgid "USE for area check"
msgstr "ЛКМ для проверки защищенной территории"
#: init.lua
msgid "Members:"
msgstr "Участники:"
#: init.lua
msgid "Close"
msgstr "Закрыть"
#: init.lua
msgid "Protection located at: @1"
msgstr "Защита находится на координатах @1"
#: init.lua
msgid "Members: @1."
msgstr "Участники: @1."
#: init.lua
msgid "This area is not protected."
msgstr "Территория свободна."
#: init.lua
msgid "You can build here."
msgstr "Здесь можно ставить блоки."
#: init.lua tool.lua
msgid "Overlaps into above players protected area"
msgstr ""
"Защитный блок не может быть установлен: пересечение с областями, защищенными "
"другими игроками"
#: init.lua
msgid "Protection Block"
msgstr "Защитный блок"
#: admin.lua init.lua tool.lua
msgid "Protection (owned by @1)"
msgstr "Защита игрока @1"
#: init.lua
msgid "Protection Logo"
msgstr "Защитный знак"
#: init.lua
msgid "[MOD] Protector Redo loaded"
msgstr "[MOD] Модификация \"Переделанная Защита\" загружена"
#: init.lua
msgid "Spawn @1 has been protected up to a @2 block radius."
msgstr "Спаун @1 защищен в радиусе @2 блока."
#: init.lua
msgid "This area is owned by @1"
msgstr "Эта территория пренадлежит @1"
#: pvp.lua
msgid "[Protector] on_punchplayer called with nil objects"
msgstr "[Защита] on_punchplayer вызвана с нулевыми объектами"
#: pvp.lua
msgid "[Protector] pvp_protect not active, update your version of Minetest"
msgstr "[Защита] pvp_protect не активен, обновите версию Minetest"
#: pvp.lua
msgid "[Protector] pvp_protect is disabled"
msgstr "[Защита] pvp_protect отключен"
#: hud.lua
msgid "Owner: @1"
msgstr "Владелец: @1"
#: tool.lua
msgid "Protector Placer Tool (stand near protector, face direction and use)"
msgstr ""
"Инструмент установки защиты (станьте рядом с защитой, повернитесь в нужное "
"направление и используйте)"
#: tool.lua
msgid "Protector already in place!"
msgstr "Защита уже установлена!"
#: tool.lua
msgid "No protectors available to place!"
msgstr "У вас нет защитных блоков в инвентаре!"
#: tool.lua
msgid "Protector placed at @1"
msgstr "Защита находится на координатах @1"

View File

@ -1,45 +0,0 @@
# Russian Translation for protector mod
# Русский Перевод для Мода "Переделанная Защита"
# last update: 2017/October/15
# Author: Doloment
#admin.lua
Remove Protectors near players with names provided (separate names with spaces) = Удалить защиту рядом с игроками с именами (перечислить, разделяя пробелами)
Protector Names to remove: @1 = Имена защит, подлежащих удалению: @1
Name List Reset = Сброс списка имен
#doors_chest.lua
Protected Wooden Door = Защищенная яблоневая дверь
Protected Steel Door = Защищенная стальная дверь
Protected Trapdoor = Защищенный яблоневый люк
Protected Steel Trapdoor = Защищенный стальной люк
Protected Chest = Защищенный сундук
@1 moves stuff to protected chest at @2 = @1 перемещает вещи в защищенный сундук на координатах @2
@1 takes stuff from protected chest at @2 = @1 берет вещи из защищенного сундука на координатах @2
To Chest = В сундук
To Inventory = В инвентрарь
Protected Chest (@1) = Защищенный сундук (@1)
#init.lua
-- Protector interface -- =
PUNCH node to show protected area = СТУКНУТЬ узел для подсведки защищенной территории
USE for area check = ЛКМ для проверки защищенной территории
Members: = Участники:
Close = Закрыть
This area is owned by @1! = Эта территория пренадлежит @1!
This area is owned by @1. = Эта территория пренадлежит @1.
Protection located at: @1 = Защита находится на координатах @1
Members: @1. = Участники: @1.
This area is not protected. = Территория свободна.
You can build here. = Здесь можно ставить блоки.
Overlaps into above players protected area = Защитный блок не может быть установлен: пересечение с областями, защищенными другими игроками
Protection Block = Защитный блок
Protection (owned by @1) = Защита игрока @1
Protection Logo = Защитный знак
[MOD] Protector Redo loaded = [МОДИФИКАЦИЯ] Модификация "Переделанная Защита" загружена
#pvp.lua
[Protector] on_punchplayer called with nil objects = [Защита] on_punchplayer вызвана с нулевыми объектами
[Protector] pvp_protect not active, update your version of Minetest = [Защита] pvp_protect не активен, обновите версию Minetest
[Protector] pvp_protect is disabled = [Защита] pvp_protect отключен

191
locale/template.pot Normal file
View File

@ -0,0 +1,191 @@
# Template for PROTECTOR MOD.
# Copyright (C) 2018 TenPlus1
# This file is distributed under the same license as the PROTECTOR MOD package.
# Xanthin <xanthin@wiuwiu.de>, 2016.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROTECTOR MOD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-10 17:33+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: CodeXP <codexp@gmx.net>\n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: admin.lua
msgid "Remove Protectors around players (separate names with spaces)"
msgstr ""
#: admin.lua
msgid "<names list>"
msgstr ""
#: admin.lua
msgid "Replace Protector Owner with name provided"
msgstr ""
#: admin.lua
msgid "<owner name> <name to replace with>"
msgstr ""
#: admin.lua
msgid "Replacing Protector name '@1' with '@2'"
msgstr ""
#: admin.lua
msgid "Show protected areas of your nearby protectors"
msgstr ""
#: admin.lua
msgid "Protector Names to remove: @1"
msgstr ""
#: admin.lua
msgid "Name List Reset"
msgstr ""
#: doors_chest.lua
msgid "Protected Wooden Door"
msgstr ""
#: doors_chest.lua
msgid "Protected Steel Door"
msgstr ""
#: doors_chest.lua
msgid "Protected Trapdoor"
msgstr ""
#: doors_chest.lua
msgid "Protected Steel Trapdoor"
msgstr ""
#: doors_chest.lua
msgid "Protected Chest"
msgstr ""
#: doors_chest.lua
msgid "@1 moves stuff to protected chest at @2"
msgstr ""
#: doors_chest.lua
msgid "@1 takes stuff from protected chest at @2"
msgstr ""
#: doors_chest.lua
msgid "@1 moves stuff inside protected chest at @2"
msgstr ""
#: doors_chest.lua
msgid "To Chest"
msgstr ""
#: doors_chest.lua
msgid "To Inventory"
msgstr ""
#: doors_chest.lua
msgid "Protected Chest (@1)"
msgstr ""
#: init.lua
msgid "-- Protector interface --"
msgstr ""
#: init.lua
msgid "PUNCH node to show protected area"
msgstr ""
#: init.lua
msgid "USE for area check"
msgstr ""
#: init.lua
msgid "Members:"
msgstr ""
#: init.lua
msgid "Close"
msgstr ""
#: init.lua
msgid "Protection located at: @1"
msgstr ""
#: init.lua
msgid "Members: @1."
msgstr ""
#: init.lua
msgid "This area is not protected."
msgstr ""
#: init.lua
msgid "You can build here."
msgstr ""
#: init.lua tool.lua
msgid "Overlaps into above players protected area"
msgstr ""
#: init.lua
msgid "Protection Block"
msgstr ""
#: admin.lua init.lua tool.lua
msgid "Protection (owned by @1)"
msgstr ""
#: init.lua
msgid "Protection Logo"
msgstr ""
#: init.lua
msgid "[MOD] Protector Redo loaded"
msgstr ""
#: init.lua
msgid "Spawn @1 has been protected up to a @2 block radius."
msgstr ""
#: init.lua
msgid "This area is owned by @1"
msgstr ""
#: pvp.lua
msgid "[Protector] on_punchplayer called with nil objects"
msgstr ""
#: pvp.lua
msgid "[Protector] pvp_protect not active, update your version of Minetest"
msgstr ""
#: pvp.lua
msgid "[Protector] pvp_protect is disabled"
msgstr ""
#: hud.lua
msgid "Owner: @1"
msgstr ""
#: tool.lua
msgid "Protector Placer Tool (stand near protector, face direction and use)"
msgstr ""
#: tool.lua
msgid "Protector already in place!"
msgstr ""
#: tool.lua
msgid "No protectors available to place!"
msgstr ""
#: tool.lua
msgid "Protector placed at @1"
msgstr ""

View File

@ -1,42 +0,0 @@
# Template for translations of protector mod
# last update: 2016/June/5
#admin.lua
Remove Protectors near players with names provided (separate names with spaces) =
Protector Names to remove: @1 =
Name List Reset =
#doors_chest.lua
Protected Wooden Door =
Protected Steel Door =
Protected Trapdoor =
Protected Steel Trapdoor =
Protected Chest =
@1 moves stuff to protected chest at @2 =
@1 takes stuff from protected chest at @2 =
To Chest =
To Inventory =
Protected Chest (@1) =
#init.lua
-- Protector interface -- =
PUNCH node to show protected area =
USE for area check =
Members: =
Close =
This area is owned by @1! =
This area is owned by @1. =
Protection located at: @1 =
Members: @1. =
This area is not protected. =
You can build here. =
Overlaps into above players protected area =
Protection Block =
Protection (owned by @1) =
Protection Logo =
[MOD] Protector Redo loaded =
#pvp.lua
[Protector] on_punchplayer called with nil objects =
[Protector] pvp_protect not active, update your version of Minetest =
[Protector] pvp_protect is disabled =

195
locale/tr.po Normal file
View File

@ -0,0 +1,195 @@
# Turkish translation for PROTECTOR MOD.
# Copyright (C) 2018 TenPlus1
# This file is distributed under the same license as the PROTECTOR MOD package.
# mahmutelmas06, 2016.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PROTECTOR MOD\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-10 17:33+0200\n"
"PO-Revision-Date: \n"
"Last-Translator: CodeXP <codexp@gmx.net>\n"
"Language-Team: \n"
"Language: tr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
#: admin.lua
#, fuzzy
msgid "Remove Protectors around players (separate names with spaces)"
msgstr ""
"Ismi verilen oyuncuların yanındaki korumaları kaldır. (İsimleri boşlukla "
"ayır)"
#: admin.lua
msgid "<names list>"
msgstr ""
#: admin.lua
msgid "Replace Protector Owner with name provided"
msgstr ""
#: admin.lua
msgid "<owner name> <name to replace with>"
msgstr ""
#: admin.lua
msgid "Replacing Protector name '@1' with '@2'"
msgstr ""
#: admin.lua
msgid "Show protected areas of your nearby protectors"
msgstr ""
#: admin.lua
msgid "Protector Names to remove: @1"
msgstr "Silinecek korumaların isimleri: @1"
#: admin.lua
msgid "Name List Reset"
msgstr "İsim listesini sıfırla"
#: doors_chest.lua
msgid "Protected Wooden Door"
msgstr "Korumalı ahşap kapı"
#: doors_chest.lua
msgid "Protected Steel Door"
msgstr "Korumalı çelik kapı"
#: doors_chest.lua
msgid "Protected Trapdoor"
msgstr "Korumalı tuzak kapısı"
#: doors_chest.lua
msgid "Protected Steel Trapdoor"
msgstr "Korumalı çelik tuzak kapısı"
#: doors_chest.lua
msgid "Protected Chest"
msgstr "Korumalı sandık"
#: doors_chest.lua
msgid "@1 moves stuff to protected chest at @2"
msgstr "@1 korumalı sandığa birşeyler koydu @2"
#: doors_chest.lua
msgid "@1 takes stuff from protected chest at @2"
msgstr "@1 korumalı sandıktan birşeyler aldı @2"
#: doors_chest.lua
#, fuzzy
msgid "@1 moves stuff inside protected chest at @2"
msgstr "@1 korumalı sandığa içinde bir şeyler taşındı @2"
#: doors_chest.lua
msgid "To Chest"
msgstr "Sandığa"
#: doors_chest.lua
msgid "To Inventory"
msgstr "Envantere"
#: doors_chest.lua
msgid "Protected Chest (@1)"
msgstr "Korumalı sandık (@1)"
#: init.lua
msgid "-- Protector interface --"
msgstr ""
#: init.lua
msgid "PUNCH node to show protected area"
msgstr "Korunan alanı göstermek için yumruk"
#: init.lua
msgid "USE for area check"
msgstr "Bölge kontrolü için kullan"
#: init.lua
msgid "Members:"
msgstr "Üyeler"
#: init.lua
msgid "Close"
msgstr "Kapat"
#: init.lua
msgid "Protection located at: @1"
msgstr "Korumanın bulunduğu yer @1"
#: init.lua
msgid "Members: @1."
msgstr "Üyeler @1."
#: init.lua
msgid "This area is not protected."
msgstr "Bu alan korumalı değildir."
#: init.lua
msgid "You can build here."
msgstr "Buraya inşaa edebilirsiniz."
#: init.lua tool.lua
msgid "Overlaps into above players protected area"
msgstr ""
#: init.lua
msgid "Protection Block"
msgstr "Koruma kutusu"
#: admin.lua init.lua tool.lua
msgid "Protection (owned by @1)"
msgstr "Koruma (@1 sahibidir)"
#: init.lua
msgid "Protection Logo"
msgstr "Koruma arması"
#: init.lua
msgid "[MOD] Protector Redo loaded"
msgstr "[MOD] Protector Redo yüklendi"
#: init.lua
msgid "Spawn @1 has been protected up to a @2 block radius."
msgstr ""
#: init.lua
msgid "This area is owned by @1"
msgstr "Burasının sahibi @1!"
#: pvp.lua
msgid "[Protector] on_punchplayer called with nil objects"
msgstr "[Protector] on_punchplayer boş objelerle çağrıldı"
#: pvp.lua
msgid "[Protector] pvp_protect not active, update your version of Minetest"
msgstr "[Protector] pvp_protect aktif değil, Minetest sürümünüzü güncelleyin."
#: pvp.lua
msgid "[Protector] pvp_protect is disabled"
msgstr "[Protector] pvp_protect kapatıldı."
#: hud.lua
msgid "Owner: @1"
msgstr ""
#: tool.lua
msgid "Protector Placer Tool (stand near protector, face direction and use)"
msgstr ""
#: tool.lua
msgid "Protector already in place!"
msgstr ""
#: tool.lua
msgid "No protectors available to place!"
msgstr ""
#: tool.lua
msgid "Protector placed at @1"
msgstr "Korumanın bulunduğu yer @1"

View File

@ -1,42 +0,0 @@
# Turkish translation by mahmutelmas06
# last update: 2016/June/5
#admin.lua
Remove Protectors near players with names provided (separate names with spaces) = Ismi verilen oyuncuların yanındaki korumaları kaldır. ( İsimleri boşlukla ayır)
Protector Names to remove: @1 = Silinecek korumaların isimleri: @1
Name List Reset = İsim listesini sıfırla
#doors_chest.lua
Protected Wooden Door = Korumalı ahşap kapı
Protected Steel Door = Korumalı çelik kapı
Protected Trapdoor = Korumalı tuzak kapısı
Protected Steel Trapdoor = Korumalı çelik tuzak kapısı
Protected Chest = Korumalı sandık
@1 moves stuff to protected chest at @2 = @1 korumalı sandığa birşeyler koydu @2
@1 takes stuff from protected chest at @2 = @1 korumalı sandıktan birşeyler aldı @2
To Chest = Sandığa
To Inventory = Envantere
Protected Chest (@1) = Korumalı sandık (@1)
#init.lua
-- Protector interface -- =
PUNCH node to show protected area = Korunan alanı göstermek için yumruk
USE for area check = Bölge kontrolü için kullan
Members: = Üyeler
Close = Kapat
This area is owned by @1! = Burasının sahibi @1!
This area is owned by @1. = Burasının sahibi @1.
Protection located at: @1 = Korumanın bulunduğu yer @1
Members: @1. = Üyeler @1.
This area is not protected. = Bu alan korumalı değildir.
You can build here. = Buraya inşaa edebilirsiniz.
Overlaps into above players protected area =
Protection Block = Koruma kutusu
Protection (owned by @1) = Koruma (@1 sahibidir)
Protection Logo = Koruma arması
[MOD] Protector Redo loaded = [MOD] Protector Redo yüklendi
#pvp.lua
[Protector] on_punchplayer called with nil objects = [Protector] on_punchplayer boş objelerle çağrıldı
[Protector] pvp_protect not active, update your version of Minetest = [Protector] pvp_protect aktif değil, Minetest sürümünüzü güncelleyin.
[Protector] pvp_protect is disabled = [Protector] pvp_protect kapatıldı.