write something there

This commit is contained in:
N-Nachtigal 2025-05-04 16:01:41 +02:00
commit b4b6c08f4f
8546 changed files with 309825 additions and 0 deletions

View file

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

View file

@ -0,0 +1,37 @@
Shields -- Crafting Guide
--------------------------
+---+---+---+
| X | X | X |
+---+---+---+
| X | X | X |
+---+---+---+
| | X | |
+---+---+---+
[shields:shield_wood] X = [default:wood]
[shields:shield_cactus] X = [default:cactus]
[shields:shield_steel] X = [default:steel_ingot]
[shields:shield_bronze] X = [default:bronze_ingot]
[shields:shield_diamond] X = [default:diamond]
[shields:shield_gold] X = [default:gold_ingot]
[shields:shield_mithril] X = [moreores:mithril_ingot]
[shields:shield_crystal] X = [ethereal:crystal_ingot]
[shields:shield_nether] X = [ethereal:nether_ingot]
Enhanced Shields
----------------
+---+
| S |
+---+
| X |
+---+
| S |
+---+
[shields:shield_enhanced_wood] X = [shields:shield_wood]
[shields:shield_enhanced_cactus] X = [shields:shield_cactus]
S = [default:steel_ingot]

View file

@ -0,0 +1,411 @@
--- 3D Armor Shields
--
-- @topic shields
-- support for i18n
local S = minetest.get_translator(minetest.get_current_modname())
local disable_sounds = minetest.settings:get_bool("shields_disable_sounds")
local function play_sound_effect(player, name)
if not disable_sounds and player then
local pos = player:get_pos()
if pos then
minetest.sound_play(name, {
pos = pos,
max_hear_distance = 10,
gain = 0.5,
})
end
end
end
if minetest.global_exists("armor") and armor.elements then
table.insert(armor.elements, "shield")
end
-- Regisiter Shields
--- Admin Shield
--
-- @shield shields:shield_admin
-- @img shields_inv_shield_admin.png
-- @grp armor_shield 1000
-- @grp armor_heal 100
-- @grp armor_use 0
-- @grp not_int_creative_inventory 1
armor:register_armor("shields:shield_admin", {
description = S("Admin Shield"),
inventory_image = "shields_inv_shield_admin.png",
groups = {armor_shield=1000, armor_heal=100, armor_use=0, not_in_creative_inventory=1},
})
minetest.register_alias("adminshield", "shields:shield_admin")
if armor.materials.wood then
--- Wood Shield
--
-- @shield shields:shield_wood
-- @img shields_inv_shield_wood.png
-- @grp armor_shield 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("shields:shield_wood", {
description = S("Wooden Shield"),
inventory_image = "shields_inv_shield_wood.png",
groups = {armor_shield=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},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_wood_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_wood_footstep")
end,
})
--- Enhanced Wood Shield
--
-- @shield shields:shield_enhanced_wood
-- @img shields_inv_shield_enhanced_wood.png
-- @grp armor_shield 1
-- @grp armor_heal 0
-- @grp armor_use 2000
-- @armorgrp fleshy 8
-- @damagegrp cracky 3
-- @damagegrp snappy 2
-- @damagegrp choppy 3
-- @damagegrp crumbly 2
-- @damagegrp level 2
armor:register_armor("shields:shield_enhanced_wood", {
description = S("Enhanced Wood Shield"),
inventory_image = "shields_inv_shield_enhanced_wood.png",
groups = {armor_shield=1, armor_heal=0, armor_use=2000},
armor_groups = {fleshy=8},
damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=2},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_dig_metal")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_dug_metal")
end,
})
minetest.register_craft({
output = "shields:shield_enhanced_wood",
recipe = {
{"default:steel_ingot"},
{"shields:shield_wood"},
{"default:steel_ingot"},
},
})
minetest.register_craft({
type = "fuel",
recipe = "shields:shield_wood",
burntime = 8,
})
end
if armor.materials.cactus then
--- Cactus Shield
--
-- @shield shields:shield_cactus
-- @img shields_inv_shield_cactus.png
-- @grp armor_shield 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("shields:shield_cactus", {
description = S("Cactus Shield"),
inventory_image = "shields_inv_shield_cactus.png",
groups = {armor_shield=1, armor_heal=0, armor_use=1000},
armor_groups = {fleshy=5},
damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=1},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_wood_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_wood_footstep")
end,
})
--- Enhanced Cactus Shield
--
-- @shield shields:shield_enhanced_cactus
-- @img shields_inv_shield_enhanced_cactus.png
-- @grp armor_shield 1
-- @grp armor_heal 0
-- @grp armor_use 1000
-- @armorgrp fleshy 8
-- @damagegrp cracky 3
-- @damagegrp snappy 3
-- @damagegrp choppy 2
-- @damagegrp crumbly 2
-- @damagegrp level 2
armor:register_armor("shields:shield_enhanced_cactus", {
description = S("Enhanced Cactus Shield"),
inventory_image = "shields_inv_shield_enhanced_cactus.png",
groups = {armor_shield=1, armor_heal=0, armor_use=1000},
armor_groups = {fleshy=8},
damage_groups = {cracky=3, snappy=3, choppy=2, crumbly=2, level=2},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_dig_metal")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_dug_metal")
end,
})
minetest.register_craft({
output = "shields:shield_enhanced_cactus",
recipe = {
{"default:steel_ingot"},
{"shields:shield_cactus"},
{"default:steel_ingot"},
},
})
minetest.register_craft({
type = "fuel",
recipe = "shields:shield_cactus",
burntime = 16,
})
end
if armor.materials.steel then
--- Steel Shield
--
-- @shield shields:shield_steel
-- @img shields_inv_shield_steel.png
-- @grp armor_shield 1
-- @grp armor_heal 0
-- @grp armor_use 800
-- @grp physics_speed -0.03
-- @grp physics_gravity 0.03
-- @armorgrp fleshy 10
-- @damagegrp cracky 2
-- @damagegrp snappy 3
-- @damagegrp choppy 2
-- @damagegrp crumbly 1
-- @damagegrp level 2
armor:register_armor("shields:shield_steel", {
description = S("Steel Shield"),
inventory_image = "shields_inv_shield_steel.png",
groups = {armor_shield=1, armor_heal=0, armor_use=800,
physics_speed=-0.03, physics_gravity=0.03},
armor_groups = {fleshy=10},
damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_dig_metal")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_dug_metal")
end,
})
end
if armor.materials.bronze then
--- Bronze Shield
--
-- @shield shields:shield_bronze
-- @img shields_inv_shield_bronze.png
-- @grp armor_shield 1
-- @grp armor_heal 6
-- @grp armor_use 400
-- @grp physics_speed -0.03
-- @grp physics_gravity 0.03
-- @armorgrp fleshy 10
-- @damagegrp cracky 2
-- @damagegrp snappy 3
-- @damagegrp choppy 2
-- @damagegrp crumbly 1
-- @damagegrp level 2
armor:register_armor("shields:shield_bronze", {
description = S("Bronze Shield"),
inventory_image = "shields_inv_shield_bronze.png",
groups = {armor_shield=1, armor_heal=6, armor_use=400,
physics_speed=-0.03, physics_gravity=0.03},
armor_groups = {fleshy=10},
damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_dig_metal")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_dug_metal")
end,
})
end
if armor.materials.diamond then
--- Diamond Shield
--
-- @shield shields:shield_diamond
-- @img shields_inv_shield_diamond.png
-- @grp armor_shield 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("shields:shield_diamond", {
description = S("Diamond Shield"),
inventory_image = "shields_inv_shield_diamond.png",
groups = {armor_shield=1, armor_heal=12, armor_use=200},
armor_groups = {fleshy=15},
damage_groups = {cracky=2, snappy=1, choppy=1, level=3},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_glass_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_break_glass")
end,
})
end
if armor.materials.gold then
--- Gold Shield
--
-- @shield shields:shield_gold
-- @img shields_inv_shield_gold.png
-- @grp armor_shield 1
-- @grp armor_heal 6
-- @grp armor_use 300
-- @grp physics_speed -0.04
-- @grp physics_gravity 0.04
-- @armorgrp fleshy 10
-- @damagegrp cracky 1
-- @damagegrp snappy 2
-- @damagegrp choppy 2
-- @damagegrp crumbly 3
-- @damagegrp level 2
armor:register_armor("shields:shield_gold", {
description = S("Gold Shield"),
inventory_image = "shields_inv_shield_gold.png",
groups = {armor_shield=1, armor_heal=6, armor_use=300,
physics_speed=-0.04, physics_gravity=0.04},
armor_groups = {fleshy=10},
damage_groups = {cracky=1, snappy=2, choppy=2, crumbly=3, level=2},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_dig_metal")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_dug_metal")
end,
})
end
if armor.materials.mithril then
--- Mithril Shield
--
-- @shield shields:shield_mithril
-- @img shields_inv_shield_mithril.png
-- @grp armor_shield 1
-- @grp armor_heal 12
-- @grp armor_use 100
-- @armorgrp fleshy 15
-- @damagegrp cracky 2
-- @damagegrp snappy 1
-- @damagegrp level 3
armor:register_armor("shields:shield_mithril", {
description = S("Mithril Shield"),
inventory_image = "shields_inv_shield_mithril.png",
groups = {armor_shield=1, armor_heal=13, armor_use=66},
armor_groups = {fleshy=16},
damage_groups = {cracky=2, snappy=1, level=3},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_glass_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_break_glass")
end,
})
end
if armor.materials.crystal then
--- Crystal Shield
--
-- @shield shields:shield_crystal
-- @img shields_inv_shield_crystal.png
-- @grp armor_shield 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("shields:shield_crystal", {
description = S("Crystal Shield"),
inventory_image = "shields_inv_shield_crystal.png",
groups = {armor_shield=1, armor_heal=12, armor_use=100, armor_fire=1},
armor_groups = {fleshy=15},
damage_groups = {cracky=2, snappy=1, level=3},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_glass_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_break_glass")
end,
})
end
if armor.materials.nether then
--- Nether Shield
--
-- @shield shields:shield_nether
-- @img shields_inv_shield_nether.png
-- @grp armor_shield 1
-- @grp armor_heal 17
-- @grp armor_use 200
-- @grp armor_fire 1
-- @armorgrp fleshy 20
-- @damagegrp cracky 3
-- @damagegrp snappy 2
-- @damagegrp level 3
armor:register_armor("shields:shield_nether", {
description = S("Nether Shield"),
inventory_image = "shields_inv_shield_nether.png",
groups = {armor_shield=1, armor_heal=17, armor_use=200, armor_fire=1},
armor_groups = {fleshy=20},
damage_groups = {cracky=3, snappy=2, level=3},
reciprocate_damage = true,
on_damage = function(player, index, stack)
play_sound_effect(player, "default_glass_footstep")
end,
on_destroy = function(player, index, stack)
play_sound_effect(player, "default_break_glass")
end,
})
end
for k, v in pairs(armor.materials) do
minetest.register_craft({
output = "shields:shield_"..k,
recipe = {
{v, v, v},
{v, v, v},
{"", v, ""},
},
})
end

