1
0
mirror of https://github.com/minetest-mods/3d_armor.git synced 2025-06-29 06:40:41 +02:00

35 Commits

Author SHA1 Message Date
1d22612664 Bump version to 0.4.13 2019-03-05 20:01:01 +00:00
3fe7dd2249 Replace deprecated getpos call 2019-03-05 19:40:54 +00:00
be9579a365 Offset models for minetest 5.0.0 2019-03-05 19:30:38 +00:00
18320e96b9 Replace braces within replace to avoid invalid line error 2019-03-05 19:27:37 +00:00
99471d3aa0 Create settingtypes.txt file 2019-03-05 19:27:37 +00:00
b6283f3f0f Fix some default settings values in README 2019-03-05 19:27:37 +00:00
7e2d9426d1 fix formatting 2019-01-20 23:21:05 +00:00
813a88f3a1 Fixes Stand appending extra ".png" to texture when a "texture" attribute
is explicity set on the armor's definition.
2019-01-20 23:21:05 +00:00
4c032e8c7e Add Portuguese Translations 2018-11-09 17:50:10 +00:00
945e816b55 Locale es.po created 2018-10-23 18:02:46 +01:00
10ded06705 Create es.po 2018-10-23 18:02:46 +01:00
43a69ad853 Locale es.po created 2018-10-23 18:02:46 +01:00
13a8f0d019 Add new textures 2018-10-19 20:37:48 +01:00
70325158e6 Reverts 9ce0ed9f55 / #152
The preview method is skin preview only, without armor. That is wrong for showing on formspec

