mirror of
https://github.com/minetest-mods/3d_armor.git
synced 2024-11-16 07:20:37 +01:00
04f9123e98
From the start my prior PR was aiming at compatibility with legacy clients and servers. If you scan the MT forum you will become aware that there seem to be quite many MT 0.4 servers around which are actively used by many players. However, the best solution may be this example of a new piece of improved code, if I understand the MT Lua code correctly. ``` -- print to log after mod was loaded successfully local load_message = "[MOD] XXX loaded" if minetest.log then minetest.log("info", load_message) -- aims at state of the art MT software else print (load_message) -- aims at legacy MT software used in the field end ``` Hope this helps.
190 lines
5.6 KiB
Lua
190 lines
5.6 KiB
Lua
|
|
--- 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
|
|
|
|
-- print to log after mod was loaded successfully
|
|
local load_message = "[MOD] 3D Armor - Armor Steel loaded"
|
|
if minetest.log then
|
|
minetest.log("info", load_message) -- aims at state of the art MT software
|
|
else
|
|
print (load_message) -- aims at legacy MT software used in the field
|
|
end
|