diff --git a/builder/lib-config-whynot.sh b/builder/lib-config-whynot.sh index 5ba065f51..c750547a5 100644 --- a/builder/lib-config-whynot.sh +++ b/builder/lib-config-whynot.sh @@ -6,7 +6,6 @@ declare -Ag BRANCHES=( [minetest_game/minetest_game]=origin/stable-5 # Stay on stable version [flora_ores/farming]=0b06c7cd450c5ec9a76b3c22a9c57f06e4f8a7c2 # freeze due to incompatibility with milk buckets - [player/3d_armor]=e1a262ba20e4bf0a1046ca06d83953ae0983f621 # freeze due to 3d_armor mod split for each armor type ) # @@ -22,4 +21,4 @@ [decor/homedecor_modpack]='--exclude=itemframes --exclude=homedecor_3d_extras --exclude=homedecor_inbox' [decor/home_workshop_modpack]='--exclude=computers --exclude=home_workshop_machines' [decor/mydoors]='--exclude=my_garage_door --exclude=my_saloon_doors --exclude=my_sliding_doors' - ) \ No newline at end of file + ) diff --git a/builder/mods_src/player/3d_armor b/builder/mods_src/player/3d_armor index e1a262ba2..9a687fbb5 160000 --- a/builder/mods_src/player/3d_armor +++ b/builder/mods_src/player/3d_armor @@ -1 +1 @@ -Subproject commit e1a262ba20e4bf0a1046ca06d83953ae0983f621 +Subproject commit 9a687fbb5145f564a462deb4da226ae72f28151c diff --git a/mod_sources.txt b/mod_sources.txt index 4dc043b51..b3320d598 100644 --- a/mod_sources.txt +++ b/mod_sources.txt @@ -208,7 +208,7 @@ origin https://github.com/minetest-mirrors/mobs_redo.git (fetch) Mod: mobs_redo/mobs_redo origin https://github.com/minetest-mods/3d_armor (fetch) -* e1a262ba20e4bf0a1046ca06d83953ae0983f621 add feather falling (#73) +* 9a687fbb5145f564a462deb4da226ae72f28151c Remove individual mod LICENSE.txt (#122) Mod: player/3d_armor origin https://gitlab.com/dacmot/awards.git (fetch) diff --git a/mods/player/3d_armor/LICENSE.md b/mods/player/3d_armor/LICENSE.md index f7793ffa1..4e6383954 100644 --- a/mods/player/3d_armor/LICENSE.md +++ b/mods/player/3d_armor/LICENSE.md @@ -1,9 +1,9 @@ 3D Armor - Visible Player Armor =============================== -License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1 +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 -Armor Textures: Copyright (C) 2017-2018 davidthecreator - CC-BY-SA 3.0 +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. diff --git a/mods/player/3d_armor/LICENSE.txt b/mods/player/3d_armor/LICENSE.txt deleted file mode 100644 index f253f299d..000000000 --- a/mods/player/3d_armor/LICENSE.txt +++ /dev/null @@ -1,26 +0,0 @@ -[mod] 3d Armor [3d_armor] -========================= - -License Source Code -------------------- - -Copyright (C) 2012-2019 stujones11, Stuart Jones - -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 diff --git a/mods/player/3d_armor/README.md b/mods/player/3d_armor/README.md index d36c9d431..b023784a9 100644 --- a/mods/player/3d_armor/README.md +++ b/mods/player/3d_armor/README.md @@ -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** diff --git a/mods/player/3d_armor/api.lua b/mods/player/3d_armor/api.lua index d5a93d4fa..7c71f899d 100644 --- a/mods/player/3d_armor/api.lua +++ b/mods/player/3d_armor/api.lua @@ -162,7 +162,6 @@ armor = { armor.config = { init_delay = 2, - init_times = 10, bones_delay = 1, update_time = 1, drop = minetest.get_modpath("bones") ~= nil, @@ -491,10 +490,13 @@ armor.set_player_armor = function(self, player) armor_monoid.monoid:add_change(player, change, "3d_armor:armor") else -- Preserve immortal group (damage disabled for player) - local immortal = player:get_armor_groups().immortal + local player_groups = player:get_armor_groups() + local immortal = player_groups.immortal if immortal and immortal ~= 0 then groups.immortal = 1 end + -- Preserve fall_damage_add_percent group (fall damage modifier) + groups.fall_damage_add_percent = player_groups.fall_damage_add_percent player:set_armor_groups(groups) end if use_player_monoids then @@ -628,6 +630,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 @@ -678,6 +683,10 @@ armor.equip = function(self, player, itemstack) for i=1, armor_inv:get_size("armor") do local stack = armor_inv:get_stack("armor", i) 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) break @@ -799,9 +808,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 @@ -930,6 +936,10 @@ armor.get_valid_player = function(self, player, msg) minetest.log("warning", ("3d_armor%s: Player reference is nil"):format(msg)) return end + if type(player) ~= "userdata" then + -- Fake player, fail silently + return + end local name = player:get_player_name() if not name then minetest.log("warning", ("3d_armor%s: Player name is nil"):format(msg)) diff --git a/mods/player/3d_armor/armor.conf.example b/mods/player/3d_armor/armor.conf.example index af4039684..ee63812a7 100644 --- a/mods/player/3d_armor/armor.conf.example +++ b/mods/player/3d_armor/armor.conf.example @@ -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 diff --git a/mods/player/3d_armor/armor.lua b/mods/player/3d_armor/armor.lua deleted file mode 100644 index 1832d52fb..000000000 --- a/mods/player/3d_armor/armor.lua +++ /dev/null @@ -1,1027 +0,0 @@ - ---- Registered armors. --- --- @topic armor - - --- support for i18n -local S = armor.get_translator - - ---- Admin Helmet --- --- @helmet 3d_armor:helmet_admin --- @img 3d_armor_inv_helmet_admin.png --- @grp armor_head 1 --- @grp armor_heal 100 --- @grp armor_use 0 --- @grp armor_water 1 --- @grp not_in_creative_inventory 1 --- @armorgrp fleshy 100 -armor:register_armor("3d_armor:helmet_admin", { - description = S("Admin Helmet"), - inventory_image = "3d_armor_inv_helmet_admin.png", - armor_groups = {fleshy=100}, - groups = {armor_head=1, armor_heal=100, armor_use=0, armor_water=1, - not_in_creative_inventory=1}, - on_drop = function(itemstack, dropper, pos) - return - end, -}) - ---- Admin Chestplate --- --- @chestplate 3d_armor:chestplate_admin --- @img 3d_armor_inv_chestplate_admin.png --- @grp armor_torso 1 --- @grp armor_heal 100 --- @grp armor_use 0 --- @grp not_in_creative_inventory 1 --- @armorgrp fleshy 100 -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, - not_in_creative_inventory=1}, - on_drop = function(itemstack, dropper, pos) - return - end, -}) - ---- Admin Leggings --- --- @leggings 3d_armor:leggings_admin --- @img 3d_armor_inv_leggings_admin.png --- @grp armor_legs 1 --- @grp armor_heal 100 --- @grp armor_use 0 --- @grp not_in_creative_inventory 1 --- @armorgrp fleshy 100 -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, - not_in_creative_inventory=1}, - on_drop = function(itemstack, dropper, pos) - return - end, -}) - ---- Admin Boots --- --- @boots 3d_armor:boots_admin --- @img 3d_armor_inv_boots_admin.png --- @grp armor_feet 1 --- @grp armor_heal 100 --- @grp armor_use 0 --- @grp not_in_creative_inventory 1 --- @armorgrp fleshy 100 -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}, - on_drop = function(itemstack, dropper, pos) - return - end, -}) - -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") - - ---- Wood --- --- Requires setting `armor_material_wood`. --- --- @section wood - -if armor.materials.wood then - --- Wood Helmet - -- - -- @helmet 3d_armor:helmet_wood - -- @img 3d_armor_inv_helmet_wood.png - -- @grp armor_head 1 - -- @grp armor_heal 0 - -- @grp armor_use 2000 - -- @grp flammable 1 - -- @armorgrp fleshy 5 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 3 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:helmet_wood", { - description = S("Wood Helmet"), - inventory_image = "3d_armor_inv_helmet_wood.png", - groups = {armor_head=1, armor_heal=0, armor_use=2000, flammable=1}, - armor_groups = {fleshy=5}, - damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, - }) - --- Wood Chestplate - -- - -- @chestplate 3d_armor:chestplate_wood - -- @img 3d_armor_inv_chestplate_wood.png - -- @grp armor_torso 1 - -- @grp armor_heal 0 - -- @grp armor_use 2000 - -- @grp flammable 1 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 3 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:chestplate_wood", { - description = S("Wood Chestplate"), - inventory_image = "3d_armor_inv_chestplate_wood.png", - groups = {armor_torso=1, armor_heal=0, armor_use=2000, flammable=1}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, - }) - --- Wood Leggings - -- - -- @leggings 3d_armor:leggings_wood - -- @img 3d_armor_inv_leggings_wood.png - -- @grp armor_legs 1 - -- @grp armor_heal 0 - -- @grp armor_use 1000 - -- @grp flammable 1 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 3 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:leggings_wood", { - description = S("Wood Leggings"), - inventory_image = "3d_armor_inv_leggings_wood.png", - groups = {armor_legs=1, armor_heal=0, armor_use=2000, flammable=1}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, - }) - --- Wood Boots - -- - -- @boots 3d_armor:boots_wood - -- @img 3d_armor_inv_boots_wood.png - -- @grp armor_feet 1 - -- @grp armor_heal 0 - -- @grp armor_use 2000 - -- @grp flammable 1 - -- @armorgrp fleshy 5 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 3 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:boots_wood", { - description = S("Wood Boots"), - inventory_image = "3d_armor_inv_boots_wood.png", - armor_groups = {fleshy=5}, - damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, - groups = {armor_feet=1, armor_heal=0, armor_use=2000, flammable=1}, - }) - local wood_armor_fuel = { - helmet = 6, - chestplate = 8, - leggings = 7, - boots = 5 - } - for armor, burn in pairs(wood_armor_fuel) do - minetest.register_craft({ - type = "fuel", - recipe = "3d_armor:" .. armor .. "_wood", - burntime = burn, - }) - end -end - - ---- Cactus --- --- Requires setting `armor_material_cactus`. --- --- @section cactus - -if armor.materials.cactus then - --- Cactus Helmet - -- - -- @helmet 3d_armor:helmet_cactus - -- @img 3d_armor_inv_helmet_cactus.png - -- @grp armor_head 1 - -- @grp armor_heal 0 - -- @grp armor_use 1000 - -- @armorgrp fleshy 5 - -- @damagegrp cracky 3 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:helmet_cactus", { - description = S("Cactus Helmet"), - inventory_image = "3d_armor_inv_helmet_cactus.png", - groups = {armor_head=1, armor_heal=0, armor_use=1000}, - armor_groups = {fleshy=5}, - damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, - }) - --- Cactus Chestplate - -- - -- @chestplate 3d_armor:chestplate_cactus - -- @img 3d_armor_inv_chestplate_cactus.png - -- @grp armor_torso 1 - -- @grp armor_heal 0 - -- @grp armor_use 1000 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:chestplate_cactus", { - description = S("Cactus Chestplate"), - inventory_image = "3d_armor_inv_chestplate_cactus.png", - groups = {armor_torso=1, armor_heal=0, armor_use=1000}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, - }) - --- Cactus Leggings - -- - -- @leggings 3d_armor:leggings_cactus - -- @img 3d_armor_inv_leggings_cactus.png - -- @grp armor_legs 1 - -- @grp armor_heal 0 - -- @grp armor_use 1000 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:leggings_cactus", { - description = S("Cactus Leggings"), - inventory_image = "3d_armor_inv_leggings_cactus.png", - groups = {armor_legs=1, armor_heal=0, armor_use=1000}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, - }) - --- Cactus Boots - -- - -- @boots 3d_armor:boots_cactus - -- @img 3d_armor_inv_boots_cactus.png - -- @grp armor_feet 1 - -- @grp armor_heal 0 - -- @grp armor_use 1000 - -- @armorgrp fleshy 5 - -- @damagegrp cracky 3 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 2 - -- @damagegrp level 1 - armor:register_armor("3d_armor:boots_cactus", { - description = S("Cactus Boots"), - inventory_image = "3d_armor_inv_boots_cactus.png", - groups = {armor_feet=1, armor_heal=0, armor_use=1000}, - armor_groups = {fleshy=5}, - damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, - }) - local cactus_armor_fuel = { - helmet = 14, - chestplate = 16, - leggings = 15, - boots = 13 - } - for armor, burn in pairs(cactus_armor_fuel) do - minetest.register_craft({ - type = "fuel", - recipe = "3d_armor:" .. armor .. "_cactus", - burntime = burn, - }) - end -end - - ---- Steel --- --- Requires setting `armor_material_steel`. --- --- @section steel - -if armor.materials.steel then - --- Steel Helmet - -- - -- @helmet 3d_armor:helmet_steel - -- @img 3d_armor_inv_helmet_steel.png - -- @grp armor_head 1 - -- @grp armor_heal 0 - -- @grp armor_use 800 - -- @grp physics_speed -0.01 - -- @grp physica_gravity 0.01 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 2 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:helmet_steel", { - description = S("Steel Helmet"), - inventory_image = "3d_armor_inv_helmet_steel.png", - groups = {armor_head=1, armor_heal=0, armor_use=800, - physics_speed=-0.01, physics_gravity=0.01}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, - }) - --- Steel Chestplate - -- - -- @chestplate 3d_armor:chestplate_steel - -- @img 3d_armor_inv_chestplate_steel.png - -- @grp armor_torso 1 - -- @grp armor_heal 0 - -- @grp armor_use 800 - -- @grp physics_speed - -- @grp physics_gravity - -- @armorgrp fleshy - -- @damagegrp cracky 2 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:chestplate_steel", { - description = S("Steel Chestplate"), - inventory_image = "3d_armor_inv_chestplate_steel.png", - groups = {armor_torso=1, armor_heal=0, armor_use=800, - physics_speed=-0.04, physics_gravity=0.04}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, - }) - --- Steel Leggings - -- - -- @leggings 3d_armor:leggings_steel - -- @img 3d_armor_inv_leggings_steel.png - -- @grp armor_legs 1 - -- @grp armor_heal 0 - -- @grp armor_use 800 - -- @grp physics_speed -0.03 - -- @grp physics_gravity 0.03 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:leggings_steel", { - description = S("Steel Leggings"), - inventory_image = "3d_armor_inv_leggings_steel.png", - groups = {armor_legs=1, armor_heal=0, armor_use=800, - physics_speed=-0.03, physics_gravity=0.03}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, - }) - --- Steel Boots - -- - -- @boots 3d_armor:boots_steel - -- @img 3d_armor_inv_boots_steel.png - -- @grp armor_feet 1 - -- @grp armor_heal 0 - -- @grp armor_use 800 - -- @grp physics_speed -0.01 - -- @grp physics_gravity 0.01 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 2 - -- @damagegrp snappy 3 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:boots_steel", { - description = S("Steel Boots"), - inventory_image = "3d_armor_inv_boots_steel.png", - groups = {armor_feet=1, armor_heal=0, armor_use=800, - physics_speed=-0.01, physics_gravity=0.01}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, - }) -end - - ---- Bronze --- --- Requires setting `armor_material_bronze`. --- --- @section bronze - -if armor.materials.bronze then - --- Bronze Helmet - -- - -- @helmet 3d_armor:helmet_bronze - -- @img 3d_armor_inv_helmet_bronze.png - -- @grp armor_head 1 - -- @grp armor_heal 6 - -- @grp armor_use 400 - -- @grp physics_speed -0.01 - -- @grp physics_gravity 0.01 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:helmet_bronze", { - description = S("Bronze Helmet"), - inventory_image = "3d_armor_inv_helmet_bronze.png", - groups = {armor_head=1, armor_heal=6, armor_use=400, - physics_speed=-0.01, physics_gravity=0.01}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, - }) - --- Bronze Chestplate - -- - -- @chestplate 3d_armor:chestplate_bronze - -- @img 3d_armor_inv_chestplate_bronze.png - -- @grp armor_torso 1 - -- @grp armor_heal 6 - -- @grp armor_use 400 - -- @grp physics_speed -0.04 - -- @grp physics_gravity 0.04 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:chestplate_bronze", { - description = S("Bronze Chestplate"), - inventory_image = "3d_armor_inv_chestplate_bronze.png", - groups = {armor_torso=1, armor_heal=6, armor_use=400, - physics_speed=-0.04, physics_gravity=0.04}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, - }) - --- Bronze Leggings - -- - -- @leggings 3d_armor:leggings_bronze - -- @img 3d_armor_inv_leggings_bronze.png - -- @grp armor_legs 1 - -- @grp armor_heal 6 - -- @grp armor_use 400 - -- @grp physics_speed -0.03 - -- @grp physics_gravity 0.03 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:leggings_bronze", { - description = S("Bronze Leggings"), - inventory_image = "3d_armor_inv_leggings_bronze.png", - groups = {armor_legs=1, armor_heal=6, armor_use=400, - physics_speed=-0.03, physics_gravity=0.03}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, - }) - --- Bronze Boots - -- - -- @boots 3d_armor:boots_bronze - -- @img 3d_armor_inv_boots_bronze.png - -- @grp armor_feet 1 - -- @grp armor_heal 6 - -- @grp armor_use 400 - -- @grp physics_speed -0.01 - -- @grp physics_gravity 0.01 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 1 - -- @damagegrp level 2 - armor:register_armor("3d_armor:boots_bronze", { - description = S("Bronze Boots"), - inventory_image = "3d_armor_inv_boots_bronze.png", - groups = {armor_feet=1, armor_heal=6, armor_use=400, - physics_speed=-0.01, physics_gravity=0.01}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, - }) -end - - ---- Diamond --- --- Requires setting `armor_material_diamond`. --- --- @section diamond - -if armor.materials.diamond then - --- Diamond Helmet - -- - -- @helmet 3d_armor:helmet_diamond - -- @img 3d_armor_inv_helmet_diamond.png - -- @grp armor_head 1 - -- @grp armor_heal 12 - -- @grp armor_use 200 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp choppy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:helmet_diamond", { - description = S("Diamond Helmet"), - inventory_image = "3d_armor_inv_helmet_diamond.png", - groups = {armor_head=1, armor_heal=12, armor_use=200}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, - }) - --- Diamond Chestplate - -- - -- @chestplate 3d_armor:chestplate_diamond - -- @img 3d_armor_inv_chestplate_diamond.png - -- @grp armor_torso 1 - -- @grp armor_heal 12 - -- @grp armor_use 200 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp choppy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:chestplate_diamond", { - description = S("Diamond Chestplate"), - inventory_image = "3d_armor_inv_chestplate_diamond.png", - groups = {armor_torso=1, armor_heal=12, armor_use=200}, - armor_groups = {fleshy=20}, - damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, - }) - --- Diamond Leggings - -- - -- @leggings 3d_armor:leggings_diamond - -- @img 3d_armor_inv_leggings_diamond.png - -- @grp armor_legs 1 - -- @grp armor_heal 12 - -- @grp armor_use 200 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp choppy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:leggings_diamond", { - description = S("Diamond Leggings"), - inventory_image = "3d_armor_inv_leggings_diamond.png", - groups = {armor_legs=1, armor_heal=12, armor_use=200}, - armor_groups = {fleshy=20}, - damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, - }) - --- Diamond Boots - -- - -- @boots 3d_armor:boots_diamond - -- @img 3d_armor_inv_boots_diamond.png - -- @grp armor_feet 1 - -- @grp armor_heal 12 - -- @grp armor_use 200 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp choppy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:boots_diamond", { - description = S("Diamond Boots"), - inventory_image = "3d_armor_inv_boots_diamond.png", - groups = {armor_feet=1, armor_heal=12, armor_use=200}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, - }) -end - - ---- Gold --- --- Requires `armor_material_gold`. --- --- @section gold - -if armor.materials.gold then - --- Gold Helmet - -- - -- @helmet 3d_armor:helmet_gold - -- @img 3d_armor_inv_helmet_gold.png - -- @grp armor_head 1 - -- @grp armor_heal 6 - -- @grp armor_use 300 - -- @grp physics_speed -0.02 - -- @grp physics_gravity 0.02 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 1 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 3 - -- @damagegrp level 2 - armor:register_armor("3d_armor:helmet_gold", { - description = S("Gold Helmet"), - inventory_image = "3d_armor_inv_helmet_gold.png", - groups = {armor_head=1, armor_heal=6, armor_use=300, - physics_speed=-0.02, physics_gravity=0.02}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, - }) - --- Gold Chestplate - -- - -- @chestplate 3d_armor:chestplate_gold - -- @img 3d_armor_inv_chestplate_gold.png - -- @grp armor_torso 1 - -- @grp armor_heal 6 - -- @grp armor_use 300 - -- @grp physics_speed -0.05 - -- @grp physics_gravity 0.05 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 1 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 3 - -- @damagegrp level 2 - armor:register_armor("3d_armor:chestplate_gold", { - description = S("Gold Chestplate"), - inventory_image = "3d_armor_inv_chestplate_gold.png", - groups = {armor_torso=1, armor_heal=6, armor_use=300, - physics_speed=-0.05, physics_gravity=0.05}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, - }) - --- Gold Leggings - -- - -- @leggings 3d_armor:leggings_gold - -- @img 3d_armor_inv_leggings_gold.png - -- @grp armor_legs 1 - -- @grp armor_heal 6 - -- @grp armor_use 300 - -- @grp physics_speed -0.04 - -- @grp physics_gravity 0.04 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 1 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 3 - -- @damagegrp level 2 - armor:register_armor("3d_armor:leggings_gold", { - description = S("Gold Leggings"), - inventory_image = "3d_armor_inv_leggings_gold.png", - groups = {armor_legs=1, armor_heal=6, armor_use=300, - physics_speed=-0.04, physics_gravity=0.04}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, - }) - --- Gold Boots - -- - -- @boots 3d_armor:boots_gold - -- @img 3d_armor_inv_boots_gold.png - -- @grp armor_feet 1 - -- @grp armor_heal 6 - -- @grp armor_use 300 - -- @grp physics_speed -0.02 - -- @grp physics_gravity 0.02 - -- @armorgrp fleshy 10 - -- @damagegrp cracky 1 - -- @damagegrp snappy 2 - -- @damagegrp choppy 2 - -- @damagegrp crumbly 3 - -- @damagegrp level 2 - armor:register_armor("3d_armor:boots_gold", { - description = S("Gold Boots"), - inventory_image = "3d_armor_inv_boots_gold.png", - groups = {armor_feet=1, armor_heal=6, armor_use=300, - physics_speed=-0.02, physics_gravity=0.02}, - armor_groups = {fleshy=10}, - damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, - }) -end - - ---- Mithril --- --- Requires `armor_material_mithril`. --- --- @section mithril - -if armor.materials.mithril then - --- Mithril Helmet - -- - -- @helmet 3d_armor:helmet_mithril - -- @img 3d_armor_inv_helmet_mithril.png - -- @grp armor_head 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:helmet_mithril", { - description = S("Mithril Helmet"), - inventory_image = "3d_armor_inv_helmet_mithril.png", - groups = {armor_head=1, armor_heal=13, armor_use=66}, - armor_groups = {fleshy=16}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Mithril Chestplate - -- - -- @chestplate 3d_armor:chestplate_mithril - -- @img 3d_armor_inv_chestplate_mithril.png - -- @grp armor_torso 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:chestplate_mithril", { - description = S("Mithril Chestplate"), - inventory_image = "3d_armor_inv_chestplate_mithril.png", - groups = {armor_torso=1, armor_heal=13, armor_use=66}, - armor_groups = {fleshy=21}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Mithril Leggings - -- - -- @leggings 3d_armor:leggings_mithril - -- @img 3d_armor_inv_leggings_mithril.png - -- @grp armor_legs 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:leggings_mithril", { - description = S("Mithril Leggings"), - inventory_image = "3d_armor_inv_leggings_mithril.png", - groups = {armor_legs=1, armor_heal=13, armor_use=66}, - armor_groups = {fleshy=21}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Mithril Boots - -- - -- @boots 3d_armor:boots_mithril - -- @img 3d_armor_inv_boots_mithril.png - -- @grp armor_feet 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:boots_mithril", { - description = S("Mithril Boots"), - inventory_image = "3d_armor_inv_boots_mithril.png", - groups = {armor_feet=1, armor_heal=13, armor_use=66}, - armor_groups = {fleshy=16}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) -end - - ---- Crystal --- --- Requires `armor_material_crystal`. --- --- @section crystal - -if armor.materials.crystal then - --- Crystal Helmet - -- - -- @helmet 3d_armor:helmet_crystal - -- @img 3d_armor_inv_helmet_crystal.png - -- @grp armor_head 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @grp armor_fire 1 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:helmet_crystal", { - description = S("Crystal Helmet"), - inventory_image = "3d_armor_inv_helmet_crystal.png", - groups = {armor_head=1, armor_heal=12, armor_use=100, armor_fire=1}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Crystal Chestplate - -- - -- @chestplate 3d_armor:chestplate_crystal - -- @img 3d_armor_inv_chestplate_crystal.png - -- @grp armor_torso 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @grp armor_fire 1 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:chestplate_crystal", { - description = S("Crystal Chestplate"), - inventory_image = "3d_armor_inv_chestplate_crystal.png", - groups = {armor_torso=1, armor_heal=12, armor_use=100, armor_fire=1}, - armor_groups = {fleshy=20}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Crystal Leggings - -- - -- @leggings 3d_armor:leggings_crystal - -- @img 3d_armor_inv_leggings_crystal.png - -- @grp armor_legs 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @grp armor_fire 1 - -- @armorgrp fleshy 20 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:leggings_crystal", { - description = S("Crystal Leggings"), - inventory_image = "3d_armor_inv_leggings_crystal.png", - groups = {armor_legs=1, armor_heal=12, armor_use=100, armor_fire=1}, - armor_groups = {fleshy=20}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) - --- Crystal Boots - -- - -- @boots 3d_armor:boots_crystal - -- @img 3d_armor_inv_boots_crystal.png - -- @grp armor_feet 1 - -- @grp armor_heal 12 - -- @grp armor_use 100 - -- @grp physics_speed 1 - -- @grp physics_jump 0.5 - -- @grp armor_fire 1 - -- @armorgrp fleshy 15 - -- @damagegrp cracky 2 - -- @damagegrp snappy 1 - -- @damagegrp level 3 - armor:register_armor("3d_armor:boots_crystal", { - description = S("Crystal Boots"), - inventory_image = "3d_armor_inv_boots_crystal.png", - groups = {armor_feet=1, armor_heal=12, armor_use=100, physics_speed=1, - physics_jump=0.5, armor_fire=1}, - armor_groups = {fleshy=15}, - damage_groups = {cracky=2, snappy=1, level=3}, - }) -end - - ---- Nether --- --- Requires `armor_material_nether`. --- --- @section nether - -if armor.materials.nether then - --- Nether Helmet - -- - -- @helmet 3d_armor:helmet_nether - -- @img 3d_armor_inv_helmet_nether.png - -- @grp armor_head 1 - -- @grp armor_heal 14 - -- @grp armor_use 200 - -- @grp armor_fire 1 - -- @armorgrp fleshy 18 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp level 3 - armor:register_armor("3d_armor:helmet_nether", { - description = S("Nether Helmet"), - inventory_image = "3d_armor_inv_helmet_nether.png", - groups = {armor_head=1, armor_heal=14, armor_use=100, armor_fire=1}, - armor_groups = {fleshy=18}, - damage_groups = {cracky=3, snappy=2, level=3}, - }) - --- Nether Chestplate - -- - -- @chestplate 3d_armor:chestplate_nether - -- @img 3d_armor_inv_chestplate_nether.png - -- @grp armor_torso 1 - -- @grp armor_heal 14 - -- @grp armor_use 200 - -- @grp armor_fire 1 - -- @armorgrp fleshy 25 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp level 3 - armor:register_armor("3d_armor:chestplate_nether", { - description = S("Nether Chestplate"), - inventory_image = "3d_armor_inv_chestplate_nether.png", - groups = {armor_torso=1, armor_heal=14, armor_use=200, armor_fire=1}, - armor_groups = {fleshy=25}, - damage_groups = {cracky=3, snappy=2, level=3}, - }) - --- Nether Leggings - -- - -- @leggings 3d_armor:leggings_nether - -- @img 3d_armor_inv_leggings_nether.png - -- @grp armor_legs 1 - -- @grp armor_heal 14 - -- @grp armor_use 200 - -- @grp armor_fire 1 - -- @armorgrp fleshy 25 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp level 3 - armor:register_armor("3d_armor:leggings_nether", { - description = S("Nether Leggings"), - inventory_image = "3d_armor_inv_leggings_nether.png", - groups = {armor_legs=1, armor_heal=14, armor_use=200, armor_fire=1}, - armor_groups = {fleshy=25}, - damage_groups = {cracky=3, snappy=2, level=3}, - }) - --- Nether Boots - -- - -- @boots 3d_armor:boots_nether - -- @img 3d_armor_inv_boots_nether.png - -- @grp armor_feet 1 - -- @grp armor_heal 14 - -- @grp armor_use 200 - -- @grp armor_fire 1 - -- @armorgrp fleshy 18 - -- @damagegrp cracky 3 - -- @damagegrp snappy 2 - -- @damagegrp level 3 - armor:register_armor("3d_armor:boots_nether", { - description = S("Nether Boots"), - inventory_image = "3d_armor_inv_boots_nether.png", - groups = {armor_feet=1, armor_heal=14, armor_use=200, armor_fire=1}, - armor_groups = {fleshy=18}, - damage_groups = {cracky=3, snappy=2, level=3}, - }) -end - - ---- Crafting --- --- @section craft - ---- Craft recipes for helmets, chestplates, leggings, boots, & shields. --- --- @craft armor --- @usage --- Key: --- - m: material --- - wood: group:wood --- - cactus: default:cactus --- - steel: default:steel_ingot --- - bronze: default:bronze_ingot --- - diamond: default:diamond --- - gold: default:gold_ingot --- - mithril: moreores:mithril_ingot --- - crystal: ethereal:crystal_ingot --- - nether: nether:nether_ingot --- --- helmet: chestplate: leggings: --- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ --- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ --- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ --- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ --- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ --- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ --- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ --- --- boots: shield: --- ┌───┬───┬───┐ ┌───┬───┬───┐ --- │ │ │ │ │ m │ m │ m │ --- ├───┼───┼───┤ ├───┼───┼───┤ --- │ m │ │ m │ │ m │ m │ m │ --- ├───┼───┼───┤ ├───┼───┼───┤ --- │ m │ │ m │ │ │ m │ │ --- └───┴───┴───┘ └───┴───┴───┘ - -for k, v in pairs(armor.materials) do - minetest.register_craft({ - output = "3d_armor:helmet_"..k, - recipe = { - {v, v, v}, - {v, "", v}, - {"", "", ""}, - }, - }) - minetest.register_craft({ - output = "3d_armor:chestplate_"..k, - recipe = { - {v, "", v}, - {v, v, v}, - {v, v, v}, - }, - }) - minetest.register_craft({ - output = "3d_armor:leggings_"..k, - recipe = { - {v, v, v}, - {v, "", v}, - {v, "", v}, - }, - }) - minetest.register_craft({ - output = "3d_armor:boots_"..k, - recipe = { - {v, "", v}, - {v, "", v}, - }, - }) -end diff --git a/mods/player/3d_armor/depends.txt b/mods/player/3d_armor/depends.txt deleted file mode 100644 index ef233db1e..000000000 --- a/mods/player/3d_armor/depends.txt +++ /dev/null @@ -1,9 +0,0 @@ -default -player_monoids? -armor_monoid? -pova? -fire? -ethereal? -bakedclay? -moreores? -nether? diff --git a/mods/player/3d_armor/description.txt b/mods/player/3d_armor/description.txt deleted file mode 100644 index b0a9b0a5a..000000000 --- a/mods/player/3d_armor/description.txt +++ /dev/null @@ -1 +0,0 @@ -Adds craftable armor that is visible to other players. diff --git a/mods/player/3d_armor/init.lua b/mods/player/3d_armor/init.lua index 5d7da24ce..57618d415 100644 --- a/mods/player/3d_armor/init.lua +++ b/mods/player/3d_armor/init.lua @@ -2,7 +2,6 @@ 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 dofile(modpath.."/api.lua") @@ -99,17 +98,7 @@ for _, mod in pairs(skin_mods) do armor.set_skin_mod(mod) end end -if not minetest.get_modpath("moreores") then - armor.materials.mithril = nil -end -if not minetest.get_modpath("ethereal") then - armor.materials.crystal = nil -end -if not minetest.get_modpath("nether") then - armor.materials.nether = nil -end -dofile(modpath.."/armor.lua") -- Armor Initialization @@ -191,11 +180,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) @@ -234,6 +219,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) @@ -261,7 +251,6 @@ local function init_player_armor(initplayer) end end armor.def[name] = { - init_time = minetest.get_gametime(), level = 0, state = 0, count = 0, @@ -294,7 +283,6 @@ local function init_player_armor(initplayer) end end armor:set_player_armor(initplayer) - return true end -- Armor Player Model @@ -313,6 +301,10 @@ player_api.register_model("3d_armor_character.b3d", { mine = {x=189, y=198}, walk_mine = {x=200, y=219}, sit = {x=81, y=160}, + -- 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}, }, }) @@ -331,15 +323,7 @@ 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) + init_player_armor(player) end) minetest.register_on_leaveplayer(function(player) @@ -348,7 +332,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 @@ -361,9 +344,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) @@ -399,8 +385,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 @@ -420,21 +406,29 @@ if armor.config.punch_damage == true then end minetest.register_on_player_hpchange(function(player, hp_change, reason) - if player and reason.type ~= "drown" and reason.hunger == nil - and hp_change < 0 then - local name = player:get_player_name() - if name then - local heal = armor.def[name].heal - if heal >= math.random(100) then - hp_change = 0 - end - -- check if armor damage was handled by fire or on_punchplayer - local time = last_punch_time[name] or 0 - if time == 0 or time + 1 < minetest.get_gametime() then - armor:punch(player) - end + if not minetest.is_player(player) then + return hp_change + end + + if reason.type == "drown" or reason.hunger or hp_change >= 0 then + return hp_change + end + + local name = player:get_player_name() + local properties = player:get_properties() + local hp = player:get_hp() + if hp + hp_change < properties.hp_max then + local heal = armor.def[name].heal + if heal >= math.random(100) then + hp_change = 0 + end + -- check if armor damage was handled by fire or on_punchplayer + local time = last_punch_time[name] or 0 + if time == 0 or time + 1 < minetest.get_gametime() then + armor:punch(player) end end + return hp_change end, true) @@ -459,18 +453,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", S("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 @@ -483,22 +465,14 @@ minetest.register_globalstep(function(dtime) end end) --- Fire Protection, added by TenPlus1. if armor.config.fire_protect == true then - -- override any hot nodes that do not already deal damage - for _, row in pairs(armor.fire_nodes) do - if minetest.registered_nodes[row[1]] then - local damage = minetest.registered_nodes[row[1]].damage_per_second - if not damage or damage == 0 then - minetest.override_item(row[1], {damage_per_second = row[3]}) - end - end - end -else - print ("[3d_armor] Fire Nodes disabled") -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}) + + -- check player damage for any hot nodes we may be protected against minetest.register_on_player_hpchange(function(player, hp_change, reason) if reason.type == "node_damage" and reason.node then @@ -507,9 +481,7 @@ if armor.config.fire_protect == true then local name = player:get_player_name() for _,igniter in pairs(armor.fire_nodes) do if reason.node == igniter[1] then - if armor.def[name].fire < igniter[2] then - armor:punch(player, "fire") - else + if armor.def[name].fire >= igniter[2] then hp_change = 0 end end diff --git a/mods/player/3d_armor/locale/3d_armor.de.tr b/mods/player/3d_armor/locale/3d_armor.de.tr index 823891920..f51907743 100644 --- a/mods/player/3d_armor/locale/3d_armor.de.tr +++ b/mods/player/3d_armor/locale/3d_armor.de.tr @@ -1,62 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor : Abgetrennter Rüstungsbestand ist nicht gesetzt: @1 -3d_armor: Player name is nil @1=3d_armor : Spielername ist nicht gesetzt: @1 -3d_armor: Player reference is nil @1=3d_armor : Spielerreferenz ist nicht gesetzt: @1 - -### armor.lua ### - -Admin Boots=Adminstiefel -Admin Chestplate=Adminbrustplatte -Admin Helmet=Adminhelm -Admin Leggings=Adminhose -Bronze Boots=Bronzestiefel -Bronze Chestplate=Bronzebrustplatte -Bronze Helmet=Bronzehelm -Bronze Leggings=Bronzehose -Cactus Boots=Kaktusstiefel -Cactus Chestplate=Kaktusbrustplatte -Cactus Helmet=Kaktushelm -Cactus Leggings=Kaktushose -Crystal Boots=Kristallstiefel -Crystal Chestplate=Kristallbrustplatte -Crystal Helmet=Kristallhelm -Crystal Leggings=Kristallhose -Nether Boots=Netherstiefel -Nether Chestplate=Netherbrustplatte -Nether Helmet=Netherhelm -Nether Leggings=Netherhose -Diamond Boots=Diamantstiefel -Diamond Chestplate=Diamantbrustplatte -Diamond Helmet=Diamanthelm -Diamond Leggings=Diamanthose -Gold Boots=Goldstiefel -Gold Chestplate=Goldbrustplatte -Gold Helmet=Goldhelm -Gold Leggings=Goldhose -Mithril Boots=Mithrilstiefel -Mithril Chestplate=Mithrilbrustplatte -Mithril Helmet=Mithrilhelm -Mithril Leggings=Mithrilhose -Steel Boots=Stahlstiefel -Steel Chestplate=Stahlbrustplatte -Steel Helmet=Stahlhelm -Steel Leggings=Stahlhose -Wood Boots=Holzstiefel -Wood Chestplate=Holzbrustplatte -Wood Helmet=Holzhelm -Wood Leggings=Holzhose - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor : Initialisierung des Spielers fehlgeschlagen -Fire=Feuer -Heal=Heilen +Radiation=Strahlung Level=Stufe -Radiation=Strahlen -Your @1 got destroyed!=Deine @1 wurde zerstört! -Your @1 is almost broken!=Deine @1 ist fast kaputt! -[3d_armor] Fire Nodes disabled=[3d_armor] Feuer-Knoten deaktiviert +Heal=Heilung +Fire=Feuer +Your @1 is almost broken!=@1 ist fast kaputt! +Your @1 got destroyed!=@1 wurde zerstört! diff --git a/mods/player/3d_armor/locale/3d_armor.eo.tr b/mods/player/3d_armor/locale/3d_armor.eo.tr new file mode 100644 index 000000000..1ed486c76 --- /dev/null +++ b/mods/player/3d_armor/locale/3d_armor.eo.tr @@ -0,0 +1,7 @@ +# textdomain: 3d_armor +Radiation=Radiado +Level=Nivelo +Heal=Sanigi +Fire=Fajro +Your @1 is almost broken!=Via @1 estas preskaŭ rompita! +Your @1 got destroyed!=Via @1 detruiĝis! diff --git a/mods/player/3d_armor/locale/3d_armor.es.tr b/mods/player/3d_armor/locale/3d_armor.es.tr index 61ff5f984..cf79d05e3 100644 --- a/mods/player/3d_armor/locale/3d_armor.es.tr +++ b/mods/player/3d_armor/locale/3d_armor.es.tr @@ -1,62 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: La armadura desconectada es nula @1 -3d_armor: Player name is nil @1=3d_armor: El nombre del jugador es nulo @1 -3d_armor: Player reference is nil @1=3d_armor: La referencia del jugador es nula @1 - -### armor.lua ### - -Admin Boots=Botas de admin -Admin Chestplate=Peto de admin -Admin Helmet=Casco de admin -Admin Leggings=Grebas de admin -Bronze Boots=Botas de bronce -Bronze Chestplate=Peto de bronce -Bronze Helmet=Casco de bronce -Bronze Leggings=Grebas de bronce -Cactus Boots=Botas de cactus -Cactus Chestplate=Peto de cactus -Cactus Helmet=Casco de cactus -Cactus Leggings=Grebas de cactus -Crystal Boots=Botas de cristal -Crystal Chestplate=Peto de cristal -Crystal Helmet=Casco de cristal -Crystal Leggings=Grebas de cristal -Nether Boots=Botas de nether -Nether Chestplate=Peto de nether -Nether Helmet=Casco de nether -Nether Leggings=Grebas de nether -Diamond Boots=Botas de diamante -Diamond Chestplate=Peto de diamante -Diamond Helmet=Casco de diamante -Diamond Leggings=Grebas de diamante -Gold Boots=Botas de oro -Gold Chestplate=Peto de oro -Gold Helmet=Casco de oro -Gold Leggings=Grebas de oro -Mithril Boots=Botas de mitrilo -Mithril Chestplate=Peto de mitrilo -Mithril Helmet=Casco de mitrilo -Mithril Leggings=Grebas de mitrilo -Steel Boots=Botas de acero -Steel Chestplate=Peto de acero -Steel Helmet=Casco de acero -Steel Leggings=Grebas de acero -Wood Boots=Botas de madera -Wood Chestplate=Peto de madera -Wood Helmet=Casco de madera -Wood Leggings=Grebas de madera - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: Fallo en la inicialización del jugador -Fire=Fuego -Heal=Salud -Level=Nivel Radiation=Radiación -Your @1 got destroyed!=¡Tu @1 fue destruído! +Level=Nivel +Heal=Salud +Fire=Fuego Your @1 is almost broken!=¡Tu @1 esta a punto de romperse! -[3d_armor] Fire Nodes disabled=[3d_armor] Nodos de fuego desabilitados +Your @1 got destroyed!=¡Tu @1 fue destruído! diff --git a/mods/player/3d_armor/locale/3d_armor.fr.tr b/mods/player/3d_armor/locale/3d_armor.fr.tr index 458fb1531..5d2a4fa07 100644 --- a/mods/player/3d_armor/locale/3d_armor.fr.tr +++ b/mods/player/3d_armor/locale/3d_armor.fr.tr @@ -1,62 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor : Inventaire détaché pour l'armure non trouvé @1 -3d_armor: Player name is nil @1=3d_armor : Nom du joueur non trouvé @1 -3d_armor: Player reference is nil @1=3d_armor : Référence au joueur non trouvée @1 - -### armor.lua ### - -Admin Boots=Bottes d'admin -Admin Chestplate=Cuirasse d'admin -Admin Helmet=Casque d'admin -Admin Leggings=Jambières d'admin -Bronze Boots=Bottes en bronze -Bronze Chestplate=Cuirasse en bronze -Bronze Helmet=Casque en bronze -Bronze Leggings=Jambières en bronze -Cactus Boots=Bottes en cactus -Cactus Chestplate=Cuirasse en cactus -Cactus Helmet=Casque en cactus -Cactus Leggings=Jambières en cactus -Crystal Boots=Bottes en cristal -Crystal Chestplate=Cuirasse en cristal -Crystal Helmet=Casque en cristal -Crystal Leggings=Jambières en cristal -Nether Boots=Bottes en nether -Nether Chestplate=Cuirasse en nether -Nether Helmet=Casque en nether -Nether Leggings=Jambières en nether -Diamond Boots=Bottes en diamant -Diamond Chestplate=Cuirasse en diamant -Diamond Helmet=Casque en diamant -Diamond Leggings=Jambières en diamant -Gold Boots=Bottes en or -Gold Chestplate=Cuirasse en or -Gold Helmet=Casque en or -Gold Leggings=Jambières en or -Mithril Boots=Bottes en mithril -Mithril Chestplate=Cuirasse en mithril -Mithril Helmet=Casque en mithril -Mithril Leggings=Jambières en mithril -Steel Boots=Bottes en acier -Steel Chestplate=Cuirasse en acier -Steel Helmet=Casque en acier -Steel Leggings=Jambières en acier -Wood Boots=Bottes en bois -Wood Chestplate=Cuirasse en bois -Wood Helmet=Casque en bois -Wood Leggings=Jambières en bois - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor : Impossible d'initialiser le joueur -Fire=Fire -Heal=Soins -Level=Niveau Radiation=Radiation -Your @1 got destroyed!=Une partie de votre armure a été détruite : @1 ! +Level=Niveau +Heal=Soins +Fire=Fire Your @1 is almost broken!=Une partie de votre armure est presque détruite : @1 ! -[3d_armor] Fire Nodes disabled=[3d_armor] Nœuds de type feu désactivés +Your @1 got destroyed!=Une partie de votre armure a été détruite : @1 ! diff --git a/mods/player/3d_armor/locale/3d_armor.it.tr b/mods/player/3d_armor/locale/3d_armor.it.tr index fbbd45be9..8d1184d9a 100644 --- a/mods/player/3d_armor/locale/3d_armor.it.tr +++ b/mods/player/3d_armor/locale/3d_armor.it.tr @@ -1,90 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: L'inventario separato dell'armatura è nullo @1 -3d_armor: Player name is nil @1=3d_armor: Il nome dell'utente è nullo @1 -3d_armor: Player reference is nil @1=3d_armor: Il riferimento all'utente è nullo @1 - -### armor.lua ### - -Admin Boots=Stivali dell'amministratrice/tore -Admin Chestplate=Corazza dell'amministratrice/tore -Admin Helmet=Elmo dell'amministratrice/tore -Admin Leggings=Gambali dell'amministratrice/tore -Bronze Boots=Stivali di bronzo -Bronze Chestplate=Corazza di bronzo -Bronze Helmet=Elmo di bronzo -Bronze Leggings=Gambali di bronzo -Cactus Boots=Stivali di cactus -Cactus Chestplate=Corazza di cactus -Cactus Helmet=Elmo di cactus -Cactus Leggings=Gambali di cactus -Crystal Boots=Stivali di cristallo -Crystal Chestplate=Corazza di cristallo -Crystal Helmet=Elmo di cristallo -Crystal Leggings=Gambali di cristallo -Nether Boots=Stivali di nether -Nether Chestplate=Corazza di nether -Nether Helmet=Elmo di nether -Nether Leggings=Gambali di nether -Diamond Boots=Stivali di diamante -Diamond Chestplate=Corazza di diamante -Diamond Helmet=Elmo di diamante -Diamond Leggings=Gambali di diamante -Gold Boots=Stivali d'oro -Gold Chestplate=Corazza d'oro -Gold Helmet=Elmo d'oro -Gold Leggings=Gambali d'oro -Mithril Boots=Stivali di mithril -Mithril Chestplate=Corazza di mithril -Mithril Helmet=Elmo di mithril -Mithril Leggings=Gambali di mithril -Steel Boots=Stivali d'acciaio -Steel Chestplate=Corazza d'acciaio -Steel Helmet=Elmo d'acciaio -Steel Leggings=Gambali d'acciaio -Wood Boots=Stivali di legno -Wood Chestplate=Corazza di legno -Wood Helmet=Elmo di legno -Wood Leggings=Gambali di legno - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: Inizializzazione dell'utente fallita -Fire=Fuoco -Heal=Guarigione -Level=Livello Radiation=Radiazione -Your @1 got destroyed!=@1 in frantumi! +Level=Livello +Heal=Guarigione +Fire=Fuoco Your @1 is almost broken!=@1 quasi in frantumi! -[3d_armor] Fire Nodes disabled=[3d_armor] Nodi fuoco disabilitati - - -##### not used anymore ##### - -3d_armor_ip: Mod loaded but unused.=3d_armor_ip: Mod caricata ma inutilizzata. -Back=Indietro -Armor=Armatura -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv: Mod caricata ma inutilizzata. -Armor stand top=Parte superiore del supporto per armatura -Armor stand=Supporto per armatura -Armor Stand=Supporto per armatura -Locked Armor stand=Supporto per armatura chiuso a chiave -Armor Stand (owned by @1)=Supporto per armatura (di proprietà di @1) -3d_armor_ui: Mod loaded but unused.=3d_armor_ui: Mod caricata ma inutilizzata. -3d Armor=Armatura 3D -Armor not initialized!=Armatura non inizializzata! -Admin Shield=Scudo dell'amministratrice/tore -Wooden Shield=Scudo di legno -Enhanced Wood Shield=Scudo di legno migliorato -Cactus Shield=Scudo di cactus -Enhanced Cactus Shield=Scudo di cactus migliorato -Steel Shield=Scudo d'acciaio -Bronze Shield=Scudo di bronzo -Diamond Shield=Scudo di diamante -Gold Shield=Scudo d'oro -Mithril Shield=Scudo di mithril -Crystal Shield=Scudo di cristallo -Nether Shield=Scudo di nether +Your @1 got destroyed!=@1 in frantumi! diff --git a/mods/player/3d_armor/locale/3d_armor.ms.tr b/mods/player/3d_armor/locale/3d_armor.ms.tr index dab20123c..8d55a24fb 100644 --- a/mods/player/3d_armor/locale/3d_armor.ms.tr +++ b/mods/player/3d_armor/locale/3d_armor.ms.tr @@ -1,90 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: Inventori perisai terpisah tiada nilai @1 -3d_armor: Player name is nil @1=3d_armor: Nama pemain tiada nilai @1 -3d_armor: Player reference is nil @1=3d_armor: Rujukan pemain tiada nilai @1 - -### armor.lua ### - -Admin Boots=But Pentadbir -Admin Chestplate=Perisai Dada Pentadbir -Admin Helmet=Helmet Pentadbir -Admin Leggings=Perisai Kaki Pentadbir -Bronze Boots=But Gangsa -Bronze Chestplate=Perisai Dada Gangsa -Bronze Helmet=Helmet Gangsa -Bronze Leggings=Perisai Kaki Gangsa -Cactus Boots=But Kaktus -Cactus Chestplate=Perisai Dada Kaktus -Cactus Helmet=Helmet Kaktus -Cactus Leggings=Perisai Kaki Kaktus -Crystal Boots=But Kristal -Crystal Chestplate=Perisai Dada Kristal -Crystal Helmet=Helmet Kristal -Crystal Leggings=Perisai Kaki Kristal -Nether Boots=But Nether -Nether Chestplate=Perisai Dada Nether -Nether Helmet=Helmet Nether -Nether Leggings=Perisai Kaki Nether -Diamond Boots=But Intan -Diamond Chestplate=Perisai Dada Intan -Diamond Helmet=Helmet Intan -Diamond Leggings=Perisai Kaki Intan -Gold Boots=But Emas -Gold Chestplate=Perisai Dada Emas -Gold Helmet=Helmet Emas -Gold Leggings=Perisai Kaki Emas -Mithril Boots=But Mithril -Mithril Chestplate=Perisai Dada Mithril -Mithril Helmet=Helmet Mithril -Mithril Leggings=Perisai Kaki Mithril -Steel Boots=But Keluli -Steel Chestplate=Perisai Dada Keluli -Steel Helmet=Helmet Keluli -Steel Leggings=Perisai Kaki Keluli -Wood Boots=But Kayu -Wood Chestplate=Perisai Dada Kayu -Wood Helmet=Helmet Kayu -Wood Leggings=Perisai Kaki Kayu - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: Gagal mengasalkan pemain -Fire=Api -Heal=Pulih -Level=Tahap Radiation=Radiasi -Your @1 got destroyed!=@1 anda telah musnah! +Level=Tahap +Heal=Pulih +Fire=Api Your @1 is almost broken!= -[3d_armor] Fire Nodes disabled=[3d_armor] Nod-nod Api dilumpuhkan - - -##### not used anymore ##### - -3d_armor_ip: Mod loaded but unused.=3d_armor_ip: Mods dimuatkan tetapi tidak digunakan. -Back=Kembali -Armor=Perisai -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv: Mods dimuatkan tetapi tidak digunakan. -Armor stand top=Bhg atas dirian perisai -Armor stand=Dirian perisai -Armor Stand=Dirian Perisai -Locked Armor stand=Dirian perisai Berkunci -Armor Stand (owned by @1)=Dirian Perisai (milik @1) -3d_armor_ui: Mod loaded but unused.=3d_armor_ui: Mods dimuatkan tetapi tidak digunakan. -3d Armor=Perisai 3d -Armor not initialized!=Perisai tidak diasalkan! -Admin Shield=Perisai Pegang Pentadbir -Wooden Shield=Perisai Pegang Kayu -Enhanced Wood Shield=Perisai Pegang Kayu Kukuh -Cactus Shield=Perisai Pegang Kaktus -Enhanced Cactus Shield=Perisai Pegang Kaktus Kukuh -Steel Shield=Perisai Pegang Keluli -Bronze Shield=Perisai Pegang Gangsa -Diamond Shield=Perisai Pegang Intan -Gold Shield=Perisai Pegang Emas -Mithril Shield=Perisai Pegang Mithril -Crystal Shield=Perisai Pegang Kristal -Nether Shield=Perisai Pegang Nether +Your @1 got destroyed!=@1 anda telah musnah! diff --git a/mods/player/3d_armor/locale/3d_armor.pt.tr b/mods/player/3d_armor/locale/3d_armor.pt.tr index e9e296ede..4ccba88e5 100644 --- a/mods/player/3d_armor/locale/3d_armor.pt.tr +++ b/mods/player/3d_armor/locale/3d_armor.pt.tr @@ -1,90 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: Inventario avulso de armadura é nulo @1 -3d_armor: Player name is nil @1=3d_armor: Nome de jogador é nulo @1 -3d_armor: Player reference is nil @1=3d_armor: Referência Jogador é nula @1 - -### armor.lua ### - -Admin Boots=Botas de Administrador -Admin Chestplate=Peitoral de Administrador -Admin Helmet=Capacete de Administrador -Admin Leggings=Calças de Administrador -Bronze Boots=Botas de Bronze -Bronze Chestplate=Peitoral de Bronze -Bronze Helmet=Capacete de Bronze -Bronze Leggings=Calças de Bronze -Cactus Boots=Botas de Madeira -Cactus Chestplate=Peitoral de Cacto -Cactus Helmet=Capacete de Cacto -Cactus Leggings=Calças de Cacto -Crystal Boots=Botas de Cristal -Crystal Chestplate=Peitoral de Cristal -Crystal Helmet=Capacete de Cristal -Crystal Leggings=Calças de Cristal -Nether Boots=Botas de Nether -Nether Chestplate=Peitoral de Nether -Nether Helmet=Capacete de Nether -Nether Leggings=Calças de Nether -Diamond Boots=Botas de Diamante -Diamond Chestplate=Peitoral de Diamante -Diamond Helmet=Capacete de Diamante -Diamond Leggings=Calças de Diamante -Gold Boots=Botas de Ouro -Gold Chestplate=Peitoral de Ouro -Gold Helmet=Capacete de Ouro -Gold Leggings=Calças de Ouro -Mithril Boots=Botas de Mithril -Mithril Chestplate=Peitoral de Mithril -Mithril Helmet=Capacete de Mithril -Mithril Leggings=Calças de Mithril -Steel Boots=Botas de Aço -Steel Chestplate=Peitoral de Aço -Steel Helmet=Capacete de Aço -Steel Leggings=Calças de Aço -Wood Boots=Botas de Madeira -Wood Chestplate=Peitoral de Madeira -Wood Helmet=Capacete de Madeira -Wood Leggings=Calças de Madeira - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: Falha ao inicializar jogador -Fire=Fogo -Heal=Saúde -Level=Nível Radiation=Radiação -Your @1 got destroyed!=@1 foi destruído(a)! +Level=Nível +Heal=Saúde +Fire=Fogo Your @1 is almost broken!= -[3d_armor] Fire Nodes disabled=[3d_armor] Nodes de gofo desabilitados - - -##### not used anymore ##### - -3d_armor_ip: Mod loaded but unused.=3d_armor_ip: Mod carregado mas inoperante. -Back=Voltar -Armor=Armadura -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv: Mod carregado mas inoperante. -Armor stand top=Topo de estande de armadura -Armor stand=Estande de armadura -Armor Stand=Estande de Armadura -Locked Armor stand=Estande de Armadura Trancada -Armor Stand (owned by @1)=Estande de Armadura (pertente a @1) -3d_armor_ui: Mod loaded but unused.=3d_armor_ui: Mod carregado mas inoperante. -3d Armor=3d Armor -Armor not initialized!=Armadura não inicializada! -Admin Shield=Escudo de Administrador -Wooden Shield=Escudo de Madeira -Enhanced Wood Shield=Escudo de Madeira Melhorado -Cactus Shield=Escudo de Cacto -Enhanced Cactus Shield=Escudo de Cacto Melhorado -Steel Shield=Escudo de Aço -Bronze Shield=Escudo de Bronze -Diamond Shield=Escudo de Diamante -Gold Shield=Escudo de Ouro -Mithril Shield=Escudo de Mithril -Crystal Shield=Escudo de Cristal -Nether Shield=Escudo de Nether +Your @1 got destroyed!=@1 foi destruído(a)! diff --git a/mods/player/3d_armor/locale/3d_armor.pt_BR.tr b/mods/player/3d_armor/locale/3d_armor.pt_BR.tr index e9e296ede..4ccba88e5 100644 --- a/mods/player/3d_armor/locale/3d_armor.pt_BR.tr +++ b/mods/player/3d_armor/locale/3d_armor.pt_BR.tr @@ -1,90 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: Inventario avulso de armadura é nulo @1 -3d_armor: Player name is nil @1=3d_armor: Nome de jogador é nulo @1 -3d_armor: Player reference is nil @1=3d_armor: Referência Jogador é nula @1 - -### armor.lua ### - -Admin Boots=Botas de Administrador -Admin Chestplate=Peitoral de Administrador -Admin Helmet=Capacete de Administrador -Admin Leggings=Calças de Administrador -Bronze Boots=Botas de Bronze -Bronze Chestplate=Peitoral de Bronze -Bronze Helmet=Capacete de Bronze -Bronze Leggings=Calças de Bronze -Cactus Boots=Botas de Madeira -Cactus Chestplate=Peitoral de Cacto -Cactus Helmet=Capacete de Cacto -Cactus Leggings=Calças de Cacto -Crystal Boots=Botas de Cristal -Crystal Chestplate=Peitoral de Cristal -Crystal Helmet=Capacete de Cristal -Crystal Leggings=Calças de Cristal -Nether Boots=Botas de Nether -Nether Chestplate=Peitoral de Nether -Nether Helmet=Capacete de Nether -Nether Leggings=Calças de Nether -Diamond Boots=Botas de Diamante -Diamond Chestplate=Peitoral de Diamante -Diamond Helmet=Capacete de Diamante -Diamond Leggings=Calças de Diamante -Gold Boots=Botas de Ouro -Gold Chestplate=Peitoral de Ouro -Gold Helmet=Capacete de Ouro -Gold Leggings=Calças de Ouro -Mithril Boots=Botas de Mithril -Mithril Chestplate=Peitoral de Mithril -Mithril Helmet=Capacete de Mithril -Mithril Leggings=Calças de Mithril -Steel Boots=Botas de Aço -Steel Chestplate=Peitoral de Aço -Steel Helmet=Capacete de Aço -Steel Leggings=Calças de Aço -Wood Boots=Botas de Madeira -Wood Chestplate=Peitoral de Madeira -Wood Helmet=Capacete de Madeira -Wood Leggings=Calças de Madeira - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: Falha ao inicializar jogador -Fire=Fogo -Heal=Saúde -Level=Nível Radiation=Radiação -Your @1 got destroyed!=@1 foi destruído(a)! +Level=Nível +Heal=Saúde +Fire=Fogo Your @1 is almost broken!= -[3d_armor] Fire Nodes disabled=[3d_armor] Nodes de gofo desabilitados - - -##### not used anymore ##### - -3d_armor_ip: Mod loaded but unused.=3d_armor_ip: Mod carregado mas inoperante. -Back=Voltar -Armor=Armadura -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv: Mod carregado mas inoperante. -Armor stand top=Topo de estande de armadura -Armor stand=Estande de armadura -Armor Stand=Estande de Armadura -Locked Armor stand=Estande de Armadura Trancada -Armor Stand (owned by @1)=Estande de Armadura (pertente a @1) -3d_armor_ui: Mod loaded but unused.=3d_armor_ui: Mod carregado mas inoperante. -3d Armor=3d Armor -Armor not initialized!=Armadura não inicializada! -Admin Shield=Escudo de Administrador -Wooden Shield=Escudo de Madeira -Enhanced Wood Shield=Escudo de Madeira Melhorado -Cactus Shield=Escudo de Cacto -Enhanced Cactus Shield=Escudo de Cacto Melhorado -Steel Shield=Escudo de Aço -Bronze Shield=Escudo de Bronze -Diamond Shield=Escudo de Diamante -Gold Shield=Escudo de Ouro -Mithril Shield=Escudo de Mithril -Crystal Shield=Escudo de Cristal -Nether Shield=Escudo de Nether +Your @1 got destroyed!=@1 foi destruído(a)! diff --git a/mods/player/3d_armor/locale/3d_armor.ru.tr b/mods/player/3d_armor/locale/3d_armor.ru.tr index b817c79ef..afbc441a8 100644 --- a/mods/player/3d_armor/locale/3d_armor.ru.tr +++ b/mods/player/3d_armor/locale/3d_armor.ru.tr @@ -1,85 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1=3d_armor: Отдельный инвентарь брони является nil @1 -3d_armor: Player name is nil @1=3d_armor: Имя игрока является nil @1 -3d_armor: Player reference is nil @1=3d_armor: Ссылка игрока является nil @1 - -### armor.lua ### - -Admin Boots=ботинки админа -Admin Chestplate=бронежилет админа -Admin Helmet=шлем админа -Admin Leggings=гамаши админа -Bronze Boots=бронзовые ботинки -Bronze Chestplate=бронзовый бронежилет -Bronze Helmet=бронзовый шлем -Bronze Leggings=бронзовые гамаши -Cactus Boots=кактусовые ботинки -Cactus Chestplate=кактусовый бронежилет -Cactus Helmet=кактусовый шлем -Cactus Leggings=кактусовые гамаши -Crystal Boots=кристалловые ботинки -Crystal Chestplate=кристалловый бронежилет -Crystal Helmet=кристалловый шлем -Crystal Leggings=кристалловые гамаши -Diamond Boots=алмазные ботинки -Diamond Chestplate=алмазный бронежилет -Diamond Helmet=алмазный шлем -Diamond Leggings=алмазные гамаши -Gold Boots=золотые ботинки -Gold Chestplate=золотой бронежилет -Gold Helmet=золотой шлем -Gold Leggings=золотые гамаши -Mithril Boots=мифриловые ботинки -Mithril Chestplate=мифриловый бронежилет -Mithril Helmet=мифриловый шлем -Mithril Leggings=мифриловые гамаши -Steel Boots=стальные ботинки -Steel Chestplate=стальной бронежилет -Steel Helmet=стальной шлем -Steel Leggings=стальные гамаши -Wood Boots=деревянные ботинки -Wood Chestplate=деревянный бронежилет -Wood Helmet=деревянный шлем -Wood Leggings=деревянные гамаши - -### init.lua ### - -3d_armor: Failed to initialize player=3d_armor: не смог подготовить игрока -Fire=огонь -Heal=исцеление -Level=уровень Radiation=излучение -Your @1 got destroyed!=твой(и) @1 был(и) разрушен(ы)! +Level=уровень +Heal=исцеление +Fire=огонь Your @1 is almost broken!= -[3d_armor] Fire Nodes disabled=[3d_armor] блоки огня отключены - - -##### not used anymore ##### - -3d_armor_ip: Mod loaded but unused.=3d_armor_ip: мод загружен но не используется. -Back=назад -Armor=бронь -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv: мод загружен но не используется. -Armor stand top=стойка для брони (верх) -Armor stand=стойка для брони -Armor Stand=стойка для брони -Locked Armor stand=защищенная стойка для брони -Armor Stand (owned by @1)=стойка для брони (принадлежит @1) -3d_armor_ui: Mod loaded but unused.=3d_armor_ui: мод загружен но не используется. -3d Armor=3D бронь -Armor not initialized!=бронь не подготовлена! -Admin Shield=щит админа -Wooden Shield=деревянный щит -Enhanced Wood Shield=улучшенный деревянный щит -Cactus Shield=кактусный щит -Enhanced Cactus Shield=улучшенный кактусный щит -Steel Shield=стальной щит -Bronze Shield=бронзовый щит -Diamond Shield=алмазный щит -Gold Shield=золотой щит -Mithril Shield=мифриловый щит -Crystal Shield=кристалловый щит +Your @1 got destroyed!=твой(и) @1 был(и) разрушен(ы)! diff --git a/mods/player/3d_armor/locale/3d_armor.sv.tr b/mods/player/3d_armor/locale/3d_armor.sv.tr new file mode 100644 index 000000000..08b7ee1ec --- /dev/null +++ b/mods/player/3d_armor/locale/3d_armor.sv.tr @@ -0,0 +1,7 @@ +# textdomain: 3d_armor +Radiation=Strålning +Level=Nivå +Heal=Läkning +Fire=Eld +Your @1 is almost broken!=Din @1 är nästan förstörd! +Your @1 got destroyed!=Din @1 blev förstörd! diff --git a/mods/player/3d_armor/locale/template.txt b/mods/player/3d_armor/locale/template.txt index 0898a63d1..5e4e65c1d 100644 --- a/mods/player/3d_armor/locale/template.txt +++ b/mods/player/3d_armor/locale/template.txt @@ -1,62 +1,7 @@ # textdomain: 3d_armor - - -### api.lua ### - -3d_armor: Detached armor inventory is nil @1= -3d_armor: Player name is nil @1= -3d_armor: Player reference is nil @1= - -### armor.lua ### - -Admin Boots= -Admin Chestplate= -Admin Helmet= -Admin Leggings= -Bronze Boots= -Bronze Chestplate= -Bronze Helmet= -Bronze Leggings= -Cactus Boots= -Cactus Chestplate= -Cactus Helmet= -Cactus Leggings= -Crystal Boots= -Crystal Chestplate= -Crystal Helmet= -Crystal Leggings= -Nether Boots= -Nether Chestplate= -Nether Helmet= -Nether Leggings= -Diamond Boots= -Diamond Chestplate= -Diamond Helmet= -Diamond Leggings= -Gold Boots= -Gold Chestplate= -Gold Helmet= -Gold Leggings= -Mithril Boots= -Mithril Chestplate= -Mithril Helmet= -Mithril Leggings= -Steel Boots= -Steel Chestplate= -Steel Helmet= -Steel Leggings= -Wood Boots= -Wood Chestplate= -Wood Helmet= -Wood Leggings= - -### init.lua ### - -3d_armor: Failed to initialize player= -Fire= -Heal= -Level= Radiation= -Your @1 got destroyed!= +Level= +Heal= +Fire= Your @1 is almost broken!= -[3d_armor] Fire Nodes disabled= +Your @1 got destroyed!= diff --git a/mods/player/3d_armor/mod.conf b/mods/player/3d_armor/mod.conf index 217c11bb5..167c2a183 100644 --- a/mods/player/3d_armor/mod.conf +++ b/mods/player/3d_armor/mod.conf @@ -1,4 +1,5 @@ name = 3d_armor depends = default, player_api -optional_depends = player_monoids, armor_monoid, pova, fire, ethereal, bakedclay, moreores, nether +optional_depends = player_monoids, armor_monoid, pova, moreores description = Adds craftable armor that is visible to other players. +min_minetest_version = 5.0 diff --git a/mods/player/3d_armor/textures/preview_index.txt b/mods/player/3d_armor/textures/preview_index.txt deleted file mode 100644 index 5b08da84d..000000000 --- a/mods/player/3d_armor/textures/preview_index.txt +++ /dev/null @@ -1,49 +0,0 @@ -3d_armor/textures/3d_armor_helmet_wood.png:head -3d_armor/textures/3d_armor_chestplate_wood.png:torso -3d_armor/textures/3d_armor_leggings_wood.png:legs -3d_armor/textures/3d_armor_boots_wood.png:feet - -3d_armor/textures/3d_armor_helmet_cactus.png:head -3d_armor/textures/3d_armor_chestplate_cactus.png:torso -3d_armor/textures/3d_armor_leggings_cactus.png:legs -3d_armor/textures/3d_armor_boots_cactus.png:feet - -3d_armor/textures/3d_armor_helmet_steel.png:head -3d_armor/textures/3d_armor_chestplate_steel.png:torso -3d_armor/textures/3d_armor_leggings_steel.png:legs -3d_armor/textures/3d_armor_boots_steel.png:feet - -3d_armor/textures/3d_armor_helmet_bronze.png:head -3d_armor/textures/3d_armor_chestplate_bronze.png:torso -3d_armor/textures/3d_armor_leggings_bronze.png:legs -3d_armor/textures/3d_armor_boots_bronze.png:feet - -3d_armor/textures/3d_armor_helmet_gold.png:head -3d_armor/textures/3d_armor_chestplate_gold.png:torso -3d_armor/textures/3d_armor_leggings_gold.png:legs -3d_armor/textures/3d_armor_boots_gold.png:feet - -3d_armor/textures/3d_armor_helmet_diamond.png:head -3d_armor/textures/3d_armor_chestplate_diamond.png:torso -3d_armor/textures/3d_armor_leggings_diamond.png:legs -3d_armor/textures/3d_armor_boots_diamond.png:feet - -3d_armor/textures/3d_armor_helmet_mithril.png:head -3d_armor/textures/3d_armor_chestplate_mithril.png:torso -3d_armor/textures/3d_armor_leggings_mithril.png:legs -3d_armor/textures/3d_armor_boots_mithril.png:feet - -3d_armor/textures/3d_armor_helmet_crystal.png:head -3d_armor/textures/3d_armor_chestplate_crystal.png:torso -3d_armor/textures/3d_armor_leggings_crystal.png:legs -3d_armor/textures/3d_armor_boots_crystal.png:feet - -3d_armor/textures/3d_armor_helmet_nether.png:head -3d_armor/textures/3d_armor_chestplate_nether.png:torso -3d_armor/textures/3d_armor_leggings_nether.png:legs -3d_armor/textures/3d_armor_boots_nether.png:feet - -3d_armor/textures/3d_armor_helmet_admin.png:head -3d_armor/textures/3d_armor_chestplate_admin.png:torso -3d_armor/textures/3d_armor_leggings_admin.png:legs -3d_armor/textures/3d_armor_boots_admin.png:feet diff --git a/mods/player/3d_armor_sfinv/LICENSE.md b/mods/player/3d_armor_sfinv/LICENSE.md index f7793ffa1..4e6383954 100644 --- a/mods/player/3d_armor_sfinv/LICENSE.md +++ b/mods/player/3d_armor_sfinv/LICENSE.md @@ -1,9 +1,9 @@ 3D Armor - Visible Player Armor =============================== -License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1 +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 -Armor Textures: Copyright (C) 2017-2018 davidthecreator - CC-BY-SA 3.0 +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. diff --git a/mods/player/3d_armor_sfinv/LICENSE.txt b/mods/player/3d_armor_sfinv/LICENSE.txt deleted file mode 100644 index 2b2a9f648..000000000 --- a/mods/player/3d_armor_sfinv/LICENSE.txt +++ /dev/null @@ -1,18 +0,0 @@ -[mod] 3d Armor sfinv integration [3d_armor_sfinv] -================================================= - -Copyright (C) 2012-2019 stujones11, Stuart Jones - -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. diff --git a/mods/player/3d_armor_sfinv/depends.txt b/mods/player/3d_armor_sfinv/depends.txt deleted file mode 100644 index c7beedaec..000000000 --- a/mods/player/3d_armor_sfinv/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -3d_armor -sfinv? diff --git a/mods/player/3d_armor_sfinv/description.txt b/mods/player/3d_armor_sfinv/description.txt deleted file mode 100644 index 15f4e963d..000000000 --- a/mods/player/3d_armor_sfinv/description.txt +++ /dev/null @@ -1 +0,0 @@ -Adds 3d_armor page to the sfinv inventory. diff --git a/mods/player/3d_armor_sfinv/init.lua b/mods/player/3d_armor_sfinv/init.lua index 830ebbcb2..f99c24407 100644 --- a/mods/player/3d_armor_sfinv/init.lua +++ b/mods/player/3d_armor_sfinv/init.lua @@ -2,7 +2,7 @@ local S = minetest.get_translator(minetest.get_current_modname()) if not minetest.global_exists("sfinv") then - minetest.log("warning", S("3d_armor_sfinv: Mod loaded but unused.")) + minetest.log("warning", "3d_armor_sfinv: Mod loaded but unused.") return end diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.de.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.de.tr new file mode 100644 index 000000000..b597332b3 --- /dev/null +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.de.tr @@ -0,0 +1,2 @@ +# textdomain: 3d_armor_sfinv +Armor=Rüstung diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.eo.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.eo.tr new file mode 100644 index 000000000..5b7a141cf --- /dev/null +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.eo.tr @@ -0,0 +1,2 @@ +# textdomain: 3d_armor_sfinv +Armor=Kiraso diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.es.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.es.tr index ee72e52bc..dd0a00265 100644 --- a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.es.tr +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.es.tr @@ -1,7 +1,2 @@ # textdomain: 3d_armor_sfinv - - -### init.lua ### - -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv : Mod cargado pero no activado. Armor=Armadura diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.fr.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.fr.tr index f25bd115e..bdaf2a0a0 100644 --- a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.fr.tr +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.fr.tr @@ -1,7 +1,2 @@ # textdomain: 3d_armor_sfinv - - -### init.lua ### - -3d_armor_sfinv: Mod loaded but unused.=3d_armor_sfinv : Mod chargé mais inutilisé. Armor=Armure diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.pt_BR.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.pt_BR.tr new file mode 100644 index 000000000..dd0a00265 --- /dev/null +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.pt_BR.tr @@ -0,0 +1,2 @@ +# textdomain: 3d_armor_sfinv +Armor=Armadura diff --git a/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.sv.tr b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.sv.tr new file mode 100644 index 000000000..14972b784 --- /dev/null +++ b/mods/player/3d_armor_sfinv/locale/3d_armor_sfinv.sv.tr @@ -0,0 +1,2 @@ +# textdomain: 3d_armor_sfinv +Armor=Rustning diff --git a/mods/player/3d_armor_sfinv/locale/template.txt b/mods/player/3d_armor_sfinv/locale/template.txt index a3f01b5c4..954dcf325 100644 --- a/mods/player/3d_armor_sfinv/locale/template.txt +++ b/mods/player/3d_armor_sfinv/locale/template.txt @@ -1,7 +1,2 @@ # textdomain: 3d_armor_sfinv - - -### init.lua ### - -3d_armor_sfinv: Mod loaded but unused.= Armor= diff --git a/mods/player/3d_armor_stand/LICENSE.md b/mods/player/3d_armor_stand/LICENSE.md index f7793ffa1..4e6383954 100644 --- a/mods/player/3d_armor_stand/LICENSE.md +++ b/mods/player/3d_armor_stand/LICENSE.md @@ -1,9 +1,9 @@ 3D Armor - Visible Player Armor =============================== -License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1 +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 -Armor Textures: Copyright (C) 2017-2018 davidthecreator - CC-BY-SA 3.0 +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. diff --git a/mods/player/3d_armor_stand/LICENSE.txt b/mods/player/3d_armor_stand/LICENSE.txt deleted file mode 100644 index e3cb55d68..000000000 --- a/mods/player/3d_armor_stand/LICENSE.txt +++ /dev/null @@ -1,43 +0,0 @@ -[mod] 3d Armor Stand [3d_armor_stand] -===================================== - -License Source Code -------------------- - -Copyright (C) 2012-2019 stujones11, Stuart Jones - -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 diff --git a/mods/player/3d_armor_stand/depends.txt b/mods/player/3d_armor_stand/depends.txt deleted file mode 100644 index fdbb29000..000000000 --- a/mods/player/3d_armor_stand/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -3d_armor - diff --git a/mods/player/3d_armor_stand/init.lua b/mods/player/3d_armor_stand/init.lua index 612345b54..018a4a78f 100644 --- a/mods/player/3d_armor_stand/init.lua +++ b/mods/player/3d_armor_stand/init.lua @@ -134,7 +134,7 @@ local function remove_hidden_node(pos) end minetest.register_node("3d_armor_stand:top", { - description = S("Armor stand top"), + description = S("Armor Stand Top"), paramtype = "light", drawtype = "plantlike", sunlight_propagates = true, @@ -149,7 +149,7 @@ minetest.register_node("3d_armor_stand:top", { }) minetest.register_node("3d_armor_stand:armor_stand", { - description = S("Armor stand"), + description = S("Armor Stand"), drawtype = "mesh", mesh = "3d_armor_stand.obj", tiles = {"3d_armor_stand.png"}, @@ -218,7 +218,7 @@ minetest.register_node("3d_armor_stand:armor_stand", { }) minetest.register_node("3d_armor_stand:locked_armor_stand", { - description = S("Locked Armor stand"), + description = S("Locked Armor Stand"), drawtype = "mesh", mesh = "3d_armor_stand.obj", tiles = {"3d_armor_stand_locked.png"}, @@ -300,26 +300,27 @@ minetest.register_node("3d_armor_stand:locked_armor_stand", { }) 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 = {"3d_armor_trans.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 diff --git a/mods/player/3d_armor_stand/locale/3d_armor_stand.de.tr b/mods/player/3d_armor_stand/locale/3d_armor_stand.de.tr new file mode 100644 index 000000000..ece548a68 --- /dev/null +++ b/mods/player/3d_armor_stand/locale/3d_armor_stand.de.tr @@ -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) diff --git a/mods/player/3d_armor_stand/locale/3d_armor_stand.eo.tr b/mods/player/3d_armor_stand/locale/3d_armor_stand.eo.tr new file mode 100644 index 000000000..bad7cf314 --- /dev/null +++ b/mods/player/3d_armor_stand/locale/3d_armor_stand.eo.tr @@ -0,0 +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) diff --git a/mods/player/3d_armor_stand/locale/3d_armor_stand.fr.tr b/mods/player/3d_armor_stand/locale/3d_armor_stand.fr.tr index 7d4cd3818..f92d3778c 100644 --- a/mods/player/3d_armor_stand/locale/3d_armor_stand.fr.tr +++ b/mods/player/3d_armor_stand/locale/3d_armor_stand.fr.tr @@ -1,10 +1,5 @@ # textdomain: 3d_armor_stand - - -### init.lua ### - +Armor Stand Top=Haut de support d'armure Armor Stand=Support d'armure +Locked Armor Stand=Support d'armure verrouillé Armor Stand (owned by @1)=Support d'armure (propriété de @1) -Armor stand=Support d'armure -Armor stand top=Haut de support d'armure -Locked Armor stand=Support d'armure verrouillé diff --git a/mods/player/3d_armor_stand/locale/3d_armor_stand.pt_BR.tr b/mods/player/3d_armor_stand/locale/3d_armor_stand.pt_BR.tr new file mode 100644 index 000000000..0a8fb2973 --- /dev/null +++ b/mods/player/3d_armor_stand/locale/3d_armor_stand.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: 3d_armor_stand +Armor Stand Top=Topo do suporte de armadura +Armor Stand=Suporte de Armadura +Locked Armor Stand=Suporte de armadura trancado +Armor Stand (owned by @1)=Suporte de Armadura (dono: @1) diff --git a/mods/player/3d_armor_stand/locale/3d_armor_stand.sv.tr b/mods/player/3d_armor_stand/locale/3d_armor_stand.sv.tr new file mode 100644 index 000000000..5800a3132 --- /dev/null +++ b/mods/player/3d_armor_stand/locale/3d_armor_stand.sv.tr @@ -0,0 +1,5 @@ +# textdomain: 3d_armor_stand +Armor Stand Top=Rustningställstopp +Armor Stand=Rustningställ +Locked Armor Stand=Låst rustningställ +Armor Stand (owned by @1)=Rustningställ (ägd av @1) diff --git a/mods/player/3d_armor_stand/locale/template.txt b/mods/player/3d_armor_stand/locale/template.txt index 25befcb74..ab0bae946 100644 --- a/mods/player/3d_armor_stand/locale/template.txt +++ b/mods/player/3d_armor_stand/locale/template.txt @@ -1,10 +1,5 @@ # textdomain: 3d_armor_stand - - -### init.lua ### - +Armor Stand Top= Armor Stand= +Locked Armor Stand= Armor Stand (owned by @1)= -Armor stand= -Armor stand top= -Locked Armor stand= diff --git a/mods/player/armor_admin/LICENSE.md b/mods/player/armor_admin/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_admin/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_admin/init.lua b/mods/player/armor_admin/init.lua new file mode 100644 index 000000000..ec56879f2 --- /dev/null +++ b/mods/player/armor_admin/init.lua @@ -0,0 +1,94 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Admin Helmet +-- +-- @helmet 3d_armor:helmet_admin +-- @img 3d_armor_inv_helmet_admin.png +-- @grp armor_head 1 +-- @grp armor_heal 100 +-- @grp armor_use 0 +-- @grp armor_water 1 +-- @grp not_in_creative_inventory 1 +-- @armorgrp fleshy 100 +armor:register_armor(":3d_armor:helmet_admin", { + description = S("Admin Helmet"), + inventory_image = "3d_armor_inv_helmet_admin.png", + armor_groups = {fleshy=100}, + groups = {armor_head=1, armor_heal=100, armor_use=0, armor_water=1, + not_in_creative_inventory=1}, + on_drop = function(itemstack, dropper, pos) + return + end, +}) + +--- Admin Chestplate +-- +-- @chestplate 3d_armor:chestplate_admin +-- @img 3d_armor_inv_chestplate_admin.png +-- @grp armor_torso 1 +-- @grp armor_heal 100 +-- @grp armor_use 0 +-- @grp not_in_creative_inventory 1 +-- @armorgrp fleshy 100 +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, + not_in_creative_inventory=1}, + on_drop = function(itemstack, dropper, pos) + return + end, +}) + +--- Admin Leggings +-- +-- @leggings 3d_armor:leggings_admin +-- @img 3d_armor_inv_leggings_admin.png +-- @grp armor_legs 1 +-- @grp armor_heal 100 +-- @grp armor_use 0 +-- @grp not_in_creative_inventory 1 +-- @armorgrp fleshy 100 +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, + not_in_creative_inventory=1}, + on_drop = function(itemstack, dropper, pos) + return + end, +}) + +--- Admin Boots +-- +-- @boots 3d_armor:boots_admin +-- @img 3d_armor_inv_boots_admin.png +-- @grp armor_feet 1 +-- @grp armor_heal 100 +-- @grp armor_use 0 +-- @grp not_in_creative_inventory 1 +-- @armorgrp fleshy 100 +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, physics_speed=1, + not_in_creative_inventory=1}, + on_drop = function(itemstack, dropper, pos) + return + end, +}) + +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") diff --git a/mods/player/armor_admin/locale/armor_admin.de.tr b/mods/player/armor_admin/locale/armor_admin.de.tr new file mode 100644 index 000000000..d4751c0f3 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Adminhelm +Admin Chestplate=Adminbrustplatte +Admin Leggings=Adminhose +Admin Boots=Adminstiefel diff --git a/mods/player/armor_admin/locale/armor_admin.eo.tr b/mods/player/armor_admin/locale/armor_admin.eo.tr new file mode 100644 index 000000000..97cc3b2f9 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Administra Kasko +Admin Chestplate=Administra Brustkiraso +Admin Leggings=Administra Pantalono +Admin Boots=Administra Botoj diff --git a/mods/player/armor_admin/locale/armor_admin.es.tr b/mods/player/armor_admin/locale/armor_admin.es.tr new file mode 100644 index 000000000..3e1f8e044 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Casco de admin +Admin Chestplate=Peto de admin +Admin Leggings=Grebas de admin +Admin Boots=Botas de admin diff --git a/mods/player/armor_admin/locale/armor_admin.fr.tr b/mods/player/armor_admin/locale/armor_admin.fr.tr new file mode 100644 index 000000000..497df2d39 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Casque d'admin +Admin Chestplate=Cuirasse d'admin +Admin Leggings=Jambières d'admin +Admin Boots=Bottes d'admin diff --git a/mods/player/armor_admin/locale/armor_admin.it.tr b/mods/player/armor_admin/locale/armor_admin.it.tr new file mode 100644 index 000000000..d59b9c925 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Elmo dell'amministratrice/tore +Admin Chestplate=Corazza dell'amministratrice/tore +Admin Leggings=Gambali dell'amministratrice/tore +Admin Boots=Stivali dell'amministratrice/tore diff --git a/mods/player/armor_admin/locale/armor_admin.ms.tr b/mods/player/armor_admin/locale/armor_admin.ms.tr new file mode 100644 index 000000000..b91f9def8 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Helmet Pentadbir +Admin Chestplate=Perisai Dada Pentadbir +Admin Leggings=Perisai Kaki Pentadbir +Admin Boots=But Pentadbir diff --git a/mods/player/armor_admin/locale/armor_admin.pt.tr b/mods/player/armor_admin/locale/armor_admin.pt.tr new file mode 100644 index 000000000..920e44f66 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet= +Admin Chestplate= +Admin Leggings= +Admin Boots= diff --git a/mods/player/armor_admin/locale/armor_admin.pt_BR.tr b/mods/player/armor_admin/locale/armor_admin.pt_BR.tr new file mode 100644 index 000000000..077be2bed --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Capacete de Administrador +Admin Chestplate=Peitoral de Administrador +Admin Leggings=Calças de Administrador +Admin Boots=Botas de Administrador diff --git a/mods/player/armor_admin/locale/armor_admin.ru.tr b/mods/player/armor_admin/locale/armor_admin.ru.tr new file mode 100644 index 000000000..23905d44f --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=шлем админа +Admin Chestplate=бронежилет админа +Admin Leggings=гамаши админа +Admin Boots=ботинки админа diff --git a/mods/player/armor_admin/locale/armor_admin.sv.tr b/mods/player/armor_admin/locale/armor_admin.sv.tr new file mode 100644 index 000000000..91631fe84 --- /dev/null +++ b/mods/player/armor_admin/locale/armor_admin.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet=Adminhjälm +Admin Chestplate=Adminbröstplåt +Admin Leggings=Adminbyxor +Admin Boots=Adminstövlar diff --git a/mods/player/armor_admin/locale/template.txt b/mods/player/armor_admin/locale/template.txt new file mode 100644 index 000000000..920e44f66 --- /dev/null +++ b/mods/player/armor_admin/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_admin +Admin Helmet= +Admin Chestplate= +Admin Leggings= +Admin Boots= diff --git a/mods/player/armor_admin/mod.conf b/mods/player/armor_admin/mod.conf new file mode 100644 index 000000000..588d4a434 --- /dev/null +++ b/mods/player/armor_admin/mod.conf @@ -0,0 +1,3 @@ +name = armor_admin +depends = 3d_armor +description = Adds admin armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_admin.png b/mods/player/armor_admin/textures/3d_armor_boots_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_admin.png rename to mods/player/armor_admin/textures/3d_armor_boots_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_admin_preview.png b/mods/player/armor_admin/textures/3d_armor_boots_admin_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_admin_preview.png rename to mods/player/armor_admin/textures/3d_armor_boots_admin_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_admin.png b/mods/player/armor_admin/textures/3d_armor_chestplate_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_admin.png rename to mods/player/armor_admin/textures/3d_armor_chestplate_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_admin_preview.png b/mods/player/armor_admin/textures/3d_armor_chestplate_admin_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_admin_preview.png rename to mods/player/armor_admin/textures/3d_armor_chestplate_admin_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_admin.png b/mods/player/armor_admin/textures/3d_armor_helmet_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_admin.png rename to mods/player/armor_admin/textures/3d_armor_helmet_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_admin_preview.png b/mods/player/armor_admin/textures/3d_armor_helmet_admin_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_admin_preview.png rename to mods/player/armor_admin/textures/3d_armor_helmet_admin_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_admin.png b/mods/player/armor_admin/textures/3d_armor_inv_boots_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_admin.png rename to mods/player/armor_admin/textures/3d_armor_inv_boots_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_admin.png b/mods/player/armor_admin/textures/3d_armor_inv_chestplate_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_admin.png rename to mods/player/armor_admin/textures/3d_armor_inv_chestplate_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_admin.png b/mods/player/armor_admin/textures/3d_armor_inv_helmet_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_admin.png rename to mods/player/armor_admin/textures/3d_armor_inv_helmet_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_admin.png b/mods/player/armor_admin/textures/3d_armor_inv_leggings_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_admin.png rename to mods/player/armor_admin/textures/3d_armor_inv_leggings_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_admin.png b/mods/player/armor_admin/textures/3d_armor_leggings_admin.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_admin.png rename to mods/player/armor_admin/textures/3d_armor_leggings_admin.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_admin_preview.png b/mods/player/armor_admin/textures/3d_armor_leggings_admin_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_admin_preview.png rename to mods/player/armor_admin/textures/3d_armor_leggings_admin_preview.png diff --git a/mods/player/armor_bronze/LICENSE.md b/mods/player/armor_bronze/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_bronze/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_bronze/init.lua b/mods/player/armor_bronze/init.lua new file mode 100644 index 000000000..d23dffb1a --- /dev/null +++ b/mods/player/armor_bronze/init.lua @@ -0,0 +1,181 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Bronze +-- +-- Requires setting `armor_material_bronze`. +-- +-- @section bronze + +if armor.materials.bronze then + --- Bronze Helmet + -- + -- @helmet 3d_armor:helmet_bronze + -- @img 3d_armor_inv_helmet_bronze.png + -- @grp armor_head 1 + -- @grp armor_heal 6 + -- @grp armor_use 400 + -- @grp physics_speed -0.01 + -- @grp physics_gravity 0.01 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:helmet_bronze", { + description = S("Bronze Helmet"), + inventory_image = "3d_armor_inv_helmet_bronze.png", + groups = {armor_head=1, armor_heal=6, armor_use=400, + physics_speed=-0.01, physics_gravity=0.01}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, + }) + --- Bronze Chestplate + -- + -- @chestplate 3d_armor:chestplate_bronze + -- @img 3d_armor_inv_chestplate_bronze.png + -- @grp armor_torso 1 + -- @grp armor_heal 6 + -- @grp armor_use 400 + -- @grp physics_speed -0.04 + -- @grp physics_gravity 0.04 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:chestplate_bronze", { + description = S("Bronze Chestplate"), + inventory_image = "3d_armor_inv_chestplate_bronze.png", + groups = {armor_torso=1, armor_heal=6, armor_use=400, + physics_speed=-0.04, physics_gravity=0.04}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, + }) + --- Bronze Leggings + -- + -- @leggings 3d_armor:leggings_bronze + -- @img 3d_armor_inv_leggings_bronze.png + -- @grp armor_legs 1 + -- @grp armor_heal 6 + -- @grp armor_use 400 + -- @grp physics_speed -0.03 + -- @grp physics_gravity 0.03 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:leggings_bronze", { + description = S("Bronze Leggings"), + inventory_image = "3d_armor_inv_leggings_bronze.png", + groups = {armor_legs=1, armor_heal=6, armor_use=400, + physics_speed=-0.03, physics_gravity=0.03}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, + }) + --- Bronze Boots + -- + -- @boots 3d_armor:boots_bronze + -- @img 3d_armor_inv_boots_bronze.png + -- @grp armor_feet 1 + -- @grp armor_heal 6 + -- @grp armor_use 400 + -- @grp physics_speed -0.01 + -- @grp physics_gravity 0.01 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:boots_bronze", { + description = S("Bronze Boots"), + inventory_image = "3d_armor_inv_boots_bronze.png", + groups = {armor_feet=1, armor_heal=6, armor_use=400, + physics_speed=-0.01, physics_gravity=0.01}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=2, choppy=2, crumbly=1, level=2}, + }) + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "bronze" + local m = armor.materials.bronze + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_bronze/locale/armor_bronze.de.tr b/mods/player/armor_bronze/locale/armor_bronze.de.tr new file mode 100644 index 000000000..789bdd82a --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Bronzehelm +Bronze Chestplate=Bronzebrustplatte +Bronze Leggings=Bronzehose +Bronze Boots=Bronzestiefel diff --git a/mods/player/armor_bronze/locale/armor_bronze.eo.tr b/mods/player/armor_bronze/locale/armor_bronze.eo.tr new file mode 100644 index 000000000..38f385510 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Bronza Kasko +Bronze Chestplate=Bronza Brustkiraso +Bronze Leggings=Bronza Pantalono +Bronze Boots=Bronza Botoj diff --git a/mods/player/armor_bronze/locale/armor_bronze.es.tr b/mods/player/armor_bronze/locale/armor_bronze.es.tr new file mode 100644 index 000000000..8103e7a43 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Casco de bronce +Bronze Chestplate=Peto de bronce +Bronze Leggings=Grebas de bronce +Bronze Boots=Botas de bronce diff --git a/mods/player/armor_bronze/locale/armor_bronze.fr.tr b/mods/player/armor_bronze/locale/armor_bronze.fr.tr new file mode 100644 index 000000000..72d1dc4c7 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Casque en bronze +Bronze Chestplate=Cuirasse en bronze +Bronze Leggings=Jambières en bronze +Bronze Boots=Bottes en bronze diff --git a/mods/player/armor_bronze/locale/armor_bronze.it.tr b/mods/player/armor_bronze/locale/armor_bronze.it.tr new file mode 100644 index 000000000..e12982447 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Elmo di bronzo +Bronze Chestplate=Corazza di bronzo +Bronze Leggings=Gambali di bronzo +Bronze Boots=Stivali di bronzo diff --git a/mods/player/armor_bronze/locale/armor_bronze.ms.tr b/mods/player/armor_bronze/locale/armor_bronze.ms.tr new file mode 100644 index 000000000..f91677713 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Helmet Gangsa +Bronze Chestplate=Perisai Dada Gangsa +Bronze Leggings=Perisai Kaki Gangsa +Bronze Boots=But Gangsa diff --git a/mods/player/armor_bronze/locale/armor_bronze.pt.tr b/mods/player/armor_bronze/locale/armor_bronze.pt.tr new file mode 100644 index 000000000..a9a5ab274 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Capacete de Bronze +Bronze Chestplate=Peitoral de Bronze +Bronze Leggings=Calças de Bronze +Bronze Boots=Botas de Bronze diff --git a/mods/player/armor_bronze/locale/armor_bronze.pt_BR.tr b/mods/player/armor_bronze/locale/armor_bronze.pt_BR.tr new file mode 100644 index 000000000..a9a5ab274 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Capacete de Bronze +Bronze Chestplate=Peitoral de Bronze +Bronze Leggings=Calças de Bronze +Bronze Boots=Botas de Bronze diff --git a/mods/player/armor_bronze/locale/armor_bronze.ru.tr b/mods/player/armor_bronze/locale/armor_bronze.ru.tr new file mode 100644 index 000000000..ba506b3ba --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=бронзовый шлем +Bronze Chestplate=бронзовый бронежилет +Bronze Leggings=бронзовые гамаши +Bronze Boots=бронзовые ботинки diff --git a/mods/player/armor_bronze/locale/armor_bronze.sv.tr b/mods/player/armor_bronze/locale/armor_bronze.sv.tr new file mode 100644 index 000000000..eea6741f3 --- /dev/null +++ b/mods/player/armor_bronze/locale/armor_bronze.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet=Bronshjälm +Bronze Chestplate=Bronsbröstplatta +Bronze Leggings=Bronsbyxor +Bronze Boots=Bronsstövlar diff --git a/mods/player/armor_bronze/locale/template.txt b/mods/player/armor_bronze/locale/template.txt new file mode 100644 index 000000000..59a561219 --- /dev/null +++ b/mods/player/armor_bronze/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_bronze +Bronze Helmet= +Bronze Chestplate= +Bronze Leggings= +Bronze Boots= diff --git a/mods/player/armor_bronze/mod.conf b/mods/player/armor_bronze/mod.conf new file mode 100644 index 000000000..7eec9023c --- /dev/null +++ b/mods/player/armor_bronze/mod.conf @@ -0,0 +1,3 @@ +name = armor_bronze +depends = 3d_armor +description = Adds craftable bronze armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_bronze.png b/mods/player/armor_bronze/textures/3d_armor_boots_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_boots_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_bronze_preview.png b/mods/player/armor_bronze/textures/3d_armor_boots_bronze_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_bronze_preview.png rename to mods/player/armor_bronze/textures/3d_armor_boots_bronze_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_bronze.png b/mods/player/armor_bronze/textures/3d_armor_chestplate_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_chestplate_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_bronze_preview.png b/mods/player/armor_bronze/textures/3d_armor_chestplate_bronze_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_bronze_preview.png rename to mods/player/armor_bronze/textures/3d_armor_chestplate_bronze_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_bronze.png b/mods/player/armor_bronze/textures/3d_armor_helmet_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_helmet_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_bronze_preview.png b/mods/player/armor_bronze/textures/3d_armor_helmet_bronze_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_bronze_preview.png rename to mods/player/armor_bronze/textures/3d_armor_helmet_bronze_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_bronze.png b/mods/player/armor_bronze/textures/3d_armor_inv_boots_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_inv_boots_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_bronze.png b/mods/player/armor_bronze/textures/3d_armor_inv_chestplate_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_inv_chestplate_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_bronze.png b/mods/player/armor_bronze/textures/3d_armor_inv_helmet_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_inv_helmet_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_bronze.png b/mods/player/armor_bronze/textures/3d_armor_inv_leggings_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_inv_leggings_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_bronze.png b/mods/player/armor_bronze/textures/3d_armor_leggings_bronze.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_bronze.png rename to mods/player/armor_bronze/textures/3d_armor_leggings_bronze.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_bronze_preview.png b/mods/player/armor_bronze/textures/3d_armor_leggings_bronze_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_bronze_preview.png rename to mods/player/armor_bronze/textures/3d_armor_leggings_bronze_preview.png diff --git a/mods/player/armor_cactus/LICENSE.md b/mods/player/armor_cactus/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_cactus/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_cactus/init.lua b/mods/player/armor_cactus/init.lua new file mode 100644 index 000000000..9944139eb --- /dev/null +++ b/mods/player/armor_cactus/init.lua @@ -0,0 +1,183 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Cactus +-- +-- Requires setting `armor_material_cactus`. +-- +-- @section cactus + +if armor.materials.cactus then + --- Cactus Helmet + -- + -- @helmet 3d_armor:helmet_cactus + -- @img 3d_armor_inv_helmet_cactus.png + -- @grp armor_head 1 + -- @grp armor_heal 0 + -- @grp armor_use 1000 + -- @armorgrp fleshy 5 + -- @damagegrp cracky 3 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:helmet_cactus", { + description = S("Cactus Helmet"), + inventory_image = "3d_armor_inv_helmet_cactus.png", + groups = {armor_head=1, armor_heal=0, armor_use=1000}, + armor_groups = {fleshy=5}, + damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, + }) + --- Cactus Chestplate + -- + -- @chestplate 3d_armor:chestplate_cactus + -- @img 3d_armor_inv_chestplate_cactus.png + -- @grp armor_torso 1 + -- @grp armor_heal 0 + -- @grp armor_use 1000 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:chestplate_cactus", { + description = S("Cactus Chestplate"), + inventory_image = "3d_armor_inv_chestplate_cactus.png", + groups = {armor_torso=1, armor_heal=0, armor_use=1000}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, + }) + --- Cactus Leggings + -- + -- @leggings 3d_armor:leggings_cactus + -- @img 3d_armor_inv_leggings_cactus.png + -- @grp armor_legs 1 + -- @grp armor_heal 0 + -- @grp armor_use 1000 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:leggings_cactus", { + description = S("Cactus Leggings"), + inventory_image = "3d_armor_inv_leggings_cactus.png", + groups = {armor_legs=1, armor_heal=0, armor_use=1000}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, + }) + --- Cactus Boots + -- + -- @boots 3d_armor:boots_cactus + -- @img 3d_armor_inv_boots_cactus.png + -- @grp armor_feet 1 + -- @grp armor_heal 0 + -- @grp armor_use 1000 + -- @armorgrp fleshy 5 + -- @damagegrp cracky 3 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:boots_cactus", { + description = S("Cactus Boots"), + inventory_image = "3d_armor_inv_boots_cactus.png", + groups = {armor_feet=1, armor_heal=0, armor_use=1000}, + armor_groups = {fleshy=5}, + damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1}, + }) + local cactus_armor_fuel = { + helmet = 14, + chestplate = 16, + leggings = 15, + boots = 13 + } + for armor, burn in pairs(cactus_armor_fuel) do + minetest.register_craft({ + type = "fuel", + recipe = "3d_armor:" .. armor .. "_cactus", + burntime = burn, + }) + end + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "cactus" + local m = armor.materials.cactus + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_cactus/locale/armor_cactus.de.tr b/mods/player/armor_cactus/locale/armor_cactus.de.tr new file mode 100644 index 000000000..a09c15e67 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Kaktushelm +Cactus Chestplate=Kaktusbrustplatte +Cactus Leggings=Kaktushose +Cactus Boots=Kaktusstiefel diff --git a/mods/player/armor_cactus/locale/armor_cactus.eo.tr b/mods/player/armor_cactus/locale/armor_cactus.eo.tr new file mode 100644 index 000000000..240ed0393 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Kakta Kasko +Cactus Chestplate=Kakta Brustkiraso +Cactus Leggings=Kakta Pantalono +Cactus Boots=Kakta Botoj diff --git a/mods/player/armor_cactus/locale/armor_cactus.es.tr b/mods/player/armor_cactus/locale/armor_cactus.es.tr new file mode 100644 index 000000000..f96891770 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Casco de cactus +Cactus Chestplate=Peto de cactus +Cactus Leggings=Grebas de cactus +Cactus Boots=Botas de cactus diff --git a/mods/player/armor_cactus/locale/armor_cactus.fr.tr b/mods/player/armor_cactus/locale/armor_cactus.fr.tr new file mode 100644 index 000000000..b678e313d --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Casque en cactus +Cactus Chestplate=Cuirasse en cactus +Cactus Leggings=Jambières en cactus +Cactus Boots=Bottes en cactus diff --git a/mods/player/armor_cactus/locale/armor_cactus.it.tr b/mods/player/armor_cactus/locale/armor_cactus.it.tr new file mode 100644 index 000000000..e46a235a8 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Elmo di cactus +Cactus Chestplate=Corazza di cactus +Cactus Leggings=Gambali di cactus +Cactus Boots=Stivali di cactus diff --git a/mods/player/armor_cactus/locale/armor_cactus.ms.tr b/mods/player/armor_cactus/locale/armor_cactus.ms.tr new file mode 100644 index 000000000..f859b9eb2 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Helmet Kaktus +Cactus Chestplate=Perisai Dada Kaktus +Cactus Leggings=Perisai Kaki Kaktus +Cactus Boots=But Kaktus diff --git a/mods/player/armor_cactus/locale/armor_cactus.pt.tr b/mods/player/armor_cactus/locale/armor_cactus.pt.tr new file mode 100644 index 000000000..f3ca09232 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Capacete de Cacto +Cactus Chestplate=Peitoral de Cacto +Cactus Leggings=Calças de Cacto +Cactus Boots=Botas de Madeira diff --git a/mods/player/armor_cactus/locale/armor_cactus.pt_BR.tr b/mods/player/armor_cactus/locale/armor_cactus.pt_BR.tr new file mode 100644 index 000000000..75eca1731 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Capacete de Cacto +Cactus Chestplate=Peitoral de Cacto +Cactus Leggings=Calças de Cacto +Cactus Boots=Botas de Cacto diff --git a/mods/player/armor_cactus/locale/armor_cactus.ru.tr b/mods/player/armor_cactus/locale/armor_cactus.ru.tr new file mode 100644 index 000000000..cf36d2159 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=кактусовый шлем +Cactus Chestplate=кактусовый бронежилет +Cactus Leggings=кактусовые гамаши +Cactus Boots=кактусовые ботинки diff --git a/mods/player/armor_cactus/locale/armor_cactus.sv.tr b/mods/player/armor_cactus/locale/armor_cactus.sv.tr new file mode 100644 index 000000000..2f0981ac7 --- /dev/null +++ b/mods/player/armor_cactus/locale/armor_cactus.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet=Kaktushjälm +Cactus Chestplate=Kaktusbröstplatta +Cactus Leggings=Kaktusbyxor +Cactus Boots=Kaktusstövlar diff --git a/mods/player/armor_cactus/locale/template.txt b/mods/player/armor_cactus/locale/template.txt new file mode 100644 index 000000000..49da2402d --- /dev/null +++ b/mods/player/armor_cactus/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_cactus +Cactus Helmet= +Cactus Chestplate= +Cactus Leggings= +Cactus Boots= diff --git a/mods/player/armor_cactus/mod.conf b/mods/player/armor_cactus/mod.conf new file mode 100644 index 000000000..fc94af230 --- /dev/null +++ b/mods/player/armor_cactus/mod.conf @@ -0,0 +1,3 @@ +name = armor_cactus +depends = 3d_armor +description = Adds craftable cactus armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_cactus.png b/mods/player/armor_cactus/textures/3d_armor_boots_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_boots_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_cactus_preview.png b/mods/player/armor_cactus/textures/3d_armor_boots_cactus_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_cactus_preview.png rename to mods/player/armor_cactus/textures/3d_armor_boots_cactus_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_cactus.png b/mods/player/armor_cactus/textures/3d_armor_chestplate_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_chestplate_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_cactus_preview.png b/mods/player/armor_cactus/textures/3d_armor_chestplate_cactus_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_cactus_preview.png rename to mods/player/armor_cactus/textures/3d_armor_chestplate_cactus_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_cactus.png b/mods/player/armor_cactus/textures/3d_armor_helmet_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_helmet_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_cactus_preview.png b/mods/player/armor_cactus/textures/3d_armor_helmet_cactus_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_cactus_preview.png rename to mods/player/armor_cactus/textures/3d_armor_helmet_cactus_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_cactus.png b/mods/player/armor_cactus/textures/3d_armor_inv_boots_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_inv_boots_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_cactus.png b/mods/player/armor_cactus/textures/3d_armor_inv_chestplate_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_inv_chestplate_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_cactus.png b/mods/player/armor_cactus/textures/3d_armor_inv_helmet_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_inv_helmet_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_cactus.png b/mods/player/armor_cactus/textures/3d_armor_inv_leggings_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_inv_leggings_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_cactus.png b/mods/player/armor_cactus/textures/3d_armor_leggings_cactus.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_cactus.png rename to mods/player/armor_cactus/textures/3d_armor_leggings_cactus.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_cactus_preview.png b/mods/player/armor_cactus/textures/3d_armor_leggings_cactus_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_cactus_preview.png rename to mods/player/armor_cactus/textures/3d_armor_leggings_cactus_preview.png diff --git a/mods/player/armor_crystal/LICENSE.md b/mods/player/armor_crystal/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_crystal/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_crystal/init.lua b/mods/player/armor_crystal/init.lua new file mode 100644 index 000000000..d845fc2aa --- /dev/null +++ b/mods/player/armor_crystal/init.lua @@ -0,0 +1,170 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + + +--- Crystal +-- +-- Requires `armor_material_crystal`. +-- +-- @section crystal + +if armor.materials.crystal then + --- Crystal Helmet + -- + -- @helmet 3d_armor:helmet_crystal + -- @img 3d_armor_inv_helmet_crystal.png + -- @grp armor_head 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @grp armor_fire 1 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:helmet_crystal", { + description = S("Crystal Helmet"), + inventory_image = "3d_armor_inv_helmet_crystal.png", + groups = {armor_head=1, armor_heal=12, armor_use=100, armor_fire=1}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Crystal Chestplate + -- + -- @chestplate 3d_armor:chestplate_crystal + -- @img 3d_armor_inv_chestplate_crystal.png + -- @grp armor_torso 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @grp armor_fire 1 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:chestplate_crystal", { + description = S("Crystal Chestplate"), + inventory_image = "3d_armor_inv_chestplate_crystal.png", + groups = {armor_torso=1, armor_heal=12, armor_use=100, armor_fire=1}, + armor_groups = {fleshy=20}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Crystal Leggings + -- + -- @leggings 3d_armor:leggings_crystal + -- @img 3d_armor_inv_leggings_crystal.png + -- @grp armor_legs 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @grp armor_fire 1 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:leggings_crystal", { + description = S("Crystal Leggings"), + inventory_image = "3d_armor_inv_leggings_crystal.png", + groups = {armor_legs=1, armor_heal=12, armor_use=100, armor_fire=1}, + armor_groups = {fleshy=20}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Crystal Boots + -- + -- @boots 3d_armor:boots_crystal + -- @img 3d_armor_inv_boots_crystal.png + -- @grp armor_feet 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @grp physics_speed 1 + -- @grp physics_jump 0.5 + -- @grp armor_fire 1 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:boots_crystal", { + description = S("Crystal Boots"), + inventory_image = "3d_armor_inv_boots_crystal.png", + groups = {armor_feet=1, armor_heal=12, armor_use=100, physics_speed=1, + physics_jump=0.5, armor_fire=1}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "crystal" + local m = armor.materials.crystal + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_crystal/locale/armor_crystal.de.tr b/mods/player/armor_crystal/locale/armor_crystal.de.tr new file mode 100644 index 000000000..18e762426 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Kristallhelm +Crystal Chestplate=Kristallbrustplatte +Crystal Leggings=Kristallhose +Crystal Boots=Kristallstiefel diff --git a/mods/player/armor_crystal/locale/armor_crystal.eo.tr b/mods/player/armor_crystal/locale/armor_crystal.eo.tr new file mode 100644 index 000000000..36bbe209c --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Kristala Kasko +Crystal Chestplate=Kristala Brustkiraso +Crystal Leggings=Kristala Pantalono +Crystal Boots=Kristala Botoj diff --git a/mods/player/armor_crystal/locale/armor_crystal.es.tr b/mods/player/armor_crystal/locale/armor_crystal.es.tr new file mode 100644 index 000000000..cc7e60b16 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Casco de cristal +Crystal Chestplate=Peto de cristal +Crystal Leggings=Grebas de cristal +Crystal Boots=Botas de cristal diff --git a/mods/player/armor_crystal/locale/armor_crystal.fr.tr b/mods/player/armor_crystal/locale/armor_crystal.fr.tr new file mode 100644 index 000000000..d127635de --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Casque en cristal +Crystal Chestplate=Cuirasse en cristal +Crystal Leggings=Jambières en cristal +Crystal Boots=Bottes en cristal diff --git a/mods/player/armor_crystal/locale/armor_crystal.it.tr b/mods/player/armor_crystal/locale/armor_crystal.it.tr new file mode 100644 index 000000000..85c3f5123 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Elmo di cristallo +Crystal Chestplate=Corazza di cristallo +Crystal Leggings=Gambali di cristallo +Crystal Boots=Stivali di cristallo diff --git a/mods/player/armor_crystal/locale/armor_crystal.ms.tr b/mods/player/armor_crystal/locale/armor_crystal.ms.tr new file mode 100644 index 000000000..6e53ffda9 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Helmet Kristal +Crystal Chestplate=Perisai Dada Kristal +Crystal Leggings=Perisai Kaki Kristal +Crystal Boots=But Kristal diff --git a/mods/player/armor_crystal/locale/armor_crystal.pt.tr b/mods/player/armor_crystal/locale/armor_crystal.pt.tr new file mode 100644 index 000000000..43e042eec --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Capacete de Cristal +Crystal Chestplate=Peitoral de Cristal +Crystal Leggings=Calças de Cristal +Crystal Boots=Botas de Cristal diff --git a/mods/player/armor_crystal/locale/armor_crystal.pt_BR.tr b/mods/player/armor_crystal/locale/armor_crystal.pt_BR.tr new file mode 100644 index 000000000..43e042eec --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Capacete de Cristal +Crystal Chestplate=Peitoral de Cristal +Crystal Leggings=Calças de Cristal +Crystal Boots=Botas de Cristal diff --git a/mods/player/armor_crystal/locale/armor_crystal.ru.tr b/mods/player/armor_crystal/locale/armor_crystal.ru.tr new file mode 100644 index 000000000..932ece919 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=кристалловый шлем +Crystal Chestplate=кристалловый бронежилет +Crystal Leggings=кристалловые гамаши +Crystal Boots=кристалловые ботинки diff --git a/mods/player/armor_crystal/locale/armor_crystal.sv.tr b/mods/player/armor_crystal/locale/armor_crystal.sv.tr new file mode 100644 index 000000000..57d0bd129 --- /dev/null +++ b/mods/player/armor_crystal/locale/armor_crystal.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet=Kristallhjälm +Crystal Chestplate=Kristallbröstplatta +Crystal Leggings=Kristallbyxor +Crystal Boots=Kristallstövlar diff --git a/mods/player/armor_crystal/locale/template.txt b/mods/player/armor_crystal/locale/template.txt new file mode 100644 index 000000000..4244d3142 --- /dev/null +++ b/mods/player/armor_crystal/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_crystal +Crystal Helmet= +Crystal Chestplate= +Crystal Leggings= +Crystal Boots= diff --git a/mods/player/armor_crystal/mod.conf b/mods/player/armor_crystal/mod.conf new file mode 100644 index 000000000..9531bbcc8 --- /dev/null +++ b/mods/player/armor_crystal/mod.conf @@ -0,0 +1,4 @@ +name = armor_crystal +depends = 3d_armor +optional_depends = ethereal +description = Adds craftable crystal armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_crystal.png b/mods/player/armor_crystal/textures/3d_armor_boots_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_boots_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_crystal_preview.png b/mods/player/armor_crystal/textures/3d_armor_boots_crystal_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_crystal_preview.png rename to mods/player/armor_crystal/textures/3d_armor_boots_crystal_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_crystal.png b/mods/player/armor_crystal/textures/3d_armor_chestplate_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_chestplate_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_crystal_preview.png b/mods/player/armor_crystal/textures/3d_armor_chestplate_crystal_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_crystal_preview.png rename to mods/player/armor_crystal/textures/3d_armor_chestplate_crystal_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_crystal.png b/mods/player/armor_crystal/textures/3d_armor_helmet_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_helmet_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_crystal_preview.png b/mods/player/armor_crystal/textures/3d_armor_helmet_crystal_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_crystal_preview.png rename to mods/player/armor_crystal/textures/3d_armor_helmet_crystal_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_crystal.png b/mods/player/armor_crystal/textures/3d_armor_inv_boots_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_inv_boots_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_crystal.png b/mods/player/armor_crystal/textures/3d_armor_inv_chestplate_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_inv_chestplate_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_crystal.png b/mods/player/armor_crystal/textures/3d_armor_inv_helmet_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_inv_helmet_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_crystal.png b/mods/player/armor_crystal/textures/3d_armor_inv_leggings_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_inv_leggings_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_crystal.png b/mods/player/armor_crystal/textures/3d_armor_leggings_crystal.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_crystal.png rename to mods/player/armor_crystal/textures/3d_armor_leggings_crystal.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_crystal_preview.png b/mods/player/armor_crystal/textures/3d_armor_leggings_crystal_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_crystal_preview.png rename to mods/player/armor_crystal/textures/3d_armor_leggings_crystal_preview.png diff --git a/mods/player/armor_diamond/LICENSE.md b/mods/player/armor_diamond/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_diamond/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_diamond/init.lua b/mods/player/armor_diamond/init.lua new file mode 100644 index 000000000..8fc2d0c97 --- /dev/null +++ b/mods/player/armor_diamond/init.lua @@ -0,0 +1,166 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Diamond +-- +-- Requires setting `armor_material_diamond`. +-- +-- @section diamond + +if armor.materials.diamond then + --- Diamond Helmet + -- + -- @helmet 3d_armor:helmet_diamond + -- @img 3d_armor_inv_helmet_diamond.png + -- @grp armor_head 1 + -- @grp armor_heal 12 + -- @grp armor_use 200 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp choppy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:helmet_diamond", { + description = S("Diamond Helmet"), + inventory_image = "3d_armor_inv_helmet_diamond.png", + groups = {armor_head=1, armor_heal=12, armor_use=200}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, + }) + --- Diamond Chestplate + -- + -- @chestplate 3d_armor:chestplate_diamond + -- @img 3d_armor_inv_chestplate_diamond.png + -- @grp armor_torso 1 + -- @grp armor_heal 12 + -- @grp armor_use 200 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp choppy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:chestplate_diamond", { + description = S("Diamond Chestplate"), + inventory_image = "3d_armor_inv_chestplate_diamond.png", + groups = {armor_torso=1, armor_heal=12, armor_use=200}, + armor_groups = {fleshy=20}, + damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, + }) + --- Diamond Leggings + -- + -- @leggings 3d_armor:leggings_diamond + -- @img 3d_armor_inv_leggings_diamond.png + -- @grp armor_legs 1 + -- @grp armor_heal 12 + -- @grp armor_use 200 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp choppy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:leggings_diamond", { + description = S("Diamond Leggings"), + inventory_image = "3d_armor_inv_leggings_diamond.png", + groups = {armor_legs=1, armor_heal=12, armor_use=200}, + armor_groups = {fleshy=20}, + damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, + }) + --- Diamond Boots + -- + -- @boots 3d_armor:boots_diamond + -- @img 3d_armor_inv_boots_diamond.png + -- @grp armor_feet 1 + -- @grp armor_heal 12 + -- @grp armor_use 200 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp choppy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:boots_diamond", { + description = S("Diamond Boots"), + inventory_image = "3d_armor_inv_boots_diamond.png", + groups = {armor_feet=1, armor_heal=12, armor_use=200}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=1, choppy=1, level=3}, + }) + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "diamond" + local m = armor.materials.diamond + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_diamond/locale/armor_diamond.de.tr b/mods/player/armor_diamond/locale/armor_diamond.de.tr new file mode 100644 index 000000000..f19d67a39 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Diamanthelm +Diamond Chestplate=Diamantbrustplatte +Diamond Leggings=Diamanthose +Diamond Boots=Diamantstiefel diff --git a/mods/player/armor_diamond/locale/armor_diamond.eo.tr b/mods/player/armor_diamond/locale/armor_diamond.eo.tr new file mode 100644 index 000000000..dad6866e7 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Diamanta Kasko +Diamond Chestplate=Diamanta Brustkiraso +Diamond Leggings=Diamanta Pantalono +Diamond Boots=Diamanta Botoj diff --git a/mods/player/armor_diamond/locale/armor_diamond.es.tr b/mods/player/armor_diamond/locale/armor_diamond.es.tr new file mode 100644 index 000000000..c0a96b30c --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Casco de diamante +Diamond Chestplate=Peto de diamante +Diamond Leggings=Grebas de diamante +Diamond Boots=Botas de diamante diff --git a/mods/player/armor_diamond/locale/armor_diamond.fr.tr b/mods/player/armor_diamond/locale/armor_diamond.fr.tr new file mode 100644 index 000000000..347d22132 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Casque en diamant +Diamond Chestplate=Cuirasse en diamant +Diamond Leggings=Jambières en diamant +Diamond Boots=Bottes en diamant diff --git a/mods/player/armor_diamond/locale/armor_diamond.it.tr b/mods/player/armor_diamond/locale/armor_diamond.it.tr new file mode 100644 index 000000000..b5aa14c12 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Elmo di diamante +Diamond Chestplate=Corazza di diamante +Diamond Leggings=Gambali di diamante +Diamond Boots=Stivali di diamante diff --git a/mods/player/armor_diamond/locale/armor_diamond.ms.tr b/mods/player/armor_diamond/locale/armor_diamond.ms.tr new file mode 100644 index 000000000..bc6f7372a --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Helmet Intan +Diamond Chestplate=Perisai Dada Intan +Diamond Leggings=Perisai Kaki Intan +Diamond Boots=But Intan diff --git a/mods/player/armor_diamond/locale/armor_diamond.pt.tr b/mods/player/armor_diamond/locale/armor_diamond.pt.tr new file mode 100644 index 000000000..effc56c02 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Capacete de Diamante +Diamond Chestplate=Peitoral de Diamante +Diamond Leggings=Calças de Diamante +Diamond Boots=Botas de Diamante diff --git a/mods/player/armor_diamond/locale/armor_diamond.pt_BR.tr b/mods/player/armor_diamond/locale/armor_diamond.pt_BR.tr new file mode 100644 index 000000000..effc56c02 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Capacete de Diamante +Diamond Chestplate=Peitoral de Diamante +Diamond Leggings=Calças de Diamante +Diamond Boots=Botas de Diamante diff --git a/mods/player/armor_diamond/locale/armor_diamond.ru.tr b/mods/player/armor_diamond/locale/armor_diamond.ru.tr new file mode 100644 index 000000000..00fd3cd81 --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=алмазный шлем +Diamond Chestplate=алмазный бронежилет +Diamond Leggings=алмазные гамаши +Diamond Boots=алмазные ботинки diff --git a/mods/player/armor_diamond/locale/armor_diamond.sv.tr b/mods/player/armor_diamond/locale/armor_diamond.sv.tr new file mode 100644 index 000000000..622daaddb --- /dev/null +++ b/mods/player/armor_diamond/locale/armor_diamond.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet=Diamanthjälm +Diamond Chestplate=Diamantbröstplatta +Diamond Leggings=Diamantbyxor +Diamond Boots=Diamantstövlar diff --git a/mods/player/armor_diamond/locale/template.txt b/mods/player/armor_diamond/locale/template.txt new file mode 100644 index 000000000..6e169f124 --- /dev/null +++ b/mods/player/armor_diamond/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_diamond +Diamond Helmet= +Diamond Chestplate= +Diamond Leggings= +Diamond Boots= diff --git a/mods/player/armor_diamond/mod.conf b/mods/player/armor_diamond/mod.conf new file mode 100644 index 000000000..27d1cc980 --- /dev/null +++ b/mods/player/armor_diamond/mod.conf @@ -0,0 +1,3 @@ +name = armor_diamond +depends = 3d_armor +description = Adds craftable diamond armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_diamond.png b/mods/player/armor_diamond/textures/3d_armor_boots_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_boots_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_diamond_preview.png b/mods/player/armor_diamond/textures/3d_armor_boots_diamond_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_diamond_preview.png rename to mods/player/armor_diamond/textures/3d_armor_boots_diamond_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_diamond.png b/mods/player/armor_diamond/textures/3d_armor_chestplate_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_chestplate_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_diamond_preview.png b/mods/player/armor_diamond/textures/3d_armor_chestplate_diamond_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_diamond_preview.png rename to mods/player/armor_diamond/textures/3d_armor_chestplate_diamond_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_diamond.png b/mods/player/armor_diamond/textures/3d_armor_helmet_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_helmet_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_diamond_preview.png b/mods/player/armor_diamond/textures/3d_armor_helmet_diamond_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_diamond_preview.png rename to mods/player/armor_diamond/textures/3d_armor_helmet_diamond_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_diamond.png b/mods/player/armor_diamond/textures/3d_armor_inv_boots_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_inv_boots_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_diamond.png b/mods/player/armor_diamond/textures/3d_armor_inv_chestplate_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_inv_chestplate_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_diamond.png b/mods/player/armor_diamond/textures/3d_armor_inv_helmet_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_inv_helmet_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_diamond.png b/mods/player/armor_diamond/textures/3d_armor_inv_leggings_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_inv_leggings_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_diamond.png b/mods/player/armor_diamond/textures/3d_armor_leggings_diamond.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_diamond.png rename to mods/player/armor_diamond/textures/3d_armor_leggings_diamond.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_diamond_preview.png b/mods/player/armor_diamond/textures/3d_armor_leggings_diamond_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_diamond_preview.png rename to mods/player/armor_diamond/textures/3d_armor_leggings_diamond_preview.png diff --git a/mods/player/armor_gold/LICENSE.md b/mods/player/armor_gold/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_gold/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_gold/init.lua b/mods/player/armor_gold/init.lua new file mode 100644 index 000000000..287f30785 --- /dev/null +++ b/mods/player/armor_gold/init.lua @@ -0,0 +1,183 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + + +--- Gold +-- +-- Requires `armor_material_gold`. +-- +-- @section gold + +if armor.materials.gold then + --- Gold Helmet + -- + -- @helmet 3d_armor:helmet_gold + -- @img 3d_armor_inv_helmet_gold.png + -- @grp armor_head 1 + -- @grp armor_heal 6 + -- @grp armor_use 300 + -- @grp physics_speed -0.02 + -- @grp physics_gravity 0.02 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 1 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 3 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:helmet_gold", { + description = S("Gold Helmet"), + inventory_image = "3d_armor_inv_helmet_gold.png", + groups = {armor_head=1, armor_heal=6, armor_use=300, + physics_speed=-0.02, physics_gravity=0.02}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, + }) + --- Gold Chestplate + -- + -- @chestplate 3d_armor:chestplate_gold + -- @img 3d_armor_inv_chestplate_gold.png + -- @grp armor_torso 1 + -- @grp armor_heal 6 + -- @grp armor_use 300 + -- @grp physics_speed -0.05 + -- @grp physics_gravity 0.05 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 1 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 3 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:chestplate_gold", { + description = S("Gold Chestplate"), + inventory_image = "3d_armor_inv_chestplate_gold.png", + groups = {armor_torso=1, armor_heal=6, armor_use=300, + physics_speed=-0.05, physics_gravity=0.05}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, + }) + --- Gold Leggings + -- + -- @leggings 3d_armor:leggings_gold + -- @img 3d_armor_inv_leggings_gold.png + -- @grp armor_legs 1 + -- @grp armor_heal 6 + -- @grp armor_use 300 + -- @grp physics_speed -0.04 + -- @grp physics_gravity 0.04 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 1 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 3 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:leggings_gold", { + description = S("Gold Leggings"), + inventory_image = "3d_armor_inv_leggings_gold.png", + groups = {armor_legs=1, armor_heal=6, armor_use=300, + physics_speed=-0.04, physics_gravity=0.04}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, + }) + --- Gold Boots + -- + -- @boots 3d_armor:boots_gold + -- @img 3d_armor_inv_boots_gold.png + -- @grp armor_feet 1 + -- @grp armor_heal 6 + -- @grp armor_use 300 + -- @grp physics_speed -0.02 + -- @grp physics_gravity 0.02 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 1 + -- @damagegrp snappy 2 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 3 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:boots_gold", { + description = S("Gold Boots"), + inventory_image = "3d_armor_inv_boots_gold.png", + groups = {armor_feet=1, armor_heal=6, armor_use=300, + physics_speed=-0.02, physics_gravity=0.02}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2}, + }) + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "gold" + local m = armor.materials.gold + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_gold/locale/armor_gold.de.tr b/mods/player/armor_gold/locale/armor_gold.de.tr new file mode 100644 index 000000000..f7098cf17 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Goldhelm +Gold Chestplate=Goldbrustplatte +Gold Leggings=Goldhose +Gold Boots=Goldstiefel diff --git a/mods/player/armor_gold/locale/armor_gold.eo.tr b/mods/player/armor_gold/locale/armor_gold.eo.tr new file mode 100644 index 000000000..98a9ad284 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Ora Kasko +Gold Chestplate=Ora Brustkiraso +Gold Leggings=Ora Pantalono +Gold Boots=Ora Botoj diff --git a/mods/player/armor_gold/locale/armor_gold.es.tr b/mods/player/armor_gold/locale/armor_gold.es.tr new file mode 100644 index 000000000..e82affbc9 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Casco de oro +Gold Chestplate=Peto de oro +Gold Leggings=Grebas de oro +Gold Boots=Botas de oro diff --git a/mods/player/armor_gold/locale/armor_gold.fr.tr b/mods/player/armor_gold/locale/armor_gold.fr.tr new file mode 100644 index 000000000..8b3a2ae82 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Casque en or +Gold Chestplate=Cuirasse en or +Gold Leggings=Jambières en or +Gold Boots=Bottes en or diff --git a/mods/player/armor_gold/locale/armor_gold.it.tr b/mods/player/armor_gold/locale/armor_gold.it.tr new file mode 100644 index 000000000..7480cfcd2 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Elmo d'oro +Gold Chestplate=Corazza d'oro +Gold Leggings=Gambali d'oro +Gold Boots=Stivali d'oro diff --git a/mods/player/armor_gold/locale/armor_gold.ms.tr b/mods/player/armor_gold/locale/armor_gold.ms.tr new file mode 100644 index 000000000..47e0e6958 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Helmet Emas +Gold Chestplate=Perisai Dada Emas +Gold Leggings=Perisai Kaki Emas +Gold Boots=But Emas diff --git a/mods/player/armor_gold/locale/armor_gold.pt.tr b/mods/player/armor_gold/locale/armor_gold.pt.tr new file mode 100644 index 000000000..abe79331e --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Capacete de Ouro +Gold Chestplate=Peitoral de Ouro +Gold Leggings=Calças de Ouro +Gold Boots=Botas de Ouro diff --git a/mods/player/armor_gold/locale/armor_gold.pt_BR.tr b/mods/player/armor_gold/locale/armor_gold.pt_BR.tr new file mode 100644 index 000000000..abe79331e --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Capacete de Ouro +Gold Chestplate=Peitoral de Ouro +Gold Leggings=Calças de Ouro +Gold Boots=Botas de Ouro diff --git a/mods/player/armor_gold/locale/armor_gold.ru.tr b/mods/player/armor_gold/locale/armor_gold.ru.tr new file mode 100644 index 000000000..f64fcf76e --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=золотой шлем +Gold Chestplate=золотой бронежилет +Gold Leggings=золотые гамаши +Gold Boots=золотые ботинки diff --git a/mods/player/armor_gold/locale/armor_gold.sv.tr b/mods/player/armor_gold/locale/armor_gold.sv.tr new file mode 100644 index 000000000..02191d3b9 --- /dev/null +++ b/mods/player/armor_gold/locale/armor_gold.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet=Guldhjälm +Gold Chestplate=Goldbröstplatta +Gold Leggings=Guldbyxor +Gold Boots=Guldstövlar diff --git a/mods/player/armor_gold/locale/template.txt b/mods/player/armor_gold/locale/template.txt new file mode 100644 index 000000000..178aff0b1 --- /dev/null +++ b/mods/player/armor_gold/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_gold +Gold Helmet= +Gold Chestplate= +Gold Leggings= +Gold Boots= diff --git a/mods/player/armor_gold/mod.conf b/mods/player/armor_gold/mod.conf new file mode 100644 index 000000000..092ab6dee --- /dev/null +++ b/mods/player/armor_gold/mod.conf @@ -0,0 +1,3 @@ +name = armor_gold +depends = 3d_armor +description = Adds craftable gold armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_gold.png b/mods/player/armor_gold/textures/3d_armor_boots_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_gold.png rename to mods/player/armor_gold/textures/3d_armor_boots_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_gold_preview.png b/mods/player/armor_gold/textures/3d_armor_boots_gold_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_gold_preview.png rename to mods/player/armor_gold/textures/3d_armor_boots_gold_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_gold.png b/mods/player/armor_gold/textures/3d_armor_chestplate_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_gold.png rename to mods/player/armor_gold/textures/3d_armor_chestplate_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_gold_preview.png b/mods/player/armor_gold/textures/3d_armor_chestplate_gold_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_gold_preview.png rename to mods/player/armor_gold/textures/3d_armor_chestplate_gold_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_gold.png b/mods/player/armor_gold/textures/3d_armor_helmet_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_gold.png rename to mods/player/armor_gold/textures/3d_armor_helmet_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_gold_preview.png b/mods/player/armor_gold/textures/3d_armor_helmet_gold_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_gold_preview.png rename to mods/player/armor_gold/textures/3d_armor_helmet_gold_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_gold.png b/mods/player/armor_gold/textures/3d_armor_inv_boots_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_gold.png rename to mods/player/armor_gold/textures/3d_armor_inv_boots_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_gold.png b/mods/player/armor_gold/textures/3d_armor_inv_chestplate_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_gold.png rename to mods/player/armor_gold/textures/3d_armor_inv_chestplate_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_gold.png b/mods/player/armor_gold/textures/3d_armor_inv_helmet_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_gold.png rename to mods/player/armor_gold/textures/3d_armor_inv_helmet_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_gold.png b/mods/player/armor_gold/textures/3d_armor_inv_leggings_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_gold.png rename to mods/player/armor_gold/textures/3d_armor_inv_leggings_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_gold.png b/mods/player/armor_gold/textures/3d_armor_leggings_gold.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_gold.png rename to mods/player/armor_gold/textures/3d_armor_leggings_gold.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_gold_preview.png b/mods/player/armor_gold/textures/3d_armor_leggings_gold_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_gold_preview.png rename to mods/player/armor_gold/textures/3d_armor_leggings_gold_preview.png diff --git a/mods/player/armor_mithril/LICENSE.md b/mods/player/armor_mithril/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_mithril/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_mithril/init.lua b/mods/player/armor_mithril/init.lua new file mode 100644 index 000000000..8e134f13a --- /dev/null +++ b/mods/player/armor_mithril/init.lua @@ -0,0 +1,162 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Mithril +-- +-- Requires `armor_material_mithril`. +-- +-- @section mithril + +if armor.materials.mithril then + --- Mithril Helmet + -- + -- @helmet 3d_armor:helmet_mithril + -- @img 3d_armor_inv_helmet_mithril.png + -- @grp armor_head 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:helmet_mithril", { + description = S("Mithril Helmet"), + inventory_image = "3d_armor_inv_helmet_mithril.png", + groups = {armor_head=1, armor_heal=13, armor_use=66}, + armor_groups = {fleshy=16}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Mithril Chestplate + -- + -- @chestplate 3d_armor:chestplate_mithril + -- @img 3d_armor_inv_chestplate_mithril.png + -- @grp armor_torso 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:chestplate_mithril", { + description = S("Mithril Chestplate"), + inventory_image = "3d_armor_inv_chestplate_mithril.png", + groups = {armor_torso=1, armor_heal=13, armor_use=66}, + armor_groups = {fleshy=21}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Mithril Leggings + -- + -- @leggings 3d_armor:leggings_mithril + -- @img 3d_armor_inv_leggings_mithril.png + -- @grp armor_legs 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @armorgrp fleshy 20 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:leggings_mithril", { + description = S("Mithril Leggings"), + inventory_image = "3d_armor_inv_leggings_mithril.png", + groups = {armor_legs=1, armor_heal=13, armor_use=66}, + armor_groups = {fleshy=21}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + --- Mithril Boots + -- + -- @boots 3d_armor:boots_mithril + -- @img 3d_armor_inv_boots_mithril.png + -- @grp armor_feet 1 + -- @grp armor_heal 12 + -- @grp armor_use 100 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 1 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:boots_mithril", { + description = S("Mithril Boots"), + inventory_image = "3d_armor_inv_boots_mithril.png", + groups = {armor_feet=1, armor_heal=13, armor_use=66}, + armor_groups = {fleshy=16}, + damage_groups = {cracky=2, snappy=1, level=3}, + }) + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "mithril" + local m = armor.materials.mithril + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_mithril/locale/armor_mithril.de.tr b/mods/player/armor_mithril/locale/armor_mithril.de.tr new file mode 100644 index 000000000..09fdf206c --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Mithrilhelm +Mithril Chestplate=Mithrilbrustplatte +Mithril Leggings=Mithrilhose +Mithril Boots=Mithrilstiefel diff --git a/mods/player/armor_mithril/locale/armor_mithril.eo.tr b/mods/player/armor_mithril/locale/armor_mithril.eo.tr new file mode 100644 index 000000000..ad7551693 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Mitrila Kasko +Mithril Chestplate=Mitrila Brustkiraso +Mithril Leggings=Mitrila Pantalono +Mithril Boots=Mitrila Botoj diff --git a/mods/player/armor_mithril/locale/armor_mithril.es.tr b/mods/player/armor_mithril/locale/armor_mithril.es.tr new file mode 100644 index 000000000..aaae80fb9 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Casco de mitrilo +Mithril Chestplate=Peto de mitrilo +Mithril Leggings=Grebas de mitrilo +Mithril Boots=Botas de mitrilo diff --git a/mods/player/armor_mithril/locale/armor_mithril.fr.tr b/mods/player/armor_mithril/locale/armor_mithril.fr.tr new file mode 100644 index 000000000..fad391021 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Casque en mithril +Mithril Chestplate=Cuirasse en mithril +Mithril Leggings=Jambières en mithril +Mithril Boots=Bottes en mithril diff --git a/mods/player/armor_mithril/locale/armor_mithril.it.tr b/mods/player/armor_mithril/locale/armor_mithril.it.tr new file mode 100644 index 000000000..9490f72b1 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Elmo di mithril +Mithril Chestplate=Corazza di mithril +Mithril Leggings=Gambali di mithril +Mithril Boots=Stivali di mithril diff --git a/mods/player/armor_mithril/locale/armor_mithril.ms.tr b/mods/player/armor_mithril/locale/armor_mithril.ms.tr new file mode 100644 index 000000000..fc113a636 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Helmet Mithril +Mithril Chestplate=Perisai Dada Mithril +Mithril Leggings=Perisai Kaki Mithril +Mithril Boots=But Mithril diff --git a/mods/player/armor_mithril/locale/armor_mithril.pt.tr b/mods/player/armor_mithril/locale/armor_mithril.pt.tr new file mode 100644 index 000000000..82b8db1d7 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Capacete de Mithril +Mithril Chestplate=Peitoral de Mithril +Mithril Leggings=Calças de Mithril +Mithril Boots=Botas de Mithril diff --git a/mods/player/armor_mithril/locale/armor_mithril.pt_BR.tr b/mods/player/armor_mithril/locale/armor_mithril.pt_BR.tr new file mode 100644 index 000000000..82b8db1d7 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Capacete de Mithril +Mithril Chestplate=Peitoral de Mithril +Mithril Leggings=Calças de Mithril +Mithril Boots=Botas de Mithril diff --git a/mods/player/armor_mithril/locale/armor_mithril.ru.tr b/mods/player/armor_mithril/locale/armor_mithril.ru.tr new file mode 100644 index 000000000..2962c34b3 --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=мифриловый шлем +Mithril Chestplate=мифриловый бронежилет +Mithril Leggings=мифриловые гамаши +Mithril Boots=мифриловые ботинки diff --git a/mods/player/armor_mithril/locale/armor_mithril.sv.tr b/mods/player/armor_mithril/locale/armor_mithril.sv.tr new file mode 100644 index 000000000..0d8ed8e0f --- /dev/null +++ b/mods/player/armor_mithril/locale/armor_mithril.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet=Mithrilhjälm +Mithril Chestplate=Mithrilbröstplatta +Mithril Leggings=Mithrilbyxor +Mithril Boots=Mithrilstövlar diff --git a/mods/player/armor_mithril/locale/template.txt b/mods/player/armor_mithril/locale/template.txt new file mode 100644 index 000000000..4d5da6032 --- /dev/null +++ b/mods/player/armor_mithril/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_mithril +Mithril Helmet= +Mithril Chestplate= +Mithril Leggings= +Mithril Boots= diff --git a/mods/player/armor_mithril/mod.conf b/mods/player/armor_mithril/mod.conf new file mode 100644 index 000000000..5cc6948d2 --- /dev/null +++ b/mods/player/armor_mithril/mod.conf @@ -0,0 +1,4 @@ +name = armor_mithril +depends = 3d_armor +optional_depends = moreores +description = Adds craftable mithril armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_mithril.png b/mods/player/armor_mithril/textures/3d_armor_boots_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_boots_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_mithril_preview.png b/mods/player/armor_mithril/textures/3d_armor_boots_mithril_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_mithril_preview.png rename to mods/player/armor_mithril/textures/3d_armor_boots_mithril_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_mithril.png b/mods/player/armor_mithril/textures/3d_armor_chestplate_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_chestplate_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_mithril_preview.png b/mods/player/armor_mithril/textures/3d_armor_chestplate_mithril_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_mithril_preview.png rename to mods/player/armor_mithril/textures/3d_armor_chestplate_mithril_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_mithril.png b/mods/player/armor_mithril/textures/3d_armor_helmet_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_helmet_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_mithril_preview.png b/mods/player/armor_mithril/textures/3d_armor_helmet_mithril_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_mithril_preview.png rename to mods/player/armor_mithril/textures/3d_armor_helmet_mithril_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_mithril.png b/mods/player/armor_mithril/textures/3d_armor_inv_boots_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_inv_boots_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_mithril.png b/mods/player/armor_mithril/textures/3d_armor_inv_chestplate_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_inv_chestplate_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_mithril.png b/mods/player/armor_mithril/textures/3d_armor_inv_helmet_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_inv_helmet_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_mithril.png b/mods/player/armor_mithril/textures/3d_armor_inv_leggings_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_inv_leggings_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_mithril.png b/mods/player/armor_mithril/textures/3d_armor_leggings_mithril.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_mithril.png rename to mods/player/armor_mithril/textures/3d_armor_leggings_mithril.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_mithril_preview.png b/mods/player/armor_mithril/textures/3d_armor_leggings_mithril_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_mithril_preview.png rename to mods/player/armor_mithril/textures/3d_armor_leggings_mithril_preview.png diff --git a/mods/player/armor_nether/LICENSE.md b/mods/player/armor_nether/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_nether/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_nether/init.lua b/mods/player/armor_nether/init.lua new file mode 100644 index 000000000..f761a218d --- /dev/null +++ b/mods/player/armor_nether/init.lua @@ -0,0 +1,168 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + + +--- Nether +-- +-- Requires `armor_material_nether`. +-- +-- @section nether + +if armor.materials.nether then + --- Nether Helmet + -- + -- @helmet 3d_armor:helmet_nether + -- @img 3d_armor_inv_helmet_nether.png + -- @grp armor_head 1 + -- @grp armor_heal 14 + -- @grp armor_use 200 + -- @grp armor_fire 1 + -- @armorgrp fleshy 18 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:helmet_nether", { + description = S("Nether Helmet"), + inventory_image = "3d_armor_inv_helmet_nether.png", + groups = {armor_head=1, armor_heal=14, armor_use=100, armor_fire=1}, + armor_groups = {fleshy=18}, + damage_groups = {cracky=3, snappy=2, level=3}, + }) + --- Nether Chestplate + -- + -- @chestplate 3d_armor:chestplate_nether + -- @img 3d_armor_inv_chestplate_nether.png + -- @grp armor_torso 1 + -- @grp armor_heal 14 + -- @grp armor_use 200 + -- @grp armor_fire 1 + -- @armorgrp fleshy 25 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:chestplate_nether", { + description = S("Nether Chestplate"), + inventory_image = "3d_armor_inv_chestplate_nether.png", + groups = {armor_torso=1, armor_heal=14, armor_use=200, armor_fire=1}, + armor_groups = {fleshy=25}, + damage_groups = {cracky=3, snappy=2, level=3}, + }) + --- Nether Leggings + -- + -- @leggings 3d_armor:leggings_nether + -- @img 3d_armor_inv_leggings_nether.png + -- @grp armor_legs 1 + -- @grp armor_heal 14 + -- @grp armor_use 200 + -- @grp armor_fire 1 + -- @armorgrp fleshy 25 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:leggings_nether", { + description = S("Nether Leggings"), + inventory_image = "3d_armor_inv_leggings_nether.png", + groups = {armor_legs=1, armor_heal=14, armor_use=200, armor_fire=1}, + armor_groups = {fleshy=25}, + damage_groups = {cracky=3, snappy=2, level=3}, + }) + --- Nether Boots + -- + -- @boots 3d_armor:boots_nether + -- @img 3d_armor_inv_boots_nether.png + -- @grp armor_feet 1 + -- @grp armor_heal 14 + -- @grp armor_use 200 + -- @grp armor_fire 1 + -- @armorgrp fleshy 18 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp level 3 + armor:register_armor(":3d_armor:boots_nether", { + description = S("Nether Boots"), + inventory_image = "3d_armor_inv_boots_nether.png", + groups = {armor_feet=1, armor_heal=14, armor_use=200, armor_fire=1}, + armor_groups = {fleshy=18}, + damage_groups = {cracky=3, snappy=2, level=3}, + }) + + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "nether" + local m = armor.materials.nether + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) + +end \ No newline at end of file diff --git a/mods/player/armor_nether/locale/armor_nether.de.tr b/mods/player/armor_nether/locale/armor_nether.de.tr new file mode 100644 index 000000000..d17935376 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Netherhelm +Nether Chestplate=Netherbrustplatte +Nether Leggings=Netherhose +Nether Boots=Netherstiefel diff --git a/mods/player/armor_nether/locale/armor_nether.eo.tr b/mods/player/armor_nether/locale/armor_nether.eo.tr new file mode 100644 index 000000000..eeaa1580a --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Inferna Kasko +Nether Chestplate=Inferna Brustkiraso +Nether Leggings=Inferna Pantalono +Nether Boots=Inferna Botoj diff --git a/mods/player/armor_nether/locale/armor_nether.es.tr b/mods/player/armor_nether/locale/armor_nether.es.tr new file mode 100644 index 000000000..1e672e487 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Casco de nether +Nether Chestplate=Peto de nether +Nether Leggings=Grebas de nether +Nether Boots=Botas de nether diff --git a/mods/player/armor_nether/locale/armor_nether.fr.tr b/mods/player/armor_nether/locale/armor_nether.fr.tr new file mode 100644 index 000000000..96b787818 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Casque en nether +Nether Chestplate=Cuirasse en nether +Nether Leggings=Jambières en nether +Nether Boots=Bottes en nether diff --git a/mods/player/armor_nether/locale/armor_nether.it.tr b/mods/player/armor_nether/locale/armor_nether.it.tr new file mode 100644 index 000000000..036118b45 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Elmo di nether +Nether Chestplate=Corazza di nether +Nether Leggings=Gambali di nether +Nether Boots=Stivali di nether diff --git a/mods/player/armor_nether/locale/armor_nether.ms.tr b/mods/player/armor_nether/locale/armor_nether.ms.tr new file mode 100644 index 000000000..7b9fd1bb6 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Helmet Nether +Nether Chestplate=Perisai Dada Nether +Nether Leggings=Perisai Kaki Nether +Nether Boots=But Nether diff --git a/mods/player/armor_nether/locale/armor_nether.pt.tr b/mods/player/armor_nether/locale/armor_nether.pt.tr new file mode 100644 index 000000000..b29983a53 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Capacete de Nether +Nether Chestplate=Peitoral de Nether +Nether Leggings=Calças de Nether +Nether Boots=Botas de Nether diff --git a/mods/player/armor_nether/locale/armor_nether.pt_BR.tr b/mods/player/armor_nether/locale/armor_nether.pt_BR.tr new file mode 100644 index 000000000..b29983a53 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Capacete de Nether +Nether Chestplate=Peitoral de Nether +Nether Leggings=Calças de Nether +Nether Boots=Botas de Nether diff --git a/mods/player/armor_nether/locale/armor_nether.ru.tr b/mods/player/armor_nether/locale/armor_nether.ru.tr new file mode 100644 index 000000000..e2d8a25c9 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=адский шлем +Nether Chestplate=адский бронежилет +Nether Leggings=адские гамаши +Nether Boots=адские ботинки diff --git a/mods/player/armor_nether/locale/armor_nether.sv.tr b/mods/player/armor_nether/locale/armor_nether.sv.tr new file mode 100644 index 000000000..a26599ce6 --- /dev/null +++ b/mods/player/armor_nether/locale/armor_nether.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet=Netherhjälm +Nether Chestplate=Netherbröstplatta +Nether Leggings=Netherbyxor +Nether Boots=Netherstövlar diff --git a/mods/player/armor_nether/locale/template.txt b/mods/player/armor_nether/locale/template.txt new file mode 100644 index 000000000..7b02e38ca --- /dev/null +++ b/mods/player/armor_nether/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_nether +Nether Helmet= +Nether Chestplate= +Nether Leggings= +Nether Boots= diff --git a/mods/player/armor_nether/mod.conf b/mods/player/armor_nether/mod.conf new file mode 100644 index 000000000..3e99b5555 --- /dev/null +++ b/mods/player/armor_nether/mod.conf @@ -0,0 +1,4 @@ +name = armor_nether +depends = 3d_armor +optional_depends = nether +description = Adds craftable wood armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_nether.png b/mods/player/armor_nether/textures/3d_armor_boots_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_nether.png rename to mods/player/armor_nether/textures/3d_armor_boots_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_nether_preview.png b/mods/player/armor_nether/textures/3d_armor_boots_nether_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_nether_preview.png rename to mods/player/armor_nether/textures/3d_armor_boots_nether_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_nether.png b/mods/player/armor_nether/textures/3d_armor_chestplate_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_nether.png rename to mods/player/armor_nether/textures/3d_armor_chestplate_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_nether_preview.png b/mods/player/armor_nether/textures/3d_armor_chestplate_nether_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_nether_preview.png rename to mods/player/armor_nether/textures/3d_armor_chestplate_nether_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_nether.png b/mods/player/armor_nether/textures/3d_armor_helmet_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_nether.png rename to mods/player/armor_nether/textures/3d_armor_helmet_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_nether_preview.png b/mods/player/armor_nether/textures/3d_armor_helmet_nether_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_nether_preview.png rename to mods/player/armor_nether/textures/3d_armor_helmet_nether_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_nether.png b/mods/player/armor_nether/textures/3d_armor_inv_boots_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_nether.png rename to mods/player/armor_nether/textures/3d_armor_inv_boots_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_nether.png b/mods/player/armor_nether/textures/3d_armor_inv_chestplate_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_nether.png rename to mods/player/armor_nether/textures/3d_armor_inv_chestplate_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_nether.png b/mods/player/armor_nether/textures/3d_armor_inv_helmet_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_nether.png rename to mods/player/armor_nether/textures/3d_armor_inv_helmet_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_nether.png b/mods/player/armor_nether/textures/3d_armor_inv_leggings_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_nether.png rename to mods/player/armor_nether/textures/3d_armor_inv_leggings_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_nether.png b/mods/player/armor_nether/textures/3d_armor_leggings_nether.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_nether.png rename to mods/player/armor_nether/textures/3d_armor_leggings_nether.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_nether_preview.png b/mods/player/armor_nether/textures/3d_armor_leggings_nether_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_nether_preview.png rename to mods/player/armor_nether/textures/3d_armor_leggings_nether_preview.png diff --git a/mods/player/armor_steel/LICENSE.md b/mods/player/armor_steel/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_steel/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_steel/init.lua b/mods/player/armor_steel/init.lua new file mode 100644 index 000000000..a104e716e --- /dev/null +++ b/mods/player/armor_steel/init.lua @@ -0,0 +1,181 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Steel +-- +-- Requires setting `armor_material_steel`. +-- +-- @section steel + +if armor.materials.steel then + --- Steel Helmet + -- + -- @helmet 3d_armor:helmet_steel + -- @img 3d_armor_inv_helmet_steel.png + -- @grp armor_head 1 + -- @grp armor_heal 0 + -- @grp armor_use 800 + -- @grp physics_speed -0.01 + -- @grp physica_gravity 0.01 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 2 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:helmet_steel", { + description = S("Steel Helmet"), + inventory_image = "3d_armor_inv_helmet_steel.png", + groups = {armor_head=1, armor_heal=0, armor_use=800, + physics_speed=-0.01, physics_gravity=0.01}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, + }) + --- Steel Chestplate + -- + -- @chestplate 3d_armor:chestplate_steel + -- @img 3d_armor_inv_chestplate_steel.png + -- @grp armor_torso 1 + -- @grp armor_heal 0 + -- @grp armor_use 800 + -- @grp physics_speed + -- @grp physics_gravity + -- @armorgrp fleshy + -- @damagegrp cracky 2 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:chestplate_steel", { + description = S("Steel Chestplate"), + inventory_image = "3d_armor_inv_chestplate_steel.png", + groups = {armor_torso=1, armor_heal=0, armor_use=800, + physics_speed=-0.04, physics_gravity=0.04}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, + }) + --- Steel Leggings + -- + -- @leggings 3d_armor:leggings_steel + -- @img 3d_armor_inv_leggings_steel.png + -- @grp armor_legs 1 + -- @grp armor_heal 0 + -- @grp armor_use 800 + -- @grp physics_speed -0.03 + -- @grp physics_gravity 0.03 + -- @armorgrp fleshy 15 + -- @damagegrp cracky 2 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:leggings_steel", { + description = S("Steel Leggings"), + inventory_image = "3d_armor_inv_leggings_steel.png", + groups = {armor_legs=1, armor_heal=0, armor_use=800, + physics_speed=-0.03, physics_gravity=0.03}, + armor_groups = {fleshy=15}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, + }) + --- Steel Boots + -- + -- @boots 3d_armor:boots_steel + -- @img 3d_armor_inv_boots_steel.png + -- @grp armor_feet 1 + -- @grp armor_heal 0 + -- @grp armor_use 800 + -- @grp physics_speed -0.01 + -- @grp physics_gravity 0.01 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 2 + -- @damagegrp snappy 3 + -- @damagegrp choppy 2 + -- @damagegrp crumbly 1 + -- @damagegrp level 2 + armor:register_armor(":3d_armor:boots_steel", { + description = S("Steel Boots"), + inventory_image = "3d_armor_inv_boots_steel.png", + groups = {armor_feet=1, armor_heal=0, armor_use=800, + physics_speed=-0.01, physics_gravity=0.01}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, + }) + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "steel" + local m = armor.materials.steel + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_steel/locale/armor_steel.de.tr b/mods/player/armor_steel/locale/armor_steel.de.tr new file mode 100644 index 000000000..0be569aca --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Stahlhelm +Steel Chestplate=Stahlbrustplatte +Steel Leggings=Stahlhose +Steel Boots=Stahlstiefel diff --git a/mods/player/armor_steel/locale/armor_steel.eo.tr b/mods/player/armor_steel/locale/armor_steel.eo.tr new file mode 100644 index 000000000..7ce2f23d8 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Ŝtala Kasko +Steel Chestplate=Ŝtala Brustkiraso +Steel Leggings=Ŝtala Pantalono +Steel Boots=Ŝtala Botoj diff --git a/mods/player/armor_steel/locale/armor_steel.es.tr b/mods/player/armor_steel/locale/armor_steel.es.tr new file mode 100644 index 000000000..9af65df68 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Casco de acero +Steel Chestplate=Peto de acero +Steel Leggings=Grebas de acero +Steel Boots=Botas de acero diff --git a/mods/player/armor_steel/locale/armor_steel.fr.tr b/mods/player/armor_steel/locale/armor_steel.fr.tr new file mode 100644 index 000000000..8f1d063af --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Casque en acier +Steel Chestplate=Cuirasse en acier +Steel Leggings=Jambières en acier +Steel Boots=Bottes en acier diff --git a/mods/player/armor_steel/locale/armor_steel.it.tr b/mods/player/armor_steel/locale/armor_steel.it.tr new file mode 100644 index 000000000..cbd087890 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Elmo d'acciaio +Steel Chestplate=Corazza d'acciaio +Steel Leggings=Gambali d'acciaio +Steel Boots=Stivali d'acciaio diff --git a/mods/player/armor_steel/locale/armor_steel.ms.tr b/mods/player/armor_steel/locale/armor_steel.ms.tr new file mode 100644 index 000000000..201a2f6c0 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Helmet Keluli +Steel Chestplate=Perisai Dada Keluli +Steel Leggings=Perisai Kaki Keluli +Steel Boots=But Keluli diff --git a/mods/player/armor_steel/locale/armor_steel.pt.tr b/mods/player/armor_steel/locale/armor_steel.pt.tr new file mode 100644 index 000000000..a30fd9284 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Capacete de Aço +Steel Chestplate=Peitoral de Aço +Steel Leggings=Calças de Aço +Steel Boots=Botas de Aço diff --git a/mods/player/armor_steel/locale/armor_steel.pt_BR.tr b/mods/player/armor_steel/locale/armor_steel.pt_BR.tr new file mode 100644 index 000000000..a30fd9284 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Capacete de Aço +Steel Chestplate=Peitoral de Aço +Steel Leggings=Calças de Aço +Steel Boots=Botas de Aço diff --git a/mods/player/armor_steel/locale/armor_steel.ru.tr b/mods/player/armor_steel/locale/armor_steel.ru.tr new file mode 100644 index 000000000..8f3688106 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=стальной шлем +Steel Chestplate=стальной бронежилет +Steel Leggings=стальные гамаши +Steel Boots=стальные ботинки diff --git a/mods/player/armor_steel/locale/armor_steel.sv.tr b/mods/player/armor_steel/locale/armor_steel.sv.tr new file mode 100644 index 000000000..1353b4ad3 --- /dev/null +++ b/mods/player/armor_steel/locale/armor_steel.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet=Stålhjälm +Steel Chestplate=Stålbröstplatta +Steel Leggings=Stålbyxor +Steel Boots=Stålstövlar diff --git a/mods/player/armor_steel/locale/template.txt b/mods/player/armor_steel/locale/template.txt new file mode 100644 index 000000000..0d6c3f61b --- /dev/null +++ b/mods/player/armor_steel/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_steel +Steel Helmet= +Steel Chestplate= +Steel Leggings= +Steel Boots= diff --git a/mods/player/armor_steel/mod.conf b/mods/player/armor_steel/mod.conf new file mode 100644 index 000000000..962e756dd --- /dev/null +++ b/mods/player/armor_steel/mod.conf @@ -0,0 +1,3 @@ +name = armor_steel +depends = 3d_armor +description = Adds craftable steel armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_steel.png b/mods/player/armor_steel/textures/3d_armor_boots_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_steel.png rename to mods/player/armor_steel/textures/3d_armor_boots_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_steel_preview.png b/mods/player/armor_steel/textures/3d_armor_boots_steel_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_steel_preview.png rename to mods/player/armor_steel/textures/3d_armor_boots_steel_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_steel.png b/mods/player/armor_steel/textures/3d_armor_chestplate_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_steel.png rename to mods/player/armor_steel/textures/3d_armor_chestplate_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_steel_preview.png b/mods/player/armor_steel/textures/3d_armor_chestplate_steel_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_steel_preview.png rename to mods/player/armor_steel/textures/3d_armor_chestplate_steel_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_steel.png b/mods/player/armor_steel/textures/3d_armor_helmet_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_steel.png rename to mods/player/armor_steel/textures/3d_armor_helmet_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_steel_preview.png b/mods/player/armor_steel/textures/3d_armor_helmet_steel_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_steel_preview.png rename to mods/player/armor_steel/textures/3d_armor_helmet_steel_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_steel.png b/mods/player/armor_steel/textures/3d_armor_inv_boots_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_steel.png rename to mods/player/armor_steel/textures/3d_armor_inv_boots_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_steel.png b/mods/player/armor_steel/textures/3d_armor_inv_chestplate_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_steel.png rename to mods/player/armor_steel/textures/3d_armor_inv_chestplate_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_steel.png b/mods/player/armor_steel/textures/3d_armor_inv_helmet_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_steel.png rename to mods/player/armor_steel/textures/3d_armor_inv_helmet_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_steel.png b/mods/player/armor_steel/textures/3d_armor_inv_leggings_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_steel.png rename to mods/player/armor_steel/textures/3d_armor_inv_leggings_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_steel.png b/mods/player/armor_steel/textures/3d_armor_leggings_steel.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_steel.png rename to mods/player/armor_steel/textures/3d_armor_leggings_steel.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_steel_preview.png b/mods/player/armor_steel/textures/3d_armor_leggings_steel_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_steel_preview.png rename to mods/player/armor_steel/textures/3d_armor_leggings_steel_preview.png diff --git a/mods/player/armor_wood/LICENSE.md b/mods/player/armor_wood/LICENSE.md new file mode 100644 index 000000000..4e6383954 --- /dev/null +++ b/mods/player/armor_wood/LICENSE.md @@ -0,0 +1,10 @@ +3D Armor - Visible Player Armor +=============================== + +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 + +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 diff --git a/mods/player/armor_wood/init.lua b/mods/player/armor_wood/init.lua new file mode 100644 index 000000000..0496e7721 --- /dev/null +++ b/mods/player/armor_wood/init.lua @@ -0,0 +1,186 @@ + +--- Registered armors. +-- +-- @topic armor + + +-- support for i18n +local S = armor.get_translator + +--- Wood +-- +-- Requires setting `armor_material_wood`. +-- +-- @section wood + +if armor.materials.wood then + --- Wood Helmet + -- + -- @helmet 3d_armor:helmet_wood + -- @img 3d_armor_inv_helmet_wood.png + -- @grp armor_head 1 + -- @grp armor_heal 0 + -- @grp armor_use 2000 + -- @grp flammable 1 + -- @armorgrp fleshy 5 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 3 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:helmet_wood", { + description = S("Wood Helmet"), + inventory_image = "3d_armor_inv_helmet_wood.png", + groups = {armor_head=1, armor_heal=0, armor_use=2000, flammable=1}, + armor_groups = {fleshy=5}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, + }) + --- Wood Chestplate + -- + -- @chestplate 3d_armor:chestplate_wood + -- @img 3d_armor_inv_chestplate_wood.png + -- @grp armor_torso 1 + -- @grp armor_heal 0 + -- @grp armor_use 2000 + -- @grp flammable 1 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 3 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:chestplate_wood", { + description = S("Wood Chestplate"), + inventory_image = "3d_armor_inv_chestplate_wood.png", + groups = {armor_torso=1, armor_heal=0, armor_use=2000, flammable=1}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, + }) + --- Wood Leggings + -- + -- @leggings 3d_armor:leggings_wood + -- @img 3d_armor_inv_leggings_wood.png + -- @grp armor_legs 1 + -- @grp armor_heal 0 + -- @grp armor_use 1000 + -- @grp flammable 1 + -- @armorgrp fleshy 10 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 3 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:leggings_wood", { + description = S("Wood Leggings"), + inventory_image = "3d_armor_inv_leggings_wood.png", + groups = {armor_legs=1, armor_heal=0, armor_use=2000, flammable=1}, + armor_groups = {fleshy=10}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, + }) + --- Wood Boots + -- + -- @boots 3d_armor:boots_wood + -- @img 3d_armor_inv_boots_wood.png + -- @grp armor_feet 1 + -- @grp armor_heal 0 + -- @grp armor_use 2000 + -- @grp flammable 1 + -- @armorgrp fleshy 5 + -- @damagegrp cracky 3 + -- @damagegrp snappy 2 + -- @damagegrp choppy 3 + -- @damagegrp crumbly 2 + -- @damagegrp level 1 + armor:register_armor(":3d_armor:boots_wood", { + description = S("Wood Boots"), + inventory_image = "3d_armor_inv_boots_wood.png", + armor_groups = {fleshy=5}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, + groups = {armor_feet=1, armor_heal=0, armor_use=2000, flammable=1}, + }) + local wood_armor_fuel = { + helmet = 6, + chestplate = 8, + leggings = 7, + boots = 5 + } + for armor, burn in pairs(wood_armor_fuel) do + minetest.register_craft({ + type = "fuel", + recipe = "3d_armor:" .. armor .. "_wood", + burntime = burn, + }) + end + + --- Crafting + -- + -- @section craft + + --- Craft recipes for helmets, chestplates, leggings, boots, & shields. + -- + -- @craft armor + -- @usage + -- Key: + -- - m: material + -- - wood: group:wood + -- - cactus: default:cactus + -- - steel: default:steel_ingot + -- - bronze: default:bronze_ingot + -- - diamond: default:diamond + -- - gold: default:gold_ingot + -- - mithril: moreores:mithril_ingot + -- - crystal: ethereal:crystal_ingot + -- - nether: nether:nether_ingot + -- + -- helmet: chestplate: leggings: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ m │ m │ m │ │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ │ m │ │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ ├───┼───┼───┤ + -- │ │ │ │ │ m │ m │ m │ │ m │ │ m │ + -- └───┴───┴───┘ └───┴───┴───┘ └───┴───┴───┘ + -- + -- boots: shield: + -- ┌───┬───┬───┐ ┌───┬───┬───┐ + -- │ │ │ │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ m │ m │ m │ + -- ├───┼───┼───┤ ├───┼───┼───┤ + -- │ m │ │ m │ │ │ m │ │ + -- └───┴───┴───┘ └───┴───┴───┘ + + local s = "wood" + local m = armor.materials.wood + minetest.register_craft({ + output = "3d_armor:helmet_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "3d_armor:chestplate_"..s, + recipe = { + {m, "", m}, + {m, m, m}, + {m, m, m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:leggings_"..s, + recipe = { + {m, m, m}, + {m, "", m}, + {m, "", m}, + }, + }) + minetest.register_craft({ + output = "3d_armor:boots_"..s, + recipe = { + {m, "", m}, + {m, "", m}, + }, + }) +end \ No newline at end of file diff --git a/mods/player/armor_wood/locale/armor_wood.de.tr b/mods/player/armor_wood/locale/armor_wood.de.tr new file mode 100644 index 000000000..f4a10224b --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.de.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Holzhelm +Wood Chestplate=Holzbrustplatte +Wood Leggings=Holzhose +Wood Boots=Holzstiefel diff --git a/mods/player/armor_wood/locale/armor_wood.eo.tr b/mods/player/armor_wood/locale/armor_wood.eo.tr new file mode 100644 index 000000000..acadb6501 --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.eo.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Ligna Kasko +Wood Chestplate=Ligna Brustkiraso +Wood Leggings=Ligna Pantalono +Wood Boots=Ligna Botoj diff --git a/mods/player/armor_wood/locale/armor_wood.es.tr b/mods/player/armor_wood/locale/armor_wood.es.tr new file mode 100644 index 000000000..a43f9ab83 --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.es.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Casco de madera +Wood Chestplate=Peto de madera +Wood Leggings=Grebas de madera +Wood Boots=Botas de madera diff --git a/mods/player/armor_wood/locale/armor_wood.fr.tr b/mods/player/armor_wood/locale/armor_wood.fr.tr new file mode 100644 index 000000000..953a787eb --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.fr.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Casque en bois +Wood Chestplate=Cuirasse en bois +Wood Leggings=Jambières en bois +Wood Boots=Bottes en bois diff --git a/mods/player/armor_wood/locale/armor_wood.it.tr b/mods/player/armor_wood/locale/armor_wood.it.tr new file mode 100644 index 000000000..ef4b540d0 --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.it.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Elmo di legno +Wood Chestplate=Corazza di legno +Wood Leggings=Gambali di legno +Wood Boots=Stivali di legno diff --git a/mods/player/armor_wood/locale/armor_wood.ms.tr b/mods/player/armor_wood/locale/armor_wood.ms.tr new file mode 100644 index 000000000..6ef45935a --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.ms.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Helmet Kayu +Wood Chestplate=Perisai Dada Kayu +Wood Leggings=Perisai Kaki Kayu +Wood Boots=But Kayu diff --git a/mods/player/armor_wood/locale/armor_wood.pt.tr b/mods/player/armor_wood/locale/armor_wood.pt.tr new file mode 100644 index 000000000..ab471a43b --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.pt.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Capacete de Madeira +Wood Chestplate=Peitoral de Madeira +Wood Leggings=Calças de Madeira +Wood Boots=Botas de Madeira diff --git a/mods/player/armor_wood/locale/armor_wood.pt_BR.tr b/mods/player/armor_wood/locale/armor_wood.pt_BR.tr new file mode 100644 index 000000000..ab471a43b --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Capacete de Madeira +Wood Chestplate=Peitoral de Madeira +Wood Leggings=Calças de Madeira +Wood Boots=Botas de Madeira diff --git a/mods/player/armor_wood/locale/armor_wood.ru.tr b/mods/player/armor_wood/locale/armor_wood.ru.tr new file mode 100644 index 000000000..fda30b519 --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.ru.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=деревянный шлем +Wood Chestplate=деревянный бронежилет +Wood Leggings=деревянные гамаши +Wood Boots=деревянные ботинки diff --git a/mods/player/armor_wood/locale/armor_wood.sv.tr b/mods/player/armor_wood/locale/armor_wood.sv.tr new file mode 100644 index 000000000..56b08a083 --- /dev/null +++ b/mods/player/armor_wood/locale/armor_wood.sv.tr @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet=Trähjälm +Wood Chestplate=Träbröstplatta +Wood Leggings=Träbyxor +Wood Boots=Trästövlar diff --git a/mods/player/armor_wood/locale/template.txt b/mods/player/armor_wood/locale/template.txt new file mode 100644 index 000000000..88934d384 --- /dev/null +++ b/mods/player/armor_wood/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: armor_wood +Wood Helmet= +Wood Chestplate= +Wood Leggings= +Wood Boots= diff --git a/mods/player/armor_wood/mod.conf b/mods/player/armor_wood/mod.conf new file mode 100644 index 000000000..2155fa3cb --- /dev/null +++ b/mods/player/armor_wood/mod.conf @@ -0,0 +1,3 @@ +name = armor_wood +depends = 3d_armor +description = Adds craftable wood armor. diff --git a/mods/player/3d_armor/textures/3d_armor_boots_wood.png b/mods/player/armor_wood/textures/3d_armor_boots_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_wood.png rename to mods/player/armor_wood/textures/3d_armor_boots_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_boots_wood_preview.png b/mods/player/armor_wood/textures/3d_armor_boots_wood_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_boots_wood_preview.png rename to mods/player/armor_wood/textures/3d_armor_boots_wood_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_wood.png b/mods/player/armor_wood/textures/3d_armor_chestplate_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_wood.png rename to mods/player/armor_wood/textures/3d_armor_chestplate_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_chestplate_wood_preview.png b/mods/player/armor_wood/textures/3d_armor_chestplate_wood_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_chestplate_wood_preview.png rename to mods/player/armor_wood/textures/3d_armor_chestplate_wood_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_wood.png b/mods/player/armor_wood/textures/3d_armor_helmet_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_wood.png rename to mods/player/armor_wood/textures/3d_armor_helmet_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_helmet_wood_preview.png b/mods/player/armor_wood/textures/3d_armor_helmet_wood_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_helmet_wood_preview.png rename to mods/player/armor_wood/textures/3d_armor_helmet_wood_preview.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_boots_wood.png b/mods/player/armor_wood/textures/3d_armor_inv_boots_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_boots_wood.png rename to mods/player/armor_wood/textures/3d_armor_inv_boots_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_chestplate_wood.png b/mods/player/armor_wood/textures/3d_armor_inv_chestplate_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_chestplate_wood.png rename to mods/player/armor_wood/textures/3d_armor_inv_chestplate_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_helmet_wood.png b/mods/player/armor_wood/textures/3d_armor_inv_helmet_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_helmet_wood.png rename to mods/player/armor_wood/textures/3d_armor_inv_helmet_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_inv_leggings_wood.png b/mods/player/armor_wood/textures/3d_armor_inv_leggings_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_inv_leggings_wood.png rename to mods/player/armor_wood/textures/3d_armor_inv_leggings_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_wood.png b/mods/player/armor_wood/textures/3d_armor_leggings_wood.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_wood.png rename to mods/player/armor_wood/textures/3d_armor_leggings_wood.png diff --git a/mods/player/3d_armor/textures/3d_armor_leggings_wood_preview.png b/mods/player/armor_wood/textures/3d_armor_leggings_wood_preview.png similarity index 100% rename from mods/player/3d_armor/textures/3d_armor_leggings_wood_preview.png rename to mods/player/armor_wood/textures/3d_armor_leggings_wood_preview.png diff --git a/mods/player/shields/LICENSE.md b/mods/player/shields/LICENSE.md index f7793ffa1..4e6383954 100644 --- a/mods/player/shields/LICENSE.md +++ b/mods/player/shields/LICENSE.md @@ -1,9 +1,9 @@ 3D Armor - Visible Player Armor =============================== -License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1 +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 -Armor Textures: Copyright (C) 2017-2018 davidthecreator - CC-BY-SA 3.0 +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. diff --git a/mods/player/shields/LICENSE.txt b/mods/player/shields/LICENSE.txt deleted file mode 100644 index 1f8485936..000000000 --- a/mods/player/shields/LICENSE.txt +++ /dev/null @@ -1,26 +0,0 @@ -[mod] Shields [shields] -======================= - -License Source Code -------------------- - -Copyright (C) 2012-2019 stujones11, Stuart Jones - -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 diff --git a/mods/player/shields/depends.txt b/mods/player/shields/depends.txt deleted file mode 100644 index 585cc7aaa..000000000 --- a/mods/player/shields/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -default -3d_armor diff --git a/mods/player/shields/description.txt b/mods/player/shields/description.txt deleted file mode 100644 index cb378bbf6..000000000 --- a/mods/player/shields/description.txt +++ /dev/null @@ -1 +0,0 @@ -Adds visible shields to 3d armor. diff --git a/mods/player/shields/locale/shields.de.tr b/mods/player/shields/locale/shields.de.tr index 341563cc2..7f86b4d6c 100644 --- a/mods/player/shields/locale/shields.de.tr +++ b/mods/player/shields/locale/shields.de.tr @@ -1,17 +1,13 @@ # textdomain: shields - - -### init.lua ### - Admin Shield=Adminschild -Bronze Shield=Bronzeschild +Wooden Shield=Holzschild +Enhanced Wood Shield=Verstärkter Holzschild Cactus Shield=Kaktusschild -Crystal Shield=Kristallschild -Nether Shield=Netherschild +Enhanced Cactus Shield=Verstärkter Kaktusschild +Steel Shield=Stahlschild +Bronze Shield=Bronzeschild Diamond Shield=Diamantschild -Enhanced Cactus Shield=verbessert Kaktusschild -Enhanced Wood Shield=verbessert Holzschild Gold Shield=Goldschild Mithril Shield=Mithrilschild -Steel Shield=Stahlschild -Wooden Shield=Holzschild +Crystal Shield=Kristallschild +Nether Shield=Netherschild diff --git a/mods/player/shields/locale/shields.eo.tr b/mods/player/shields/locale/shields.eo.tr new file mode 100644 index 000000000..02de4e9e6 --- /dev/null +++ b/mods/player/shields/locale/shields.eo.tr @@ -0,0 +1,13 @@ +# textdomain: shields +Admin Shield=Administra Ŝildo +Wooden Shield=Ligna Ŝildo +Enhanced Wood Shield=Plibonigita Ligna Ŝildo +Cactus Shield=Kakta Ŝildo +Enhanced Cactus Shield=Plibonigita Kakta Ŝildo +Steel Shield=Ŝtala Ŝildo +Bronze Shield=Bronza Ŝildo +Diamond Shield=Diamanta Ŝildo +Gold Shield=Ora Ŝildo +Mithril Shield=Mitrila Ŝildo +Crystal Shield=Kristala Ŝildo +Nether Shield=Inferna Ŝildo diff --git a/mods/player/shields/locale/shields.fr.tr b/mods/player/shields/locale/shields.fr.tr index 081c794df..5c76e992e 100644 --- a/mods/player/shields/locale/shields.fr.tr +++ b/mods/player/shields/locale/shields.fr.tr @@ -1,17 +1,13 @@ # textdomain: shields - - -### init.lua ### - Admin Shield=Bouclier d'admin -Bronze Shield=Bouclier en bronze +Wooden Shield=Bouclier en bois +Enhanced Wood Shield=Bouclier en bois amélioré Cactus Shield=Bouclier en cactus -Crystal Shield=Bouclier en cristal -Nether Shield=Bouclier en nether -Diamond Shield=Bouclier en diamant Enhanced Cactus Shield=Bouclier en cactus amélioré -Enhanced Wood Shield=Bouclier en bois amélioré +Steel Shield=Bouclier en acier +Bronze Shield=Bouclier en bronze +Diamond Shield=Bouclier en diamant Gold Shield=Bouclier en or Mithril Shield=Bouclier en mithril -Steel Shield=Bouclier en acier -Wooden Shield=Bouclier en bois +Crystal Shield=Bouclier en cristal +Nether Shield=Bouclier en nether diff --git a/mods/player/shields/locale/shields.pt_BR.tr b/mods/player/shields/locale/shields.pt_BR.tr new file mode 100644 index 000000000..26515cc6b --- /dev/null +++ b/mods/player/shields/locale/shields.pt_BR.tr @@ -0,0 +1,13 @@ +# textdomain: shields +Admin Shield=Escudo de Administrador +Wooden Shield=Escudo de Madeira +Enhanced Wood Shield=Escudo de Madeira Encantado +Cactus Shield=Escudo de Cacto +Enhanced Cactus Shield=Escude de Cacto Encantado +Steel Shield=Escudo de Aço +Bronze Shield=Escudo de Bronze +Diamond Shield=Escudo de Diamante +Gold Shield=Escudo de Ouro +Mithril Shield=Escudo de Mithril +Crystal Shield=Escudo de Cristal +Nether Shield=Escudo de Nether diff --git a/mods/player/shields/locale/shields.sv.tr b/mods/player/shields/locale/shields.sv.tr new file mode 100644 index 000000000..fb14f5394 --- /dev/null +++ b/mods/player/shields/locale/shields.sv.tr @@ -0,0 +1,13 @@ +# textdomain: shields +Admin Shield=Adminsköld +Wooden Shield=Träsköld +Enhanced Wood Shield=Förbättrad träsköld +Cactus Shield=Kaktussköld +Enhanced Cactus Shield=Förbättrad kaktussköld +Steel Shield=Stålsköld +Bronze Shield=Bronssköld +Diamond Shield=Diamantsköld +Gold Shield=Guldsköld +Mithril Shield=Mithrilsköld +Crystal Shield=Kristallsköld +Nether Shield=Nethersköld diff --git a/mods/player/shields/locale/template.txt b/mods/player/shields/locale/template.txt index 9c30ca792..1b39fd68b 100644 --- a/mods/player/shields/locale/template.txt +++ b/mods/player/shields/locale/template.txt @@ -1,17 +1,13 @@ # textdomain: shields - - -### init.lua ### - Admin Shield= -Bronze Shield= +Wooden Shield= +Enhanced Wood Shield= Cactus Shield= -Crystal Shield= -Nether Shield= -Diamond Shield= Enhanced Cactus Shield= -Enhanced Wood Shield= +Steel Shield= +Bronze Shield= +Diamond Shield= Gold Shield= Mithril Shield= -Steel Shield= -Wooden Shield= +Crystal Shield= +Nether Shield= diff --git a/mods/player/wieldview/LICENSE.md b/mods/player/wieldview/LICENSE.md index f7793ffa1..4e6383954 100644 --- a/mods/player/wieldview/LICENSE.md +++ b/mods/player/wieldview/LICENSE.md @@ -1,9 +1,9 @@ 3D Armor - Visible Player Armor =============================== -License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1 +License Source Code: Copyright (C) 2013-2023 Stuart Jones - LGPL v2.1 -Armor Textures: Copyright (C) 2017-2018 davidthecreator - CC-BY-SA 3.0 +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. diff --git a/mods/player/wieldview/LICENSE.txt b/mods/player/wieldview/LICENSE.txt deleted file mode 100644 index e1552c066..000000000 --- a/mods/player/wieldview/LICENSE.txt +++ /dev/null @@ -1,18 +0,0 @@ -[mod] visible wielded items [wieldview] -======================================= - -Copyright (C) 2012-2019 stujones11, Stuart Jones - -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. diff --git a/mods/player/wieldview/depends.txt b/mods/player/wieldview/depends.txt deleted file mode 100644 index b6cac2191..000000000 --- a/mods/player/wieldview/depends.txt +++ /dev/null @@ -1 +0,0 @@ -3d_armor diff --git a/mods/player/wieldview/description.txt b/mods/player/wieldview/description.txt deleted file mode 100644 index 0d51ad954..000000000 --- a/mods/player/wieldview/description.txt +++ /dev/null @@ -1 +0,0 @@ -Makes hand wielded items visible to other players. diff --git a/mods/player/wieldview/get_texture.lua b/mods/player/wieldview/get_texture.lua new file mode 100644 index 000000000..ccbd149a6 --- /dev/null +++ b/mods/player/wieldview/get_texture.lua @@ -0,0 +1,215 @@ +local f = string.format + +local node_tiles = minetest.settings:get_bool("wieldview_node_tiles") +if not node_tiles then + node_tiles = false + minetest.settings:set("wieldview_node_tiles", "false") +end + +-- https://github.com/minetest/minetest/blob/9fc018ded10225589d2559d24a5db739e891fb31/doc/lua_api.txt#L453-L462 +local function escape_texture(texturestring) + -- store in a variable so we don't return both rvs of gsub + local v = texturestring:gsub("%^", "\\^"):gsub(":", "\\:") + return v +end + +local function memoize(func) + local memo = {} + return function(arg) + if arg == nil then + return func(arg) + end + local rv = memo[arg] + + if not rv then + rv = func(arg) + memo[arg] = rv + end + + return rv + end +end + +local function is_vertical_frames(animation) + return ( + animation.type == "vertical_frames" and + animation.aspect_w and + animation.aspect_h + ) +end + +local function get_single_frame(animation, image_name) + return ("[combine:%ix%i^[noalpha^[colorize:#FFF:255^[mask:%s"):format( + animation.aspect_w, + animation.aspect_h, + image_name + ) +end + +local function is_sheet_2d(animation) + return ( + animation.type == "sheet_2d" and + animation.frames_w and + animation.frames_h + ) +end + +local function get_sheet_2d(animation, image_name) + return ("%s^[sheet:%ix%i:0,0"):format( + image_name, + animation.frames_w, + animation.frames_h + ) +end + +local get_image_from_tile = memoize(function(tile) + if type(tile) == "string" then + return tile + + elseif type(tile) == "table" then + local image_name + + if type(tile.image) == "string" then + image_name = tile.image + + elseif type(tile.name) == "string" then + image_name = tile.name + + end + + if image_name then + local animation = tile.animation + if animation then + if is_vertical_frames(animation) then + return get_single_frame(animation, image_name) + + elseif is_sheet_2d(animation) then + return get_sheet_2d(animation, image_name) + end + end + + return image_name + end + end + + return "3d_armor_trans.png" +end) + +local function get_image_cube(tiles) + if #tiles >= 6 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[6] or "no_texture.png"), + get_image_from_tile(tiles[3] or "no_texture.png") + ) + + elseif #tiles == 5 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[5] or "no_texture.png"), + get_image_from_tile(tiles[3] or "no_texture.png") + ) + + elseif #tiles == 4 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[4] or "no_texture.png"), + get_image_from_tile(tiles[3] or "no_texture.png") + ) + + elseif #tiles == 3 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[3] or "no_texture.png"), + get_image_from_tile(tiles[3] or "no_texture.png") + ) + + elseif #tiles == 2 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[2] or "no_texture.png"), + get_image_from_tile(tiles[2] or "no_texture.png") + ) + + elseif #tiles == 1 then + return minetest.inventorycube( + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[1] or "no_texture.png"), + get_image_from_tile(tiles[1] or "no_texture.png") + ) + end + + return "3d_armor_trans.png" +end + +local function is_normal_node(drawtype) + return ( + drawtype == "normal" or + drawtype == "allfaces" or + drawtype == "allfaces_optional" or + drawtype == "glasslike" or + drawtype == "glasslike_framed" or + drawtype == "glasslike_framed_optional" or + drawtype == "liquid" + ) +end + +armor.get_wield_image = memoize(function(item) + item = ItemStack(item) + + if item:is_empty() then + return "3d_armor_trans.png" + end + + local def = item:get_definition() + if not def then + return "unknown_item.png" + end + + local meta = item:get_meta() + local color = meta:get("color") or def.color + + local image = "3d_armor_trans.png" + + if def.wield_image and def.wield_image ~= "" then + local parts = {def.wield_image} + if color then + parts[#parts + 1] = f("[colorize:%s:alpha", escape_texture(color)) + end + if def.wield_overlay then + parts[#parts + 1] = def.wield_overlay + end + image = table.concat(parts, "^") + + elseif def.inventory_image and def.inventory_image ~= "" then + local parts = {def.inventory_image} + if color then + parts[#parts + 1] = f("[colorize:%s:alpha", escape_texture(color)) + end + if def.inventory_overlay then + parts[#parts + 1] = def.inventory_overlay + end + image = table.concat(parts, "^") + + elseif def.type == "node" then + if def.drawtype == "nodebox" or def.drawtype == "mesh" then + image = "3d_armor_trans.png" + + else + local tiles = def.tiles + if type(tiles) == "string" then + image = get_image_from_tile(tiles) + + elseif type(tiles) == "table" then + if is_normal_node(def.drawtype) and node_tiles then + image = get_image_cube(tiles) + + else + image = get_image_from_tile(tiles[1]) + end + end + end + end + + return image +end) diff --git a/mods/player/wieldview/init.lua b/mods/player/wieldview/init.lua index 6397d0493..ecdece9fc 100644 --- a/mods/player/wieldview/init.lua +++ b/mods/player/wieldview/init.lua @@ -4,31 +4,20 @@ if not update_time then update_time = 2 minetest.settings:set("wieldview_update_time", tostring(update_time)) end -local node_tiles = minetest.settings:get_bool("wieldview_node_tiles") -if not node_tiles then - node_tiles = false - minetest.settings:set("wieldview_node_tiles", "false") -end wieldview = { wielded_item = {}, transform = {}, } +dofile(minetest.get_modpath(minetest.get_current_modname()).."/get_texture.lua") dofile(minetest.get_modpath(minetest.get_current_modname()).."/transform.lua") wieldview.get_item_texture = function(self, item) local texture = "3d_armor_trans.png" if item ~= "" then - if minetest.registered_items[item] then - if minetest.registered_items[item].inventory_image ~= "" then - texture = minetest.registered_items[item].inventory_image - elseif node_tiles == true and minetest.registered_items[item].tiles - and type(minetest.registered_items[item].tiles[1]) == "string" - and minetest.registered_items[item].tiles[1] ~= "" then - texture = minetest.inventorycube(minetest.registered_items[item].tiles[1]) - end - end + texture = armor.get_wield_image(item) + -- Get item image transformation, first from group, then from transform.lua local transform = minetest.get_item_group(item, "wieldview_transform") if transform == 0 then