forked from mtcontrib/3d_armor
Compare commits
38 Commits
19b8ea4028
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
baa16e28cb | ||
|
|
063505f9ea | ||
|
|
1f83b9d634 | ||
|
|
0321907bf5 | ||
|
|
8f775a64f0 | ||
|
|
dbe0a9276a | ||
|
|
dbc891a711 | ||
|
|
a79d1383aa | ||
|
|
220cbc8d92 | ||
|
|
8fe014e6d3 | ||
|
|
a586aeee0c | ||
|
|
082e866274 | ||
|
|
c224a73df7 | ||
|
|
280165fada | ||
|
|
ab1bec3be8 | ||
|
|
22955b413a | ||
|
|
1fcbf64d53 | ||
|
|
fb86c02e43 | ||
|
|
20917da061 | ||
|
|
7bd77a7b80 | ||
|
|
25369e5165 | ||
|
|
7fc313f911 | ||
|
|
4bac73fc9e | ||
|
|
f430395b64 | ||
|
|
467709c935 | ||
|
|
e0b6112320 | ||
|
|
f3e66701aa | ||
|
|
7a0c456638 | ||
|
|
9a687fbb51 | ||
|
|
1e2760a6cf | ||
|
|
1da9d94e7c | ||
|
|
3660e50312 | ||
|
|
c894ba4b0c | ||
|
|
aef125a0ca | ||
|
|
7d251784e7 | ||
|
|
6eb492b09c | ||
|
|
dfa19cce98 | ||
|
|
1d8509e75b |
6
.github/workflows/reference.yml
vendored
6
.github/workflows/reference.yml
vendored
@@ -11,15 +11,15 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
uses: actions/checkout@v3
|
||||
- name: Setup Lua
|
||||
uses: leafo/gh-actions-lua@v8
|
||||
uses: leafo/gh-actions-lua@v10.0.0
|
||||
with:
|
||||
luaVersion: 5.4
|
||||
- name: Setup Lua Rocks
|
||||
uses: leafo/gh-actions-luarocks@v4
|
||||
- name: Setup LDoc dependencies
|
||||
run: luarocks install --only-deps https://raw.githubusercontent.com/lunarmodules/LDoc/master/ldoc-scm-3.rockspec
|
||||
run: luarocks install --only-deps https://raw.githubusercontent.com/lunarmodules/ldoc/master/rockspecs/ldoc-1.5.0-1.rockspec
|
||||
- name: Setup LDoc
|
||||
run: git clone --single-branch --branch=custom https://github.com/AntumDeluge/ldoc.git .ldoc/ldoc && chmod +x .ldoc/ldoc/ldoc.lua
|
||||
- name: Generate docs
|
||||
|
||||
@@ -48,7 +48,7 @@ done
|
||||
echo
|
||||
|
||||
# generate new doc files
|
||||
"${cmd_ldoc}" --UNSAFE_NO_SANDBOX -c "${f_config}" -d "${d_export}" "${d_root}"; retval=$?
|
||||
"${cmd_ldoc}" --unsafe_no_sandbox -c "${f_config}" -d "${d_export}" "${d_root}"; retval=$?
|
||||
|
||||
# check exit status
|
||||
if test ${retval} -ne 0; then
|
||||
|
||||
@@ -17,6 +17,7 @@ read_globals = {
|
||||
"dump", "VoxelArea",
|
||||
|
||||
-- deps
|
||||
"core",
|
||||
"default",
|
||||
"player_api",
|
||||
"minetest",
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -6,7 +6,7 @@
|
||||
|-[Armor Configuration](#armor-configuration) |||- - [3d_Armor Item Storage](#3d_armor-item-storage)
|
||||
|- - [disable_specific_materials](#to-disable-individual-armor-materials) |||- - [Armor Registration](#armor-registration)
|
||||
|- - [armor_init_delay](#initialization-glitches-when-a-player-first-joins) |||- - [Registering Armor Groups](#registering-armor-groups)
|
||||
|- - [armor_init_times](#number-of-initialization-attempts) |||- - [Groups used by 3d_Armor](#groups-used-by-3d_armor)
|
||||
|- - [wieldview_update_time](#how-often-player-wield-items-are-updated) |||- - [Groups used by 3d_Armor](#groups-used-by-3d_armor)
|
||||
|- - [armor_bones_delay](#armor-not-in-bones-due-to-server-lag) |||- - - [Elements](#elements)
|
||||
|- - [armor_update_time](#how-often-player-armor-items-are-updated) |||- - - [Attributes](#attributes)
|
||||
|- - [armor_drop](#drop-armor-when-a-player-dies) |||- - - [Physics](#physics)
|
||||
@@ -19,7 +19,7 @@
|
||||
|- - [armor_fire_protect](#enable-fire-protection) |||- - - [armor:remove_all](#armor-remove_all)
|
||||
|- - [armor_punch_damage](#enable-punch-damage-effects) |||- - - [armor:equip](#armor-equip)
|
||||
|- - [armor_migrate_old_inventory](#migration-of-old-armor-inventories) |||- - - [armor:unequip](#armor-unequip)
|
||||
|- - [wieldview_update_time](#how-often-player-wield-items-are-updated) |||- - - [armor:update_skin](#armor-update_skin)
|
||||
| |||- - - [armor:update_skin](#armor-update_skin)
|
||||
|-[Credits](#credits) |||- - [Callbacks](#Callbacks)
|
||||
| |||- - - [Item callbacks](#item-callbacks)
|
||||
| |||- - - [Global callbacks](#global-callbacks)
|
||||
@@ -60,11 +60,6 @@ Change the following default settings by going to Main Menu>>Settings(Tab)>>All
|
||||
|
||||
armor_init_delay = 2
|
||||
|
||||
### Number of initialization attempts
|
||||
**Increase to prevent glitches - Use in conjunction with armor_init_delay if initialization problems persist.**
|
||||
|
||||
armor_init_times = 10
|
||||
|
||||
### Armor not in bones due to server lag
|
||||
**Increase to help resolve**
|
||||
|
||||
|
||||
@@ -108,18 +108,16 @@ local armor_textures = setmetatable({}, {
|
||||
end
|
||||
})
|
||||
|
||||
armor = {
|
||||
local armor_fields = {
|
||||
timer = 0,
|
||||
elements = {"head", "torso", "legs", "feet"},
|
||||
physics = {"jump", "speed", "gravity"},
|
||||
attributes = {"heal", "fire", "water", "feather"},
|
||||
formspec = "image[2.5,0;2,4;armor_preview]"..
|
||||
default.gui_bg..
|
||||
default.gui_bg_img..
|
||||
default.gui_slots..
|
||||
default.get_hotbar_bg(0, 4.7)..
|
||||
"list[current_player;main;0,4.7;8,1;]"..
|
||||
"list[current_player;main;0,5.85;8,3;8]",
|
||||
formspec = (
|
||||
"image[2.5,0;2,4;armor_preview]" ..
|
||||
armor.add_formspec_list("current_player", "main", 0, 4.7, 8, 1) ..
|
||||
armor.add_formspec_list("current_player", "main", 0, 5.85, 8, 3, 8)
|
||||
),
|
||||
def = armor_def,
|
||||
textures = armor_textures,
|
||||
default_skin = "character",
|
||||
@@ -156,13 +154,15 @@ armor = {
|
||||
on_destroy = {},
|
||||
},
|
||||
migrate_old_inventory = true,
|
||||
version = "0.4.13",
|
||||
get_translator = S
|
||||
}
|
||||
|
||||
for k, v in pairs(armor_fields) do
|
||||
armor[k] = v
|
||||
end
|
||||
|
||||
armor.config = {
|
||||
init_delay = 2,
|
||||
init_times = 10,
|
||||
bones_delay = 1,
|
||||
update_time = 1,
|
||||
drop = minetest.get_modpath("bones") ~= nil,
|
||||
@@ -353,7 +353,7 @@ armor.update_player_visuals = function(self, player)
|
||||
end
|
||||
local name = player:get_player_name()
|
||||
if self.textures[name] then
|
||||
default.player_set_textures(player, {
|
||||
player_api.set_textures(player, {
|
||||
self.textures[name].skin,
|
||||
self.textures[name].armor,
|
||||
self.textures[name].wielditem,
|
||||
@@ -374,7 +374,7 @@ armor.set_player_armor = function(self, player)
|
||||
local state = 0
|
||||
local count = 0
|
||||
local preview = armor:get_preview(name)
|
||||
local texture = "3d_armor_trans.png"
|
||||
local texture = "blank.png"
|
||||
local physics = {}
|
||||
local attributes = {}
|
||||
local levels = {}
|
||||
@@ -416,7 +416,7 @@ armor.set_player_armor = function(self, player)
|
||||
end
|
||||
-- DEPRECATED, use armor_groups instead
|
||||
if def.groups["armor_radiation"] and levels["radiation"] then
|
||||
levels["radiation"] = def.groups["armor_radiation"]
|
||||
levels["radiation"] = levels["radiation"] + def.groups["armor_radiation"]
|
||||
end
|
||||
end
|
||||
local item = stack:get_name()
|
||||
@@ -631,6 +631,9 @@ end
|
||||
armor.damage = function(self, player, index, stack, use)
|
||||
local old_stack = ItemStack(stack)
|
||||
local worn_armor = armor:get_weared_armor_elements(player)
|
||||
if not worn_armor then
|
||||
return
|
||||
end
|
||||
local armor_worn_cnt = 0
|
||||
for k,v in pairs(worn_armor) do
|
||||
armor_worn_cnt = armor_worn_cnt + 1
|
||||
@@ -677,22 +680,31 @@ armor.equip = function(self, player, itemstack)
|
||||
local name, armor_inv = self:get_valid_player(player, "[equip]")
|
||||
local armor_element = self:get_element(itemstack:get_name())
|
||||
if name and armor_element then
|
||||
local index
|
||||
for i=1, armor_inv:get_size("armor") do
|
||||
local stack = armor_inv:get_stack("armor", i)
|
||||
local index, old_stack
|
||||
for i, stack in ipairs(armor_inv:get_list("armor")) do
|
||||
if self:get_element(stack:get_name()) == armor_element then
|
||||
-- prevents equiping an armor that would unequip a cursed armor.
|
||||
if minetest.get_item_group(stack:get_name(), "cursed") ~= 0 then
|
||||
return itemstack
|
||||
end
|
||||
index = i
|
||||
self:unequip(player, armor_element)
|
||||
old_stack = stack
|
||||
self:run_callbacks("on_unequip", player, i, stack)
|
||||
break
|
||||
elseif not index and stack:is_empty() then
|
||||
index = i
|
||||
end
|
||||
end
|
||||
local stack = itemstack:take_item()
|
||||
armor_inv:set_stack("armor", index, stack)
|
||||
self:run_callbacks("on_equip", player, index, stack)
|
||||
if not index then -- armor inventory is full with other armor elements
|
||||
return itemstack
|
||||
end
|
||||
-- Swap the stack at 'index' with 'itemstack'
|
||||
armor_inv:set_stack("armor", index, itemstack)
|
||||
self:run_callbacks("on_equip", player, index, itemstack)
|
||||
self:set_player_armor(player)
|
||||
self:save_armor_inventory(player)
|
||||
-- Remainder: the previous slot content
|
||||
return old_stack or ItemStack()
|
||||
end
|
||||
return itemstack
|
||||
end
|
||||
@@ -713,11 +725,14 @@ armor.unequip = function(self, player, armor_element)
|
||||
if self:get_element(stack:get_name()) == armor_element then
|
||||
armor_inv:set_stack("armor", i, "")
|
||||
minetest.after(0, function()
|
||||
local inv = player:get_inventory()
|
||||
if inv:room_for_item("main", stack) then
|
||||
inv:add_item("main", stack)
|
||||
else
|
||||
minetest.add_item(player:get_pos(), stack)
|
||||
local pplayer = minetest.get_player_by_name(name)
|
||||
if pplayer then -- player is still online
|
||||
local inv = pplayer:get_inventory()
|
||||
if inv:room_for_item("main", stack) then
|
||||
inv:add_item("main", stack)
|
||||
else
|
||||
minetest.add_item(pplayer:get_pos(), stack)
|
||||
end
|
||||
end
|
||||
end)
|
||||
self:run_callbacks("on_unequip", player, i, stack)
|
||||
@@ -802,9 +817,6 @@ end
|
||||
-- @tparam[opt] bool listring Use `listring` formspec element (default: `false`).
|
||||
-- @treturn string Formspec formatted string.
|
||||
armor.get_armor_formspec = function(self, name, listring)
|
||||
if armor.def[name].init_time == 0 then
|
||||
return "label[0,0;Armor not initialized!]"
|
||||
end
|
||||
local formspec = armor.formspec..
|
||||
"list[detached:"..name.."_armor;armor;0,0.5;2,3;]"
|
||||
if listring == true then
|
||||
|
||||
@@ -35,10 +35,6 @@ ARMOR_FIRE_NODES = {
|
||||
-- Increase this if you get initialization glitches when a player first joins.
|
||||
ARMOR_INIT_DELAY = 1
|
||||
|
||||
-- Number of initialization attempts.
|
||||
-- Use in conjunction with ARMOR_INIT_DELAY if initialization problems persist.
|
||||
ARMOR_INIT_TIMES = 1
|
||||
|
||||
-- Increase this if armor is not getting into bones due to server lag.
|
||||
ARMOR_BONES_DELAY = 1
|
||||
|
||||
|
||||
41
3d_armor/gamecompat.lua
Normal file
41
3d_armor/gamecompat.lua
Normal file
@@ -0,0 +1,41 @@
|
||||
-- 3d_armor defaults to support unknown games
|
||||
local sounds = {
|
||||
wood = {
|
||||
footstep = { name = "armor_wood_walk", gain = 0.5 },
|
||||
dig = { name = "armor_wood_dig", gain = 0.5 },
|
||||
dug = { name = "armor_wood_walk", gain = 0.5 }
|
||||
},
|
||||
metal = {
|
||||
dig = { name = "armor_metal_dig", gain = 0.5 },
|
||||
dug = { name = "armor_metal_break", gain = 0.5 },
|
||||
},
|
||||
glass = {
|
||||
dig = { name = "armor_glass_hit", gain = 0.5 },
|
||||
dug = { name = "armor_glass_break", gain = 0.5 },
|
||||
},
|
||||
}
|
||||
|
||||
local formspec_list_template = "list[%s;%s;%f,%f;%f,%f;%s]"
|
||||
-- Allow custom slot styling
|
||||
armor.add_formspec_list = function(location, listname, x, y, w, h, offset)
|
||||
return formspec_list_template:format(location, listname, x, y, w, h, tostring(offset) or "")
|
||||
end
|
||||
|
||||
|
||||
if core.get_modpath("default") then
|
||||
sounds = {
|
||||
wood = default.node_sound_wood_defaults(),
|
||||
metal = default.node_sound_metal_defaults(),
|
||||
glass = default.node_sound_glass_defaults(),
|
||||
}
|
||||
-- armor.add_formspec_list : use formspec prepends for styling
|
||||
end
|
||||
|
||||
|
||||
-- Sanity checks
|
||||
for name, def in pairs(sounds) do
|
||||
assert(type(def) == "table", "Incorrect registration of sound " .. name)
|
||||
end
|
||||
|
||||
|
||||
armor.sounds = sounds
|
||||
@@ -1,10 +1,18 @@
|
||||
if not core.features.use_texture_alpha_string_modes then
|
||||
error("3d_armor requires Luanti/Minetest 5.4.0 or newer. Please update.")
|
||||
end
|
||||
|
||||
local modname = minetest.get_current_modname()
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local worldpath = minetest.get_worldpath()
|
||||
local last_punch_time = {}
|
||||
local pending_players = {}
|
||||
local timer = 0
|
||||
|
||||
armor = {
|
||||
version = "0.4.13"
|
||||
}
|
||||
|
||||
dofile(modpath.."/gamecompat.lua")
|
||||
dofile(modpath.."/api.lua")
|
||||
|
||||
-- local functions
|
||||
@@ -181,11 +189,7 @@ local function validate_armor_inventory(player)
|
||||
end
|
||||
|
||||
local function init_player_armor(initplayer)
|
||||
local name = initplayer:get_player_name()
|
||||
local pos = initplayer:get_pos()
|
||||
if not name or not pos then
|
||||
return false
|
||||
end
|
||||
local name = assert(initplayer:get_player_name())
|
||||
local armor_inv = minetest.create_detached_inventory(name.."_armor", {
|
||||
on_put = function(inv, listname, index, stack, player)
|
||||
validate_armor_inventory(player)
|
||||
@@ -224,6 +228,11 @@ local function init_player_armor(initplayer)
|
||||
if player:get_player_name() ~= name then
|
||||
return 0
|
||||
end
|
||||
--cursed items cannot be unequiped by the player
|
||||
local is_cursed = minetest.get_item_group(stack:get_name(), "cursed") ~= 0
|
||||
if not minetest.is_creative_enabled(player) and is_cursed then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_move = function(inv, from_list, from_index, to_list, to_index, count, player)
|
||||
@@ -251,7 +260,6 @@ local function init_player_armor(initplayer)
|
||||
end
|
||||
end
|
||||
armor.def[name] = {
|
||||
init_time = minetest.get_gametime(),
|
||||
level = 0,
|
||||
state = 0,
|
||||
count = 0,
|
||||
@@ -269,8 +277,8 @@ local function init_player_armor(initplayer)
|
||||
local skin = armor:get_player_skin(name)
|
||||
armor.textures[name] = {
|
||||
skin = skin,
|
||||
armor = "3d_armor_trans.png",
|
||||
wielditem = "3d_armor_trans.png",
|
||||
armor = "blank.png",
|
||||
wielditem = "blank.png",
|
||||
preview = armor.default_skin.."_preview.png",
|
||||
}
|
||||
local texture_path = minetest.get_modpath("player_textures")
|
||||
@@ -284,7 +292,6 @@ local function init_player_armor(initplayer)
|
||||
end
|
||||
end
|
||||
armor:set_player_armor(initplayer)
|
||||
return true
|
||||
end
|
||||
|
||||
-- Armor Player Model
|
||||
@@ -293,21 +300,26 @@ player_api.register_model("3d_armor_character.b3d", {
|
||||
animation_speed = 30,
|
||||
textures = {
|
||||
armor.default_skin..".png",
|
||||
"3d_armor_trans.png",
|
||||
"3d_armor_trans.png",
|
||||
"blank.png",
|
||||
"blank.png",
|
||||
},
|
||||
animations = {
|
||||
stand = {x=0, y=79},
|
||||
lay = {x=162, y=166},
|
||||
lay = {x=162, y=166, eye_height = 0.3, override_local = true,
|
||||
collisionbox = {-0.6, 0.0, -0.6, 0.6, 0.3, 0.6}},
|
||||
walk = {x=168, y=187},
|
||||
mine = {x=189, y=198},
|
||||
walk_mine = {x=200, y=219},
|
||||
sit = {x=81, y=160},
|
||||
sit = {x=81, y=160, eye_height = 0.8, override_local = true,
|
||||
collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.0, 0.3}},
|
||||
-- compatibility w/ the emote mod
|
||||
wave = {x = 192, y = 196, override_local = true},
|
||||
point = {x = 196, y = 196, override_local = true},
|
||||
freeze = {x = 205, y = 205, override_local = true},
|
||||
},
|
||||
collisionbox = {-0.3, 0.0, -0.3, 0.3, 1.7, 0.3},
|
||||
-- stepheight: use default
|
||||
eye_height = 1.47,
|
||||
})
|
||||
|
||||
minetest.register_on_player_receive_fields(function(player, formname, fields)
|
||||
@@ -324,16 +336,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
|
||||
end)
|
||||
|
||||
minetest.register_on_joinplayer(function(player)
|
||||
default.player_set_model(player, "3d_armor_character.b3d")
|
||||
local player_name = player:get_player_name()
|
||||
|
||||
minetest.after(0, function()
|
||||
-- TODO: Added in 7566ecc - What's the prupose?
|
||||
local pplayer = minetest.get_player_by_name(player_name)
|
||||
if pplayer and init_player_armor(pplayer) == false then
|
||||
pending_players[pplayer] = 0
|
||||
end
|
||||
end)
|
||||
player_api.set_model(player, "3d_armor_character.b3d")
|
||||
init_player_armor(player)
|
||||
end)
|
||||
|
||||
minetest.register_on_leaveplayer(function(player)
|
||||
@@ -342,7 +346,6 @@ minetest.register_on_leaveplayer(function(player)
|
||||
armor.def[name] = nil
|
||||
armor.textures[name] = nil
|
||||
end
|
||||
pending_players[player] = nil
|
||||
end)
|
||||
|
||||
if armor.config.drop == true or armor.config.destroy == true then
|
||||
@@ -355,9 +358,12 @@ if armor.config.drop == true or armor.config.destroy == true then
|
||||
for i=1, armor_inv:get_size("armor") do
|
||||
local stack = armor_inv:get_stack("armor", i)
|
||||
if stack:get_count() > 0 then
|
||||
table.insert(drop, stack)
|
||||
armor:run_callbacks("on_unequip", player, i, stack)
|
||||
armor_inv:set_stack("armor", i, nil)
|
||||
--soulbound armors remain equipped after death
|
||||
if minetest.get_item_group(stack:get_name(), "soulbound") == 0 then
|
||||
table.insert(drop, stack)
|
||||
armor:run_callbacks("on_unequip", player, i, stack)
|
||||
armor_inv:set_stack("armor", i, nil)
|
||||
end
|
||||
end
|
||||
end
|
||||
armor:save_armor_inventory(player)
|
||||
@@ -393,8 +399,8 @@ if armor.config.drop == true or armor.config.destroy == true then
|
||||
end)
|
||||
end
|
||||
end)
|
||||
else -- reset un-dropped armor and it's effects
|
||||
minetest.register_on_respawnplayer(function(player)
|
||||
-- reset un-dropped armor and it's effects
|
||||
armor:set_player_armor(player)
|
||||
end)
|
||||
end
|
||||
@@ -403,10 +409,14 @@ if armor.config.punch_damage == true then
|
||||
minetest.register_on_punchplayer(function(player, hitter,
|
||||
time_from_last_punch, tool_capabilities)
|
||||
local name = player:get_player_name()
|
||||
local hit_ip = hitter:is_player()
|
||||
if name and hit_ip and minetest.is_protected(player:get_pos(), "") then
|
||||
return
|
||||
elseif name then
|
||||
if hitter then
|
||||
local hit_ip = hitter:is_player()
|
||||
if name and hit_ip and minetest.is_protected(player:get_pos(), "") then
|
||||
return
|
||||
end
|
||||
end
|
||||
|
||||
if name then
|
||||
armor:punch(player, hitter, time_from_last_punch, tool_capabilities)
|
||||
last_punch_time[name] = minetest.get_gametime()
|
||||
end
|
||||
@@ -448,7 +458,7 @@ minetest.register_globalstep(function(dtime)
|
||||
local name = player:get_player_name()
|
||||
if armor.def[name].feather > 0 then
|
||||
local vel_y = player:get_velocity().y
|
||||
if vel_y < 0 and vel_y < 3 then
|
||||
if vel_y < -0.5 then
|
||||
vel_y = -(vel_y * 0.05)
|
||||
player:add_velocity({x = 0, y = vel_y, z = 0})
|
||||
end
|
||||
@@ -461,18 +471,6 @@ minetest.register_globalstep(function(dtime)
|
||||
end
|
||||
timer = 0
|
||||
|
||||
for player, count in pairs(pending_players) do
|
||||
local remove = init_player_armor(player) == true
|
||||
pending_players[player] = count + 1
|
||||
if remove == false and count > armor.config.init_times then
|
||||
minetest.log("warning", "3d_armor: Failed to initialize player")
|
||||
remove = true
|
||||
end
|
||||
if remove == true then
|
||||
pending_players[player] = nil
|
||||
end
|
||||
end
|
||||
|
||||
-- water breathing protection, added by TenPlus1
|
||||
if armor.config.water_protect == true then
|
||||
for _,player in pairs(minetest.get_connected_players()) do
|
||||
@@ -487,10 +485,12 @@ end)
|
||||
|
||||
if armor.config.fire_protect == true then
|
||||
|
||||
-- make torches hurt
|
||||
minetest.override_item("default:torch", {damage_per_second = 1})
|
||||
minetest.override_item("default:torch_wall", {damage_per_second = 1})
|
||||
minetest.override_item("default:torch_ceiling", {damage_per_second = 1})
|
||||
if core.get_modpath("default") then
|
||||
-- make torches hurt
|
||||
minetest.override_item("default:torch", {damage_per_second = 1})
|
||||
minetest.override_item("default:torch_wall", {damage_per_second = 1})
|
||||
minetest.override_item("default:torch_ceiling", {damage_per_second = 1})
|
||||
end
|
||||
|
||||
-- check player damage for any hot nodes we may be protected against
|
||||
minetest.register_on_player_hpchange(function(player, hp_change, reason)
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# textdomain: 3d_armor
|
||||
Radiation=Strahlen
|
||||
Radiation=Strahlung
|
||||
Level=Stufe
|
||||
Heal=Heilen
|
||||
Heal=Heilung
|
||||
Fire=Feuer
|
||||
Your @1 is almost broken!=Deine @1 ist fast kaputt!
|
||||
Your @1 got destroyed!=Deine @1 wurde zerstört!
|
||||
Your @1 is almost broken!=@1 ist fast kaputt!
|
||||
Your @1 got destroyed!=@1 wurde zerstört!
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# textdomain: 3d_armor
|
||||
Radiation=Radiado
|
||||
Level=Nivelo
|
||||
Heal=Sanigi
|
||||
Heal=Blokŝanco
|
||||
Fire=Fajro
|
||||
Your @1 is almost broken!=Via @1 estas preskaŭ rompita!
|
||||
Your @1 got destroyed!=Via @1 detruiĝis!
|
||||
|
||||
7
3d_armor/locale/3d_armor.pl.tr
Normal file
7
3d_armor/locale/3d_armor.pl.tr
Normal file
@@ -0,0 +1,7 @@
|
||||
# textdomain: 3d_armor
|
||||
Radiation=Promieniowanie
|
||||
Level=Poziom
|
||||
Heal=Uzdrawianie
|
||||
Fire=Ogień
|
||||
Your @1 is almost broken!=Twój @1 jest prawie zepsuty!
|
||||
Your @1 got destroyed!=Twój @1 został zniszczony!
|
||||
@@ -1,7 +1,7 @@
|
||||
# textdomain: 3d_armor
|
||||
Radiation=излучение
|
||||
Level=уровень
|
||||
Heal=исцеление
|
||||
Fire=огонь
|
||||
Your @1 is almost broken!=
|
||||
Your @1 got destroyed!=твой(и) @1 был(и) разрушен(ы)!
|
||||
Radiation=Излучение
|
||||
Level=Уровень
|
||||
Heal=Исцеление
|
||||
Fire=Пламя
|
||||
Your @1 is almost broken!=Ваш предмет «@1» почти сломан!
|
||||
Your @1 got destroyed!=Ваш предмет «@1» был уничтожен!
|
||||
|
||||
7
3d_armor/locale/3d_armor.uk.tr
Normal file
7
3d_armor/locale/3d_armor.uk.tr
Normal file
@@ -0,0 +1,7 @@
|
||||
# textdomain: 3d_armor
|
||||
Radiation=Радіація
|
||||
Level=Рівень
|
||||
Heal=Зцілення
|
||||
Fire=Вогонь
|
||||
Your @1 is almost broken!=Ваш @1 майже зламаний!
|
||||
Your @1 got destroyed!=Ваш(і) @1 був(ли) зламаний(і)!
|
||||
@@ -1,4 +1,5 @@
|
||||
name = 3d_armor
|
||||
depends = default, player_api
|
||||
optional_depends = player_monoids, armor_monoid, pova, moreores
|
||||
depends = player_api
|
||||
optional_depends = default, player_monoids, armor_monoid, pova, moreores
|
||||
description = Adds craftable armor that is visible to other players.
|
||||
min_minetest_version = 5.4
|
||||
|
||||
BIN
3d_armor/sounds/armor_glass_break.ogg
Normal file
BIN
3d_armor/sounds/armor_glass_break.ogg
Normal file
Binary file not shown.
BIN
3d_armor/sounds/armor_glass_hit.ogg
Normal file
BIN
3d_armor/sounds/armor_glass_hit.ogg
Normal file
Binary file not shown.
BIN
3d_armor/sounds/armor_metal_break.ogg
Normal file
BIN
3d_armor/sounds/armor_metal_break.ogg
Normal file
Binary file not shown.
BIN
3d_armor/sounds/armor_metal_dig.ogg
Normal file
BIN
3d_armor/sounds/armor_metal_dig.ogg
Normal file
Binary file not shown.
BIN
3d_armor/sounds/armor_wood_walk.ogg
Normal file
BIN
3d_armor/sounds/armor_wood_walk.ogg
Normal file
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 274 B |
@@ -1,18 +0,0 @@
|
||||
[mod] 3d Armor integration to inventory plus [3d_armor_ip]
|
||||
==========================================================
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
3
3d_armor_ip/locale/3d_armor_ip.de.tr
Normal file
3
3d_armor_ip/locale/3d_armor_ip.de.tr
Normal file
@@ -0,0 +1,3 @@
|
||||
# textdomain: 3d_armor_ip
|
||||
Back=Zurück
|
||||
Armor=Rüstung
|
||||
@@ -1,3 +1,3 @@
|
||||
# textdomain: 3d_armor_ip
|
||||
Back=Dorso
|
||||
Armor=Kiraso
|
||||
Armor=Armaĵo
|
||||
|
||||
3
3d_armor_ip/locale/3d_armor_ip.ru.tr
Normal file
3
3d_armor_ip/locale/3d_armor_ip.ru.tr
Normal file
@@ -0,0 +1,3 @@
|
||||
# textdomain: 3d_armor_ip
|
||||
Back=Назад
|
||||
Armor=Броня
|
||||
3
3d_armor_ip/locale/3d_armor_ip.uk.tr
Normal file
3
3d_armor_ip/locale/3d_armor_ip.uk.tr
Normal file
@@ -0,0 +1,3 @@
|
||||
# textdomain: 3d_armor_ip
|
||||
Back=Назад
|
||||
Armor=Броня
|
||||
@@ -1,18 +0,0 @@
|
||||
[mod] 3d Armor sfinv integration [3d_armor_sfinv]
|
||||
=================================================
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
@@ -15,7 +15,7 @@ sfinv.register_page("3d_armor:armor", {
|
||||
end
|
||||
})
|
||||
armor:register_on_update(function(player)
|
||||
if sfinv.enabled then
|
||||
if sfinv.enabled and sfinv.get_page(player) == "3d_armor:armor" then
|
||||
sfinv.set_player_inventory_formspec(player)
|
||||
end
|
||||
end)
|
||||
|
||||
2
3d_armor_sfinv/locale/3d_armor_sfinv.de.tr
Normal file
2
3d_armor_sfinv/locale/3d_armor_sfinv.de.tr
Normal file
@@ -0,0 +1,2 @@
|
||||
# textdomain: 3d_armor_sfinv
|
||||
Armor=Rüstung
|
||||
@@ -1,2 +1,2 @@
|
||||
# textdomain: 3d_armor_sfinv
|
||||
Armor=Kiraso
|
||||
Armor=Armaĵoj
|
||||
|
||||
2
3d_armor_sfinv/locale/3d_armor_sfinv.ru.tr
Normal file
2
3d_armor_sfinv/locale/3d_armor_sfinv.ru.tr
Normal file
@@ -0,0 +1,2 @@
|
||||
# textdomain: 3d_armor_sfinv
|
||||
Armor=Броня
|
||||
2
3d_armor_sfinv/locale/3d_armor_sfinv.uk.tr
Normal file
2
3d_armor_sfinv/locale/3d_armor_sfinv.uk.tr
Normal file
@@ -0,0 +1,2 @@
|
||||
# textdomain: 3d_armor_sfinv
|
||||
Armor=Броня
|
||||
@@ -1,43 +0,0 @@
|
||||
[mod] 3d Armor Stand [3d_armor_stand]
|
||||
=====================================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
Lecense Models
|
||||
--------------
|
||||
|
||||
Copyright (C) 2016-2019 Stuart Jones - CC BY-SA 3.0
|
||||
|
||||
UV model mapping by tobyplowy(aka toby109tt)
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
3d_armor_stand.png
|
||||
3d_armor_stand_locked.png
|
||||
|
||||
Copyright (C) 2017-2019 tobyplowy - CC BY-SA 3.0
|
||||
|
||||
3d_armor_stand_feet.png
|
||||
3d_armor_stand_head.png
|
||||
3d_armor_stand_legs.png
|
||||
3d_armor_stand_torso.png
|
||||
|
||||
Copyright (C) 2016-2019 Stuart Jones - CC BY-SA 3.0
|
||||
@@ -2,31 +2,27 @@
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
local armor_stand_formspec = "size[8,7]" ..
|
||||
default.gui_bg ..
|
||||
default.gui_bg_img ..
|
||||
default.gui_slots ..
|
||||
default.get_hotbar_bg(0,3) ..
|
||||
"list[current_name;armor_head;3,0.5;1,1;]" ..
|
||||
"list[current_name;armor_torso;4,0.5;1,1;]" ..
|
||||
"list[current_name;armor_legs;3,1.5;1,1;]" ..
|
||||
"list[current_name;armor_feet;4,1.5;1,1;]" ..
|
||||
armor.add_formspec_list("current_name", "main", 3, 0.5, 2, 1) ..
|
||||
armor.add_formspec_list("current_name", "main", 3, 1.5, 2, 1, 2) ..
|
||||
"image[3,0.5;1,1;3d_armor_stand_head.png]" ..
|
||||
"image[4,0.5;1,1;3d_armor_stand_torso.png]" ..
|
||||
"image[3,1.5;1,1;3d_armor_stand_legs.png]" ..
|
||||
"image[4,1.5;1,1;3d_armor_stand_feet.png]" ..
|
||||
"list[current_player;main;0,3;8,1;]" ..
|
||||
"list[current_player;main;0,4.25;8,3;8]"
|
||||
"list[current_player;main;0,4.25;8,3;8]" ..
|
||||
"listring[current_name;main]" ..
|
||||
"listring[current_player;main]"
|
||||
|
||||
local elements = {"head", "torso", "legs", "feet"}
|
||||
|
||||
local function drop_armor(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
for _, element in pairs(elements) do
|
||||
local stack = inv:get_stack("armor_"..element, 1)
|
||||
for i = 1, 4 do
|
||||
local stack = inv:get_stack("main", i)
|
||||
if stack and stack:get_count() > 0 then
|
||||
armor.drop_armor(pos, stack)
|
||||
inv:set_stack("armor_"..element, 1, nil)
|
||||
inv:set_stack("main", i, nil)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -62,14 +58,14 @@ local function update_entity(pos)
|
||||
object = minetest.add_entity(pos, "3d_armor_stand:armor_entity")
|
||||
end
|
||||
if object then
|
||||
local texture = "3d_armor_trans.png"
|
||||
local texture = "blank.png"
|
||||
local textures = {}
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local yaw = 0
|
||||
if inv then
|
||||
for _, element in pairs(elements) do
|
||||
local stack = inv:get_stack("armor_"..element, 1)
|
||||
for i, element in ipairs(elements) do
|
||||
local stack = inv:get_stack("main", i)
|
||||
if stack:get_count() == 1 then
|
||||
local item = stack:get_name() or ""
|
||||
local def = stack:get_definition() or {}
|
||||
@@ -144,182 +140,168 @@ minetest.register_node("3d_armor_stand:top", {
|
||||
buildable_to = false,
|
||||
drop = "",
|
||||
groups = {not_in_creative_inventory = 1},
|
||||
is_ground_content = false,
|
||||
on_blast = function() end,
|
||||
tiles = {"3d_armor_trans.png"},
|
||||
tiles = {"blank.png"},
|
||||
})
|
||||
|
||||
minetest.register_node("3d_armor_stand:armor_stand", {
|
||||
description = S("Armor Stand"),
|
||||
drawtype = "mesh",
|
||||
mesh = "3d_armor_stand.obj",
|
||||
tiles = {"3d_armor_stand.png"},
|
||||
use_texture_alpha = "clip",
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.25, -0.4375, -0.25, 0.25, 1.4, 0.25},
|
||||
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
|
||||
},
|
||||
},
|
||||
groups = {choppy=2, oddly_breakable_by_hand=2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("formspec", armor_stand_formspec)
|
||||
meta:set_string("infotext", S("Armor Stand"))
|
||||
local inv = meta:get_inventory()
|
||||
for _, element in pairs(elements) do
|
||||
inv:set_size("armor_"..element, 1)
|
||||
local function register_armor_stand(def)
|
||||
local function owns_armor_stand(pos, meta, player)
|
||||
if def.name == "locked_armor_stand" and not has_locked_armor_stand_privilege(meta, player) then
|
||||
return false
|
||||
end
|
||||
end,
|
||||
can_dig = function(pos, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
for _, element in pairs(elements) do
|
||||
if not inv:is_empty("armor_"..element) then
|
||||
return false
|
||||
end
|
||||
local has_access = minetest.is_player(player) and not minetest.is_protected(pos, player:get_player_name())
|
||||
if def.name == "shared_armor_stand" and not has_access then
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end,
|
||||
after_place_node = function(pos, placer)
|
||||
minetest.add_entity(pos, "3d_armor_stand:armor_entity")
|
||||
add_hidden_node(pos, placer)
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack)
|
||||
local def = stack:get_definition() or {}
|
||||
local groups = def.groups or {}
|
||||
if groups[listname] then
|
||||
end
|
||||
|
||||
minetest.register_node("3d_armor_stand:" .. def.name, {
|
||||
description = def.description,
|
||||
drawtype = "mesh",
|
||||
mesh = "3d_armor_stand.obj",
|
||||
tiles = {def.texture},
|
||||
use_texture_alpha = "clip",
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.25, -0.4375, -0.25, 0.25, 1.4, 0.25},
|
||||
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
|
||||
},
|
||||
},
|
||||
groups = {choppy=2, oddly_breakable_by_hand=2},
|
||||
is_ground_content = false,
|
||||
sounds = armor.sounds.wood,
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("formspec", armor_stand_formspec)
|
||||
meta:set_string("infotext", def.description)
|
||||
if def.name == "locked_armor_stand" then
|
||||
meta:set_string("owner", "")
|
||||
end
|
||||
local inv = meta:get_inventory()
|
||||
inv:set_size("main", 4)
|
||||
end,
|
||||
can_dig = function(pos, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
if not inv:is_empty("main") then
|
||||
return false
|
||||
end
|
||||
return true
|
||||
end,
|
||||
after_place_node = function(pos, placer)
|
||||
local meta = minetest.get_meta(pos)
|
||||
minetest.add_entity(pos, "3d_armor_stand:armor_entity")
|
||||
if def.name == "locked_armor_stand" then
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
meta:set_string("infotext", S("Armor Stand (owned by @1)", meta:get_string("owner")))
|
||||
elseif def.name == "shared_armor_stand" then
|
||||
meta:set_string("infotext", def.description)
|
||||
end
|
||||
add_hidden_node(pos, placer)
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not owns_armor_stand(pos, meta, player) then
|
||||
return 0
|
||||
end
|
||||
local inv = meta:get_inventory()
|
||||
local stack_def = stack:get_definition() or {}
|
||||
local groups = stack_def.groups or {}
|
||||
for i, element in ipairs(elements) do
|
||||
if groups["armor_"..element] and inv:get_stack(listname, i):is_empty() then
|
||||
return 1
|
||||
end
|
||||
end
|
||||
return 0
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not owns_armor_stand(pos, meta, player) then
|
||||
return 0
|
||||
end
|
||||
return 1
|
||||
end
|
||||
return 0
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos)
|
||||
return 0
|
||||
end,
|
||||
on_metadata_inventory_put = function(pos)
|
||||
update_entity(pos)
|
||||
end,
|
||||
on_metadata_inventory_take = function(pos)
|
||||
update_entity(pos)
|
||||
end,
|
||||
after_destruct = function(pos)
|
||||
update_entity(pos)
|
||||
remove_hidden_node(pos)
|
||||
end,
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos)
|
||||
return 0
|
||||
end,
|
||||
on_metadata_inventory_put = function(pos, listname, index, stack)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local stack_def = stack:get_definition() or {}
|
||||
local groups = stack_def.groups or {}
|
||||
for i, element in ipairs(elements) do
|
||||
if groups["armor_"..element] then
|
||||
inv:set_stack(listname, i, stack)
|
||||
if index ~= i then
|
||||
inv:set_stack(listname, index, nil)
|
||||
end
|
||||
break
|
||||
end
|
||||
end
|
||||
update_entity(pos)
|
||||
end,
|
||||
on_metadata_inventory_take = function(pos)
|
||||
update_entity(pos)
|
||||
end,
|
||||
after_destruct = function(pos)
|
||||
update_entity(pos)
|
||||
remove_hidden_node(pos)
|
||||
end,
|
||||
on_blast = def.on_blast
|
||||
})
|
||||
end
|
||||
|
||||
register_armor_stand({
|
||||
name = "armor_stand",
|
||||
description = S("Armor Stand"),
|
||||
texture = "3d_armor_stand.png",
|
||||
on_blast = function(pos)
|
||||
drop_armor(pos)
|
||||
armor.drop_armor(pos, "3d_armor_stand:armor_stand")
|
||||
minetest.remove_node(pos)
|
||||
end,
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_node("3d_armor_stand:locked_armor_stand", {
|
||||
register_armor_stand({
|
||||
name = "locked_armor_stand",
|
||||
description = S("Locked Armor Stand"),
|
||||
drawtype = "mesh",
|
||||
mesh = "3d_armor_stand.obj",
|
||||
tiles = {"3d_armor_stand_locked.png"},
|
||||
use_texture_alpha = "clip",
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {
|
||||
{-0.25, -0.4375, -0.25, 0.25, 1.4, 0.25},
|
||||
{-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5},
|
||||
},
|
||||
},
|
||||
groups = {choppy=2, oddly_breakable_by_hand=2},
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
on_construct = function(pos)
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("formspec", armor_stand_formspec)
|
||||
meta:set_string("infotext", S("Armor Stand"))
|
||||
meta:set_string("owner", "")
|
||||
local inv = meta:get_inventory()
|
||||
for _, element in pairs(elements) do
|
||||
inv:set_size("armor_"..element, 1)
|
||||
end
|
||||
end,
|
||||
can_dig = function(pos, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
for _, element in pairs(elements) do
|
||||
if not inv:is_empty("armor_"..element) then
|
||||
return false
|
||||
end
|
||||
end
|
||||
return true
|
||||
end,
|
||||
after_place_node = function(pos, placer)
|
||||
minetest.add_entity(pos, "3d_armor_stand:armor_entity")
|
||||
local meta = minetest.get_meta(pos)
|
||||
meta:set_string("owner", placer:get_player_name() or "")
|
||||
meta:set_string("infotext", S("Armor Stand (owned by @1)", meta:get_string("owner")))
|
||||
add_hidden_node(pos, placer)
|
||||
end,
|
||||
allow_metadata_inventory_put = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not has_locked_armor_stand_privilege(meta, player) then
|
||||
return 0
|
||||
end
|
||||
local def = stack:get_definition() or {}
|
||||
local groups = def.groups or {}
|
||||
if groups[listname] then
|
||||
return 1
|
||||
end
|
||||
return 0
|
||||
end,
|
||||
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
|
||||
local meta = minetest.get_meta(pos)
|
||||
if not has_locked_armor_stand_privilege(meta, player) then
|
||||
return 0
|
||||
end
|
||||
return stack:get_count()
|
||||
end,
|
||||
allow_metadata_inventory_move = function(pos)
|
||||
return 0
|
||||
end,
|
||||
on_metadata_inventory_put = function(pos)
|
||||
update_entity(pos)
|
||||
end,
|
||||
on_metadata_inventory_take = function(pos)
|
||||
update_entity(pos)
|
||||
end,
|
||||
after_destruct = function(pos)
|
||||
update_entity(pos)
|
||||
remove_hidden_node(pos)
|
||||
end,
|
||||
on_blast = function(pos)
|
||||
-- Not affected by TNT
|
||||
end,
|
||||
texture = "3d_armor_stand_locked.png"
|
||||
})
|
||||
|
||||
register_armor_stand({
|
||||
name = "shared_armor_stand",
|
||||
description = S("Shared Armor Stand"),
|
||||
texture = "3d_armor_stand_shared.png"
|
||||
})
|
||||
|
||||
minetest.register_entity("3d_armor_stand:armor_entity", {
|
||||
physical = true,
|
||||
visual = "mesh",
|
||||
mesh = "3d_armor_entity.obj",
|
||||
visual_size = {x=1, y=1},
|
||||
collisionbox = {0,0,0,0,0,0},
|
||||
textures = {"3d_armor_trans.png"},
|
||||
pos = nil,
|
||||
timer = 0,
|
||||
initial_properties = {
|
||||
physical = true,
|
||||
visual = "mesh",
|
||||
mesh = "3d_armor_entity.obj",
|
||||
visual_size = {x=1, y=1},
|
||||
collisionbox = {0,0,0,0,0,0},
|
||||
textures = {"blank.png"},
|
||||
},
|
||||
_pos = nil,
|
||||
on_activate = function(self)
|
||||
local pos = self.object:get_pos()
|
||||
if pos then
|
||||
self.pos = vector.round(pos)
|
||||
self._pos = vector.round(pos)
|
||||
update_entity(pos)
|
||||
end
|
||||
end,
|
||||
on_blast = function(self, damage)
|
||||
local drops = {}
|
||||
local node = minetest.get_node(self.pos)
|
||||
local node = minetest.get_node(self._pos)
|
||||
if node.name == "3d_armor_stand:armor_stand" then
|
||||
drop_armor(self.pos)
|
||||
drop_armor(self._pos)
|
||||
self.object:remove()
|
||||
end
|
||||
return false, false, drops
|
||||
@@ -327,7 +309,7 @@ minetest.register_entity("3d_armor_stand:armor_entity", {
|
||||
})
|
||||
|
||||
minetest.register_abm({
|
||||
nodenames = {"3d_armor_stand:locked_armor_stand", "3d_armor_stand:armor_stand"},
|
||||
nodenames = {"3d_armor_stand:locked_armor_stand", "3d_armor_stand:shared_armor_stand", "3d_armor_stand:armor_stand"},
|
||||
interval = 15,
|
||||
chance = 1,
|
||||
action = function(pos, node, active_object_count, active_object_count_wider)
|
||||
@@ -338,6 +320,32 @@ minetest.register_abm({
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_lbm({
|
||||
label = "Update armor stand inventories",
|
||||
name = "3d_armor_stand:update_inventories",
|
||||
nodenames = {"3d_armor_stand:locked_armor_stand", "3d_armor_stand:shared_armor_stand", "3d_armor_stand:armor_stand"},
|
||||
run_at_every_load = false,
|
||||
action = function(pos, node)
|
||||
local meta = minetest.get_meta(pos)
|
||||
local inv = meta:get_inventory()
|
||||
local lists = inv:get_lists()
|
||||
for _, element in pairs(elements) do
|
||||
if not lists["armor_"..element] then
|
||||
-- Abort to avoid item loss in case env_meta.txt is corrupted/deleted
|
||||
return
|
||||
end
|
||||
end
|
||||
inv:set_lists({main = {
|
||||
lists.armor_head[1],
|
||||
lists.armor_torso[1],
|
||||
lists.armor_legs[1],
|
||||
lists.armor_feet[1]
|
||||
}})
|
||||
meta:set_string("formspec", armor_stand_formspec)
|
||||
update_entity(pos)
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "3d_armor_stand:armor_stand",
|
||||
recipe = {
|
||||
@@ -353,3 +361,10 @@ minetest.register_craft({
|
||||
{"3d_armor_stand:armor_stand", "default:steel_ingot"},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "3d_armor_stand:shared_armor_stand",
|
||||
recipe = {
|
||||
{"3d_armor_stand:armor_stand", "default:copper_ingot"},
|
||||
}
|
||||
})
|
||||
|
||||
5
3d_armor_stand/locale/3d_armor_stand.de.tr
Normal file
5
3d_armor_stand/locale/3d_armor_stand.de.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: 3d_armor_stand
|
||||
Armor Stand Top=Rüstungsständeroberseite
|
||||
Armor Stand=Rüstungsständer
|
||||
Locked Armor Stand=Abgeschlossener Rüstungsständer
|
||||
Armor Stand (owned by @1)=Rüstungsständer (Eigentum von @1)
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: 3d_armor_stand
|
||||
Armor Stand Top=Kirasstando Supro
|
||||
Armor Stand=Kirasstando
|
||||
Locked Armor Stand=Ŝlosita Kirasstando
|
||||
Armor Stand (owned by @1)=Kirasstando (posedata de @1)
|
||||
Armor Stand Top=Armaĵtenila Supro
|
||||
Armor Stand=Armaĵtenilo
|
||||
Locked Armor Stand=Ŝlosita Armaĵtenilo
|
||||
Armor Stand (owned by @1)=Ŝlosita Armaĵtenilo (posedata de @1)
|
||||
|
||||
6
3d_armor_stand/locale/3d_armor_stand.es.tr
Normal file
6
3d_armor_stand/locale/3d_armor_stand.es.tr
Normal file
@@ -0,0 +1,6 @@
|
||||
# textdomain: 3d_armor_stand
|
||||
Armor Stand Top=
|
||||
Armor Stand=Soporte de armadura
|
||||
Locked Armor Stand=Soporte de armadura privado
|
||||
Shared Armor Stand=Soporte de armadura compartido
|
||||
Armor Stand (owned by @1)=Soporte de armadura (de @1)
|
||||
6
3d_armor_stand/locale/3d_armor_stand.ru.tr
Executable file
6
3d_armor_stand/locale/3d_armor_stand.ru.tr
Executable file
@@ -0,0 +1,6 @@
|
||||
# textdomain: 3d_armor_stand
|
||||
Armor Stand Top=Верх Стойки для Брони
|
||||
Armor Stand=Стойка для Брони
|
||||
Locked Armor Stand=Заблокированная Стойка для Брони
|
||||
Shared Armor Stand=Публичная Стойка для Брони
|
||||
Armor Stand (owned by @1)=Стойка для Брони (владалец: @1)
|
||||
5
3d_armor_stand/locale/3d_armor_stand.uk.tr
Executable file
5
3d_armor_stand/locale/3d_armor_stand.uk.tr
Executable file
@@ -0,0 +1,5 @@
|
||||
# textdomain: 3d_armor_stand
|
||||
Armor Stand Top=Верх Стійки для Броні
|
||||
Armor Stand=Стійка для Броні
|
||||
Locked Armor Stand=Закрита Стійка для Броні
|
||||
Armor Stand (owned by @1)=Стійка для Броні (власник @1)
|
||||
@@ -2,4 +2,5 @@
|
||||
Armor Stand Top=
|
||||
Armor Stand=
|
||||
Locked Armor Stand=
|
||||
Shared Armor Stand=
|
||||
Armor Stand (owned by @1)=
|
||||
|
||||
BIN
3d_armor_stand/models/3d_armor_stand_shared.png
Normal file
BIN
3d_armor_stand/models/3d_armor_stand_shared.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1011 B |
BIN
3d_armor_stand/sounds/armor_wood_dig.ogg
Normal file
BIN
3d_armor_stand/sounds/armor_wood_dig.ogg
Normal file
Binary file not shown.
BIN
3d_armor_stand/sounds/armor_wood_walk.ogg
Normal file
BIN
3d_armor_stand/sounds/armor_wood_walk.ogg
Normal file
Binary file not shown.
@@ -1,18 +0,0 @@
|
||||
[mod] 3d Armor integration to unified inventory [3d_armor_ui]
|
||||
=============================================================
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
@@ -33,9 +33,6 @@ unified_inventory.register_page("armor", {
|
||||
local gridy = 0.6
|
||||
|
||||
local name = player:get_player_name()
|
||||
if armor.def[name].init_time == 0 then
|
||||
return {formspec="label[0,0;"..F(S("Armor not initialized!")).."]"}
|
||||
end
|
||||
local formspec = perplayer_formspec.standard_inv_bg..
|
||||
perplayer_formspec.standard_inv..
|
||||
ui.make_inv_img_grid(gridx, gridy, 2, 3)..
|
||||
|
||||
8
3d_armor_ui/locale/3d_armor_ui.de.tr
Normal file
8
3d_armor_ui/locale/3d_armor_ui.de.tr
Normal file
@@ -0,0 +1,8 @@
|
||||
# textdomain: 3d_armor_ui
|
||||
3D Armor=3D-Rüstung
|
||||
Armor not initialized!=Rüstung ist nicht initialisiert!
|
||||
Armor=Rüstung
|
||||
Level=Stufe
|
||||
Heal=Heilung
|
||||
Fire=Feuer
|
||||
Radiation=Strahlung
|
||||
@@ -1,7 +1,7 @@
|
||||
# textdomain: 3d_armor_ui
|
||||
3D Armor=3D Kiraso
|
||||
Armor not initialized!=Kiraso ne pravigita!
|
||||
Armor=Kiraso
|
||||
3D Armor=3D Armaĵoj
|
||||
Armor not initialized!=Armaĵoj ne pretigitaj!
|
||||
Armor=Armaĵo
|
||||
Level=Nivelo
|
||||
Heal=Sanigi
|
||||
Fire=Fajro
|
||||
|
||||
8
3d_armor_ui/locale/3d_armor_ui.ru.tr
Normal file
8
3d_armor_ui/locale/3d_armor_ui.ru.tr
Normal file
@@ -0,0 +1,8 @@
|
||||
# textdomain: 3d_armor_ui
|
||||
3D Armor=3D Броня
|
||||
Armor not initialized!=Броня не инициализирована!
|
||||
Armor=Броня
|
||||
Level=Уровень
|
||||
Heal=Исцеление
|
||||
Fire=Пламя
|
||||
Radiation=Излучение
|
||||
8
3d_armor_ui/locale/3d_armor_ui.uk.tr
Normal file
8
3d_armor_ui/locale/3d_armor_ui.uk.tr
Normal file
@@ -0,0 +1,8 @@
|
||||
# textdomain: 3d_armor_ui
|
||||
3D Armor=3D Броня
|
||||
Armor not initialized!=Броня не ініціалізована!
|
||||
Armor=Броня
|
||||
Level=Рівень
|
||||
Heal=Зцілення
|
||||
Fire=Вогонь
|
||||
Radiation=Радіація
|
||||
@@ -8,3 +8,9 @@ Armor Textures: Copyright (C) 2017-2023 davidthecreator - CC-BY-SA 3.0
|
||||
Special credit to Jordach and MirceaKitsune for providing the default 3d character model.
|
||||
|
||||
New armor/shield textures CC-BY-SA 3.0 / davidthecreator / https://forum.minetest.net/viewtopic.php?f=11&t=4654&start=800#p356448
|
||||
|
||||
Wood armor sounds / CC0 / TinyWorlds / https://opengameart.org/content/different-steps-on-wood-stone-leaves-gravel-and-mud
|
||||
|
||||
Metal armor sounds / CC0 / Ogrebane / https://opengameart.org/content/wood-and-metal-sound-effects-volume-2
|
||||
|
||||
Glass armor sounds / CC0 / rubberduck / https://opengameart.org/content/75-cc0-breaking-falling-hit-sfx
|
||||
54
README.md
54
README.md
@@ -22,39 +22,53 @@ Modpack - 3d Armor
|
||||
[mod] Visible Player Armor [3d_armor]
|
||||
-------------------------------------
|
||||
|
||||
Minetest Version: 5.0.0 and newer
|
||||
|
||||
Game: minetest_game and many derivatives
|
||||
|
||||
Depends: default
|
||||
|
||||
Adds craftable armor that is visible to other players. Each armor item worn contributes to
|
||||
a player's armor group level making them less vulnerable to attack.
|
||||
|
||||
Armor takes damage when a player is hurt, however, many armor items offer a 'stackable'
|
||||
percentage chance of restoring the lost health points. Overall armor level is boosted by 10%
|
||||
when wearing a full matching set (helmet, chestplate, leggings and boots of the same material)
|
||||
when wearing a full matching set (helmet, chestplate, leggings and boots of the same material).
|
||||
|
||||
Fire protection has been added by TenPlus1 and in use when ethereal mod is found and crystal
|
||||
armor has been enabled. each piece of armor offers 1 fire protection, level 1 protects
|
||||
against torches, level 2 against crystal spikes, 3 for fire and 5 protects when in lava.
|
||||
Overview of all items, API and settings: **[3d_armor reference](https://minetest-mods.github.io/3d_armor/reference/)**
|
||||
|
||||
Compatible with sfinv, inventory plus or unified inventory by enabling the appropriate
|
||||
inventory module, [3d_armor_sfinv], [3d_armor_ip] and [3d_armor_ui] respectively.
|
||||
Also compatible with [smart_inventory] without the need for additional modules.
|
||||
**Dependencies:**
|
||||
|
||||
built in support player skins [skins] by Zeg9 and Player Textures [player_textures] by PilzAdam
|
||||
and [simple_skins] by TenPlus1.
|
||||
* Luanti/Minetest: 5.4.0 or newer
|
||||
* Mods `default` and `player_api`
|
||||
* Provided by [minetest_game](https://github.com/luanti-org/minetest_game)
|
||||
and many derivatives
|
||||
|
||||
**Features:** (optional)
|
||||
|
||||
* Fire protection (added by TenPlus1):
|
||||
* Depends on the mod `ethereal` and the (provided) `armor_crystal` mod.
|
||||
* Each piece of armor increases fire protection by 1 (one).
|
||||
* level 1: protects against torches
|
||||
* level 2: protects against crystal spikes
|
||||
* level 3: protects against fire
|
||||
* level 5: protects against lava
|
||||
* Inventory mod compatibility:
|
||||
* `3d_armor_sfinv` for `sfinv` (minetest_game and derivatives)
|
||||
* `3d_armor_ip` for `inventory_plus`
|
||||
* `3d_armor_ui` for `unified_inventory`
|
||||
* Compatible with `smart_inventory` without any mod dependency.
|
||||
* Supported skin mods:
|
||||
* `skins` by Zeg9
|
||||
* `player_textures` by PilzAdam
|
||||
* `simple_skins` by TenPlus1
|
||||
* Supported by `skinsdb`
|
||||
* Supported physics mods:
|
||||
* `player_monoids`
|
||||
* `armor_monoid`
|
||||
* `pova`
|
||||
|
||||
Armor can be configured by adding a file called armor.conf in 3d_armor mod or world directory.
|
||||
see armor.conf.example for all available options.
|
||||
|
||||
For **mod installation** instructions, please visit: http://wiki.minetest.com/wiki/Installing_Mods
|
||||
**Types of armor:**
|
||||
|
||||
The specific "armors as modpack" refactorization allows anyone to enable/disable any armors they want as mods rather than obscure settings of the past. (See [#78](https://github.com/minetest-mods/3d_armor/commit/9444afd7222a71fc17d40c9793506812d715dcc3) for further explanation.)
|
||||
|
||||
Currently, the modpack includes:
|
||||
|
||||
- armor_admin
|
||||
- armor_bronze
|
||||
- armor_cactus
|
||||
@@ -66,9 +80,7 @@ Currently, the modpack includes:
|
||||
- armor_steel
|
||||
- armor_wood
|
||||
|
||||
as separate armor mods intentionally. All these mods depend on 3d_armor.
|
||||
|
||||
[API Reference](https://minetest-mods.github.io/3d_armor/reference/)
|
||||
All these mods depend on 3d_armor.
|
||||
|
||||
[mod] Visible Wielded Items [wieldview]
|
||||
---------------------------------------
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Admin Helmet
|
||||
--
|
||||
@@ -41,7 +41,7 @@ armor:register_armor(":3d_armor:chestplate_admin", {
|
||||
description = S("Admin Chestplate"),
|
||||
inventory_image = "3d_armor_inv_chestplate_admin.png",
|
||||
armor_groups = {fleshy=100},
|
||||
groups = {armor_torso=1, armor_heal=100, armor_use=0,
|
||||
groups = {armor_torso=1, armor_heal=100, armor_use=0, armor_water=1,
|
||||
not_in_creative_inventory=1},
|
||||
on_drop = function(itemstack, dropper, pos)
|
||||
return
|
||||
@@ -61,7 +61,7 @@ armor:register_armor(":3d_armor:leggings_admin", {
|
||||
description = S("Admin Leggings"),
|
||||
inventory_image = "3d_armor_inv_leggings_admin.png",
|
||||
armor_groups = {fleshy=100},
|
||||
groups = {armor_legs=1, armor_heal=100, armor_use=0,
|
||||
groups = {armor_legs=1, armor_heal=100, armor_use=0, armor_water=1,
|
||||
not_in_creative_inventory=1},
|
||||
on_drop = function(itemstack, dropper, pos)
|
||||
return
|
||||
@@ -81,8 +81,8 @@ armor:register_armor(":3d_armor:boots_admin", {
|
||||
description = S("Admin Boots"),
|
||||
inventory_image = "3d_armor_inv_boots_admin.png",
|
||||
armor_groups = {fleshy=100},
|
||||
groups = {armor_feet=1, armor_heal=100, armor_use=0,
|
||||
not_in_creative_inventory=1},
|
||||
groups = {armor_feet=1, armor_heal=100, armor_use=0, physics_speed=1,
|
||||
armor_water=1, not_in_creative_inventory=1},
|
||||
on_drop = function(itemstack, dropper, pos)
|
||||
return
|
||||
end,
|
||||
@@ -91,4 +91,4 @@ armor:register_armor(":3d_armor:boots_admin", {
|
||||
minetest.register_alias("adminboots", "3d_armor:boots_admin")
|
||||
minetest.register_alias("adminhelmet", "3d_armor:helmet_admin")
|
||||
minetest.register_alias("adminchestplate", "3d_armor:chestplate_admin")
|
||||
minetest.register_alias("adminleggings", "3d_armor:leggings_admin")
|
||||
minetest.register_alias("adminleggings", "3d_armor:leggings_admin")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_admin
|
||||
Admin Helmet=Administra Kasko
|
||||
Admin Chestplate=Administra Brustkiraso
|
||||
Admin Chestplate=Administra Kiraso
|
||||
Admin Leggings=Administra Pantalono
|
||||
Admin Boots=Administra Botoj
|
||||
Admin Boots=Administraj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_admin
|
||||
Admin Helmet=шлем админа
|
||||
Admin Chestplate=бронежилет админа
|
||||
Admin Leggings=гамаши админа
|
||||
Admin Boots=ботинки админа
|
||||
Admin Helmet=Шлем Админа
|
||||
Admin Chestplate=Нагрудник Админа
|
||||
Admin Leggings=Поножи Админа
|
||||
Admin Boots=Ботинки Админа
|
||||
|
||||
5
armor_admin/locale/armor_admin.uk.tr
Normal file
5
armor_admin/locale/armor_admin.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_admin
|
||||
Admin Helmet=Шолом адміна
|
||||
Admin Chestplate=Броня адміна
|
||||
Admin Leggings=Штани адміна
|
||||
Admin Boots=Взуття адміна
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
--- Bronze
|
||||
--
|
||||
-- Requires setting `armor_material_bronze`.
|
||||
@@ -178,4 +177,4 @@ if armor.materials.bronze then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_bronze
|
||||
Bronze Helmet=Bronza Kasko
|
||||
Bronze Chestplate=Bronza Brustkiraso
|
||||
Bronze Chestplate=Bronza Kiraso
|
||||
Bronze Leggings=Bronza Pantalono
|
||||
Bronze Boots=Bronza Botoj
|
||||
Bronze Boots=Bronzaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_bronze
|
||||
Bronze Helmet=бронзовый шлем
|
||||
Bronze Chestplate=бронзовый бронежилет
|
||||
Bronze Leggings=бронзовые гамаши
|
||||
Bronze Boots=бронзовые ботинки
|
||||
Bronze Helmet=Бронзовый Шлем
|
||||
Bronze Chestplate=Бронзовый Нагрудник
|
||||
Bronze Leggings=Бронзовые Поножи
|
||||
Bronze Boots=Бронзовые Ботинки
|
||||
|
||||
5
armor_bronze/locale/armor_bronze.uk.tr
Normal file
5
armor_bronze/locale/armor_bronze.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_bronze
|
||||
Bronze Helmet=Бронзовий шолом
|
||||
Bronze Chestplate=Бронзова броня
|
||||
Bronze Leggings=Бронзові штани
|
||||
Bronze Boots=Бронзове взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Cactus
|
||||
--
|
||||
@@ -180,4 +180,4 @@ if armor.materials.cactus then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_cactus
|
||||
Cactus Helmet=Kakta Kasko
|
||||
Cactus Chestplate=Kakta Brustkiraso
|
||||
Cactus Chestplate=Kakta Kiraso
|
||||
Cactus Leggings=Kakta Pantalono
|
||||
Cactus Boots=Kakta Botoj
|
||||
Cactus Boots=Kaktaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_cactus
|
||||
Cactus Helmet=кактусовый шлем
|
||||
Cactus Chestplate=кактусовый бронежилет
|
||||
Cactus Leggings=кактусовые гамаши
|
||||
Cactus Boots=кактусовые ботинки
|
||||
Cactus Helmet=Кактусовый Шлем
|
||||
Cactus Chestplate=Кактусовый Нагрудник
|
||||
Cactus Leggings=Кактусовые Поножи
|
||||
Cactus Boots=Кактусовые Ботинки
|
||||
|
||||
5
armor_cactus/locale/armor_cactus.uk.tr
Normal file
5
armor_cactus/locale/armor_cactus.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_cactus
|
||||
Cactus Helmet=Кактусовий шолом
|
||||
Cactus Chestplate=Кактусова броня
|
||||
Cactus Leggings=Кактусові штани
|
||||
Cactus Boots=Кактусове взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,8 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Crystal
|
||||
--
|
||||
@@ -167,4 +166,4 @@ if armor.materials.crystal then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_crystal
|
||||
Crystal Helmet=Kristala Kasko
|
||||
Crystal Chestplate=Kristala Brustkiraso
|
||||
Crystal Chestplate=Kristala Kiraso
|
||||
Crystal Leggings=Kristala Pantalono
|
||||
Crystal Boots=Kristala Botoj
|
||||
Crystal Boots=Kristalaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_crystal
|
||||
Crystal Helmet=кристалловый шлем
|
||||
Crystal Chestplate=кристалловый бронежилет
|
||||
Crystal Leggings=кристалловые гамаши
|
||||
Crystal Boots=кристалловые ботинки
|
||||
Crystal Helmet=Кристальный Шлем
|
||||
Crystal Chestplate=Кристальный Нагрудник
|
||||
Crystal Leggings=Кристальные Поножи
|
||||
Crystal Boots=Кристальные Ботинки
|
||||
|
||||
5
armor_crystal/locale/armor_crystal.uk.tr
Normal file
5
armor_crystal/locale/armor_crystal.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_crystal
|
||||
Crystal Helmet=Кришталевий шолом
|
||||
Crystal Chestplate=Кришталева броня
|
||||
Crystal Leggings=Кришталеві штани
|
||||
Crystal Boots=Кришталеве взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Diamond
|
||||
--
|
||||
@@ -163,4 +163,4 @@ if armor.materials.diamond then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_diamond
|
||||
Diamond Helmet=Diamanta Kasko
|
||||
Diamond Chestplate=Diamanta Brustkiraso
|
||||
Diamond Chestplate=Diamanta Kiraso
|
||||
Diamond Leggings=Diamanta Pantalono
|
||||
Diamond Boots=Diamanta Botoj
|
||||
Diamond Boots=Diamantaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_diamond
|
||||
Diamond Helmet=алмазный шлем
|
||||
Diamond Chestplate=алмазный бронежилет
|
||||
Diamond Leggings=алмазные гамаши
|
||||
Diamond Boots=алмазные ботинки
|
||||
Diamond Helmet=Алмазный Шлем
|
||||
Diamond Chestplate=Алмазный Нагрудник
|
||||
Diamond Leggings=Алмазные Поножи
|
||||
Diamond Boots=Алмазные Ботинки
|
||||
|
||||
5
armor_diamond/locale/armor_diamond.uk.tr
Normal file
5
armor_diamond/locale/armor_diamond.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_diamond
|
||||
Diamond Helmet=Діамантовий шолом
|
||||
Diamond Chestplate=Діамантова броня
|
||||
Diamond Leggings=Діамантові штани
|
||||
Diamond Boots=Діамантове взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
|
||||
--- Gold
|
||||
@@ -180,4 +180,4 @@ if armor.materials.gold then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_gold
|
||||
Gold Helmet=Ora Kasko
|
||||
Gold Chestplate=Ora Brustkiraso
|
||||
Gold Chestplate=Ora Kiraso
|
||||
Gold Leggings=Ora Pantalono
|
||||
Gold Boots=Ora Botoj
|
||||
Gold Boots=Oraj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_gold
|
||||
Gold Helmet=золотой шлем
|
||||
Gold Chestplate=золотой бронежилет
|
||||
Gold Leggings=золотые гамаши
|
||||
Gold Boots=золотые ботинки
|
||||
Gold Helmet=Золотой Шлем
|
||||
Gold Chestplate=Золотой Нагрудник
|
||||
Gold Leggings=Золотые Поножи
|
||||
Gold Boots=Золотые Ботинки
|
||||
|
||||
5
armor_gold/locale/armor_gold.uk.tr
Normal file
5
armor_gold/locale/armor_gold.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_gold
|
||||
Gold Helmet=Золотий шолом
|
||||
Gold Chestplate=Золота броня
|
||||
Gold Leggings=Золоті штани
|
||||
Gold Boots=Золоте взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Mithril
|
||||
--
|
||||
@@ -159,4 +159,4 @@ if armor.materials.mithril then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_mithril
|
||||
Mithril Helmet=Mitrila Kasko
|
||||
Mithril Chestplate=Mitrila Brustkiraso
|
||||
Mithril Chestplate=Mitrila Kiraso
|
||||
Mithril Leggings=Mitrila Pantalono
|
||||
Mithril Boots=Mitrila Botoj
|
||||
Mithril Boots=Mitrilaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_mithril
|
||||
Mithril Helmet=мифриловый шлем
|
||||
Mithril Chestplate=мифриловый бронежилет
|
||||
Mithril Leggings=мифриловые гамаши
|
||||
Mithril Boots=мифриловые ботинки
|
||||
Mithril Helmet=Мифриловый Шлем
|
||||
Mithril Chestplate=Мифриловый Нагрудник
|
||||
Mithril Leggings=Мифриловые Поножи
|
||||
Mithril Boots=Мифриловые Ботинки
|
||||
|
||||
5
armor_mithril/locale/armor_mithril.uk.tr
Normal file
5
armor_mithril/locale/armor_mithril.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_mithril
|
||||
Mithril Helmet=Міфріловий шолом
|
||||
Mithril Chestplate=Міфрілова броня
|
||||
Mithril Leggings=Міфрілові штани
|
||||
Mithril Boots=Міфрілове взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
|
||||
--- Nether
|
||||
@@ -165,4 +165,4 @@ if armor.materials.nether then
|
||||
},
|
||||
})
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_nether
|
||||
Nether Helmet=Inferna Kasko
|
||||
Nether Chestplate=Inferna Brustkiraso
|
||||
Nether Chestplate=Inferna Kiraso
|
||||
Nether Leggings=Inferna Pantalono
|
||||
Nether Boots=Inferna Botoj
|
||||
Nether Boots=Infernaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_nether
|
||||
Nether Helmet=адский шлем
|
||||
Nether Chestplate=адский бронежилет
|
||||
Nether Leggings=адские гамаши
|
||||
Nether Boots=адские ботинки
|
||||
Nether Helmet=Незерский Шлем
|
||||
Nether Chestplate=Незерский Нагрудник
|
||||
Nether Leggings=Незерские Поножи
|
||||
Nether Boots=Незерские Ботинки
|
||||
|
||||
5
armor_nether/locale/armor_nether.uk.tr
Normal file
5
armor_nether/locale/armor_nether.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_nether
|
||||
Nether Helmet=Пекельний шолом
|
||||
Nether Chestplate=Пекельна броня
|
||||
Nether Leggings=Пекельні штани
|
||||
Nether Boots=Пекельне взуття
|
||||
@@ -1,4 +1,4 @@
|
||||
name = armor_nether
|
||||
depends = 3d_armor
|
||||
optional_depends = nether
|
||||
description = Adds craftable wood armor.
|
||||
description = Adds craftable nether armor.
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Steel
|
||||
--
|
||||
@@ -178,4 +178,4 @@ if armor.materials.steel then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_steel
|
||||
Steel Helmet=Ŝtala Kasko
|
||||
Steel Chestplate=Ŝtala Brustkiraso
|
||||
Steel Chestplate=Ŝtala Kiraso
|
||||
Steel Leggings=Ŝtala Pantalono
|
||||
Steel Boots=Ŝtala Botoj
|
||||
Steel Boots=Ŝtalaj Botoj
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_steel
|
||||
Steel Helmet=стальной шлем
|
||||
Steel Chestplate=стальной бронежилет
|
||||
Steel Leggings=стальные гамаши
|
||||
Steel Boots=стальные ботинки
|
||||
Steel Helmet=Стальной Шлем
|
||||
Steel Chestplate=Стальной Нагрудник
|
||||
Steel Leggings=Стальные Поножи
|
||||
Steel Boots=Стальные Ботинки
|
||||
|
||||
5
armor_steel/locale/armor_steel.uk.tr
Normal file
5
armor_steel/locale/armor_steel.uk.tr
Normal file
@@ -0,0 +1,5 @@
|
||||
# textdomain: armor_steel
|
||||
Steel Helmet=Сталевий шолом
|
||||
Steel Chestplate=Сталева броня
|
||||
Steel Leggings=Сталеві штани
|
||||
Steel Boots=Сталеве взуття
|
||||
@@ -1,26 +0,0 @@
|
||||
[mod] 3d Armor [3d_armor]
|
||||
=========================
|
||||
|
||||
License Source Code
|
||||
-------------------
|
||||
|
||||
Copyright (C) 2012-2019 stujones11, Stuart Jones <stujones111@gmail.com>
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
|
||||
License Textures
|
||||
----------------
|
||||
|
||||
Copyright (C) 2017-2019 davidthecreator - CC-BY-SA 3.0
|
||||
@@ -5,7 +5,7 @@
|
||||
|
||||
|
||||
-- support for i18n
|
||||
local S = armor.get_translator
|
||||
local S = minetest.get_translator(minetest.get_current_modname())
|
||||
|
||||
--- Wood
|
||||
--
|
||||
@@ -183,4 +183,4 @@ if armor.materials.wood then
|
||||
{m, "", m},
|
||||
},
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
# textdomain: armor_wood
|
||||
Wood Helmet=Ligna Kasko
|
||||
Wood Chestplate=Ligna Brustkiraso
|
||||
Wood Chestplate=Ligna Kiraso
|
||||
Wood Leggings=Ligna Pantalono
|
||||
Wood Boots=Ligna Botoj
|
||||
Wood Boots=Lignaj Botoj
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user