Sorry for inconveniences. I need to fix the preview handling in player_api_modpack-version in an other way
2018-08-24 18:58:32 +01:00
c96ba7ef34 Cleanup locales (#155)
* use localization function in formspecs

* remove unused translations

* remove F keyword from updatepo tool

* add tool readme
2018-07-26 20:05:50 +01:00
838867a6bc add russian locale 2018-07-22 20:53:38 +01:00
9ce0ed9f55 Use preview method for unified inventory
I found this during porting the 3d_armor to player_api ;-)
2018-07-22 20:51:07 +01:00
c0d45ceaa1 show fire: value
this fixes the Fire: value in formspec so it shows a number instead of "Fire: armor_fire".
2018-06-18 20:21:58 +01:00
656bcf30bc Bump version to 0.4.12 2018-06-10 19:39:38 +01:00
579e64a5e7 Code tidy 2018-06-02 22:13:41 +01:00
6f99803d2d Return invalid items in singleplayer mode 2018-06-02 20:46:44 +01:00
f960fc1a41 Only validate armor inventory after user changes 2018-06-02 18:59:32 +01:00
af4a381433 Update screenshot image 2018-05-24 19:25:34 +01:00
1f11a28ad4 More armor callback fixes 2018-05-24 19:06:27 +01:00
a5ddc3e60a Move comment :) 2018-05-23 21:40:06 +01:00
83f3e01efa Run callbacks based on validated inventory 2018-05-23 20:15:09 +01:00
7d30bc25a3 Allow replacing similar armor in the same slot 2018-05-22 18:40:24 +01:00
e4b12558d4 Ammendment to 21b5c68505 2018-05-19 21:35:15 +01:00
21b5c68505 Validate and clean armor inventory before saving 2018-05-19 20:25:27 +01:00
21716ffd31 Display correct heal attribute level, fixes #137 2018-05-13 16:52:29 +01:00
cc6fff2b04 Shields: Fix positional sound effects 2018-05-13 16:31:51 +01:00
4210cafff3 add POVA support (#138)
* add POVA support

Add support for POVA player overrides.

* add POVA support

Add support for POVA player overrides.
2018-05-07 14:41:40 +01:00
579d245a00 Fix crash with UI but no technic 2018-02-23 18:00:43 +00:00
c812e0ac56 Shields: Add option to disable sound effects 2018-02-18 20:35:49 +00:00
4baed2ca22 Remove on_punch effects from admin armor, closes #131 2018-02-18 20:24:35 +00:00
29 changed files with 1535 additions and 503 deletions

View File

@ -32,11 +32,11 @@ armor_material_mithril = true
armor_material_crystal = true armor_material_crystal = true
-- Increase this if you get initialization glitches when a player first joins. -- Increase this if you get initialization glitches when a player first joins.
armor_init_delay = 1 armor_init_delay = 2
-- Number of initialization attempts. -- Number of initialization attempts.
-- Use in conjunction with armor_init_delay if initialization problems persist. -- Use in conjunction with armor_init_delay if initialization problems persist.
armor_init_times = 1 armor_init_times = 10
-- Increase this if armor is not getting into bones due to server lag. -- Increase this if armor is not getting into bones due to server lag.
armor_bones_delay = 1 armor_bones_delay = 1
@ -111,7 +111,7 @@ armor:register_armor("mod_name:speed_boots", {
damage_groups = {cracky=3, snappy=3, choppy=3, crumbly=3, level=1}, damage_groups = {cracky=3, snappy=3, choppy=3, crumbly=3, level=1},
reciprocate_damage = true, reciprocate_damage = true,
on_destroy = function(player, index, stack) on_destroy = function(player, index, stack)
local pos = player:getpos() local pos = player:get_pos()
if pos then if pos then
minetest.sound_play({ minetest.sound_play({
name = "mod_name_break_sound", name = "mod_name_break_sound",

View File

@ -4,6 +4,7 @@ local S = armor_i18n.gettext
local skin_previews = {} local skin_previews = {}
local use_player_monoids = minetest.global_exists("player_monoids") local use_player_monoids = minetest.global_exists("player_monoids")
local use_armor_monoid = minetest.global_exists("armor_monoid") local use_armor_monoid = minetest.global_exists("armor_monoid")
local use_pova_mod = minetest.get_modpath("pova")
local armor_def = setmetatable({}, { local armor_def = setmetatable({}, {
__index = function() __index = function()
return setmetatable({ return setmetatable({
@ -73,7 +74,7 @@ armor = {
on_destroy = {}, on_destroy = {},
}, },
migrate_old_inventory = true, migrate_old_inventory = true,
version = "0.4.11", version = "0.4.13",
} }
armor.config = { armor.config = {
@ -269,7 +270,8 @@ armor.set_player_armor = function(self, player)
change[group] = groups[group] / base change[group] = groups[group] / base
end end
for _, attr in pairs(self.attributes) do for _, attr in pairs(self.attributes) do
self.def[name][attr] = attributes[attr] local mult = attr == "heal" and self.config.heal_multiplier or 1
self.def[name][attr] = attributes[attr] * mult
end end
for _, phys in pairs(self.physics) do for _, phys in pairs(self.physics) do
self.def[name][phys] = physics[phys] self.def[name][phys] = physics[phys]
@ -286,6 +288,14 @@ armor.set_player_armor = function(self, player)
"3d_armor:physics") "3d_armor:physics")
player_monoids.gravity:add_change(player, physics.gravity, player_monoids.gravity:add_change(player, physics.gravity,
"3d_armor:physics") "3d_armor:physics")
elseif use_pova_mod then
-- only add the changes, not the default 1.0 for each physics setting
pova.add_override(name, "3d_armor", {
speed = physics.speed - 1,
jump = physics.jump - 1,
gravity = physics.gravity - 1,
})
pova.do_override(player)
else else
player:set_physics_override(physics) player:set_physics_override(physics)
end end
@ -428,6 +438,14 @@ armor.get_armor_formspec = function(self, name, listring)
return formspec return formspec
end end
armor.get_element = function(self, item_name)
for _, element in pairs(armor.elements) do
if minetest.get_item_group(item_name, "armor_"..element) > 0 then
return element
end
end
end
armor.serialize_inventory_list = function(self, list) armor.serialize_inventory_list = function(self, list)
local list_table = {} local list_table = {}
for _, stack in ipairs(list) do for _, stack in ipairs(list) do
@ -446,37 +464,23 @@ armor.deserialize_inventory_list = function(self, list_string)
end end
armor.load_armor_inventory = function(self, player) armor.load_armor_inventory = function(self, player)
local msg = "[load_armor_inventory]" local _, inv = self:get_valid_player(player, "[load_armor_inventory]")
local name = player:get_player_name() if inv then
if not name then
minetest.log("warning", S("3d_armor: Player name is nil @1", msg))
return
end
local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
if not armor_inv then
minetest.log("warning", S("3d_armor: Detached armor inventory is nil @1", msg))
return
end
local armor_list_string = player:get_attribute("3d_armor_inventory") local armor_list_string = player:get_attribute("3d_armor_inventory")
if armor_list_string then if armor_list_string then
armor_inv:set_list("armor", self:deserialize_inventory_list(armor_list_string)) inv:set_list("armor",
self:deserialize_inventory_list(armor_list_string))
return true return true
end end
end end
end
armor.save_armor_inventory = function(self, player) armor.save_armor_inventory = function(self, player)
local msg = "[save_armor_inventory]" local _, inv = self:get_valid_player(player, "[save_armor_inventory]")
local name = player:get_player_name() if inv then
if not name then player:set_attribute("3d_armor_inventory",
minetest.log("warning", S("3d_armor: Player name is nil @1", msg)) self:serialize_inventory_list(inv:get_list("armor")))
return
end end
local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
if not armor_inv then
minetest.log("warning", S("3d_armor: Detached armor inventory is nil @1", msg))
return
end
player:set_attribute("3d_armor_inventory", self:serialize_inventory_list(armor_inv:get_list("armor")))
end end
armor.update_inventory = function(self, player) armor.update_inventory = function(self, player)
@ -484,20 +488,12 @@ armor.update_inventory = function(self, player)
end end
armor.set_inventory_stack = function(self, player, i, stack) armor.set_inventory_stack = function(self, player, i, stack)
local msg = "[set_inventory_stack]" local _, inv = self:get_valid_player(player, "[set_inventory_stack]")
local name = player:get_player_name() if inv then
if not name then inv:set_stack("armor", i, stack)
minetest.log("warning", S("3d_armor: Player name is nil @1", msg))
return
end
local armor_inv = minetest.get_inventory({type="detached", name=name.."_armor"})
if not armor_inv then
minetest.log("warning", S("3d_armor: Detached armor inventory is nil @1", msg))
return
end
armor_inv:set_stack("armor", i, stack)
self:save_armor_inventory(player) self:save_armor_inventory(player)
end end
end
armor.get_valid_player = function(self, player, msg) armor.get_valid_player = function(self, player, msg)
msg = msg or "" msg = msg or ""

View File

@ -1,6 +1,7 @@
default default
player_monoids? player_monoids?
armor_monoid? armor_monoid?
pova?
fire? fire?
ethereal? ethereal?
bakedclay? bakedclay?

View File

@ -1,13 +1,3 @@
-- support for i18n
armor_i18n = { }
local MP = minetest.get_modpath(minetest.get_current_modname())
armor_i18n.gettext, armor_i18n.ngettext = dofile(MP.."/intllib.lua")
-- escaping formspec
armor_i18n.fgettext = function(...) return minetest.formspec_escape(armor_i18n.gettext(...)) end
-- local functions
local S = armor_i18n.gettext
local F = armor_i18n.fgettext
local modname = minetest.get_current_modname() local modname = minetest.get_current_modname()
local modpath = minetest.get_modpath(modname) local modpath = minetest.get_modpath(modname)
local worldpath = minetest.get_worldpath() local worldpath = minetest.get_worldpath()
@ -15,6 +5,14 @@ local last_punch_time = {}
local pending_players = {} local pending_players = {}
local timer = 0 local timer = 0
-- support for i18n
armor_i18n = { }
armor_i18n.gettext, armor_i18n.ngettext = dofile(modpath.."/intllib.lua")
-- local functions
local S = armor_i18n.gettext
local F = minetest.formspec_escape
dofile(modpath.."/api.lua") dofile(modpath.."/api.lua")
-- Legacy Config Support -- Legacy Config Support
@ -68,7 +66,7 @@ end
if minetest.get_modpath("technic") then if minetest.get_modpath("technic") then
armor.formspec = armor.formspec.. armor.formspec = armor.formspec..
"label[5,2.5;"..F("Radiation")..": armor_group_radiation]" "label[5,2.5;"..F(S("Radiation"))..": armor_group_radiation]"
armor:register_armor_group("radiation") armor:register_armor_group("radiation")
end end
local skin_mods = {"skins", "u_skins", "simple_skins", "wardrobe"} local skin_mods = {"skins", "u_skins", "simple_skins", "wardrobe"}
@ -96,10 +94,10 @@ dofile(modpath.."/armor.lua")
-- Armor Initialization -- Armor Initialization
armor.formspec = armor.formspec.. armor.formspec = armor.formspec..
"label[5,1;"..F("Level")..": armor_level]".. "label[5,1;"..F(S("Level"))..": armor_level]"..
"label[5,1.5;"..F("Heal")..": armor_attr_heal]" "label[5,1.5;"..F(S("Heal"))..": armor_attr_heal]"
if armor.config.fire_protect then if armor.config.fire_protect then
armor.formspec = armor.formspec.."label[5,2;"..F("Fire")..": armor_fire]" armor.formspec = armor.formspec.."label[5,2;"..F(S("Fire"))..": armor_attr_fire]"
end end
armor:register_on_destroy(function(player, index, stack) armor:register_on_destroy(function(player, index, stack)
local name = player:get_player_name() local name = player:get_player_name()
@ -109,42 +107,93 @@ armor:register_on_destroy(function(player, index, stack)
end end
end) end)
local function validate_armor_inventory(player)
-- Workaround for detached inventory swap exploit
local _, inv = armor:get_valid_player(player, "[validate_armor_inventory]")
if not inv then
return
end
local armor_prev = {}
local armor_list_string = player:get_attribute("3d_armor_inventory")
if armor_list_string then
local armor_list = armor:deserialize_inventory_list(armor_list_string)
for i, stack in ipairs(armor_list) do
if stack:get_count() > 0 then
armor_prev[stack:get_name()] = i
end
end
end
local elements = {}
local player_inv = player:get_inventory()
for i = 1, 6 do
local stack = inv:get_stack("armor", i)
if stack:get_count() > 0 then
local item = stack:get_name()
local element = armor:get_element(item)
if element and not elements[element] then
if armor_prev[item] then
armor_prev[item] = nil
else
-- Item was not in previous inventory
armor:run_callbacks("on_equip", player, i, stack)
end
elements[element] = true;
else
inv:remove_item("armor", stack)
-- The following code returns invalid items to the player's main
-- inventory but could open up the possibity for a hacked client
-- to receive items back they never really had. I am not certain
-- so remove the is_singleplayer check at your own risk :]
if minetest.is_singleplayer() and player_inv and
player_inv:room_for_item("main", stack) then
player_inv:add_item("main", stack)
end
end
end
end
for item, i in pairs(armor_prev) do
local stack = ItemStack(item)
-- Previous item is not in current inventory
armor:run_callbacks("on_unequip", player, i, stack)
end
end
local function init_player_armor(player) local function init_player_armor(player)
local name = player:get_player_name() local name = player:get_player_name()
local pos = player:getpos() local pos = player:get_pos()
if not name or not pos then if not name or not pos then
return false return false
end end
local armor_inv = minetest.create_detached_inventory(name.."_armor", { local armor_inv = minetest.create_detached_inventory(name.."_armor", {
on_put = function(inv, listname, index, stack, player) on_put = function(inv, listname, index, stack, player)
validate_armor_inventory(player)
armor:save_armor_inventory(player) armor:save_armor_inventory(player)
armor:run_callbacks("on_equip", player, index, stack)
armor:set_player_armor(player) armor:set_player_armor(player)
end, end,
on_take = function(inv, listname, index, stack, player) on_take = function(inv, listname, index, stack, player)
validate_armor_inventory(player)
armor:save_armor_inventory(player) armor:save_armor_inventory(player)
armor:run_callbacks("on_unequip", player, index, stack)
armor:set_player_armor(player) armor:set_player_armor(player)
end, end,
on_move = function(inv, from_list, from_index, to_list, to_index, count, player) on_move = function(inv, from_list, from_index, to_list, to_index, count, player)
validate_armor_inventory(player)
armor:save_armor_inventory(player) armor:save_armor_inventory(player)
armor:set_player_armor(player) armor:set_player_armor(player)
end, end,
allow_put = function(inv, listname, index, stack, player) allow_put = function(inv, listname, index, put_stack, player)
local def = stack:get_definition() or {} local element = armor:get_element(put_stack:get_name())
local allowed = 0 if not element then
for _, element in pairs(armor.elements) do return 0
if def.groups["armor_"..element] then end
allowed = 1
for i = 1, 6 do for i = 1, 6 do
local item = inv:get_stack("armor", i):get_name() local stack = inv:get_stack("armor", i)
if minetest.get_item_group(item, "armor_"..element) > 0 then local def = stack:get_definition() or {}
if def.groups and def.groups["armor_"..element]
and i ~= index then
return 0 return 0
end end
end end
end return 1
end
return allowed
end, end,
allow_take = function(inv, listname, index, stack, player) allow_take = function(inv, listname, index, stack, player)
return stack:get_count() return stack:get_count()
@ -166,8 +215,10 @@ local function init_player_armor(player)
end end
for i=1, 6 do for i=1, 6 do
local stack = armor_inv:get_stack("armor", i) local stack = armor_inv:get_stack("armor", i)
if stack:get_count() > 0 then
armor:run_callbacks("on_equip", player, i, stack) armor:run_callbacks("on_equip", player, i, stack)
end end
end
armor.def[name] = { armor.def[name] = {
init_time = minetest.get_gametime(), init_time = minetest.get_gametime(),
level = 0, level = 0,
@ -269,12 +320,13 @@ if armor.config.drop == true or armor.config.destroy == true then
local stack = armor_inv:get_stack("armor", i) local stack = armor_inv:get_stack("armor", i)
if stack:get_count() > 0 then if stack:get_count() > 0 then
table.insert(drop, stack) table.insert(drop, stack)
armor:set_inventory_stack(player, i, nil)
armor:run_callbacks("on_unequip", player, i, stack) armor:run_callbacks("on_unequip", player, i, stack)
armor_inv:set_stack("armor", i, nil)
end end
end end
armor:save_armor_inventory(player)
armor:set_player_armor(player) armor:set_player_armor(player)
local pos = player:getpos() local pos = player:get_pos()
if pos and armor.config.destroy == false then if pos and armor.config.destroy == false then
minetest.after(armor.config.bones_delay, function() minetest.after(armor.config.bones_delay, function()
local meta = nil local meta = nil
@ -323,7 +375,6 @@ minetest.register_on_player_hpchange(function(player, hp_change)
local name = player:get_player_name() local name = player:get_player_name()
if name then if name then
local heal = armor.def[name].heal local heal = armor.def[name].heal
heal = heal * armor.config.heal_multiplier
if heal >= math.random(100) then if heal >= math.random(100) then
hp_change = 0 hp_change = 0
end end
@ -376,7 +427,7 @@ if armor.config.water_protect == true or armor.config.fire_protect == true then
end end
for _,player in pairs(minetest.get_connected_players()) do for _,player in pairs(minetest.get_connected_players()) do
local name = player:get_player_name() local name = player:get_player_name()
local pos = player:getpos() local pos = player:get_pos()
local hp = player:get_hp() local hp = player:get_hp()
if not name or not pos or not hp then if not name or not pos or not hp then
return return

384
3d_armor/locale/es.po Normal file
View File

@ -0,0 +1,384 @@
# 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: 2017-08-06 18:20+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: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: El nombre del jugador es nulo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player inventory is nil @1"
msgstr "3d_armor: El inventario del jugador es nulo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: La armadura desconectada es nula @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: La referencia del jugador es nula @1"
#: ../3d_armor/armor.lua
msgid "Admin Helmet"
msgstr "Casco de admin"
#: ../3d_armor/armor.lua
msgid "Admin Chestplate"
msgstr "Peto de admin"
#: ../3d_armor/armor.lua
msgid "Admin Leggings"
msgstr "Polainas de admin"
#: ../3d_armor/armor.lua
msgid "Admin Boots"
msgstr "Botas de admin"
#: ../3d_armor/armor.lua
msgid "Wood Helmet"
msgstr "Casco de madera"
#: ../3d_armor/armor.lua
msgid "Wood Chestplate"
msgstr "Peto de madera"
#: ../3d_armor/armor.lua
msgid "Wood Leggings"
msgstr "Polainas de madera"
#: ../3d_armor/armor.lua
msgid "Wood Boots"
msgstr "Botas de madera"
#: ../3d_armor/armor.lua
msgid "Cactus Helmet"
msgstr "Casco de cactus"
#: ../3d_armor/armor.lua
msgid "Cactus Chestplate"
msgstr "Peto de cactus"
#: ../3d_armor/armor.lua
msgid "Cactus Leggings"
msgstr "Polainas de cactus"
#: ../3d_armor/armor.lua
msgid "Cactus Boots"
msgstr "Botas de cactus"
#: ../3d_armor/armor.lua
msgid "Steel Helmet"
msgstr "Casco de acero"
#: ../3d_armor/armor.lua
msgid "Steel Chestplate"
msgstr "Peto de acero"
#: ../3d_armor/armor.lua
msgid "Steel Leggings"
msgstr "Polainas de acero"
#: ../3d_armor/armor.lua
msgid "Steel Boots"
msgstr "Botas de acero"
#: ../3d_armor/armor.lua
msgid "Bronze Helmet"
msgstr "Casco de bronce"
#: ../3d_armor/armor.lua
msgid "Bronze Chestplate"
msgstr "Peto de bronce"
#: ../3d_armor/armor.lua
msgid "Bronze Leggings"
msgstr "Polainas de bronce"
#: ../3d_armor/armor.lua
msgid "Bronze Boots"
msgstr "Botas de bronce"
#: ../3d_armor/armor.lua
msgid "Diamond Helmet"
msgstr "Casco de diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Chestplate"
msgstr "Peto de diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Leggings"
msgstr "Polainas de diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Boots"
msgstr "Botas de diamante"
#: ../3d_armor/armor.lua
msgid "Gold Helmet"
msgstr "Casco de oro"
#: ../3d_armor/armor.lua
msgid "Gold Chestplate"
msgstr "Peto de oro"
#: ../3d_armor/armor.lua
msgid "Gold Leggings"
msgstr "Polainas de oro"
#: ../3d_armor/armor.lua
msgid "Gold Boots"
msgstr "Botas de oro"
#: ../3d_armor/armor.lua
msgid "Mithril Helmet"
msgstr "Casco de mitrilo"
#: ../3d_armor/armor.lua
msgid "Mithril Chestplate"
msgstr "Peto de mitrilo"
#: ../3d_armor/armor.lua
msgid "Mithril Leggings"
msgstr "Polainas de mitrilo"
#: ../3d_armor/armor.lua
msgid "Mithril Boots"
msgstr "Botas de mitrilo"
#: ../3d_armor/armor.lua
msgid "Crystal Helmet"
msgstr "Casco de cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Chestplate"
msgstr "Peto de cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Leggings"
msgstr "Polainas de cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Boots"
msgstr "Botas de cristal"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Radiation"
msgstr "Radiación"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Level"
msgstr "Nivel"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Heal"
msgstr "Salud"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Fire"
msgstr "Fuego"
#: ../3d_armor/init.lua
msgid "Your @1 got destroyed!"
msgstr "¡Tu @1 fue destruído!"
#: ../3d_armor/init.lua
msgid "3d_armor: Failed to initialize player"
msgstr "3d_armor: Fallo en la inicialización del jugador"
#: ../3d_armor/init.lua
msgid "[3d_armor] Fire Nodes disabled"
msgstr "[3d_armor] Nodos de fuego desabilitados"
#: ../3d_armor_ip/init.lua
msgid "3d_armor_ip: Mod loaded but unused."
msgstr "3d_armor_ip: Mod cargado, pero sin ser usado."
#: ../3d_armor_ip/init.lua
msgid "Back"
msgstr "Volver"
#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
msgid "Armor"
msgstr "Armadura"
#: ../3d_armor_sfinv/init.lua
msgid "3d_armor_sfinv: Mod loaded but unused."
msgstr "3d_armor_sfinv: Mod cargado, pero sin ser usado."
#: ../3d_armor_stand/init.lua
msgid "Armor stand top"
msgstr "Parte arriba maniquí armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor stand"
msgstr "Maniquí para armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand"
msgstr "Maniquí para armadura"
#: ../3d_armor_stand/init.lua
msgid "Locked Armor stand"
msgstr "Maniquí para armadura (bloqueado)"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand (owned by @1)"
msgstr "Maniquí para armadura (propiedad de @1)"
#: ../3d_armor_ui/init.lua
msgid "3d_armor_ui: Mod loaded but unused."
msgstr "3d_armor_ui: Mod cargado, pero sin ser usado."
#: ../3d_armor_ui/init.lua
msgid "3d Armor"
msgstr "Armadura 3d"
#: ../3d_armor_ui/init.lua
msgid "Armor not initialized!"
msgstr "¡Armadura no inicializada!"
#: ../hazmat_suit/init.lua
msgid "hazmat_suit: Mod loaded but unused."
msgstr "hazmat_suit: Mod cargado, pero sin ser usado."
#: ../hazmat_suit/init.lua
msgid "Hazmat Helmet"
msgstr "Casco de hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Chestplate"
msgstr "Peto de hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Sleeve"
msgstr "Manga de hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Leggins"
msgstr "Polainas de hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Boots"
msgstr "Botas de hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Suit"
msgstr "Traje de hazmat"
#: ../shields/init.lua
msgid "Admin Shield"
msgstr "Escudo de admin"
#: ../shields/init.lua
msgid "Wooden Shield"
msgstr "Escudo de madera"
#: ../shields/init.lua
msgid "Enhanced Wood Shield"
msgstr "Escudo de madera mejorado"
#: ../shields/init.lua
msgid "Cactus Shield"
msgstr "Escudo de cactus"
#: ../shields/init.lua
msgid "Enhanced Cactus Shield"
msgstr "Escudo de cactus mejorado"
#: ../shields/init.lua
msgid "Steel Shield"
msgstr "Escudo de acero"
#: ../shields/init.lua
msgid "Bronze Shield"
msgstr "Escudo de bronce"
#: ../shields/init.lua
msgid "Diamond Shield"
msgstr "Escudo de diamante"
#: ../shields/init.lua
msgid "Gold Shield"
msgstr "Escudo de oro"
#: ../shields/init.lua
msgid "Mithril Shield"
msgstr "Escudo de mitrilo"
#: ../shields/init.lua
msgid "Crystal Shield"
msgstr "Escudo de cristal"
#: ../technic_armor/init.lua
msgid "technic_armor: Mod loaded but unused."
msgstr "technic_armor: Mod cargado, pero no usado."
#: ../technic_armor/init.lua
msgid "Lead"
msgstr "Plomo"
#: ../technic_armor/init.lua
msgid "Brass"
msgstr "Latón"
#: ../technic_armor/init.lua
msgid "Cast Iron"
msgstr "Hierro fundido"
#: ../technic_armor/init.lua
msgid "Carbon Steel"
msgstr "Acero carbono"
#: ../technic_armor/init.lua
msgid "Stainless Steel"
msgstr "Acero inoxidable"
#: ../technic_armor/init.lua
msgid "Tin"
msgstr "Estaño"
#: ../technic_armor/init.lua
msgid "Silver"
msgstr "Plata"
#: ../technic_armor/init.lua
msgid "Helmet"
msgstr "Casco"
#: ../technic_armor/init.lua
msgid "Chestplate"
msgstr "Peto"
#: ../technic_armor/init.lua
msgid "Leggins"
msgstr "Polainas"
#: ../technic_armor/init.lua
msgid "Boots"
msgstr "Botas"
#: ../technic_armor/init.lua
msgid "Shield"
msgstr "Escudo"
#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
#: ../technic_armor/init.lua
msgid "@1 @2"
msgstr "@2 de @1"

View File

@ -1,14 +1,14 @@
# SOME DESCRIPTIVE TITLE. # French translation for 3D ARMOR MOD
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the 3D ARMOR MOD package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # fat115 <fat115@framasoft.org>, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-06 18:20+0200\n" "POT-Creation-Date: 2018-07-23 21:24+0200\n"
"PO-Revision-Date: 2017-08-06 18:20+0200\n" "PO-Revision-Date: 2018-07-23 21:30+0200\n"
"Last-Translator: fat115 <fat115@framasoft.org>\n" "Last-Translator: fat115 <fat115@framasoft.org>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: fr\n" "Language: fr\n"
@ -18,22 +18,18 @@ msgstr ""
"X-Generator: Poedit 1.8.12\n" "X-Generator: Poedit 1.8.12\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor : Référence au joueur non trouvée @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1" msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor : Nom du joueur non trouvé @1" msgstr "3d_armor : Nom du joueur non trouvé @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player inventory is nil @1"
msgstr "3d_armor : Inventaire du joueur non trouvé @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1" msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor : Inventaire détaché pour l'armure non trouvé @1" msgstr "3d_armor : Inventaire détaché pour l'armure non trouvé @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor : Référence au joueur non trouvée @1"
#: ../3d_armor/armor.lua #: ../3d_armor/armor.lua
msgid "Admin Helmet" msgid "Admin Helmet"
msgstr "Casque d'admin" msgstr "Casque d'admin"
@ -254,34 +250,6 @@ msgstr "Armure 3d"
msgid "Armor not initialized!" msgid "Armor not initialized!"
msgstr "Armure non initialisée !" msgstr "Armure non initialisée !"
#: ../hazmat_suit/init.lua
msgid "hazmat_suit: Mod loaded but unused."
msgstr "hazmat_suit : Mod chargé mais non utilisé."
#: ../hazmat_suit/init.lua
msgid "Hazmat Helmet"
msgstr "Casque 'Hazmat'"
#: ../hazmat_suit/init.lua
msgid "Hazmat Chestplate"
msgstr "Cuirasse 'Hazmat'"
#: ../hazmat_suit/init.lua
msgid "Hazmat Sleeve"
msgstr "Manches 'Hazmat'"
#: ../hazmat_suit/init.lua
msgid "Hazmat Leggins"
msgstr "Jambières 'Hazmat'"
#: ../hazmat_suit/init.lua
msgid "Hazmat Boots"
msgstr "Bottes 'Hazmat'"
#: ../hazmat_suit/init.lua
msgid "Hazmat Suit"
msgstr "Combinaison 'Hazmat'"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Admin Shield" msgid "Admin Shield"
msgstr "Bouclier d'admin" msgstr "Bouclier d'admin"
@ -325,60 +293,3 @@ msgstr "Bouclier en mithril"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Crystal Shield" msgid "Crystal Shield"
msgstr "Bouclier en cristal" msgstr "Bouclier en cristal"
#: ../technic_armor/init.lua
msgid "technic_armor: Mod loaded but unused."
msgstr "technic_armor : Mod chargé mais non utilisé."
#: ../technic_armor/init.lua
msgid "Lead"
msgstr "plomb"
#: ../technic_armor/init.lua
msgid "Brass"
msgstr "laiton"
#: ../technic_armor/init.lua
msgid "Cast Iron"
msgstr "fonte"
#: ../technic_armor/init.lua
msgid "Carbon Steel"
msgstr "acier au carbone"
#: ../technic_armor/init.lua
msgid "Stainless Steel"
msgstr "acier inoxydable"
#: ../technic_armor/init.lua
msgid "Tin"
msgstr "étain"
#: ../technic_armor/init.lua
msgid "Silver"
msgstr "argent"
#: ../technic_armor/init.lua
msgid "Helmet"
msgstr "Casque"
#: ../technic_armor/init.lua
msgid "Chestplate"
msgstr "Cuirasse"
#: ../technic_armor/init.lua
msgid "Leggings"
msgstr "Jambières"
#: ../technic_armor/init.lua
msgid "Boots"
msgstr "Bottes"
#: ../technic_armor/init.lua
msgid "Shield"
msgstr "Bouclier"
#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
#: ../technic_armor/init.lua
msgid "@1 @2"
msgstr "@2 en @1"

View File

@ -1,14 +1,14 @@
# ITALIAN LOCALE FILE FOR THE 3D ARMOR MODULE # Italian translation for 3D ARMOR MOD
# Copyright (C) 2012-2017 Stuart Jones # Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the 3D ARMOR package. # This file is distributed under the same license as the 3D ARMOR MOD package.
# Hamlet <h4mlet@riseup.net>, 2017. # Hamlet <h4mlet@riseup.net>, 2017.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Italian localization file for the 3D Armor module\n" "Project-Id-Version: Italian localization file for the 3D Armor module\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-06 18:20+0200\n" "POT-Creation-Date: 2018-07-23 21:24+0200\n"
"PO-Revision-Date: 2017-08-18 00:36+0100\n" "PO-Revision-Date: 2018-07-23 21:30+0200\n"
"Last-Translator: H4mlet <h4mlet@riseup.net>\n" "Last-Translator: H4mlet <h4mlet@riseup.net>\n"
"Language-Team: ITALIANO\n" "Language-Team: ITALIANO\n"
"Language: it\n" "Language: it\n"
@ -18,22 +18,18 @@ msgstr ""
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
"X-Generator: Poedit 1.6.10\n" "X-Generator: Poedit 1.6.10\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Il riferimento alla/al giocatrice/tore è nullo @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1" msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: Il nome della/del gicatrice/tore è nullo @1" msgstr "3d_armor: Il nome della/del gicatrice/tore è nullo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player inventory is nil @1"
msgstr "3d_armor: L'inventario della/del giocatrice/tore è nullo @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1" msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: L'inventario staccato dell'armatura è nullo @1" msgstr "3d_armor: L'inventario staccato dell'armatura è nullo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Il riferimento alla/al giocatrice/tore è nullo @1"
#: ../3d_armor/armor.lua #: ../3d_armor/armor.lua
msgid "Admin Helmet" msgid "Admin Helmet"
msgstr "Elmo dell'amministratrice/tore" msgstr "Elmo dell'amministratrice/tore"
@ -254,34 +250,6 @@ msgstr "Armatura 3D"
msgid "Armor not initialized!" msgid "Armor not initialized!"
msgstr "Armatura non inizializzata!" msgstr "Armatura non inizializzata!"
#: ../hazmat_suit/init.lua
msgid "hazmat_suit: Mod loaded but unused."
msgstr "hazmat_suit: Mod caricato ma inutilizzato."
#: ../hazmat_suit/init.lua
msgid "Hazmat Helmet"
msgstr "Elmo hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Chestplate"
msgstr "Corazza hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Sleeve"
msgstr "Manica hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Leggins"
msgstr "Gambali hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Boots"
msgstr "Stivali hazmat"
#: ../hazmat_suit/init.lua
msgid "Hazmat Suit"
msgstr "Completo hazmat"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Admin Shield" msgid "Admin Shield"
msgstr "Scudo dell'amministratrice/tore" msgstr "Scudo dell'amministratrice/tore"
@ -325,60 +293,3 @@ msgstr "Scudo di mithril"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Crystal Shield" msgid "Crystal Shield"
msgstr "Scudo di cristallo" msgstr "Scudo di cristallo"
#: ../technic_armor/init.lua
msgid "technic_armor: Mod loaded but unused."
msgstr "technic_armor: Mod caricato ma inutilizzato."
#: ../technic_armor/init.lua
msgid "Lead"
msgstr "Piombo"
#: ../technic_armor/init.lua
msgid "Brass"
msgstr "Ottone"
#: ../technic_armor/init.lua
msgid "Cast Iron"
msgstr "Ghisa"
#: ../technic_armor/init.lua
msgid "Carbon Steel"
msgstr "Acciaio al carbonio"
#: ../technic_armor/init.lua
msgid "Stainless Steel"
msgstr "Acciaio inossidabile"
#: ../technic_armor/init.lua
msgid "Tin"
msgstr "Stagno"
#: ../technic_armor/init.lua
msgid "Silver"
msgstr "Argento"
#: ../technic_armor/init.lua
msgid "Helmet"
msgstr "Elmo"
#: ../technic_armor/init.lua
msgid "Chestplate"
msgstr "Corazza"
#: ../technic_armor/init.lua
msgid "Leggings"
msgstr "Gambali"
#: ../technic_armor/init.lua
msgid "Boots"
msgstr "Stivali"
#: ../technic_armor/init.lua
msgid "Shield"
msgstr "Scudo"
#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
#: ../technic_armor/init.lua
msgid "@1 @2"
msgstr "@2 di @1"

View File

@ -1,39 +1,35 @@
# SOME DESCRIPTIVE TITLE. # Malay translation for 3D ARMOR MOD
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the 3D ARMOR MOD package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # MuhdNurHidayat (MNH48) <mnh48mail@gmail.com>, 2018.
# #
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-06 18:20+0200\n" "POT-Creation-Date: 2018-07-23 21:21+0200\n"
"PO-Revision-Date: 2018-02-07 13:25+0800\n" "PO-Revision-Date: 2018-07-23 21:30+0200\n"
"Last-Translator: MuhdNurHidayat (MNH48) <mnh48mail@gmail.com>\n"
"Language-Team: \n" "Language-Team: \n"
"Language: ms\n"
"MIME-Version: 1.0\n" "MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n" "X-Generator: Poedit 2.0.6\n"
"Last-Translator: MuhdNurHidayat (MNH48) <mnh48mail@gmail.com>\n"
"Plural-Forms: nplurals=1; plural=0;\n" "Plural-Forms: nplurals=1; plural=0;\n"
"Language: ms\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Rujukan pemain tiada nilai @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1" msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: Nama pemain tiada nilai @1" msgstr "3d_armor: Nama pemain tiada nilai @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player inventory is nil @1"
msgstr "3d_armor: Inventori pemain tiada nilai @1"
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1" msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: Inventori perisai terpisah tiada nilai @1" msgstr "3d_armor: Inventori perisai terpisah tiada nilai @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Rujukan pemain tiada nilai @1"
#: ../3d_armor/armor.lua #: ../3d_armor/armor.lua
msgid "Admin Helmet" msgid "Admin Helmet"
msgstr "Helmet Pentadbir" msgstr "Helmet Pentadbir"
@ -255,34 +251,6 @@ msgstr "Perisai 3d"
msgid "Armor not initialized!" msgid "Armor not initialized!"
msgstr "Perisai tidak diasalkan!" msgstr "Perisai tidak diasalkan!"
#: ../hazmat_suit/init.lua
msgid "hazmat_suit: Mod loaded but unused."
msgstr "hazmat_suit: Mods dimuatkan tetapi tidak digunakan."
#: ../hazmat_suit/init.lua
msgid "Hazmat Helmet"
msgstr "Helmet Keselamatan"
#: ../hazmat_suit/init.lua
msgid "Hazmat Chestplate"
msgstr "Perisai Dada Keselamatan"
#: ../hazmat_suit/init.lua
msgid "Hazmat Sleeve"
msgstr "Perisai Tangan Keselamatan"
#: ../hazmat_suit/init.lua
msgid "Hazmat Leggins"
msgstr "Perisai Kaki Keselamatan"
#: ../hazmat_suit/init.lua
msgid "Hazmat Boots"
msgstr "But Keselamatan"
#: ../hazmat_suit/init.lua
msgid "Hazmat Suit"
msgstr "Pakaian Keselamatan"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Admin Shield" msgid "Admin Shield"
msgstr "Perisai Pegang Pentadbir" msgstr "Perisai Pegang Pentadbir"
@ -326,61 +294,3 @@ msgstr "Perisai Pegang Mithril"
#: ../shields/init.lua #: ../shields/init.lua
msgid "Crystal Shield" msgid "Crystal Shield"
msgstr "Perisai Pegang Kristal" msgstr "Perisai Pegang Kristal"
#: ../technic_armor/init.lua
msgid "technic_armor: Mod loaded but unused."
msgstr "technic_armor: Mods dimuatkan tetapi tidak digunakan."
# 'Lead' here is the chemical compound so the translation is 'plumbum', not 'pimpin' (act of leading).
#: ../technic_armor/init.lua
msgid "Lead"
msgstr "Plumbum"
#: ../technic_armor/init.lua
msgid "Brass"
msgstr "Loyang"
#: ../technic_armor/init.lua
msgid "Cast Iron"
msgstr "Besi Tuang"
#: ../technic_armor/init.lua
msgid "Carbon Steel"
msgstr "Keluli Karbon"
#: ../technic_armor/init.lua
msgid "Stainless Steel"
msgstr "Keluli Tahan Karat"
#: ../technic_armor/init.lua
msgid "Tin"
msgstr "Timah"
#: ../technic_armor/init.lua
msgid "Silver"
msgstr "Perak"
#: ../technic_armor/init.lua
msgid "Helmet"
msgstr "Helmet"
#: ../technic_armor/init.lua
msgid "Chestplate"
msgstr "Perisai Dada"
#: ../technic_armor/init.lua
msgid "Leggings"
msgstr "Perisai Kaki"
#: ../technic_armor/init.lua
msgid "Boots"
msgstr "But"
#: ../technic_armor/init.lua
msgid "Shield"
msgstr "Perisai Pegang"
#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
#: ../technic_armor/init.lua
msgid "@1 @2"
msgstr "@2 @1"

295
3d_armor/locale/pt.po Normal file
View File

@ -0,0 +1,295 @@
# LANGUAGE translation for 3D ARMOR MOD
# Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the 3D ARMOR MOD package.
# BrunoMine <borgesdossantosbruno@gmail.com>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: 3d_armor\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-23 21:24+0200\n"
"PO-Revision-Date: 2018-11-08 13:12-0200\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"Last-Translator: BrunoMine <borgesdossantosbruno@gmail.com>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language: pt\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Referência Jogador é nula @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: Nome de jogador é nulo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: Inventario avulso de armadura é nulo @1"
#: ../3d_armor/armor.lua
msgid "Admin Helmet"
msgstr "Capacete de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Chestplate"
msgstr "Peitoral de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Leggings"
msgstr "Calças de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Boots"
msgstr "Botas de Administrador"
#: ../3d_armor/armor.lua
msgid "Wood Helmet"
msgstr "Capacete de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Chestplate"
msgstr "Peitoral de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Leggings"
msgstr "Calças de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Boots"
msgstr "Botas de Madeira"
#: ../3d_armor/armor.lua
msgid "Cactus Helmet"
msgstr "Capacete de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Chestplate"
msgstr "Peitoral de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Leggings"
msgstr "Calças de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Boots"
msgstr "Botas de Madeira"
#: ../3d_armor/armor.lua
msgid "Steel Helmet"
msgstr "Capacete de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Chestplate"
msgstr "Peitoral de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Leggings"
msgstr "Calças de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Boots"
msgstr "Botas de Aço"
#: ../3d_armor/armor.lua
msgid "Bronze Helmet"
msgstr "Capacete de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Chestplate"
msgstr "Peitoral de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Leggings"
msgstr "Calças de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Boots"
msgstr "Botas de Bronze"
#: ../3d_armor/armor.lua
msgid "Diamond Helmet"
msgstr "Capacete de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Chestplate"
msgstr "Peitoral de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Leggings"
msgstr "Calças de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Boots"
msgstr "Botas de Diamante"
#: ../3d_armor/armor.lua
msgid "Gold Helmet"
msgstr "Capacete de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Chestplate"
msgstr "Peitoral de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Leggings"
msgstr "Calças de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Boots"
msgstr "Botas de Ouro"
#: ../3d_armor/armor.lua
msgid "Mithril Helmet"
msgstr "Capacete de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Chestplate"
msgstr "Peitoral de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Leggings"
msgstr "Calças de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Boots"
msgstr "Botas de Mithril"
#: ../3d_armor/armor.lua
msgid "Crystal Helmet"
msgstr "Capacete de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Chestplate"
msgstr "Peitoral de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Leggings"
msgstr "Calças de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Boots"
msgstr "Botas de Cristal"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Radiation"
msgstr "Radiação"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Level"
msgstr "Nível"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Heal"
msgstr "Saúde"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Fire"
msgstr "Fogo"
#: ../3d_armor/init.lua
msgid "Your @1 got destroyed!"
msgstr "@1 foi destruído(a)!"
#: ../3d_armor/init.lua
msgid "3d_armor: Failed to initialize player"
msgstr "3d_armor: Falha ao inicializar jogador"
#: ../3d_armor/init.lua
msgid "[3d_armor] Fire Nodes disabled"
msgstr "[3d_armor] Nodes de gofo desabilitados"
#: ../3d_armor_ip/init.lua
msgid "3d_armor_ip: Mod loaded but unused."
msgstr "3d_armor_ip: Mod carregado mas inoperante."
#: ../3d_armor_ip/init.lua
msgid "Back"
msgstr "Voltar"
#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
msgid "Armor"
msgstr "Armadura"
#: ../3d_armor_sfinv/init.lua
msgid "3d_armor_sfinv: Mod loaded but unused."
msgstr "3d_armor_sfinv: Mod carregado mas inoperante."
#: ../3d_armor_stand/init.lua
msgid "Armor stand top"
msgstr "Topo de estande de armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor stand"
msgstr "Estande de armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand"
msgstr "Estande de Armadura"
#: ../3d_armor_stand/init.lua
msgid "Locked Armor stand"
msgstr "Estande de Armadura Trancada"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand (owned by @1)"
msgstr "Estande de Armadura (pertente a @1)"
#: ../3d_armor_ui/init.lua
msgid "3d_armor_ui: Mod loaded but unused."
msgstr "3d_armor_ui: Mod carregado mas inoperante."
#: ../3d_armor_ui/init.lua
msgid "3d Armor"
msgstr "3d Armor"
#: ../3d_armor_ui/init.lua
msgid "Armor not initialized!"
msgstr "Armadura não inicializada!"
#: ../shields/init.lua
msgid "Admin Shield"
msgstr "Escudo de Administrador"
#: ../shields/init.lua
msgid "Wooden Shield"
msgstr "Escudo de Madeira"
#: ../shields/init.lua
msgid "Enhanced Wood Shield"
msgstr "Escudo de Madeira Melhorado"
#: ../shields/init.lua
msgid "Cactus Shield"
msgstr "Escudo de Cacto"
#: ../shields/init.lua
msgid "Enhanced Cactus Shield"
msgstr "Escudo de Cacto Melhorado"
#: ../shields/init.lua
msgid "Steel Shield"
msgstr "Escudo de Aço"
#: ../shields/init.lua
msgid "Bronze Shield"
msgstr "Escudo de Bronze"
#: ../shields/init.lua
msgid "Diamond Shield"
msgstr "Escudo de Diamante"
#: ../shields/init.lua
msgid "Gold Shield"
msgstr "Escudo de Ouro"
#: ../shields/init.lua
msgid "Mithril Shield"
msgstr "Escudo de Mithril"
#: ../shields/init.lua
msgid "Crystal Shield"
msgstr "Escudo de Cristal"

295
3d_armor/locale/pt_BR.po Normal file
View File

@ -0,0 +1,295 @@
# LANGUAGE translation for 3D ARMOR MOD
# Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the 3D ARMOR MOD package.
# BrunoMine <borgesdossantosbruno@gmail.com>, 2018.
#
msgid ""
msgstr ""
"Project-Id-Version: 3d_armor\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-23 21:24+0200\n"
"PO-Revision-Date: 2018-11-08 13:12-0200\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"Last-Translator: BrunoMine <borgesdossantosbruno@gmail.com>\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
"Language: pt_BR\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Referência Jogador é nula @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: Nome de jogador é nulo @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: Inventario avulso de armadura é nulo @1"
#: ../3d_armor/armor.lua
msgid "Admin Helmet"
msgstr "Capacete de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Chestplate"
msgstr "Peitoral de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Leggings"
msgstr "Calças de Administrador"
#: ../3d_armor/armor.lua
msgid "Admin Boots"
msgstr "Botas de Administrador"
#: ../3d_armor/armor.lua
msgid "Wood Helmet"
msgstr "Capacete de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Chestplate"
msgstr "Peitoral de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Leggings"
msgstr "Calças de Madeira"
#: ../3d_armor/armor.lua
msgid "Wood Boots"
msgstr "Botas de Madeira"
#: ../3d_armor/armor.lua
msgid "Cactus Helmet"
msgstr "Capacete de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Chestplate"
msgstr "Peitoral de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Leggings"
msgstr "Calças de Cacto"
#: ../3d_armor/armor.lua
msgid "Cactus Boots"
msgstr "Botas de Madeira"
#: ../3d_armor/armor.lua
msgid "Steel Helmet"
msgstr "Capacete de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Chestplate"
msgstr "Peitoral de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Leggings"
msgstr "Calças de Aço"
#: ../3d_armor/armor.lua
msgid "Steel Boots"
msgstr "Botas de Aço"
#: ../3d_armor/armor.lua
msgid "Bronze Helmet"
msgstr "Capacete de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Chestplate"
msgstr "Peitoral de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Leggings"
msgstr "Calças de Bronze"
#: ../3d_armor/armor.lua
msgid "Bronze Boots"
msgstr "Botas de Bronze"
#: ../3d_armor/armor.lua
msgid "Diamond Helmet"
msgstr "Capacete de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Chestplate"
msgstr "Peitoral de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Leggings"
msgstr "Calças de Diamante"
#: ../3d_armor/armor.lua
msgid "Diamond Boots"
msgstr "Botas de Diamante"
#: ../3d_armor/armor.lua
msgid "Gold Helmet"
msgstr "Capacete de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Chestplate"
msgstr "Peitoral de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Leggings"
msgstr "Calças de Ouro"
#: ../3d_armor/armor.lua
msgid "Gold Boots"
msgstr "Botas de Ouro"
#: ../3d_armor/armor.lua
msgid "Mithril Helmet"
msgstr "Capacete de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Chestplate"
msgstr "Peitoral de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Leggings"
msgstr "Calças de Mithril"
#: ../3d_armor/armor.lua
msgid "Mithril Boots"
msgstr "Botas de Mithril"
#: ../3d_armor/armor.lua
msgid "Crystal Helmet"
msgstr "Capacete de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Chestplate"
msgstr "Peitoral de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Leggings"
msgstr "Calças de Cristal"
#: ../3d_armor/armor.lua
msgid "Crystal Boots"
msgstr "Botas de Cristal"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Radiation"
msgstr "Radiação"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Level"
msgstr "Nível"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Heal"
msgstr "Saúde"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Fire"
msgstr "Fogo"
#: ../3d_armor/init.lua
msgid "Your @1 got destroyed!"
msgstr "@1 foi destruído(a)!"
#: ../3d_armor/init.lua
msgid "3d_armor: Failed to initialize player"
msgstr "3d_armor: Falha ao inicializar jogador"
#: ../3d_armor/init.lua
msgid "[3d_armor] Fire Nodes disabled"
msgstr "[3d_armor] Nodes de gofo desabilitados"
#: ../3d_armor_ip/init.lua
msgid "3d_armor_ip: Mod loaded but unused."
msgstr "3d_armor_ip: Mod carregado mas inoperante."
#: ../3d_armor_ip/init.lua
msgid "Back"
msgstr "Voltar"
#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
msgid "Armor"
msgstr "Armadura"
#: ../3d_armor_sfinv/init.lua
msgid "3d_armor_sfinv: Mod loaded but unused."
msgstr "3d_armor_sfinv: Mod carregado mas inoperante."
#: ../3d_armor_stand/init.lua
msgid "Armor stand top"
msgstr "Topo de estande de armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor stand"
msgstr "Estande de armadura"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand"
msgstr "Estande de Armadura"
#: ../3d_armor_stand/init.lua
msgid "Locked Armor stand"
msgstr "Estande de Armadura Trancada"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand (owned by @1)"
msgstr "Estande de Armadura (pertente a @1)"
#: ../3d_armor_ui/init.lua
msgid "3d_armor_ui: Mod loaded but unused."
msgstr "3d_armor_ui: Mod carregado mas inoperante."
#: ../3d_armor_ui/init.lua
msgid "3d Armor"
msgstr "3d Armor"
#: ../3d_armor_ui/init.lua
msgid "Armor not initialized!"
msgstr "Armadura não inicializada!"
#: ../shields/init.lua
msgid "Admin Shield"
msgstr "Escudo de Administrador"
#: ../shields/init.lua
msgid "Wooden Shield"
msgstr "Escudo de Madeira"
#: ../shields/init.lua
msgid "Enhanced Wood Shield"
msgstr "Escudo de Madeira Melhorado"
#: ../shields/init.lua
msgid "Cactus Shield"
msgstr "Escudo de Cacto"
#: ../shields/init.lua
msgid "Enhanced Cactus Shield"
msgstr "Escudo de Cacto Melhorado"
#: ../shields/init.lua
msgid "Steel Shield"
msgstr "Escudo de Aço"
#: ../shields/init.lua
msgid "Bronze Shield"
msgstr "Escudo de Bronze"
#: ../shields/init.lua
msgid "Diamond Shield"
msgstr "Escudo de Diamante"
#: ../shields/init.lua
msgid "Gold Shield"
msgstr "Escudo de Ouro"
#: ../shields/init.lua
msgid "Mithril Shield"
msgstr "Escudo de Mithril"
#: ../shields/init.lua
msgid "Crystal Shield"
msgstr "Escudo de Cristal"

294
3d_armor/locale/ru.po Normal file
View File

@ -0,0 +1,294 @@
# Russian translation for 3D ARMOR MOD
# Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the 3D ARMOR MOD package.
# CodeXP <codexp@gmx.net>, 2018.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: 3d_armor\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-07-23 21:21+0200\n"
"PO-Revision-Date: 2018-07-23 21:30+0200\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"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr "3d_armor: Ссылка игрока является nil @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1"
msgstr "3d_armor: Имя игрока является nil @1"
#: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "3d_armor: Отдельный инвентарь брони является nil @1"
#: ../3d_armor/armor.lua
msgid "Admin Helmet"
msgstr "шлем админа"
#: ../3d_armor/armor.lua
msgid "Admin Chestplate"
msgstr "бронежилет админа"
#: ../3d_armor/armor.lua
msgid "Admin Leggings"
msgstr "гамаши админа"
#: ../3d_armor/armor.lua
msgid "Admin Boots"
msgstr "ботинки админа"
#: ../3d_armor/armor.lua
msgid "Wood Helmet"
msgstr "деревянный шлем"
#: ../3d_armor/armor.lua
msgid "Wood Chestplate"
msgstr "деревянный бронежилет"
#: ../3d_armor/armor.lua
msgid "Wood Leggings"
msgstr "деревянные гамаши"
#: ../3d_armor/armor.lua
msgid "Wood Boots"
msgstr "деревянные ботинки"
#: ../3d_armor/armor.lua
msgid "Cactus Helmet"
msgstr "кактусовый шлем"
#: ../3d_armor/armor.lua
msgid "Cactus Chestplate"
msgstr "кактусовый бронежилет"
#: ../3d_armor/armor.lua
msgid "Cactus Leggings"
msgstr "кактусовые гамаши"
#: ../3d_armor/armor.lua
msgid "Cactus Boots"
msgstr "кактусовые ботинки"
#: ../3d_armor/armor.lua
msgid "Steel Helmet"
msgstr "стальной шлем"
#: ../3d_armor/armor.lua
msgid "Steel Chestplate"
msgstr "стальной бронежилет"
#: ../3d_armor/armor.lua
msgid "Steel Leggings"
msgstr "стальные гамаши"
#: ../3d_armor/armor.lua
msgid "Steel Boots"
msgstr "стальные ботинки"
#: ../3d_armor/armor.lua
msgid "Bronze Helmet"
msgstr "бронзовый шлем"
#: ../3d_armor/armor.lua
msgid "Bronze Chestplate"
msgstr "бронзовый бронежилет"
#: ../3d_armor/armor.lua
msgid "Bronze Leggings"
msgstr "бронзовые гамаши"
#: ../3d_armor/armor.lua
msgid "Bronze Boots"
msgstr "бронзовые ботинки"
#: ../3d_armor/armor.lua
msgid "Diamond Helmet"
msgstr "алмазный шлем"
#: ../3d_armor/armor.lua
msgid "Diamond Chestplate"
msgstr "алмазный бронежилет"
#: ../3d_armor/armor.lua
msgid "Diamond Leggings"
msgstr "алмазные гамаши"
#: ../3d_armor/armor.lua
msgid "Diamond Boots"
msgstr "алмазные ботинки"
#: ../3d_armor/armor.lua
msgid "Gold Helmet"
msgstr "золотой шлем"
#: ../3d_armor/armor.lua
msgid "Gold Chestplate"
msgstr "золотой бронежилет"
#: ../3d_armor/armor.lua
msgid "Gold Leggings"
msgstr "золотые гамаши"
#: ../3d_armor/armor.lua
msgid "Gold Boots"
msgstr "золотые ботинки"
#: ../3d_armor/armor.lua
msgid "Mithril Helmet"
msgstr "мифриловый шлем"
#: ../3d_armor/armor.lua
msgid "Mithril Chestplate"
msgstr "мифриловый бронежилет"
#: ../3d_armor/armor.lua
msgid "Mithril Leggings"
msgstr "мифриловые гамаши"
#: ../3d_armor/armor.lua
msgid "Mithril Boots"
msgstr "мифриловые ботинки"
#: ../3d_armor/armor.lua
msgid "Crystal Helmet"
msgstr "кристалловый шлем"
#: ../3d_armor/armor.lua
msgid "Crystal Chestplate"
msgstr "кристалловый бронежилет"
#: ../3d_armor/armor.lua
msgid "Crystal Leggings"
msgstr "кристалловые гамаши"
#: ../3d_armor/armor.lua
msgid "Crystal Boots"
msgstr "кристалловые ботинки"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Radiation"
msgstr "излучение"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Level"
msgstr "уровень"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Heal"
msgstr "исцеление"
#: ../3d_armor/init.lua ../3d_armor_ui/init.lua
msgid "Fire"
msgstr "огонь"
#: ../3d_armor/init.lua
msgid "Your @1 got destroyed!"
msgstr "твой(и) @1 был(и) разрушен(ы)!"
#: ../3d_armor/init.lua
msgid "3d_armor: Failed to initialize player"
msgstr "3d_armor: не смог подготовить игрока"
#: ../3d_armor/init.lua
msgid "[3d_armor] Fire Nodes disabled"
msgstr "[3d_armor] блоки огня отключены"
#: ../3d_armor_ip/init.lua
msgid "3d_armor_ip: Mod loaded but unused."
msgstr "3d_armor_ip: мод загружен но не используется."
#: ../3d_armor_ip/init.lua
msgid "Back"
msgstr "назад"
#: ../3d_armor_ip/init.lua ../3d_armor_sfinv/init.lua ../3d_armor_ui/init.lua
msgid "Armor"
msgstr "бронь"
#: ../3d_armor_sfinv/init.lua
msgid "3d_armor_sfinv: Mod loaded but unused."
msgstr "3d_armor_sfinv: мод загружен но не используется."
#: ../3d_armor_stand/init.lua
msgid "Armor stand top"
msgstr "стойка для брони (верх)"
#: ../3d_armor_stand/init.lua
msgid "Armor stand"
msgstr "стойка для брони"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand"
msgstr "стойка для брони"
#: ../3d_armor_stand/init.lua
msgid "Locked Armor stand"
msgstr "защищенная стойка для брони"
#: ../3d_armor_stand/init.lua
msgid "Armor Stand (owned by @1)"
msgstr "стойка для брони (принадлежит @1)"
#: ../3d_armor_ui/init.lua
msgid "3d_armor_ui: Mod loaded but unused."
msgstr "3d_armor_ui: мод загружен но не используется."
#: ../3d_armor_ui/init.lua
msgid "3d Armor"
msgstr "3D бронь"
#: ../3d_armor_ui/init.lua
msgid "Armor not initialized!"
msgstr "бронь не подготовлена!"
#: ../shields/init.lua
msgid "Admin Shield"
msgstr "щит админа"
#: ../shields/init.lua
msgid "Wooden Shield"
msgstr "деревянный щит"
#: ../shields/init.lua
msgid "Enhanced Wood Shield"
msgstr "улучшенный деревянный щит"
#: ../shields/init.lua
msgid "Cactus Shield"
msgstr "кактусный щит"
#: ../shields/init.lua
msgid "Enhanced Cactus Shield"
msgstr "улучшенный кактусный щит"
#: ../shields/init.lua
msgid "Steel Shield"
msgstr "стальной щит"
#: ../shields/init.lua
msgid "Bronze Shield"
msgstr "бронзовый щит"
#: ../shields/init.lua
msgid "Diamond Shield"
msgstr "алмазный щит"
#: ../shields/init.lua
msgid "Gold Shield"
msgstr "золотой щит"
#: ../shields/init.lua
msgid "Mithril Shield"
msgstr "мифриловый щит"
#: ../shields/init.lua
msgid "Crystal Shield"
msgstr "кристалловый щит"

View File

@ -1,6 +1,6 @@
# SOME DESCRIPTIVE TITLE. # LANGUAGE translation for 3D ARMOR MOD
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # Copyright (C) 2018 by Stuart Jones
# This file is distributed under the same license as the PACKAGE package. # This file is distributed under the same license as the 3D ARMOR MOD package.
# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
# #
#, fuzzy #, fuzzy
@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-08-06 18:20+0200\n" "POT-Creation-Date: 2018-07-23 21:24+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,22 +17,18 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n" "Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr ""
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Player name is nil @1" msgid "3d_armor: Player name is nil @1"
msgstr "" msgstr ""
#: ../3d_armor/api.lua
msgid "3d_armor: Player inventory is nil @1"
msgstr ""
#: ../3d_armor/api.lua #: ../3d_armor/api.lua
msgid "3d_armor: Detached armor inventory is nil @1" msgid "3d_armor: Detached armor inventory is nil @1"
msgstr "" msgstr ""
#: ../3d_armor/api.lua
msgid "3d_armor: Player reference is nil @1"
msgstr ""
#: ../3d_armor/armor.lua #: ../3d_armor/armor.lua
msgid "Admin Helmet" msgid "Admin Helmet"
msgstr "" msgstr ""
@ -253,34 +249,6 @@ msgstr ""
msgid "Armor not initialized!" msgid "Armor not initialized!"
msgstr "" msgstr ""
#: ../hazmat_suit/init.lua
msgid "hazmat_suit: Mod loaded but unused."
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Helmet"
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Chestplate"
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Sleeve"
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Leggins"
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Boots"
msgstr ""
#: ../hazmat_suit/init.lua
msgid "Hazmat Suit"
msgstr ""
#: ../shields/init.lua #: ../shields/init.lua
msgid "Admin Shield" msgid "Admin Shield"
msgstr "" msgstr ""
@ -324,60 +292,3 @@ msgstr ""
#: ../shields/init.lua #: ../shields/init.lua
msgid "Crystal Shield" msgid "Crystal Shield"
msgstr "" msgstr ""
#: ../technic_armor/init.lua
msgid "technic_armor: Mod loaded but unused."
msgstr ""
#: ../technic_armor/init.lua
msgid "Lead"
msgstr ""
#: ../technic_armor/init.lua
msgid "Brass"
msgstr ""
#: ../technic_armor/init.lua
msgid "Cast Iron"
msgstr ""
#: ../technic_armor/init.lua
msgid "Carbon Steel"
msgstr ""
#: ../technic_armor/init.lua
msgid "Stainless Steel"
msgstr ""
#: ../technic_armor/init.lua
msgid "Tin"
msgstr ""
#: ../technic_armor/init.lua
msgid "Silver"
msgstr ""
#: ../technic_armor/init.lua
msgid "Helmet"
msgstr ""
#: ../technic_armor/init.lua
msgid "Chestplate"
msgstr ""
#: ../technic_armor/init.lua
msgid "Leggings"
msgstr ""
#: ../technic_armor/init.lua
msgid "Boots"
msgstr ""
#: ../technic_armor/init.lua
msgid "Shield"
msgstr ""
#. Translators: @1 stands for material and @2 for part of the armor, so that you could use a conjunction if in your language part name comes first then material (e.g. in french 'Silver Boots' is translated in 'Bottes en argent' by using '@2 en @1' as translated string)
#: ../technic_armor/init.lua
msgid "@1 @2"
msgstr ""

7
3d_armor/tools/README.md Normal file
View File

@ -0,0 +1,7 @@
# Intllib tool
please consider using the intllib tool to update locale files:
```../../intllib/tools/xgettext.sh ../**/*.lua```
make sure you are in `3d_armor` derectory before running this command

View File

@ -12,7 +12,6 @@ xgettext --from-code=UTF-8 \
--keyword=S \ --keyword=S \
--keyword=NS:1,2 \ --keyword=NS:1,2 \
--keyword=N_ \ --keyword=N_ \
--keyword=F \
--add-comments='Translators:' \ --add-comments='Translators:' \
--add-location=file \ --add-location=file \
-o locale/template.pot \ -o locale/template.pot \

View File

@ -1,13 +1,13 @@
-- support for i18n -- support for i18n
local S = armor_i18n.gettext local S = armor_i18n.gettext
local F = armor_i18n.fgettext local F = minetest.formspec_escape
if not minetest.global_exists("inventory_plus") then if not minetest.global_exists("inventory_plus") then
minetest.log("warning", S("3d_armor_ip: Mod loaded but unused.")) minetest.log("warning", S("3d_armor_ip: Mod loaded but unused."))
return return
end end
armor.formspec = "size[8,8.5]button[6,0;2,0.5;main;"..F("Back").."]"..armor.formspec armor.formspec = "size[8,8.5]button[6,0;2,0.5;main;"..F(S("Back")).."]"..armor.formspec
armor:register_on_update(function(player) armor:register_on_update(function(player)
local name = player:get_player_name() local name = player:get_player_name()
local formspec = armor:get_armor_formspec(name, true) local formspec = armor:get_armor_formspec(name, true)

View File

@ -75,8 +75,11 @@ local function update_entity(pos)
local def = stack:get_definition() or {} local def = stack:get_definition() or {}
local groups = def.groups or {} local groups = def.groups or {}
if groups["armor_"..element] then if groups["armor_"..element] then
local texture = def.texture or item:gsub("%:", "_") if def.texture then
table.insert(textures, texture..".png") table.insert(textures, def.texture)
else
table.insert(textures, item:gsub("%:", "_")..".png")
end
end end
end end
end end
@ -304,7 +307,7 @@ minetest.register_entity("3d_armor_stand:armor_entity", {
pos = nil, pos = nil,
timer = 0, timer = 0,
on_activate = function(self) on_activate = function(self)
local pos = self.object:getpos() local pos = self.object:get_pos()
if pos then if pos then
self.pos = vector.round(pos) self.pos = vector.round(pos)
update_entity(pos) update_entity(pos)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 B

After

Width:  |  Height:  |  Size: 160 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 408 B

After

Width:  |  Height:  |  Size: 164 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 387 B

After

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 423 B

After

Width:  |  Height:  |  Size: 191 B

View File

@ -1,6 +1,7 @@
-- support for i18n -- support for i18n
local S = armor_i18n.gettext local S = armor_i18n.gettext
local F = armor_i18n.fgettext local F = minetest.formspec_escape
local has_technic = minetest.get_modpath("technic") ~= nil
if not minetest.global_exists("unified_inventory") then if not minetest.global_exists("unified_inventory") then
minetest.log("warning", S("3d_armor_ui: Mod loaded but unused.")) minetest.log("warning", S("3d_armor_ui: Mod loaded but unused."))
@ -29,23 +30,23 @@ unified_inventory.register_page("armor", {
local fy = perplayer_formspec.formspec_y local fy = perplayer_formspec.formspec_y
local name = player:get_player_name() local name = player:get_player_name()
if armor.def[name].init_time == 0 then if armor.def[name].init_time == 0 then
return {formspec="label[0,0;"..F("Armor not initialized!").."]"} return {formspec="label[0,0;"..F(S("Armor not initialized!")).."]"}
end end
local formspec = "background[0.06,"..fy..";7.92,7.52;3d_armor_ui_form.png]".. local formspec = "background[0.06,"..fy..";7.92,7.52;3d_armor_ui_form.png]"..
"label[0,0;"..F("Armor").."]".. "label[0,0;"..F(S("Armor")).."]"..
"list[detached:"..name.."_armor;armor;0,"..fy..";2,3;]".. "list[detached:"..name.."_armor;armor;0,"..fy..";2,3;]"..
"image[2.5,"..(fy - 0.25)..";2,4;"..armor.textures[name].preview.."]".. "image[2.5,"..(fy - 0.25)..";2,4;"..armor.textures[name].preview.."]"..
"label[5.0,"..(fy + 0.0)..";"..F("Level")..": "..armor.def[name].level.."]".. "label[5.0,"..(fy + 0.0)..";"..F(S("Level"))..": "..armor.def[name].level.."]"..
"label[5.0,"..(fy + 0.5)..";"..F("Heal")..": "..armor.def[name].heal.."]".. "label[5.0,"..(fy + 0.5)..";"..F(S("Heal"))..": "..armor.def[name].heal.."]"..
"listring[current_player;main]".. "listring[current_player;main]"..
"listring[detached:"..name.."_armor;armor]" "listring[detached:"..name.."_armor;armor]"
if armor.config.fire_protect then if armor.config.fire_protect then
formspec = formspec.."label[5.0,"..(fy + 1.0)..";".. formspec = formspec.."label[5.0,"..(fy + 1.0)..";"..
F("Fire")..": "..armor.def[name].fire.."]" F(S("Fire"))..": "..armor.def[name].fire.."]"
end end
if minetest.global_exists("technic") then if has_technic then
formspec = formspec.."label[5.0,"..(fy + 1.5)..";".. formspec = formspec.."label[5.0,"..(fy + 1.5)..";"..
F("Radiation")..": "..armor.def[name].groups["radiation"].."]" F(S("Radiation"))..": "..armor.def[name].groups["radiation"].."]"
end end
return {formspec=formspec} return {formspec=formspec}
end, end,

View File

@ -1,4 +1,4 @@
Modpack - 3d Armor [0.4.11] Modpack - 3d Armor [0.4.13]
=========================== ===========================
### Table of Contents ### Table of Contents
@ -17,7 +17,7 @@ Modpack - 3d Armor [0.4.11]
[mod] Visible Player Armor [3d_armor] [mod] Visible Player Armor [3d_armor]
------------------------------------- -------------------------------------
Minetest Version: 0.4.16 Minetest Version: 5.0.0
Game: minetest_game and many derivatives Game: minetest_game and many derivatives

Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 65 KiB

65
settingtypes.txt Normal file
View File

@ -0,0 +1,65 @@
[3d_armor]
armor_material_wood (Enable wood armor) bool true
armor_material_cactus (Enable cactus armor) bool true
armor_material_steel (Enable steel armor) bool true
armor_material_bronze (Enable bronze armor) bool true
armor_material_diamond (Enable diamond armor) bool true
armor_material_gold (Enable gold armor) bool true
armor_material_mithril (Enable mithril armor) bool true
armor_material_crystal (Enable crystal armor) bool true
# Increase this if you get initialization glitches when a player first joins.
armor_init_delay (Initialization delay) int 2
# Number of initialization attempts.
# Use in conjunction with armor_init_delay if initialization problems persist.
armor_init_times (Initialization attempts) int 10
# Increase this if armor is not getting into bones due to server lag.
armor_bones_delay (Delay for bones) int 1
# How often player armor items are updated.
armor_update_time (Armor refresh rate [seconds]) int 1
# Drop armor when a player dies.
# Uses bones mod if present, otherwise items are dropped around the player.
armor_drop (Drop armor on death) bool true
# Pulverize armor when a player dies, overrides armor_drop.
armor_destroy (Pulverize armor on death) bool false
# You can use this to increase or decrease overall armor effectiveness,
# eg: level_multiplier = 0.5 will reduce armor level by half.
armor_level_multiplier (Armor effectiveness multiplier) float 1
# You can use this to increase or decrease overall armor healing,
# eg: armor_heal_multiplier = 0 will disable healing altogether.
armor_heal_multiplier (Armor healing multiplier) float 1
# Enable water protection (periodically restores breath when activated).
armor_water_protect (Enable water protection) bool true
# Enable fire protection (defaults true if using ethereal mod).
armor_fire_protect (Enable fire protection) bool false
# Enable punch damage effects.
armor_punch_damage (Enable damage effects) bool true
# Enable migration of old armor inventories.
armor_migrate_old_inventory (Migrate old armor inventories) bool true
[shields]
shields_disable_sounds (Disable shield sounds) bool false
[wieldview]
# Set number of seconds between visible wielded item updates.
wieldview_update_time (Wieldview refresh rate [seconds]) int 2
# Show nodes as tiles, disabled by default.
wieldview_node_tiles (Show nodes as tiles) bool false

View File

@ -7,3 +7,10 @@ Depends: 3d_armor
Originally a part of 3d_armor, shields have been re-included as an optional extra. Originally a part of 3d_armor, shields have been re-included as an optional extra.
If you do not what shields then simply remove the shields folder from the modpack. If you do not what shields then simply remove the shields folder from the modpack.
Shields Configuration
---------------------
Override the following default settings by adding them to your minetest.conf file.
shields_disable_sounds = false

View File

@ -1,14 +1,14 @@
-- support for i18n -- support for i18n
local S = armor_i18n.gettext local S = armor_i18n.gettext
local disable_sounds = minetest.settings:get_bool("shields_disable_sounds")
local use_moreores = minetest.get_modpath("moreores") local use_moreores = minetest.get_modpath("moreores")
local function play_sound_effect(player, name) local function play_sound_effect(player, name)
if player then if not disable_sounds and player then
local pos = player:getpos() local pos = player:get_pos()
if pos then if pos then
minetest.sound_play({ minetest.sound_play(name, {
pos = pos, pos = pos,
name = name,
max_hear_distance = 10, max_hear_distance = 10,
gain = 0.5, gain = 0.5,
}) })
@ -28,15 +28,6 @@ armor:register_armor("shields:shield_admin", {
description = S("Admin Shield"), description = S("Admin Shield"),
inventory_image = "shields_inv_shield_admin.png", inventory_image = "shields_inv_shield_admin.png",
groups = {armor_shield=1000, armor_heal=100, armor_use=0, not_in_creative_inventory=1}, groups = {armor_shield=1000, armor_heal=100, armor_use=0, not_in_creative_inventory=1},
on_punched = function(player, hitter, time_from_last_punch, tool_capabilities)
if type(hitter) == "userdata" then
if hitter:is_player() then
hitter:set_wielded_item("")
end
play_sound_effect(player, "default_dig_metal")
end
return false
end,
}) })
minetest.register_alias("adminshield", "shields:shield_admin") minetest.register_alias("adminshield", "shields:shield_admin")