View file

@ -0,0 +1,13 @@
# textdomain: shields
Admin Shield=Adminschild
Wooden Shield=Holzschild
Enhanced Wood Shield=Verstärkter Holzschild
Cactus Shield=Kaktusschild
Enhanced Cactus Shield=Verstärkter Kaktusschild
Steel Shield=Stahlschild
Bronze Shield=Bronzeschild
Diamond Shield=Diamantschild
Gold Shield=Goldschild
Mithril Shield=Mithrilschild
Crystal Shield=Kristallschild
Nether Shield=Netherschild

View file

@ -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

View file

@ -0,0 +1,13 @@
# textdomain: shields
Admin Shield=Escudo de admin
Wooden Shield=Escudo de madera
Enhanced Wood Shield=Escudo de madera mejorado
Cactus Shield=Escudo de cactus
Enhanced Cactus Shield=Escudo de cactus mejorado
Steel Shield=Escudo de acero
Bronze Shield=Escudo de bronce
Diamond Shield=Escudo de diamante
Gold Shield=Escudo de oro
Mithril Shield=Escudo de mitrilo
Crystal Shield=Escudo de cristal
Nether Shield=Escudo de nether

View file

@ -0,0 +1,13 @@
# textdomain: shields
Admin Shield=Bouclier d'admin
Wooden Shield=Bouclier en bois
Enhanced Wood Shield=Bouclier en bois amélioré
Cactus Shield=Bouclier en cactus
Enhanced Cactus Shield=Bouclier en cactus 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
Crystal Shield=Bouclier en cristal
Nether Shield=Bouclier en nether

