namespace, working breath
@@ -1 +1,2 @@
|
|||||||
|
default
|
||||||
3d_armor
|
3d_armor
|
||||||
|
|||||||
@@ -1,83 +1,93 @@
|
|||||||
if minetest.get_modpath("default") then
|
|
||||||
local stats = {
|
|
||||||
space = { name="Space", armor=1, heal=0, use=75 },
|
|
||||||
}
|
|
||||||
local mats = {
|
|
||||||
--PLACEHOLDER
|
|
||||||
space="default:dirt",
|
|
||||||
}
|
|
||||||
for k, v in pairs(stats) do
|
|
||||||
minetest.register_tool("moontest_spacesuit:helmet_"..k, {
|
|
||||||
description = v.name.." Helmet",
|
|
||||||
inventory_image = "moontest_spacesuit_inv_helmet_"..k..".png",
|
|
||||||
groups = {armor_head=math.floor(5*v.armor), armor_heal=v.heal, armor_use=v.use},
|
|
||||||
wear = 0,
|
|
||||||
})
|
|
||||||
minetest.register_tool("moontest_spacesuit:chestplate_"..k, {
|
|
||||||
description = v.name.." Chestplate",
|
|
||||||
inventory_image = "moontest_spacesuit_inv_chestplate_"..k..".png",
|
|
||||||
groups = {armor_torso=math.floor(8*v.armor), armor_heal=v.heal, armor_use=v.use},
|
|
||||||
wear = 0,
|
|
||||||
})
|
|
||||||
minetest.register_tool("moontest_spacesuit:pants_"..k, {
|
|
||||||
description = v.name.." Pants",
|
|
||||||
inventory_image = "moontest_spacesuit_inv_pants_"..k..".png",
|
|
||||||
groups = {armor_legs=math.floor(7*v.armor), armor_heal=v.heal, armor_use=v.use},
|
|
||||||
wear = 0,
|
|
||||||
})
|
|
||||||
minetest.register_tool("moontest_spacesuit:boots_"..k, {
|
|
||||||
description = v.name.." Boots",
|
|
||||||
inventory_image = "moontest_spacesuit_inv_boots_"..k..".png",
|
|
||||||
groups = {armor_feet=math.floor(4*v.armor), armor_heal=v.heal, armor_use=v.use},
|
|
||||||
wear = 0,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
for k, v in pairs(mats) do
|
|
||||||
minetest.register_craft({
|
|
||||||
output = "moontest_spacesuit:helmet_"..k,
|
|
||||||
recipe = {
|
|
||||||
{v, v, v},
|
|
||||||
{v, "", v},
|
|
||||||
{"", "", ""},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
minetest.register_craft({
|
|
||||||
output = "moontest_spacesuit:chestplate_"..k,
|
|
||||||
recipe = {
|
|
||||||
{v, "", v},
|
|
||||||
{v, v, v},
|
|
||||||
{v, v, v},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
minetest.register_craft({
|
|
||||||
output = "moontest_spacesuit:pants_"..k,
|
|
||||||
recipe = {
|
|
||||||
{v, v, v},
|
|
||||||
{v, "", v},
|
|
||||||
{v, "", v},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
minetest.register_craft({
|
|
||||||
output = "moontest_spacesuit:boots_"..k,
|
|
||||||
recipe = {
|
|
||||||
{v, "", v},
|
|
||||||
{v, "", v},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
--currently broken
|
minetest.register_tool("spacesuit:helmet", {
|
||||||
|
description = "Spacesuit Helmet",
|
||||||
|
inventory_image = "spacesuit_inv_helmet.png",
|
||||||
|
groups = {armor_head=5, armor_heal=1, armor_use=75},
|
||||||
|
wear = 0,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("spacesuit:chestplate", {
|
||||||
|
description = "Spacesuit Chestplate",
|
||||||
|
inventory_image = "spacesuit_inv_chestplate.png",
|
||||||
|
groups = {armor_torso=8, armor_heal=1, armor_use=75},
|
||||||
|
wear = 0,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("spacesuit:pants", {
|
||||||
|
description = "Spacesuit Pants",
|
||||||
|
inventory_image = "spacesuit_inv_pants.png",
|
||||||
|
groups = {armor_legs=7, armor_heal=1, armor_use=75},
|
||||||
|
wear = 0,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("spacesuit:boots", {
|
||||||
|
description = "Spacesuit Boots",
|
||||||
|
inventory_image = "spacesuit_inv_boots.png",
|
||||||
|
groups = {armor_feet=4, armor_heal=1, armor_use=75},
|
||||||
|
wear = 0,
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = "spacesuit:helmet",
|
||||||
|
recipe = {
|
||||||
|
{"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "default:glass", "default:steel_ingot"},
|
||||||
|
{"wool:white", "default:steelblock", "wool:white"},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = "spacesuit:chestplate",
|
||||||
|
recipe = {
|
||||||
|
{"default:steel_ingot", "default:mese", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"}
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = "spacesuit:pants",
|
||||||
|
recipe = {
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"},
|
||||||
|
{"wool:white", "wool:white", "wool:white"}
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = "spacesuit:boots",
|
||||||
|
recipe = {
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "wool:white", "default:steel_ingot"},
|
||||||
|
{"default:steel_ingot", "default:steelblock", "default:steel_ingot"},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
local timer = 0
|
||||||
minetest.register_globalstep(function(dtime)
|
minetest.register_globalstep(function(dtime)
|
||||||
|
timer = timer + dtime;
|
||||||
|
if timer >= 2 then
|
||||||
|
|
||||||
for _,player in ipairs(minetest.get_connected_players()) do
|
for _,player in ipairs(minetest.get_connected_players()) do
|
||||||
if math.random() < 0.1 then -- spacesuit restores breath
|
|
||||||
local name = player:get_player_name()
|
local name = player:get_player_name()
|
||||||
local inv = player:get_inventory()
|
local inv = player:get_inventory()
|
||||||
if inv:contains_item("armor", "moontest_spacesuit:helmet_space") and inv:contains_item("armor", "moontest_spacesuit:chestplate_space") and inv:contains_item("armor", "moontest_spacesuit:pants_space") and inv:contains_item("armor", "moontest_spacesuit:boots_space") then
|
|
||||||
|
local name, armor_inv = armor.get_valid_player(armor, player, "[spacesuit]")
|
||||||
|
local has_helmet = armor_inv:contains_item("armor", "spacesuit:helmet")
|
||||||
|
local has_chestplate = armor_inv:contains_item("armor", "spacesuit:chestplate")
|
||||||
|
local has_pants = armor_inv:contains_item("armor", "spacesuit:pants")
|
||||||
|
local has_boots = armor_inv:contains_item("armor", "spacesuit:boots")
|
||||||
|
|
||||||
|
if has_helmet and has_chestplate and has_pants and has_boots then
|
||||||
player:set_breath(10)
|
player:set_breath(10)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
timer = 0
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
|
|
||||||
|
print("[OK] Spacesuit")
|
||||||
|
Before Width: | Height: | Size: 235 B After Width: | Height: | Size: 235 B |
|
Before Width: | Height: | Size: 663 B After Width: | Height: | Size: 663 B |
|
Before Width: | Height: | Size: 290 B After Width: | Height: | Size: 290 B |
|
Before Width: | Height: | Size: 550 B After Width: | Height: | Size: 550 B |
|
Before Width: | Height: | Size: 258 B After Width: | Height: | Size: 258 B |
|
Before Width: | Height: | Size: 396 B After Width: | Height: | Size: 396 B |
|
Before Width: | Height: | Size: 186 B After Width: | Height: | Size: 186 B |
|
Before Width: | Height: | Size: 217 B After Width: | Height: | Size: 217 B |
|
Before Width: | Height: | Size: 251 B After Width: | Height: | Size: 251 B |
|
Before Width: | Height: | Size: 228 B After Width: | Height: | Size: 228 B |
|
Before Width: | Height: | Size: 218 B After Width: | Height: | Size: 218 B |
|
Before Width: | Height: | Size: 415 B After Width: | Height: | Size: 415 B |