add armor specs to rainbow armor, add technic armor mod, add redef mod, add technic recycle mod

This commit is contained in:
N-Nachtigal 2025-07-26 13:07:52 +02:00
parent 00106c85c6
commit c1e648877d
138 changed files with 1321 additions and 4 deletions

View file

@ -0,0 +1,10 @@
name: luacheck
on: [push, pull_request]
jobs:
luacheck:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@main
- name: Luacheck
uses: lunarmodules/luacheck@master

View file

@ -0,0 +1,4 @@
globals = {
"armor",
"minetest",
}

View file

@ -0,0 +1,4 @@
License Source Code: Copyright (C) 2013-2018 Stuart Jones - LGPL v2.1
License Textures: poet-nohit and numberZero - 2015-2018 WTFPL

View file

@ -0,0 +1,14 @@
# Technic Armor [technic_armor]
[![luacheck](https://github.com/mt-mods/technic_armor/workflows/luacheck/badge.svg)](https://github.com/mt-mods/technic_armor/actions)
[![ContentDB](https://content.minetest.net/packages/mt-mods/technic_armor/shields/downloads/)](https://content.minetest.net/packages/mt-mods/technic_armor/)
Adds armor made from lead, brass, cast iron, carbon steel, stainless steel, tin and silver.
![](screenshot.png?raw=true)
## License
Code: LGPL v2.1
Textures: WTFPL (by poet-nohit and numberZero)

142
mods/technic_armor/init.lua Normal file
View file

@ -0,0 +1,142 @@
-- Use 3d_armor translator to take advantage of existing translations for armor parts
local S = minetest.get_translator("3d_armor")
local materials = {}
if minetest.get_modpath("technic_worldgen") then
materials.lead = {
name = S("Lead"),
craft_item = "technic:lead_ingot",
armor = 1.6,
heal = 0,
use = 500,
radiation = 88
}
materials.brass = {
name = S("Brass"),
craft_item = "technic:brass_ingot",
armor = 1.8,
heal = 0,
use = 650,
radiation = 43
}
materials.cast = {
name = S("Cast Iron"),
craft_item = "technic:cast_iron_ingot",
armor = 2.5,
heal = 8,
use = 200,
radiation = 40
}
materials.carbon = {
name = S("Carbon Steel"),
craft_item = "technic:carbon_steel_ingot",
armor = 2.7,
heal = 10,
use = 100,
radiation = 40
}
materials.stainless = {
name = S("Stainless Steel"),
craft_item = "technic:stainless_steel_ingot",
armor = 2.7,
heal = 10,
use = 75,
radiation = 40
}
end
if minetest.get_modpath("moreores") then
materials.silver = {
name = S("Silver"),
craft_item = "moreores:silver_ingot",
armor = 1.8,
heal = 6,
use = 650,
radiation = 53
}
end
if minetest.get_modpath("default") then
materials.tin = {
name = S("Tin"),
craft_item = "default:tin_ingot",
armor = 1.6,
heal = 0,
use = 750,
radiation = 37
}
end
local parts = {
helmet = {
name = S("Helmet"),
place = "head",
level = 5,
radlevel = 0.10,
craft = {{1, 1, 1}, {1, 0, 1}}
},
chestplate = {
name = S("Chestplate"),
place = "torso",
level = 8,
radlevel = 0.35,
craft = {{1, 0, 1}, {1, 1, 1}, {1, 1, 1}}
},
leggings = {
name = S("Leggings"),
place = "legs",
level = 7,
radlevel = 0.15,
craft = {{1, 1, 1}, {1, 0, 1}, {1, 0, 1}}
},
boots = {
name = S("Boots"),
place = "feet",
level = 4,
radlevel = 0.10,
craft = {{1, 0, 1}, {1, 0, 1}}
}
}
if minetest.get_modpath("shields") then
parts.shield = {
name = S("Shield"),
place = "shield",
level = 5,
radlevel = 0.00,
craft = {{1, 1, 1}, {1, 1, 1}, {0, 1, 0}}
}
end
local function make_recipe(template, material)
local recipe = {}
for i, row in ipairs(template) do
recipe[i] = {}
for j, item in ipairs(row) do
recipe[i][j] = item == 0 and "" or material
end
end
return recipe
end
for material, m in pairs(materials) do
for part, p in pairs(parts) do
local name = "technic_armor:"..part.."_"..material
armor:register_armor(name, {
description = S("@1 @2", m.name, p.name),
inventory_image = "technic_armor_inv_"..part.."_"..material..".png",
groups = {
["armor_"..p.place] = math.floor(p.level * m.armor),
armor_heal = m.heal,
armor_use = m.use,
armor_radiation = math.floor(p.radlevel * m.radiation)
}
})
minetest.register_craft({
output = name,
recipe = make_recipe(p.craft, m.craft_item),
})
end
end

View file

@ -0,0 +1,7 @@
name = technic_armor
description = Adds armor made from lead, brass, cast iron, carbon steel, stainless steel, tin and silver
depends = 3d_armor
optional_depends = default, moreores, technic_worldgen
release = 24351
author = mt-mods
title = Technic Armor

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 217 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 304 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 257 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 437 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 545 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 479 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 477 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 327 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 282 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 339 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 430 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 207 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 139 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 167 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 152 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 192 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 145 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 140 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 471 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 633 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 535 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 316 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 216 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 290 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Some files were not shown because too many files have changed in this diff Show more