View file

@ -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

View file

@ -0,0 +1,13 @@
# textdomain: shields
Admin Shield=щит админа
Wooden Shield=деревянный щит
Enhanced Wood Shield=усиленный деревянный щит
Cactus Shield=кактусовый щит
Enhanced Cactus Shield=усиленный кактусовый щит
Steel Shield=стальной щит
Bronze Shield=бронзовый щит
Diamond Shield=алмазный щит
Gold Shield=золотой щит
Mithril Shield=мифриловый щит
Crystal Shield=кристальный щит
Nether Shield=адский щит

View file

@ -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

View file

@ -0,0 +1,13 @@
# textdomain: shields
Admin Shield=
Wooden Shield=
Enhanced Wood Shield=
Cactus Shield=
Enhanced Cactus Shield=
Steel Shield=
Bronze Shield=
Diamond Shield=
Gold Shield=
Mithril Shield=
Crystal Shield=
Nether Shield=

View file

@ -0,0 +1,3 @@
name = shields
depends = default, 3d_armor
description = Adds visible shields to 3d armor.

View file

@ -0,0 +1,12 @@
shields/textures/shields_shield_wood.png:shield
shields/textures/shields_shield_enhanced_wood.png:shield
shields/textures/shields_shield_cactus.png:shield
shields/textures/shields_shield_enhanced_cactus.png:shield
shields/textures/shields_shield_steel.png:shield
shields/textures/shields_shield_bronze.png:shield
shields/textures/shields_shield_gold.png:shield
shields/textures/shields_shield_diamond.png:shield
shields/textures/shields_shield_mithril.png:shield
shields/textures/shields_shield_crystal.png:shield
shields/textures/shields_shield_nether.png:shield
shields/textures/shields_shield_admin.png:shield

Binary file not shown.

After

Width:  |  Height:  |  Size: 277 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 264 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 274 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 260 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 345 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 325 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 349 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 265 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 311 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 318 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 328 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 517 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 317 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 270 B