owl_tech/ore/node_register.lua

1786 lines
74 KiB
Lua
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

local S = minetest.get_translator(minetest.get_current_modname())
local name = minetest.get_current_modname()
local path = minetest.get_modpath(name)
local use_select_box = minetest.settings:get_bool("mcl_buckets_use_select_box", false)
local steelHammerDigs = {}
minetest.register_on_dignode( -- take from Hammermod by cultom https://content.minetest.net/packages/cultom/hammermod/
function(pos, oldnode, digger)
if digger == nil or not ( minetest.get_item_group(digger:get_wielded_item():get_name(),"miner_hammer")>0) then
return
end
local playerName = digger:get_player_name()
if(playerName == "" or steelHammerDigs[playerName]) then
return
end
steelHammerDigs[playerName] = true
local posDiff = pos.y - digger:get_pos().y
if(posDiff < 2 and posDiff > 1) then
if
digger:get_look_horizontal() > math.pi / 4 and digger:get_look_horizontal() < 3 * math.pi / 4 or
digger:get_look_horizontal() > 5 * math.pi / 4 and digger:get_look_horizontal() < 7 * math.pi / 4
then
pos.y = pos.y -1
pos.z = pos.z -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
else
pos.y = pos.y -1
pos.x = pos.x -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.y = pos.y -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
end
else
pos.x = pos.x -1
pos.z = pos.z -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z +1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.x = pos.x -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
pos.z = pos.z -1
minetest.node_dig(pos, minetest.get_node(pos), digger)
end
steelHammerDigs[playerName] = nil
end
)
---- This crutch was suggested by the developers of Mineclone 2 - they made the functions of their shovels and hoes localS
local function create_soil(pos, inv)
if pos == nil then
return false
end
local node = minetest.get_node(pos)
local name = node.name
local above = minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z})
if minetest.get_item_group(name, "cultivatable") == 2 then
if above.name == "air" then
node.name = "mcl_farming:soil"
minetest.set_node(pos, node)
minetest.sound_play("default_dig_crumbly", { pos = pos, gain = 0.5 }, true)
return true
end
elseif minetest.get_item_group(name, "cultivatable") == 1 then
if above.name == "air" then
node.name = "mcl_core:dirt"
minetest.set_node(pos, node)
minetest.sound_play("default_dig_crumbly", { pos = pos, gain = 0.6 }, true)
return true
end
end
return false
end
local make_grass_path = function(itemstack, placer, pointed_thing)
-- Use pointed node's on_rightclick function first, if present
local node = minetest.get_node(pointed_thing.under)
if placer and not placer:get_player_control().sneak then
if minetest.registered_nodes[node.name] and minetest.registered_nodes[node.name].on_rightclick then
return minetest.registered_nodes[node.name].on_rightclick(pointed_thing.under, node, placer, itemstack) or itemstack
end
end
-- Only make grass path if tool used on side or top of target node
if pointed_thing.above.y < pointed_thing.under.y then
return itemstack
end
if (minetest.get_item_group(node.name, "path_creation_possible") == 1) then
local above = table.copy(pointed_thing.under)
above.y = above.y + 1
if minetest.get_node(above).name == "air" then
if minetest.is_protected(pointed_thing.under, placer:get_player_name()) then
minetest.record_protection_violation(pointed_thing.under, placer:get_player_name())
return itemstack
end
if not minetest.is_creative_enabled(placer:get_player_name()) then
-- Add wear (as if digging a shovely node)
local toolname = itemstack:get_name()
local wear = mcl_autogroup.get_wear(toolname, "shovely")
itemstack:add_wear(wear)
end
minetest.sound_play({name="default_grass_footstep", gain=1}, {pos = above}, true)
minetest.swap_node(pointed_thing.under, {name="mcl_core:grass_path"})
end
end
return itemstack
end
-- Axes
local function make_stripped_trunk(itemstack, placer, pointed_thing)
if pointed_thing.type ~= "node" then return end
local node = minetest.get_node(pointed_thing.under)
local noddef = minetest.registered_nodes[minetest.get_node(pointed_thing.under).name]
if not placer:get_player_control().sneak and noddef.on_rightclick then
return minetest.item_place(itemstack, placer, pointed_thing)
end
if minetest.is_protected(pointed_thing.under, placer:get_player_name()) then
minetest.record_protection_violation(pointed_thing.under, placer:get_player_name())
return itemstack
end
if noddef._mcl_stripped_variant == nil then
return itemstack
else
minetest.swap_node(pointed_thing.under, {name=noddef._mcl_stripped_variant, param2=node.param2})
if not minetest.is_creative_enabled(placer:get_player_name()) then
-- Add wear (as if digging a axey node)
local toolname = itemstack:get_name()
local wear = mcl_autogroup.get_wear(toolname, "axey")
itemstack:add_wear(wear)
end
end
return itemstack
end
local hoe_on_place_function = function(wear_divisor) --Copy-past from mcl_farming ( in mc it local func adn can 't access to mod ')
return function(itemstack, user, pointed_thing)
-- Call on_rightclick if the pointed node defines it
local node = minetest.get_node(pointed_thing.under)
if user and not user:get_player_control().sneak then
if minetest.registered_nodes[node.name] and minetest.registered_nodes[node.name].on_rightclick then
return minetest.registered_nodes[node.name].on_rightclick(pointed_thing.under, node, user, itemstack) or itemstack
end
end
if minetest.is_protected(pointed_thing.under, user:get_player_name()) then
minetest.record_protection_violation(pointed_thing.under, user:get_player_name())
return itemstack
end
if create_soil(pointed_thing.under, user:get_inventory()) then
if not minetest.is_creative_enabled(user:get_player_name()) then
itemstack:add_wear(65535/wear_divisor)
end
return itemstack
end
end
end
-- 1)tech_name 2)useal name 3)ineed ore ? 4)pickasxe_level 5)color 6)intrument uses 7)can simple burn ore in furnance ( and dusts)
local metals_ore_array={
{"iron","Iron",true,3,"#f7f7f7",125,true},
{"copper","Copper",true,2,"#ff5e00",75,true},
{"tin","Tin",true,2,"#c9c9c9",88,true},
{"gold","Golg",true,2,"#ffe600",50,true},
{"silver","Silver",true,3,"#d1d1d1",62,true},
{"lead","Lead",true,3,"#9092ab",62,true},
{"steel","Steel",false,3,"#575757",300,false},
{"bronze","Bronze",false,3,"#a35900",200,true},
{"electrum","Electrum",false,2,"#fffd73",55,true},
}
--make metals ALL
for i, value in ipairs(metals_ore_array) do
--ore
if metals_ore_array[i][3] then
minetest.register_node("owl_tech:"..metals_ore_array[i][1].."_ore", {
description = S(metals_ore_array[i][2].." ore"),
_doc_items_longdesc = S(metals_ore_array[i][2]..' ore'),
_doc_items_hidden = false,
tiles = {"default_stone.png^(owl_tech_ore_base.png^[colorize:"..metals_ore_array[i][5]..":128)"},
is_ground_content = true,
stack_max = 64,
groups = {pickaxey=metals_ore_array[i][4], building_block=1, material_stone=1, blast_furnace_smeltable=1,ore=1},
drop = "owl_tech:"..metals_ore_array[i][1].."_ore",
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 3,
_mcl_hardness = 3,
_mcl_silk_touch_drop = true,
})
end
--Nugget
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_nugget", {
description = S(metals_ore_array[i][2].. " Nugget"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " Nugget"),
inventory_image = "mcl_core_iron_nugget.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--Ingot
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_ingot", {
description = S(metals_ore_array[i][2].. " Ingot"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " Ingot"),
inventory_image = "default_steel_ingot.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--dust owl_tech_lamp_base.png owl_tech_lamp_part.png
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_dust", {
description = S(metals_ore_array[i][2].. " dust"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " dust"),
inventory_image = "owl_tech_dust.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte dust
minetest.register_craft({
type = "shapeless",
output = "owl_tech:"..metals_ore_array[i][1].."_dust",
recipe = {"owl_tech:work_mortar","owl_tech:"..metals_ore_array[i][1].."_ingot"},
replacements = {
{"owl_tech:work_mortar","owl_tech:work_mortar"},
}
})
--Sharp blade
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_sharp_blade", {
description = S(metals_ore_array[i][2].. " sharp blade"),
_doc_items_longdesc = S("simple and reliable sharp blade element"),
inventory_image = "owl_tech_sharp_blade.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte Sharp blade
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_sharp_blade 3",
recipe = {
{"owl_tech:work_hammer","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--lamp owl_tech_sharp_blade.png
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_lamp", {
description = S(metals_ore_array[i][2].. " lamp"),
_doc_items_longdesc = S("simple and reliable electrical circuit element"),
inventory_image = "owl_tech_lamp_base.png^(owl_tech_lamp_part.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte lamp
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_lamp 4",
recipe = {
{"mcl_core:glass","owl_tech:"..metals_ore_array[i][1].."_ingot","mcl_core:glass"},
{"mcl_core:glass","owl_tech:"..metals_ore_array[i][1].."_ingot","mcl_core:glass",},
{"","",""}
},
})
--heat element
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_heat_element", {
description = S(metals_ore_array[i][2].. " heat element"),
_doc_items_longdesc = S("simple and reliable heat element"),
inventory_image = "owl_tech_base_heat_element.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte heat element
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_heat_element 2" ,
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:work_hammer","","owl_tech:work_file",},
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_ingot"}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--mesh owl_tech_base_mesh.png
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_mesh", {
description = S(metals_ore_array[i][2].. " mesh"),
_doc_items_longdesc = S("Metallic mesh"),
inventory_image = "owl_tech_base_mesh.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte mesh
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_mesh 2" ,
recipe = {
{"mcl_mobitems:string","owl_tech:"..metals_ore_array[i][1].."_ingot","mcl_mobitems:string"},
{"mcl_mobitems:string","owl_tech:work_file","mcl_mobitems:string"},
{"mcl_mobitems:string","owl_tech:"..metals_ore_array[i][1].."_ingot","mcl_mobitems:string"}
},
replacements = {
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--dirt dust
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_dirt_dust", {
description = S(metals_ore_array[i][2].. " dirt dust"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " dirt dust"),
inventory_image = "owl_tech_dirt_dust.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
if metals_ore_array[i][7] then
--Simple burn ore in ingot
minetest.register_craft({
type = "cooking",
output = "owl_tech:"..metals_ore_array[i][1].."_ingot",
recipe = "owl_tech:"..metals_ore_array[i][1].."_ore",
cooktime = 10,
})
--Simple burn dust in ingot
minetest.register_craft({
type = "cooking",
output = "owl_tech:"..metals_ore_array[i][1].."_ingot",
recipe = "owl_tech:"..metals_ore_array[i][1].."_dust",
cooktime = 10,
})
--burn dirt dust
minetest.register_craft({
type = "cooking",
output = "owl_tech:"..metals_ore_array[i][1].."_ingot",
recipe = "owl_tech:"..metals_ore_array[i][1].."_dirt_dust",
cooktime = 10,
})
end
mcl_armor.register_set({
name = metals_ore_array[i][1],
description = metals_ore_array[i][2],
durability = metals_ore_array[i][6]*2,
enchantability = 9,
points = {
head = 2,
torso = 6,
legs = 5,
feet = 2,
},
craft_material = "owl_tech:"..metals_ore_array[i][1].."_plate",
cook_material = "owl_tech:"..metals_ore_array[i][1].."_nugget",
sound_equip = "mcl_armor_equip_iron",
sound_unequip = "mcl_armor_unequip_iron",
})
--plate
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_plate", {
description = S(metals_ore_array[i][2].. " plate"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " plate"),
inventory_image = "owl_tech_plate.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--fence
local p = {-2/16, -0.5, -2/16, 2/16, 0.5, 2/16}
local x1 = {-0.5, 4/16, -1/16, -2/16, 7/16, 1/16} --oben(quer) -x
local x12 = {-0.5, -2/16, -1/16, -2/16, 1/16, 1/16} --unten(quer) -x
local x2 = {2/16, 4/16, -1/16, 0.5, 7/16, 1/16} --oben(quer) x
local x22 = {2/16, -2/16, -1/16, 0.5, 1/16, 1/16} --unten(quer) x
local z1 = {-1/16, 4/16, -0.5, 1/16, 7/16, -2/16} --oben(quer) -z
local z12 = {-1/16, -2/16, -0.5, 1/16, 1/16, -2/16} --unten(quer) -z
local z2 = {-1/16, 4/16, 2/16, 1/16, 7/16, 0.5} --oben(quer) z
local z22 = {-1/16, -2/16, 2/16, 1/16, 1/16, 0.5} --unten(quer) z
-- Collision box
local cp = {-2/16, -0.5, -2/16, 2/16, 1.01, 2/16}
local cx1 = {-0.5, -0.5, -2/16, -2/16, 1.01, 2/16} --unten(quer) -x
local cx2 = {2/16, -0.5, -2/16, 0.5, 1.01, 2/16} --unten(quer) x
local cz1 = {-2/16, -0.5, -0.5, 2/16, 1.01, -2/16} --unten(quer) -z
local cz2 = {-2/16, -0.5, 2/16, 2/16, 1.01, 0.5} --unten(quer) z
minetest.register_node("owl_tech:"..metals_ore_array[i][1].."_fence", { --copypast from mc2
description = S(metals_ore_array[i][2].." fence"),
_doc_items_longdesc = S("Fences are structures which block the way. Fences will connect to each other and solid blocks. They cannot be jumped over with a simple jump."),
tiles = {"default_steel_block.png^[colorize:"..metals_ore_array[i][5]..":128"},
inventory_image = "mcl_fences_fence_mask.png^" .. "default_steel_block.png^[colorize:"..metals_ore_array[i][5]..":128" .. "^mcl_fences_fence_mask.png^[makealpha:255,126,126",
wield_image = "mcl_fences_fence_mask.png^" .. "default_steel_block.png^[colorize:"..metals_ore_array[i][5]..":128" .. "^mcl_fences_fence_mask.png^[makealpha:255,126,126",
paramtype = "light",
is_ground_content = false,
groups = { pickaxey= 1, fence_wood = 1, },
stack_max = 64,
sunlight_propagates = true,
drawtype = "nodebox",
connect_sides = { "front", "back", "left", "right" },
connects_to = {"group:fence_wood"},
node_box = {
type = "connected",
fixed = {p},
connect_front = {z1,z12},
connect_back = {z2,z22,},
connect_left = {x1,x12},
connect_right = {x2,x22},
},
collision_box = {
type = "connected",
fixed = {cp},
connect_front = {cz1},
connect_back = {cz2,},
connect_left = {cx1},
connect_right = {cx2},
},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
--Cafte plate
minetest.register_craft({
type = "shapeless",
output = "owl_tech:"..metals_ore_array[i][1].."_plate",
recipe = {"owl_tech:work_hammer","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
}
})
--pick
minetest.register_tool("owl_tech:pick_".. metals_ore_array[i][1], {
description = S( metals_ore_array[i][2].." Pickaxe"),
_doc_items_longdesc = "Pick from owl tech",
inventory_image = "(owl_tech_pick_head.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_pick_stick.png", --owl_tech_pick_head.png owl_tech_pick_stick.png
wield_scale = mcl_vars.tool_wield_scale,
groups = { tool=1, pickaxe=1, dig_speed_class=4, enchantability=14},
tool_capabilities = {
-- 1/1.2
full_punch_interval = 0.83333333,
max_drop_level=4,
damage_groups = {fleshy=4},
punch_attack_uses = (metals_ore_array[i][6]),
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
pickaxey = { speed = 6, level = 4, uses = metals_ore_array[i][6]*2}
},
})
--Pick head
minetest.register_craftitem("owl_tech:pick_head_"..metals_ore_array[i][1], {
description = S("Pick head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Pick head use for crafte pick in any place"),
inventory_image = "(owl_tech_pick_head.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte pick head
minetest.register_craft({
type = "shaped",
output = "owl_tech:pick_head_"..metals_ore_array[i][1],
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:work_file","","owl_tech:work_hammer",},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Crafte pick from pick head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:pick_"..metals_ore_array[i][1],
recipe = {"owl_tech:pick_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--hammer
minetest.register_tool("owl_tech:hammer_".. metals_ore_array[i][1], {
description = S( metals_ore_array[i][2].." Hammer"),
_doc_items_longdesc = "Hammer from owl tech",
inventory_image = "(owl_tech_hammer_head.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_pick_stick.png", --owl_tech_pick_head.png owl_tech_pick_stick.png
wield_scale = mcl_vars.tool_wield_scale,
groups = { tool=1, pickaxe=1, dig_speed_class=4, enchantability=14,miner_hammer=1 },
tool_capabilities = {
-- 1/1.2
full_punch_interval = 0.83333333,
max_drop_level=4,
damage_groups = {fleshy=4},
punch_attack_uses = (metals_ore_array[i][6]*5),
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
pickaxey = { speed = 6, level = 4, uses = metals_ore_array[i][6]*10}
},
})
--Hammer head
minetest.register_craftitem("owl_tech:hammer_head_"..metals_ore_array[i][1], {
description = S("Hammer head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Hammer head use for crafte hammer in any place"),
inventory_image = "(owl_tech_hammer_head.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte Hammer head
minetest.register_craft({
type = "shaped",
output = "owl_tech:hammer_head_"..metals_ore_array[i][1],
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate"},
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:work_file","","owl_tech:work_hammer",}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Crafte hasmmer from hammer head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:hammer_"..metals_ore_array[i][1],
recipe = {"owl_tech:hammer_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--axe
minetest.register_tool("owl_tech:axe_".. metals_ore_array[i][1], {
description = S(metals_ore_array[i][2].." axe"),
_doc_items_longdesc = "Axe owl tech",
inventory_image = "(owl_tech_axe_head.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_pick_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
groups = { tool=1, axe=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
-- 1/0.9
full_punch_interval = 1.11111111,
max_drop_level=4,
damage_groups = {fleshy=9},
punch_attack_uses = (metals_ore_array[i][6]),
},
on_place = make_stripped_trunk,
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
axey = { speed = 6, level = 4, uses = metals_ore_array[i][6]*2 }
},
})
--axe head item
minetest.register_craftitem("owl_tech:axe_head_"..metals_ore_array[i][1], {
description = S("Axe head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Axe head use for crafte axe in any place"),
inventory_image = "(owl_tech_axe_head.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte axe from axe head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:axe_"..metals_ore_array[i][1],
recipe = {"owl_tech:axe_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--Crafte head
minetest.register_craft({
type = "shaped",
output = "owl_tech:axe_head_"..metals_ore_array[i][1],
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_ingot",""},
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:work_hammer",""},
{"owl_tech:work_file","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Sword
minetest.register_tool("owl_tech:sword_"..metals_ore_array[i][1], {
description = S(metals_ore_array[i][2].." sword"),
_doc_items_longdesc = "Owl tech sword",
inventory_image = "(owl_tech_sword_blade.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_sword_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
groups = { weapon=1, sword=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
full_punch_interval = 0.625,
max_drop_level=4,
damage_groups = {fleshy=6},
punch_attack_uses = metals_ore_array[i][6],
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
swordy = { speed = 6, level = 4, uses = metals_ore_array[i][6]*2 },
swordy_cobweb = { speed = 6, level = 4, uses = metals_ore_array[i][6]*2 }
},
})
--sword head
minetest.register_craftitem("owl_tech:sword_head_"..metals_ore_array[i][1], {
description = S("Sword head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Sword head use for crafte sword in any place"),
inventory_image = "(owl_tech_sword_blade.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte sword from sword head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:sword_"..metals_ore_array[i][1],
recipe = {"owl_tech:sword_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--Crafte sword head
minetest.register_craft({
type = "shaped",
output = "owl_tech:sword_head_"..metals_ore_array[i][1],
recipe = {
{"","owl_tech:"..metals_ore_array[i][1].."_plate",""},
{"owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:work_hammer"},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--shovel
minetest.register_tool("owl_tech:shovel_"..metals_ore_array[i][1], {
description = S(metals_ore_array[i][2].." Shovel"),
_doc_items_longdesc = "Owl tech shovel",
_doc_items_usagehelp = shovel_use,
inventory_image = "(owl_tech_shovel_head.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_shovel_stick.png",
wield_scale = wield_scale,
groups = { tool=1, shovel=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
full_punch_interval = 1,
max_drop_level=4,
damage_groups = {fleshy=4},
punch_attack_uses = metals_ore_array[i][6],
},
on_place = make_grass_path,
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
shovely = { speed = 6, level = 4, uses = metals_ore_array[i][6]*2 }
},
})
--Shovel head
minetest.register_craftitem("owl_tech:shovel_head_"..metals_ore_array[i][1], {
description = S("Shovel head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Shovel head use for crafte pick in any place"),
inventory_image = "(owl_tech_shovel_head.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte sword from sword head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:shovel_"..metals_ore_array[i][1],
recipe = {"owl_tech:shovel_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--Crafte sword head
minetest.register_craft({
type = "shaped",
output = "owl_tech:shovel_head_"..metals_ore_array[i][1],
recipe = {
{"owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:work_hammer"},
{"","owl_tech:"..metals_ore_array[i][1].."_ingot",""},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Hoe
minetest.register_tool("owl_tech:hoe_"..metals_ore_array[i][1], {
description = S(metals_ore_array[i][1].." Hoe"),
--_tt_help = hoe_tt.."\n"..S("Uses: @1", uses.iron),
_doc_items_longdesc = "Owl tech hoe",
inventory_image = "(owl_tech_hoe_head.png^[colorize:"..metals_ore_array[i][5]..":128)^owl_tech_hoe_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
on_place = hoe_on_place_function(metals_ore_array[i][6]),
groups = { tool=1, hoe=1, enchantability=14 },
tool_capabilities = {
-- 1/3
full_punch_interval = 0.33333333,
damage_groups = { fleshy = 1, },
punch_attack_uses = metals_ore_array[i][6],
},
_repair_material = "owl_tech:"..metals_ore_array[i][1].."_ingot",
_mcl_toollike_wield = true,
_mcl_diggroups = {
hoey = { speed = 6, level = 4, uses = 251 }
},
})
--Hoe head
minetest.register_craftitem("owl_tech:hoe_head_"..metals_ore_array[i][1], {
description = S("Hoe head "..metals_ore_array[i][1]),
_doc_items_longdesc = S("Hoe head use for crafte hoe in any place"),
inventory_image = "(owl_tech_hoe_head.png^[colorize:"..metals_ore_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte hoe from hoe head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:hoe_"..metals_ore_array[i][1],
recipe = {"owl_tech:hoe_head_"..metals_ore_array[i][1],"mcl_core:stick"}
})
--Crafte hoe head
minetest.register_craft({
type = "shaped",
output = "owl_tech:hoe_head_"..metals_ore_array[i][1],
recipe = {
{"owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_plate",""},
{"owl_tech:work_hammer","owl_tech:"..metals_ore_array[i][1].."_ingot",""},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--stick
minetest.register_craftitem("owl_tech:"..metals_ore_array[i][1].."_stick", {
description = S(metals_ore_array[i][2].. " stick"),
_doc_items_longdesc = S(metals_ore_array[i][2].. " stick"),
inventory_image = "owl_tech_stick.png^[colorize:"..metals_ore_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--carfte stick
minetest.register_craft({
type = "shapeless",
output = "owl_tech:"..metals_ore_array[i][1].."_stick",
recipe = {"owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
replacements = {
{"owl_tech:work_file","owl_tech:work_file"},
}
})
--Block
minetest.register_node("owl_tech:"..metals_ore_array[i][1].."block", {
description = S("Block of "..metals_ore_array[i][2]),
_doc_items_longdesc = S("Block of "..metals_ore_array[i][2]),
tiles = {"default_steel_block.png^[colorize:"..metals_ore_array[i][5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=metals_ore_array[i][4], building_block=1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
--Block dust
minetest.register_node("owl_tech:"..metals_ore_array[i][1].."_dust_block", {
description = S("Dust block of "..metals_ore_array[i][2]),
_doc_items_longdesc = S("Block of "..metals_ore_array[i][2]),
tiles = {"owl_tech_dust_block_1.png^[colorize:"..metals_ore_array[i][5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=metals_ore_array[i][4], building_block=1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
--metal briks
minetest.register_node("owl_tech:"..value[1].."_briks", {
description = S(value[2].." briks"),
_doc_items_longdesc = S("Part of multiblocks -safe for decor"),
tiles = {"owl_tech_base_briks.png^[colorize:"..value[5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=2 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5
})
--crafte metal briks
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..value[1].."_briks 2",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate"},
{"owl_tech:"..metals_ore_array[i][1].."_plate","mcl_core:brick_block","owl_tech:"..metals_ore_array[i][1].."_plate"},
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_plate"}
}
})
--frames
minetest.register_node("owl_tech:"..value[1].."_frames", {
description = S(value[2].." frames"),
_doc_items_longdesc = S("Part of multiblocks -safe for decor"),
tiles = {"owl_tech_base_frame.png^[colorize:"..value[5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=2 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5
})
--crafte metal briks
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..value[1].."_frames",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:wrench","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_stick"}
},
replacements = {
{"owl_tech:wrench","owl_tech:wrench"},
}
})
--grids
minetest.register_node("owl_tech:"..value[1].."_grid", {
description = S(value[2].." grid"),
_doc_items_longdesc = S("Part of multiblocks -safe for decor"),
tiles = {"owl_tech_base_grid.png^[colorize:"..value[5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=2 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5
})
--crafte metal grids
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..value[1].."_grid",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:work_hammer","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:work_file","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:wrench","owl_tech:"..metals_ore_array[i][1].."_stick"}
},
replacements = {
{"owl_tech:wrench","owl_tech:wrench"},
{"owl_tech:work_file","owl_tech:work_file"},
{"owl_tech:work_hammer","owl_tech:work_hammer"},
}
})
--tiles
minetest.register_node("owl_tech:"..value[1].."_tiles", {
description = S(value[2].." tiles"),
_doc_items_longdesc = S("Part of multiblocks -safe for decor"),
tiles = {"owl_tech_base_tiles.png^[colorize:"..value[5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=2 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5
})
--crafte tile
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..value[1].."_tiles",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_plate"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:wrench","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_plate"}
},
replacements = {
{"owl_tech:wrench","owl_tech:wrench"},
}
})
--big tiles
minetest.register_node("owl_tech:"..value[1].."_big_tiles", {
description = S(value[2].." big tiles"),
_doc_items_longdesc = S("Part of multiblocks -safe for decor"), --_big_tiles
tiles = {"owl_tech_base_big_tiles.png^[colorize:"..value[5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=2 },
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5
})
--crafte tile
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..value[1].."_big_tiles",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_plate"},
{"owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:work_hammer","owl_tech:"..metals_ore_array[i][1].."_stick"},
{"owl_tech:"..metals_ore_array[i][1].."_plate","owl_tech:"..metals_ore_array[i][1].."_stick","owl_tech:"..metals_ore_array[i][1].."_plate"}
},
replacements = {
{"owl_tech:work_hammer","owl_tech:work_hammer"},
}
})
--Crafte ingot from nugets
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_ingot",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget"},
{"owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget"},
{"owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget","owl_tech:"..metals_ore_array[i][1].."_nugget"}
}
})
--Crafte block from ingots
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."block",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"},
{"owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot","owl_tech:"..metals_ore_array[i][1].."_ingot"}
}
})
--Crafte block dust from ingots
minetest.register_craft({
type = "shaped",
output = "owl_tech:"..metals_ore_array[i][1].."_dust_block",
recipe = {
{"owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust"},
{"owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust"},
{"owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust","owl_tech:"..metals_ore_array[i][1].."_dust"}
}
})
--Crafte ingots from block
minetest.register_craft({
type = "shapeless",
output = "owl_tech:"..metals_ore_array[i][1].."_ingot 9",
recipe = {"owl_tech:"..metals_ore_array[i][1].."block"}
})
--Crafte dust from block
minetest.register_craft({
type = "shapeless",
output = "owl_tech:"..metals_ore_array[i][1].."_dust 9",
recipe = {"owl_tech:"..metals_ore_array[i][1].."_dust_block"}
})
end
-- 1)tech_name 2)useal name 3)need ore ? 4)pickasxe_level 5)color 6)gem_base 7)gem_block_base 8)dust_block 9)burn fuel 10)tool hardenet
local gems_orew_array={
{"coal","Coal ",true,1,"#1b1b1b","owl_tech_gem_1.png","owl_tech_gem_block_1.png","owl_tech_dust_block_1.png",80,0},
{"solid_biofuel","Solid biofuel ",false,1,"#0e3000","owl_tech_gem_1.png","owl_tech_gem_block_1.png","owl_tech_dust_block_1.png",160,0},
{"sulfur","Sulfur ",true,1,"#c2a800","owl_tech_gem_1.png","owl_tech_gem_block_1.png","owl_tech_dust_block_1.png",0,0},
{"saltpeter","Saltpeter ",true,1,"#b3e6ee","owl_tech_gem_1.png","owl_tech_gem_block_1.png","owl_tech_dust_block_1.png",0,0},
{"diamond","Diamond ",true,3,"#77cefb","owl_tech_gem_2.png","owl_tech_gem_block_2.png","owl_tech_dust_block_1.png",0,1000},
{"ruby","Ruby ",true,3,"#d40000","owl_tech_gem_2.png","owl_tech_gem_block_2.png","owl_tech_dust_block_1.png",0,750},--
{"raw_ruber","Raw Ruber ",false,1,"#dace00","owl_tech_gem_3.png","owl_tech_gem_block_3.png","owl_tech_dust_block_1.png",0,0},
{"ruber","Ruber ",false,1,"#171717","default_steel_ingot.png","default_steel_block.png","owl_tech_dust_block_1.png",0,0},
}
for i, value in ipairs(gems_orew_array) do
--ore
if gems_orew_array[i][3] then --and
minetest.register_node("owl_tech:"..gems_orew_array[i][1].."_ore", {
description = S(gems_orew_array[i][2].." ore"),
_doc_items_longdesc = S(gems_orew_array[i][2]..' ore'),
_doc_items_hidden = false,
tiles = {"default_stone.png^(owl_tech_ore_base.png^[colorize:"..gems_orew_array[i][5]..":128)"},
is_ground_content = true,
stack_max = 64,
groups = {pickaxey=gems_orew_array[i][4], building_block=1, material_stone=1, blast_furnace_smeltable=1},
sounds = mcl_sounds.node_sound_stone_defaults(),
_mcl_blast_resistance = 3,
_mcl_hardness = 3,
_mcl_silk_touch_drop = true,
})
end
--dust
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1].."_dust", {
description = S(gems_orew_array[i][2].. " dust"),
_doc_items_longdesc = S(gems_orew_array[i][2].. " dust"),
inventory_image = "owl_tech_dust.png^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--dirt dust
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1].."_dirt_dust", {
description = S(gems_orew_array[i][2].. " dirt dust"),
_doc_items_longdesc = S(gems_orew_array[i][2].. " dirt dust"),
inventory_image = "owl_tech_dirt_dust.png^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
if gems_orew_array[i][9]==0 then
--gem
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][2]),
_doc_items_longdesc = S(gems_orew_array[i][2]),
inventory_image = gems_orew_array[i][6].."^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
else
--gem
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][2]),
_doc_items_longdesc = S(gems_orew_array[i][2]),
inventory_image = gems_orew_array[i][6].."^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1,coal=1 },
})
end
--burn ore in gen
minetest.register_craft({
type = "cooking",
output = "owl_tech:"..gems_orew_array[i][1],
recipe = "owl_tech:"..gems_orew_array[i][1].."_ore",
cooktime = 10,
})
--plate
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1].."_plate", {
description = S(gems_orew_array[i][2].. " plate"),
_doc_items_longdesc = S(gems_orew_array[i][2].. " plate"),
inventory_image = "owl_tech_plate.png^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--stick
minetest.register_craftitem("owl_tech:"..gems_orew_array[i][1].."_stick", {
description = S(gems_orew_array[i][2].. " stick"),
_doc_items_longdesc = S(gems_orew_array[i][2].. " stick"),
inventory_image = "owl_tech_stick.png^[colorize:"..gems_orew_array[i][5]..":128",
stack_max = 64,
groups = { craftitem=1 },
})
--burn time gem
if gems_orew_array[i][9]>0 then
minetest.register_craft({
type = "fuel",
recipe = "owl_tech:"..gems_orew_array[i][1],
burntime = gems_orew_array[i][9],
})
minetest.register_craft({
type = "fuel",
recipe = "owl_tech:"..gems_orew_array[i][1].."_dust",
burntime = gems_orew_array[i][9],
})
end
--Block
minetest.register_node("owl_tech:"..gems_orew_array[i][1].."_block", {
description = S("Block of "..gems_orew_array[i][2]),
_doc_items_longdesc = S("Block of "..gems_orew_array[i][2]),
tiles = {gems_orew_array[i][7].."^[colorize:"..gems_orew_array[i][5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=gems_orew_array[i][4], building_block=1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
--burn time block
if gems_orew_array[i][9]>0 then
minetest.register_craft({
type = "fuel",
recipe = "owl_tech:"..gems_orew_array[i][1].."_block",
burntime = gems_orew_array[i][9]*9,
})
end
--Block dust
minetest.register_node("owl_tech:"..gems_orew_array[i][1].."_dust_block", {
description = S("Block of "..gems_orew_array[i][2]),
_doc_items_longdesc = S("Block of "..gems_orew_array[i][2]),
tiles = {gems_orew_array[i][8].."^[colorize:"..gems_orew_array[i][5]..":128"},
is_ground_content = false,
stack_max = 64,
groups = {pickaxey=gems_orew_array[i][4], building_block=1},
sounds = mcl_sounds.node_sound_metal_defaults(),
_mcl_blast_resistance = 6,
_mcl_hardness = 5,
})
if gems_orew_array[i][10]>0 then
--pick
minetest.register_tool("owl_tech:pick_".. gems_orew_array[i][1], {
description = S( gems_orew_array[i][2].." Pickaxe"),
_doc_items_longdesc = "Pick from owl tech",
inventory_image = "(owl_tech_pick_head.png^[colorize:"..gems_orew_array[i][5]..":128)^owl_tech_pick_stick.png", --owl_tech_pick_head.png owl_tech_pick_stick.png
wield_scale = mcl_vars.tool_wield_scale,
groups = { tool=1, pickaxe=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
-- 1/1.2
full_punch_interval = 0.83333333,
max_drop_level=4,
damage_groups = {fleshy=4},
punch_attack_uses = (gems_orew_array[i][10]),
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..gems_orew_array[i][1],
_mcl_toollike_wield = true,
_mcl_diggroups = {
pickaxey = { speed = 6, level = 4, uses = gems_orew_array[i][10]*2}
},
})
--Pick head
minetest.register_craftitem("owl_tech:pick_head_"..gems_orew_array[i][1], {
description = S("Pick head "..gems_orew_array[i][1]),
_doc_items_longdesc = S("Pick head use for crafte pick in any place"),
inventory_image = "(owl_tech_pick_head.png^[colorize:"..gems_orew_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte pick head
minetest.register_craft({
type = "shaped",
output = "owl_tech:pick_head_"..gems_orew_array[i][1],
recipe = {
{"owl_tech:"..gems_orew_array[i][1].."_plate","owl_tech:"..gems_orew_array[i][1],"owl_tech:"..gems_orew_array[i][1]},
{"owl_tech:work_file","","owl_tech:work_hammer",},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Crafte pick from pick head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:pick_"..gems_orew_array[i][1],
recipe = {"owl_tech:pick_head_"..gems_orew_array[i][1],"mcl_core:stick"}
})
--axe
minetest.register_tool("owl_tech:axe_"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][2].." axe"),
_doc_items_longdesc = "Axe owl tech",
inventory_image = "(owl_tech_axe_head.png^[colorize:"..gems_orew_array[i][5]..":128)^owl_tech_pick_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
groups = { tool=1, axe=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
-- 1/0.9
full_punch_interval = 1.11111111,
max_drop_level=4,
damage_groups = {fleshy=9},
punch_attack_uses = (gems_orew_array[i][10]),
},
on_place = make_stripped_trunk,
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..gems_orew_array[i][1],
_mcl_toollike_wield = true,
_mcl_diggroups = {
axey = { speed = 6, level = 4, uses = gems_orew_array[i][10]*2 }
},
})
--axe head item
minetest.register_craftitem("owl_tech:axe_head_"..gems_orew_array[i][1], {
description = S("Axe head "..gems_orew_array[i][1]),
_doc_items_longdesc = S("Axe head use for crafte axe in any place"),
inventory_image = "(owl_tech_axe_head.png^[colorize:"..gems_orew_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte axe from axe head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:axe_"..gems_orew_array[i][1],
recipe = {"owl_tech:axe_head_"..gems_orew_array[i][1],"mcl_core:stick"}
})
--Crafte head
minetest.register_craft({
type = "shaped",
output = "owl_tech:axe_head_"..gems_orew_array[i][1],
recipe = {
{"owl_tech:"..gems_orew_array[i][1].."_plate","owl_tech:"..gems_orew_array[i][1],""},
{"owl_tech:"..gems_orew_array[i][1],"owl_tech:work_hammer",""},
{"owl_tech:work_file","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Sword
minetest.register_tool("owl_tech:sword_"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][2].." sword"),
_doc_items_longdesc = "Owl tech sword",
inventory_image = "(owl_tech_sword_blade.png^[colorize:"..gems_orew_array[i][5]..":128)^owl_tech_sword_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
groups = { weapon=1, sword=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
full_punch_interval = 0.625,
max_drop_level=4,
damage_groups = {fleshy=6},
punch_attack_uses = gems_orew_array[i][10],
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..gems_orew_array[i][1],
_mcl_toollike_wield = true,
_mcl_diggroups = {
swordy = { speed = 6, level = 4, uses = gems_orew_array[i][10]*2 },
swordy_cobweb = { speed = 6, level = 4, uses = gems_orew_array[i][10]*2 }
},
})
--sword head
minetest.register_craftitem("owl_tech:sword_head_"..gems_orew_array[i][1], {
description = S("Sword head "..gems_orew_array[i][1]),
_doc_items_longdesc = S("Sword head use for crafte sword in any place"),
inventory_image = "(owl_tech_sword_blade.png^[colorize:"..gems_orew_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte sword from sword head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:sword_"..gems_orew_array[i][1],
recipe = {"owl_tech:sword_head_"..gems_orew_array[i][1],"mcl_core:stick"}
})
--Crafte sword head
minetest.register_craft({
type = "shaped",
output = "owl_tech:sword_head_"..gems_orew_array[i][1],
recipe = {
{"","owl_tech:"..gems_orew_array[i][1].."_plate",""},
{"owl_tech:work_file","owl_tech:"..gems_orew_array[i][1].."_plate","owl_tech:work_hammer"},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--shovel
minetest.register_tool("owl_tech:shovel_"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][2].." Shovel"),
_doc_items_longdesc = "Owl tech shovel",
_doc_items_usagehelp = shovel_use,
inventory_image = "(owl_tech_shovel_head.png^[colorize:"..gems_orew_array[i][5]..":128)^owl_tech_shovel_stick.png",
wield_scale = wield_scale,
groups = { tool=1, shovel=1, dig_speed_class=4, enchantability=14 },
tool_capabilities = {
full_punch_interval = 1,
max_drop_level=4,
damage_groups = {fleshy=4},
punch_attack_uses = gems_orew_array[i][10],
},
on_place = make_grass_path,
sound = { breaks = "default_tool_breaks" },
_repair_material = "owl_tech:"..gems_orew_array[i][1],
_mcl_toollike_wield = true,
_mcl_diggroups = {
shovely = { speed = 6, level = 4, uses = gems_orew_array[i][10]*2 }
},
})
--Shovel head
minetest.register_craftitem("owl_tech:shovel_head_"..gems_orew_array[i][1], {
description = S("Shovel head "..gems_orew_array[i][1]),
_doc_items_longdesc = S("Shovel head use for crafte pick in any place"),
inventory_image = "(owl_tech_shovel_head.png^[colorize:"..gems_orew_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte sword from sword head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:shovel_"..gems_orew_array[i][1],
recipe = {"owl_tech:shovel_head_"..gems_orew_array[i][1],"mcl_core:stick"}
})
--Crafte sword head
minetest.register_craft({
type = "shaped",
output = "owl_tech:shovel_head_"..gems_orew_array[i][1],
recipe = {
{"owl_tech:work_file","owl_tech:"..gems_orew_array[i][1].."_plate","owl_tech:work_hammer"},
{"","owl_tech:"..gems_orew_array[i][1],""},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
--Hoe
minetest.register_tool("owl_tech:hoe_"..gems_orew_array[i][1], {
description = S(gems_orew_array[i][1].." Hoe"),
--_tt_help = hoe_tt.."\n"..S("Uses: @1", uses.iron),
_doc_items_longdesc = "Owl tech hoe",
inventory_image = "(owl_tech_hoe_head.png^[colorize:"..gems_orew_array[i][5]..":128)^owl_tech_hoe_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
on_place = hoe_on_place_function(gems_orew_array[i][10]),
groups = { tool=1, hoe=1, enchantability=14 },
tool_capabilities = {
-- 1/3
full_punch_interval = 0.33333333,
damage_groups = { fleshy = 1, },
punch_attack_uses = gems_orew_array[i][10],
},
_repair_material = "owl_tech:"..gems_orew_array[i][1],
_mcl_toollike_wield = true,
_mcl_diggroups = {
hoey = { speed = 6, level = 4, uses = 251 }
},
})
--Hoe head
minetest.register_craftitem("owl_tech:hoe_head_"..gems_orew_array[i][1], {
description = S("Hoe head "..gems_orew_array[i][1]),
_doc_items_longdesc = S("Hoe head use for crafte hoe in any place"),
inventory_image = "(owl_tech_hoe_head.png^[colorize:"..gems_orew_array[i][5]..":128)",
stack_max = 64,
groups = { craftitem=1 },
})
--Crafte hoe from hoe head
minetest.register_craft({
type = "shapeless",
output = "owl_tech:hoe_"..gems_orew_array[i][1],
recipe = {"owl_tech:hoe_head_"..gems_orew_array[i][1],"mcl_core:stick"}
})
--Crafte hoe head
minetest.register_craft({
type = "shaped",
output = "owl_tech:hoe_head_"..gems_orew_array[i][1],
recipe = {
{"owl_tech:work_file","owl_tech:"..gems_orew_array[i][1].."_plate",""},
{"owl_tech:work_hammer","owl_tech:"..gems_orew_array[i][1],""},
{"","",""}
},
replacements = {
{"owl_tech:work_hammer", "owl_tech:work_hammer"},
{"owl_tech:work_file", "owl_tech:work_file"},
}
})
end
end
--1)name 2)Name 3)flowing animation 4)source animation 5)cell tezture 6)is fluid?
local fluid_array ={
{"tar","Tar","owl_tech_tar_flowing_animated.png","owl_tech_tar_source_animated.png","owl_tech_tar_for_cell.png",1},--#8d4a00
{"metan","Metan","owl_tech_tar_flowing_animated.png","owl_tech_tar_source_animated.png","owl_tech_metan_for_cell.png",0},--ccc8b0
{"distilled_water","Distilled water","owl_tech_distilled_water_flowing_animated.png","owl_tech_distilled_water_source_animated.png","owl_tech_distilled_water_for_cell.png",1},
}
for i, value in ipairs(fluid_array) do
if fluid_array[i][6]==1 then
minetest.register_node("owl_tech:"..fluid_array[i][1].."_flowing", {
description = S(fluid_array[i][2].." Water"),
_doc_items_create_entry = false,
wield_image = fluid_array[i][3].."^[verticalframe:64:0",
drawtype = "flowingliquid",
tiles = {fluid_array[i][3].."^[verticalframe:64:0"},
special_tiles = {
{
image="("..fluid_array[i][3]..")",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
},
{
image="("..fluid_array[i][3]..")",
backface_culling=false,
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=4.0}
},
},
sounds = mcl_sounds.node_sound_water_defaults(),
is_ground_content = false,
use_texture_alpha = USE_TEXTURE_ALPHA,
paramtype = "light",
paramtype2 = "flowingliquid",
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
drop = "",
drowning = 4,
liquidtype = "flowing",
liquid_alternative_flowing = "owl_tech:"..fluid_array[i][1].."_flowing",
liquid_alternative_source = "owl_tech:"..fluid_array[i][1].."_source",
liquid_viscosity = WATER_VISC,
liquid_range = 7,
waving = 3,
post_effect_color = {a=20, r=0x03, g=0x3C, b=0x5C},
groups = { water=3, liquid=3, puts_out_fire=1, melt_around=1, dig_by_piston=1, not_in_creative_inventory=1,},--not_in_creative_inventory=1,
_mcl_blast_resistance = 100,
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = -1,
})
minetest.register_node("owl_tech:"..fluid_array[i][1].."_source", {
description = S("Water Source"),
_doc_items_entry_name = S("Water"),
_doc_items_longdesc =
S("Сompounds from cyclic, highly volatile and non-volatile compounds, which are presented in a spectrum: from methyl esters to combustion of alcohols, acids, phenols and light compounds.").."\n\n",
_doc_items_hidden = false,
drawtype = "liquid",
waving = 3,
tiles = {
{name=fluid_array[i][4], animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0}}
},
special_tiles = {
-- New-style water source material (mostly unused)
{
name=fluid_array[i][4],
animation={type="vertical_frames", aspect_w=16, aspect_h=16, length=5.0},
backface_culling = false,
}
},
sounds = mcl_sounds.node_sound_water_defaults(),
is_ground_content = false,
use_texture_alpha = USE_TEXTURE_ALPHA,
paramtype = "light",
walkable = false,
pointable = false,
diggable = false,
buildable_to = true,
drop = "",
drowning = 4,
liquidtype = "source",
liquid_alternative_flowing = "owl_tech:"..fluid_array[i][1].."_flowing",
liquid_alternative_source = "owl_tech:"..fluid_array[i][1].."_source",
liquid_viscosity = WATER_VISC,
liquid_range = 7,
post_effect_color = {a=90, r=0x03, g=0x3C, b=0x5C},
stack_max = 64,
groups = { water=3, liquid=3, puts_out_fire=1, not_in_creative_inventory=1, dig_by_piston=1},
_mcl_blast_resistance = 100,
-- Hardness intentionally set to infinite instead of 100 (Minecraft value) to avoid problems in creative mode
_mcl_hardness = -1,
})
end
--capsuls
minetest.register_craftitem("owl_tech:"..fluid_array[i][1].."_cell", {
description = S("Get 1000 of "..fluid_array[i][1]),
_doc_items_longdesc = S("Contein "..fluid_array[i][1]),
inventory_image = "owl_tech_empty_cell.png^"..fluid_array[i][5],
stack_max = 64,
groups = { craftitem=1,load_cell=1,can_place_fluid=fluid_array[i][6] },
on_place = function(itemstack, placer, pointed_thing)
if minetest.get_item_group(itemstack:get_name(),"can_place_fluid")>0 and pointed_thing.type == "node" then
minetest.place_node(pointed_thing.above,{name="owl_tech:"..fluid_array[i][1].."_source"})
itemstack:set_count(itemstack:get_count()-1)
return itemstack
end
end
})
end
--empty cell
minetest.register_craftitem("owl_tech:empty_cell", {
description = S("cell tire 1"),
_doc_items_longdesc = S("Simple cell for fluids"),
inventory_image = "owl_tech_empty_cell.png",
stack_max = 64,
groups = { craftitem=1 },
})
minetest.register_craft({
type = "shaped",
output = "owl_tech:empty_cell 4",
recipe = {
{"","owl_tech:iron_plate",""},
{"owl_tech:tin_plate","","owl_tech:tin_plate"},
{"","owl_tech:iron_plate",""},
},
})
-- water and lava cell
minetest.register_craftitem("owl_tech:water_cell", {
description = S("Get 1000 of water"),
_doc_items_longdesc = S("Contein water"),
inventory_image = "owl_tech_empty_cell.png^owl_tech_water_for_cell.png",
stack_max = 64,
groups = { craftitem=1,load_cell=1 },
on_place = function(itemstack, placer, pointed_thing)
if pointed_thing.type == "node" then
minetest.place_node(pointed_thing.above,{name="mcl_core:water_source"})
itemstack:set_count(itemstack:get_count()-1)
return itemstack
end
end
})
minetest.register_craftitem("owl_tech:lava_cell", {
description = S("Get 1000 of lava"),
_doc_items_longdesc = S("Contein lava"),
inventory_image = "owl_tech_empty_cell.png^owl_tech_lava_for_cell.png",
stack_max = 64,
groups = { craftitem=1,load_cell=1 },
on_place = function(itemstack, placer, pointed_thing)
if pointed_thing.type == "node" then
minetest.place_node(pointed_thing.above,{name="mcl_core:lava_source"})
itemstack:set_count(itemstack:get_count()-1)
return itemstack
end
end
})
-----------------------------------------------------------------------------------
--Some custom recips
--Crafte bronze dust from copper and tin
minetest.register_craft({
type = "shapeless",
output = "owl_tech:bronze_dust 3",
recipe = {"owl_tech:copper_dust","owl_tech:copper_dust","owl_tech:copper_dust","owl_tech:tin_dust"}
})
--Crafte electrum from gold and silver
minetest.register_craft({
type = "shapeless",
output = "owl_tech:electrum_dust 3",
recipe = {"owl_tech:gold_dust","owl_tech:gold_dust","owl_tech:silver_dust","owl_tech:silver_dust"}
})
--MC2 ingots in Owl_tech
--Crutch - remake how the idea will be better!!!!
minetest.register_craft({
type = "cooking",
output = "owl_tech:gold_ingot",
recipe = "mcl_core:gold_ingot",
cooktime = 10,
})
minetest.register_craft({
type = "cooking",
output = "owl_tech:iron_ingot",
recipe = "mcl_core:iron_ingot",
cooktime = 10,
})
--Burn raw ruber in ruber
minetest.register_craft({
type = "cooking",
output = "owl_tech:ruber",
recipe = "mcl_core:raw_ruber",
cooktime = 10,
})
----------------------------------------------------------------------------------------
--Flint tools
--pick "mcl_core:flint"
minetest.register_tool("owl_tech:pick_flint", {
description = ("Flint Pickaxe"),
_doc_items_longdesc = "Pick from owl tech",
inventory_image = "(owl_tech_pick_head.png^[colorize:#00264d:128)^owl_tech_pick_stick.png",
wield_scale = wield_scale,
groups = { tool=1, pickaxe=1, dig_speed_class=3, enchantability=5 },
tool_capabilities = {
-- 1/1.2
full_punch_interval = 0.83333333,
max_drop_level=3,
damage_groups = {fleshy=3},
punch_attack_uses = 75,
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "mcl_core:flint",
_mcl_toollike_wield = true,
_mcl_diggroups = {
pickaxey = { speed = 4, level = 3, uses = 150 }
},
})
minetest.register_craft({
output = "owl_tech:pick_flint",
recipe = {
{"mcl_core:flint","mcl_core:flint","mcl_core:flint"},
{"","mcl_core:stick",""},
{"","mcl_core:stick",""}
}
})
--axe
minetest.register_tool("owl_tech:axe_flint", {
description = S("Flint axe"),
_doc_items_longdesc = "Axe owl tech",
inventory_image = "(owl_tech_axe_head.png^[colorize:#00264d:128)^owl_tech_pick_stick.png",
wield_scale = wield_scale,
groups = { tool=1, axe=1, dig_speed_class=3, enchantability=5 },
tool_capabilities = {
full_punch_interval = 1.25,
max_drop_level=3,
damage_groups = {fleshy=9},
punch_attack_uses = 75,
},
on_place = make_stripped_trunk,
sound = { breaks = "default_tool_breaks" },
_repair_material = "mcl_core:flint",
_mcl_toollike_wield = true,
_mcl_diggroups = {
axey = { speed = 4, level = 3, uses = 155 }
},
})
minetest.register_craft({
output = "owl_tech:axe_flint",
recipe = {
{"mcl_core:flint","mcl_core:flint"},
{"mcl_core:flint","mcl_core:stick"},
{"","mcl_core:stick"}
}
})
--Sword
minetest.register_tool("owl_tech:sword_flint", {
description = ("Flint sword"),
_doc_items_longdesc = "Owl tech sword",
inventory_image = "(owl_tech_sword_blade.png^[colorize:#00264d:128)^owl_tech_sword_stick.png",
wield_scale = wield_scale,
groups = { weapon=1, sword=1, dig_speed_class=3, enchantability=5 },
tool_capabilities = {
full_punch_interval = 0.625,
max_drop_level=3,
damage_groups = {fleshy=5},
punch_attack_uses = 150,
},
sound = { breaks = "default_tool_breaks" },
_repair_material = "mcl_core:flint",
_mcl_toollike_wield = true,
_mcl_diggroups = {
swordy = { speed = 4, level = 3, uses = 150 },
swordy_cobweb = { speed = 4, level = 3, uses = 150 }
},
})
minetest.register_craft({
output = "owl_tech:sword_flint",
recipe = {
{"mcl_core:flint"},
{"mcl_core:flint"},
{"mcl_core:stick"}
}
})
--shovel
minetest.register_tool("owl_tech:shovel_flint", {
description = S("Flint shovel"),
_doc_items_longdesc = "Owl tech shovel",
_doc_items_usagehelp = shovel_use,
inventory_image = "(owl_tech_shovel_head.png^[colorize:#00264d:128)^owl_tech_shovel_stick.png",
wield_scale = wield_scale,
groups = { tool=1, shovel=1, dig_speed_class=3, enchantability=5 },
tool_capabilities = {
full_punch_interval = 1,
max_drop_level=3,
damage_groups = {fleshy=3},
punch_attack_uses = 66,
},
on_place = make_grass_path,
sound = { breaks = "default_tool_breaks" },
_repair_material = "mcl_core:flint",
_mcl_toollike_wield = true,
_mcl_diggroups = {
shovely = { speed = 4, level = 3, uses = 132 }
},
})
minetest.register_craft({
output = "owl_tech:shovel_flint",
recipe = {
{"mcl_core:flint"},
{"mcl_core:stick"},
{"mcl_core:stick"}
}
})
--Hoe
minetest.register_tool("owl_tech:hoe_flint", {
description = S("Flint hoe"),
--_tt_help = hoe_tt.."\n"..S("Uses: @1", uses.iron),
_doc_items_longdesc = "Owl tech hoe",
inventory_image = "(owl_tech_hoe_head.png^[colorize:#00264d:128)^owl_tech_hoe_stick.png",
wield_scale = mcl_vars.tool_wield_scale,
on_place = hoe_on_place_function(75),
groups = { tool=1, hoe=1, enchantability=5 },
tool_capabilities = {
full_punch_interval = 0.5,
damage_groups = { fleshy = 1, },
punch_attack_uses = 75,
},
_repair_material = "mcl_core:flint",
_mcl_toollike_wield = true,
_mcl_diggroups = {
hoey = { speed = 4, level = 3, uses = 150 }
},
})
minetest.register_craft({
output = "owl_tech:hoe_flint",
recipe = {
{"mcl_core:flint", "mcl_core:flint"},
{"", "mcl_core:stick"},
{"", "mcl_core:stick"}
}
})
minetest.register_craft({
output = "owl_tech:hoe_flint",
recipe = {
{"mcl_core:flint", "mcl_core:flint"},
{"mcl_core:stick", ""},
{"mcl_core:stick", ""}
}
})
--circuit
minetest.register_craftitem("owl_tech:circuit_tire_1", {
description = S("Circuit tire 1"),
_doc_items_longdesc = S("Simple lamp circuit"),
inventory_image = "owl_tech_circuit_tire1.png",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte circuit
minetest.register_craft({
type = "shaped",
output = "owl_tech:circuit_tire_1 2",
recipe = {
{"owl_tech:tin_lamp","owl_tech:copper_electro_wire","owl_tech:tin_lamp"},
{"owl_tech:iron_lamp","owl_tech:copper_electro_wire","owl_tech:iron_lamp",},
{"owl_tech:copper_lamp","owl_tech:copper_electro_wire","owl_tech:copper_lamp"}
},
})
--battery 1
minetest.register_craftitem("owl_tech:batteri_tire_1", {
description = S("Battery tire 1"),
_doc_items_longdesc = S("Use for crafte"),
inventory_image = "owl_tech_base_battary_side.png",
stack_max = 64,
groups = { craftitem=1 },
})
--Cafte battery 1
minetest.register_craft({
type = "shaped",
output = "owl_tech:batteri_tire_1 2",
recipe = {
{"","owl_tech:copper_electro_wire",""},
{"owl_tech:tin_plate","owl_tech:copper_electro_wire","owl_tech:tin_plate"},
{"owl_tech:tin_plate","owl_tech:copper_lamp","owl_tech:tin_plate"}
},
})
--biomassa
minetest.register_craftitem("owl_tech:biomassa", {
description = S("Biomassa"),
_doc_items_longdesc = S("Get from leavs"),
inventory_image = "owl_tech_boimassa.png",
stack_max = 64,
groups = { craftitem=1 },
})
--wood dust
minetest.register_craftitem("owl_tech:wood_dust", {
description = S("Wood dust"),
_doc_items_longdesc = S("Get from wood log "),
inventory_image = "owl_tech_dust.png^[colorize:#643c0b:128",
stack_max = 64,
groups = { craftitem=1 },
})
--wood dust and biomass
minetest.register_craftitem("owl_tech:wood_and_biomass", {
description = S("Wood dust and biomass"),
_doc_items_longdesc = S("Get from wood log use for get biofule"),
inventory_image = "owl_tech_dust.png^[colorize:#8d6b00:128",
stack_max = 64,
groups = { craftitem=1 },
})