diff --git a/elepower_machines/craft.lua b/elepower_machines/craft.lua index 57673dd..0e18099 100644 --- a/elepower_machines/craft.lua +++ b/elepower_machines/craft.lua @@ -20,6 +20,7 @@ function elepm.register_craft_type(name, def) if have_ui and unified_inventory.register_craft_type then unified_inventory.register_craft_type(name, { description = def.description or name, + icon = def.icon or "elepower_machine_side.png", width = def.inputs or 2, height = 1, }) @@ -28,7 +29,7 @@ function elepm.register_craft_type(name, def) if have_cg then craftguide.register_craft_type(name, { description = def.description, - icon = def.icon or "elepower_alloy_furnace.png", + icon = def.icon or "elepower_machine_side.png", width = def.inputs or 2, }) end diff --git a/elepower_tools/armor.lua b/elepower_tools/armor.lua new file mode 100644 index 0000000..a9fe021 --- /dev/null +++ b/elepower_tools/armor.lua @@ -0,0 +1,126 @@ + +local materials = {iron = "elepower_dynamics:iron_ingot", carbon = "elepower_dynamics:carbon_sheet"} + +-- Iron Armor +armor:register_armor("elepower_tools:helmet_iron", { + description = "Iron Helmet", + inventory_image = "elepower_armor_inv_helmet.png", + texture = "elepower_armor_helmet.png", + preview = "elepower_armor_helmet_preview.png", + groups = {armor_head=1, armor_heal=0, armor_use=650, + physics_speed=-0.001, physics_gravity=0.001}, + armor_groups = {fleshy=8}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, +}) + +armor:register_armor("elepower_tools:chestplate_iron", { + description = "Iron Chestplate", + inventory_image = "elepower_armor_inv_chestplate.png", + texture = "elepower_armor_chestplate.png", + preview = "elepower_armor_chestplate_preview.png", + groups = {armor_torso=1, armor_heal=0, armor_use=650, + physics_speed=-0.03, physics_gravity=0.03}, + armor_groups = {fleshy=13}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, +}) + +armor:register_armor("elepower_tools:leggings_iron", { + description = "Iron Leggings", + inventory_image = "elepower_armor_inv_leggings.png", + texture = "elepower_armor_leggings.png", + preview = "elepower_armor_leggings_preview.png", + groups = {armor_legs=1, armor_heal=0, armor_use=650, + physics_speed=-0.02, physics_gravity=0.02}, + armor_groups = {fleshy=13}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, +}) + +armor:register_armor("elepower_tools:boots_iron", { + description = "Iron Boots", + inventory_image = "elepower_armor_inv_boots.png", + texture = "elepower_armor_boots.png", + preview = "elepower_armor_boots_preview.png", + groups = {armor_feet=1, armor_heal=0, armor_use=650, + physics_speed=-0.001, physics_gravity=0.001}, + armor_groups = {fleshy=8}, + damage_groups = {cracky=2, snappy=3, choppy=2, crumbly=1, level=2}, +}) + +-- Carbon Fiber Armor +armor:register_armor("elepower_tools:helmet_carbon", { + description = "Carbon Fiber Helmet", + inventory_image = "elepower_armor_inv_helmet_carbon.png", + texture = "elepower_armor_helmet_carbon.png", + preview = "elepower_armor_helmet_carbon_preview.png", + groups = {armor_head=1, armor_heal=0, armor_use=2000, + physics_speed=0.01, physics_gravity=0.01}, + armor_groups = {fleshy=9}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, +}) + +armor:register_armor("elepower_tools:chestplate_carbon", { + description = "Carbon Fiber Chestplate", + inventory_image = "elepower_armor_inv_chestplate_carbon.png", + texture = "elepower_armor_chestplate_carbon.png", + preview = "elepower_armor_chestplate_carbon_preview.png", + groups = {armor_torso=1, armor_heal=0, armor_use=2000, + physics_speed=0.03, physics_gravity=0.03}, + armor_groups = {fleshy=14}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, +}) + +armor:register_armor("elepower_tools:leggings_carbon", { + description = "Carbon Fiber Leggings", + inventory_image = "elepower_armor_inv_leggings_carbon.png", + texture = "elepower_armor_leggings_carbon.png", + preview = "elepower_armor_leggings_carbon_preview.png", + groups = {armor_legs=1, armor_heal=0, armor_use=2000, + physics_speed=0.02, physics_gravity=0.02}, + armor_groups = {fleshy=14}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, +}) + +armor:register_armor("elepower_tools:boots_carbon", { + description = "Carbon Fiber Boots", + inventory_image = "elepower_armor_inv_boots_carbon.png", + texture = "elepower_armor_boots_carbon.png", + preview = "elepower_armor_boots_carbon_preview.png", + groups = {armor_feet=1, armor_heal=0, armor_use=2000, + physics_speed=0.01, physics_gravity=0.01}, + armor_groups = {fleshy=9}, + damage_groups = {cracky=3, snappy=2, choppy=3, crumbly=2, level=1}, +}) + +for k, v in pairs(materials) do + minetest.register_craft({ + output = "elepower_tools:helmet_"..k, + recipe = { + {v, v, v}, + {v, "", v}, + {"", "", ""}, + }, + }) + minetest.register_craft({ + output = "elepower_tools:chestplate_"..k, + recipe = { + {v, "", v}, + {v, v, v}, + {v, v, v}, + }, + }) + minetest.register_craft({ + output = "elepower_tools:leggings_"..k, + recipe = { + {v, v, v}, + {v, "", v}, + {v, "", v}, + }, + }) + minetest.register_craft({ + output = "elepower_tools:boots_"..k, + recipe = { + {v, "", v}, + {v, "", v}, + }, + }) +end diff --git a/elepower_tools/depends.txt b/elepower_tools/depends.txt index 32b2b43..3984713 100644 --- a/elepower_tools/depends.txt +++ b/elepower_tools/depends.txt @@ -1,2 +1,3 @@ elepower_papi elepower_farming +3d_armor? diff --git a/elepower_tools/init.lua b/elepower_tools/init.lua index 579d13b..5d400c9 100644 --- a/elepower_tools/init.lua +++ b/elepower_tools/init.lua @@ -15,3 +15,8 @@ dofile(modpath .. "/soldering.lua") -- Crafting dofile(modpath .. "/craftitems.lua") dofile(modpath .. "/crafting.lua") + +-- Armor +if minetest.get_modpath("3d_armor") then + dofile(modpath .. "/armor.lua") +end diff --git a/elepower_tools/mod.conf b/elepower_tools/mod.conf index 837aadf..fcf7d0f 100644 --- a/elepower_tools/mod.conf +++ b/elepower_tools/mod.conf @@ -1,3 +1,4 @@ name = elepower_tools description = Elepower powered tools! depends = elepower_papi,elepower_farming +optional_depends = 3d_armor diff --git a/elepower_tools/textures/elepower_armor_boots.png b/elepower_tools/textures/elepower_armor_boots.png new file mode 100644 index 0000000..459eeb2 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_boots.png differ diff --git a/elepower_tools/textures/elepower_armor_boots_carbon.png b/elepower_tools/textures/elepower_armor_boots_carbon.png new file mode 100644 index 0000000..5494999 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_boots_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_boots_carbon_preview.png b/elepower_tools/textures/elepower_armor_boots_carbon_preview.png new file mode 100644 index 0000000..138607a Binary files /dev/null and b/elepower_tools/textures/elepower_armor_boots_carbon_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_boots_preview.png b/elepower_tools/textures/elepower_armor_boots_preview.png new file mode 100644 index 0000000..885f2a9 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_boots_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_chestplate.png b/elepower_tools/textures/elepower_armor_chestplate.png new file mode 100644 index 0000000..21fc7f5 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_chestplate.png differ diff --git a/elepower_tools/textures/elepower_armor_chestplate_carbon.png b/elepower_tools/textures/elepower_armor_chestplate_carbon.png new file mode 100644 index 0000000..5d750ba Binary files /dev/null and b/elepower_tools/textures/elepower_armor_chestplate_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_chestplate_carbon_preview.png b/elepower_tools/textures/elepower_armor_chestplate_carbon_preview.png new file mode 100644 index 0000000..4e6b9ef Binary files /dev/null and b/elepower_tools/textures/elepower_armor_chestplate_carbon_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_chestplate_preview.png b/elepower_tools/textures/elepower_armor_chestplate_preview.png new file mode 100644 index 0000000..57e9241 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_chestplate_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_helmet.png b/elepower_tools/textures/elepower_armor_helmet.png new file mode 100644 index 0000000..7fd60a8 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_helmet.png differ diff --git a/elepower_tools/textures/elepower_armor_helmet_carbon.png b/elepower_tools/textures/elepower_armor_helmet_carbon.png new file mode 100644 index 0000000..2180ee8 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_helmet_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_helmet_carbon_preview.png b/elepower_tools/textures/elepower_armor_helmet_carbon_preview.png new file mode 100644 index 0000000..d8e3a8b Binary files /dev/null and b/elepower_tools/textures/elepower_armor_helmet_carbon_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_helmet_preview.png b/elepower_tools/textures/elepower_armor_helmet_preview.png new file mode 100644 index 0000000..3a23a2c Binary files /dev/null and b/elepower_tools/textures/elepower_armor_helmet_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_boots.png b/elepower_tools/textures/elepower_armor_inv_boots.png new file mode 100644 index 0000000..0ea80f5 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_boots.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_boots_carbon.png b/elepower_tools/textures/elepower_armor_inv_boots_carbon.png new file mode 100644 index 0000000..7d13f16 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_boots_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_chestplate.png b/elepower_tools/textures/elepower_armor_inv_chestplate.png new file mode 100644 index 0000000..6363ae5 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_chestplate.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_chestplate_carbon.png b/elepower_tools/textures/elepower_armor_inv_chestplate_carbon.png new file mode 100644 index 0000000..5160367 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_chestplate_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_helmet.png b/elepower_tools/textures/elepower_armor_inv_helmet.png new file mode 100644 index 0000000..ac8d211 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_helmet.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_helmet_carbon.png b/elepower_tools/textures/elepower_armor_inv_helmet_carbon.png new file mode 100644 index 0000000..5f056b7 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_helmet_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_leggings.png b/elepower_tools/textures/elepower_armor_inv_leggings.png new file mode 100644 index 0000000..029512e Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_leggings.png differ diff --git a/elepower_tools/textures/elepower_armor_inv_leggings_carbon.png b/elepower_tools/textures/elepower_armor_inv_leggings_carbon.png new file mode 100644 index 0000000..a559617 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_inv_leggings_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_leggings.png b/elepower_tools/textures/elepower_armor_leggings.png new file mode 100644 index 0000000..de99147 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_leggings.png differ diff --git a/elepower_tools/textures/elepower_armor_leggings_carbon.png b/elepower_tools/textures/elepower_armor_leggings_carbon.png new file mode 100644 index 0000000..da9e874 Binary files /dev/null and b/elepower_tools/textures/elepower_armor_leggings_carbon.png differ diff --git a/elepower_tools/textures/elepower_armor_leggings_carbon_preview.png b/elepower_tools/textures/elepower_armor_leggings_carbon_preview.png new file mode 100644 index 0000000..ff504af Binary files /dev/null and b/elepower_tools/textures/elepower_armor_leggings_carbon_preview.png differ diff --git a/elepower_tools/textures/elepower_armor_leggings_preview.png b/elepower_tools/textures/elepower_armor_leggings_preview.png new file mode 100644 index 0000000..194fc7a Binary files /dev/null and b/elepower_tools/textures/elepower_armor_leggings_preview.png differ