Made nodes breakable again

This commit is contained in:
James David Clarke 2023-12-28 08:47:46 +00:00
parent 58df66b7bc
commit 9a231387a3
No known key found for this signature in database
GPG Key ID: 9F5ECFD0E20F1C4C
31 changed files with 263 additions and 65 deletions

View File

@ -295,7 +295,7 @@ minetest.register_node("technic:forcefield_emitter_off", {
"technic_forcefield_emitter_off.png",
"technic_forcefield_emitter_off.png"
},
groups = {cracky = 1, technic_machine = 1, technic_hv = 1},
groups = {cracky = 1, technic_machine = 1, technic_hv = 1,pickaxey=3},
on_receive_fields = forcefield_receive_fields,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
@ -314,6 +314,10 @@ minetest.register_node("technic:forcefield_emitter_off", {
mesecons = mesecons,
digiline = digiline_def,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:forcefield_emitter_on", {
@ -327,7 +331,7 @@ minetest.register_node("technic:forcefield_emitter_on", {
"technic_forcefield_emitter_on.png"
},
groups = {cracky = 1, technic_machine = 1, technic_hv = 1,
not_in_creative_inventory=1},
not_in_creative_inventory=1,pickaxey=3},
drop = "technic:forcefield_emitter_off",
on_receive_fields = forcefield_receive_fields,
on_destruct = function(pos)
@ -346,6 +350,10 @@ minetest.register_node("technic:forcefield_emitter_on", {
minetest.dig_node(pos)
return {"technic:forcefield_emitter_off"}
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:forcefield", {

View File

@ -412,7 +412,7 @@ minetest.register_node("technic:hv_nuclear_reactor_core", {
},
drawtype = "mesh",
mesh = "technic_reactor.obj",
groups = {cracky = 1, technic_machine = 1, technic_hv = 1, digiline_remote_receive = 1},
groups = {cracky = 1, technic_machine = 1, technic_hv = 1, digiline_remote_receive = 1,pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
paramtype = "light",
@ -437,6 +437,10 @@ minetest.register_node("technic:hv_nuclear_reactor_core", {
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:hv_nuclear_reactor_core_active", {
@ -447,7 +451,7 @@ minetest.register_node("technic:hv_nuclear_reactor_core_active", {
drawtype = "mesh",
mesh = "technic_reactor.obj",
groups = {cracky = 1, technic_machine = 1, technic_hv = 1, radioactive = 4,
not_in_creative_inventory = 1, digiline_remote_receive = 1},
not_in_creative_inventory = 1, digiline_remote_receive = 1,pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
drop = "technic:hv_nuclear_reactor_core",
@ -487,6 +491,10 @@ minetest.register_node("technic:hv_nuclear_reactor_core_active", {
meta:set_int("burn_time", burn_time + 1)
return true
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("HV", "technic:hv_nuclear_reactor_core", technic.producer)

View File

@ -246,7 +246,7 @@ minetest.register_node("technic:quarry", {
"technic_carbon_steel_block.png"..cable_entry
},
paramtype2 = "facedir",
groups = {cracky=2, tubedevice=1, technic_machine=1, technic_hv=1},
groups = {cracky=2, tubedevice=1, technic_machine=1, technic_hv=1,pickaxey=3},
connect_sides = {"bottom", "front", "left", "right"},
tube = {
connect_sides = {top = 1},
@ -289,7 +289,11 @@ minetest.register_node("technic:quarry", {
end,
allow_metadata_inventory_take = function(pos, listname, index, stack, player)
return send_move_error(player)
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("HV", "technic:quarry", technic.receiver)

View File

@ -87,7 +87,7 @@ minetest.register_node("technic:geothermal", {
tiles = {"technic_geothermal_top.png", "technic_machine_bottom.png", "technic_geothermal_side.png",
"technic_geothermal_side.png", "technic_geothermal_side.png", "technic_geothermal_side.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
technic_machine=1, technic_lv=1, pickaxey=3},
paramtype2 = "facedir",
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
@ -97,6 +97,10 @@ minetest.register_node("technic:geothermal", {
meta:set_int("LV_EU_supply", 0)
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:geothermal_active", {
@ -105,11 +109,15 @@ minetest.register_node("technic:geothermal_active", {
"technic_geothermal_side.png", "technic_geothermal_side.png", "technic_geothermal_side.png"},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1, not_in_creative_inventory=1},
technic_machine=1, technic_lv=1, not_in_creative_inventory=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
drop = "technic:geothermal",
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("LV", "technic:geothermal", technic.producer)

View File

@ -26,7 +26,11 @@ minetest.register_node("technic:dummy_light_source", {
diggable = false,
pointable = false,
--drop = "", -- Intentionally allowed to drop itself
groups = {not_in_creative_inventory = 1}
groups = {not_in_creative_inventory = 1, pickaxey=3},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
@ -109,12 +113,16 @@ local ndef
ndef = {
description = desc,
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, pickaxey=3},
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", desc)
meta:set_int("LV_EU_demand", demand)
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
}
for k, v in pairs(common_fields) do
@ -129,11 +137,15 @@ ndef = {
paramtype = "light",
light_source = 14,
drop = "technic:lv_lamp",
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1},
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1, pickaxey=3},
technic_on_disable = function(pos)
illuminate(pos, false)
technic.swap_node(pos, "technic:lv_lamp")
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
}
for k, v in pairs(common_fields) do

View File

@ -48,13 +48,17 @@ ndef = {
description = desc,
inventory_image = "technic_lv_led_inv.png",
sunlight_propagates = true,
groups = {cracky = 2, technic_machine = 1, technic_lv = 1},
groups = {cracky = 2, technic_machine = 1, technic_lv = 1,pickaxey=3},
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", desc)
meta:set_int("LV_EU_demand", demand)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
}
for k, v in pairs(common_fields) do
@ -69,10 +73,14 @@ ndef = {
paramtype = "light",
light_source = 9,
drop = "technic:lv_led",
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1},
groups = {cracky = 2, technic_machine = 1, technic_lv = 1, not_in_creative_inventory = 1, pickaxey=3},
technic_on_disable = function(pos)
technic.swap_node(pos, "technic:lv_led")
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
}
for k, v in pairs(common_fields) do

View File

@ -94,7 +94,7 @@ minetest.register_node("technic:music_player", {
tiles = {"technic_music_player_top.png", "technic_machine_bottom.png", "technic_music_player_side.png",
"technic_music_player_side.png", "technic_music_player_side.png", "technic_music_player_side.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
technic_machine=1, technic_lv=1, pickaxey=3},
connect_sides = {"bottom"},
sounds = technic.compat.wood_sounds,
on_construct = function(pos)
@ -125,6 +125,10 @@ minetest.register_node("technic:music_player", {
on_destruct = stop_player,
technic_run = run,
technic_on_disable = stop_player,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("LV", "technic:music_player", technic.receiver)

View File

@ -48,7 +48,7 @@ minetest.register_node("technic:solar_panel", {
tiles = {"technic_solar_panel_top.png", "technic_solar_panel_bottom.png", "technic_solar_panel_side.png",
"technic_solar_panel_side.png", "technic_solar_panel_side.png", "technic_solar_panel_side.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
technic_machine=1, technic_lv=1, pickaxey=3},
connect_sides = {"bottom"},
sounds = technic.compat.wood_sounds,
description = S("Small Solar %s Generator"):format("LV"),
@ -66,6 +66,10 @@ minetest.register_node("technic:solar_panel", {
meta:set_string("infotext", S("Small Solar %s Generator"):format("LV"))
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("LV", "technic:solar_panel", technic.producer)

View File

@ -78,7 +78,7 @@ minetest.register_node("technic:water_mill", {
},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1},
technic_machine=1, technic_lv=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
on_construct = function(pos)
@ -87,6 +87,10 @@ minetest.register_node("technic:water_mill", {
meta:set_int("LV_EU_supply", 0)
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:water_mill_active", {
@ -96,12 +100,16 @@ minetest.register_node("technic:water_mill_active", {
"technic_water_mill_side.png", "technic_water_mill_side.png"},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_lv=1, not_in_creative_inventory=1},
technic_machine=1, technic_lv=1, not_in_creative_inventory=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
drop = "technic:water_mill",
technic_run = run,
technic_disabled_machine_name = "technic:water_mill",
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("LV", "technic:water_mill", technic.producer)

View File

@ -75,7 +75,7 @@ minetest.register_node("technic:hydro_turbine", {
},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1},
technic_machine=1, technic_mv=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
on_construct = function(pos)
@ -84,6 +84,10 @@ minetest.register_node("technic:hydro_turbine", {
meta:set_int("MV_EU_supply", 0)
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:hydro_turbine_active", {
@ -93,12 +97,16 @@ minetest.register_node("technic:hydro_turbine_active", {
"technic_hydro_turbine_side.png", "technic_hydro_turbine_side.png"},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1, not_in_creative_inventory=1},
technic_machine=1, technic_mv=1, not_in_creative_inventory=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.wood_sounds,
drop = "technic:hydro_turbine",
technic_run = run,
technic_disabled_machine_name = "technic:hydro_turbine",
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("MV", "technic:hydro_turbine", technic.producer)

View File

@ -122,7 +122,7 @@ minetest.register_node("technic:power_radiator", {
description = "MV Power Radiator",
tiles = {"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png",
"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, pickaxey=3},
sounds = technic.compat.wood_sounds,
drawtype = "nodebox",
paramtype = "light",
@ -143,7 +143,11 @@ minetest.register_node("technic:power_radiator", {
end,
on_punch = function(pos, node, puncher)
toggle_on_off_inductive_appliances(pos, node, puncher)
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_abm({

View File

@ -93,7 +93,7 @@ minetest.register_node("technic:tool_workshop", {
"technic_workshop_side.png"
},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_mv=1, tubedevice=1, tubedevice_receiver=1},
technic_machine=1, technic_mv=1, tubedevice=1, tubedevice_receiver=1, pickaxey=3},
connect_sides = {"bottom", "back", "left", "right"},
sounds = technic.compat.wood_sounds,
on_construct = function(pos)
@ -119,7 +119,11 @@ minetest.register_node("technic:tool_workshop", {
},
technic_run = run,
after_place_node = pipeworks.after_place,
after_dig_node = technic.machine_after_dig_node
after_dig_node = technic.machine_after_dig_node,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("MV", "technic:tool_workshop", technic.receiver)

View File

@ -24,9 +24,13 @@ minetest.register_node("technic:wind_mill_frame", {
drawtype = "glasslike_framed",
tiles = {"technic_carbon_steel_block.png", "default_glass.png"},
sunlight_propagates = true,
groups = {cracky=3},
groups = {cracky=3, pickaxey=3},
sounds = technic.compat.stone_sounds,
paramtype = "light",
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
local function check_wind_mill(pos)
@ -70,7 +74,7 @@ minetest.register_node("technic:wind_mill", {
description = S("Wind %s Generator"):format("MV"),
tiles = {"technic_carbon_steel_block.png"},
paramtype2 = "facedir",
groups = {cracky=1, technic_machine=1, technic_mv=1},
groups = {cracky=1, technic_machine=1, technic_mv=1, pickaxey=3},
connect_sides = {"top", "bottom", "back", "left", "right"},
sounds = technic.compat.stone_sounds,
drawtype = "nodebox",
@ -90,6 +94,10 @@ minetest.register_node("technic:wind_mill", {
meta:set_int("MV_EU_supply", 0)
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
technic.register_machine("MV", "technic:wind_mill", technic.producer)

View File

@ -72,7 +72,7 @@ minetest.register_node("technic:admin_anchor", {
drawtype = "normal",
tiles = {"technic_admin_anchor.png"},
is_ground_content = true,
groups = {cracky=3, not_in_creative_inventory=1},
groups = {cracky=3, not_in_creative_inventory=1, pickaxey=3},
sounds = technic.compat.stone_sounds,
after_place_node = function (pos, placer)
local meta = minetest.get_meta(pos)
@ -114,4 +114,8 @@ minetest.register_node("technic:admin_anchor", {
end
set_display(pos, meta)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})

View File

@ -34,7 +34,7 @@ minetest.register_node("technic:coal_alloy_furnace", {
"technic_coal_alloy_furnace_side.png", "technic_coal_alloy_furnace_side.png",
"technic_coal_alloy_furnace_side.png", "technic_coal_alloy_furnace_front.png"},
paramtype2 = "facedir",
groups = {cracky=2},
groups = {cracky=2, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.stone_sounds,
on_construct = function(pos)
@ -50,6 +50,10 @@ minetest.register_node("technic:coal_alloy_furnace", {
allow_metadata_inventory_put = technic.machine_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:coal_alloy_furnace_active", {
@ -60,13 +64,17 @@ minetest.register_node("technic:coal_alloy_furnace_active", {
paramtype2 = "facedir",
light_source = 8,
drop = "technic:coal_alloy_furnace",
groups = {cracky=2, not_in_creative_inventory=1},
groups = {cracky=2, not_in_creative_inventory=1, pickaxey=3},
legacy_facedir_simple = true,
sounds = technic.compat.stone_sounds,
can_dig = technic.machine_can_dig,
allow_metadata_inventory_put = technic.machine_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_abm({

View File

@ -140,7 +140,7 @@ local function make_constructor(mark, length)
"technic_constructor_front_off.png"},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
mesecon = 2, technic_constructor = 1},
mesecon = 2, technic_constructor = 1, pickaxey=3},
mesecons = {effector = {action_on = make_on(mark, length)}},
sounds = technic.compat.stone_sounds,
on_construct = function(pos)
@ -179,7 +179,11 @@ local function make_constructor(mark, length)
allow_metadata_inventory_put = allow_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
on_rotate = screwdriver.rotate_simple
on_rotate = screwdriver.rotate_simple,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_node("technic:constructor_mk"..mark.."_on", {
@ -192,13 +196,17 @@ local function make_constructor(mark, length)
paramtype2 = "facedir",
drop = "technic:constructor_mk"..mark.."_off",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
mesecon=2, not_in_creative_inventory=1, technic_constructor=1},
mesecon=2, not_in_creative_inventory=1, technic_constructor=1, pickaxey = 3},
mesecons= {effector = {action_off = make_off(mark)}},
sounds = technic.compat.stone_sounds,
allow_metadata_inventory_put = allow_inventory_put,
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
on_rotate = false
on_rotate = false,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
end

View File

@ -236,7 +236,7 @@ for zp = 0, 1 do
end
local nameext = string.format("%d%d%d%d%d%d", xm, xp, ym, yp, zm, zp)
local groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2 }
local groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, pickaxey=3}
if nameext ~= "111111" then groups.not_in_creative_inventory = 1 end
@ -373,6 +373,10 @@ for zp = 0, 1 do
end
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
end
@ -616,7 +620,7 @@ minetest.register_node("technic:frame_motor", {
"pipeworks_filter_top.png^[transformR90", "technic_lv_cable.png", "technic_lv_cable.png",
"technic_lv_cable.png", "technic_lv_cable.png", "technic_lv_cable.png"
},
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, mesecon = 2 },
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, mesecon = 2, pickaxey=3},
paramtype2 = "facedir",
mesecons = { effector = { action_on = frame_motor_on } },
@ -633,7 +637,10 @@ minetest.register_node("technic:frame_motor", {
{ x = -1, y = 0, z = 0 }, { x = 0, y = -1, z = 0 }
})[math.floor(node.param2 / 4) + 1]
return dir2.x ~= -dir.x or dir2.y ~= -dir.y or dir2.z ~= -dir.z
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
@ -825,37 +832,46 @@ minetest.register_node("technic:template", {
description = S("Template"),
tiles = { "technic_mv_cable.png" },
drop = "",
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2 },
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, pickaxey=3},
on_destruct = template_on_destruct,
after_dig_node = template_drops,
on_punch = function(pos, node, puncher)
swap_template(pos, "technic:template_disabled")
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
minetest.register_node("technic:template_disabled", {
description = S("Template"),
tiles = { "technic_hv_cable.png" },
drop = "",
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1 },
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1, pickaxey=3},
on_destruct = template_on_destruct,
after_dig_node = template_drops,
on_punch = function(pos, node, puncher)
local _ = minetest.get_meta(pos)
swap_template(pos, "technic:template_connector")
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
minetest.register_node("technic:template_connector", {
description = S("Template"),
tiles = { "technic_lv_cable.png" },
drop = "",
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1 },
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, not_in_creative_inventory = 1, pickaxey=3},
on_destruct = template_on_destruct,
after_dig_node = template_drops,
on_punch = function(pos, node, puncher)
swap_template(pos, "technic:template")
end
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
minetest.register_craftitem("technic:template_replacer", {
@ -949,13 +965,16 @@ minetest.register_node("technic:template_motor", {
"technic_lv_cable.png",
"technic_lv_cable.png"
},
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, mesecon = 2 },
groups = { snappy = 2, choppy = 2, oddly_breakable_by_hand = 2, mesecon = 2, pickaxey=3},
paramtype2 = "facedir",
mesecons = { effector = { action_on = template_motor_on } },
after_place_node = function(pos, placer, itemstack)
local meta = minetest.get_meta(pos)
meta:set_string("owner", placer:get_player_name())
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
-- Crafts

View File

@ -90,7 +90,7 @@ minetest.register_node("technic:injector", {
"technic_injector_side.png"
},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, tubedevice=1, tubedevice_receiver=1},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, tubedevice=1, tubedevice_receiver=1, pickaxey=3},
tube = {
can_insert = function(pos, node, stack, direction)
local meta = minetest.get_meta(pos)
@ -140,7 +140,10 @@ minetest.register_node("technic:injector", {
allow_metadata_inventory_take = technic.machine_inventory_take,
allow_metadata_inventory_move = technic.machine_inventory_move,
after_place_node = pipeworks.after_place,
after_dig_node = pipeworks.after_dig
after_dig_node = pipeworks.after_dig,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
minetest.register_abm({

View File

@ -26,13 +26,17 @@ minetest.register_node("technic:power_monitor",{
"technic_power_monitor_front.png"
},
paramtype2 = "facedir",
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1, technic_machine=1},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1, technic_machine=1,pickaxey=3},
connect_sides = {"bottom", "back"},
sounds = technic.compat.wood_sounds,
on_construct = function(pos)
local meta = minetest.get_meta(pos)
meta:set_string("infotext", S("Power Monitor"))
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_abm({

View File

@ -266,7 +266,7 @@ function technic.register_battery_box(data)
for i = 0, 8 do
local groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, ["technic_"..ltier]=1}
technic_machine=1, ["technic_"..ltier]=1, pickaxey=3}
if i ~= 0 then
groups.not_in_creative_inventory = 1
end
@ -381,6 +381,9 @@ function technic.register_battery_box(data)
end
},
},
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
end

View File

@ -213,6 +213,9 @@ function technic.register_cable(tier, size)
"group:technic_"..ltier, "group:technic_all_tiers"},
on_construct = clear_networks,
on_destruct = clear_networks,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
}
def.node_box.fixed = {
{-size, -size, -size, size, size, size},

View File

@ -26,12 +26,12 @@ function technic.register_generator(data)
local ltier = string.lower(tier)
local groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, ["technic_"..ltier]=1}
technic_machine=1, ["technic_"..ltier]=1, pickaxey=3}
if data.tube then
groups.tubedevice = 1
groups.tubedevice_receiver = 1
end
local active_groups = {not_in_creative_inventory = 1}
local active_groups = {not_in_creative_inventory = 1, pickaxey=3}
for k, v in pairs(groups) do active_groups[k] = v end
local generator_formspec =
@ -176,6 +176,9 @@ function technic.register_generator(data)
end
meta:set_string("formspec", generator_formspec..form_buttons)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
})
minetest.register_node("technic:"..ltier.."_generator_active", {
@ -284,6 +287,9 @@ function technic.register_generator(data)
form_buttons
)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
technic.register_machine(tier, "technic:"..ltier.."_generator", technic.producer)

View File

@ -41,12 +41,12 @@ function technic.register_base_machine(data)
data.modname = data.modname or minetest.get_current_modname()
local groups = {cracky = 2, technic_machine = 1, ["technic_"..ltier] = 1}
local groups = {cracky = 2, technic_machine = 1, ["technic_"..ltier] = 1, pickaxey=3}
if data.tube then
groups.tubedevice = 1
groups.tubedevice_receiver = 1
end
local active_groups = {not_in_creative_inventory = 1}
local active_groups = {not_in_creative_inventory = 1, pickaxey=3}
for k, v in pairs(groups) do active_groups[k] = v end
local formspec =
@ -228,6 +228,9 @@ function technic.register_base_machine(data)
end
meta:set_string("formspec", formspec..form_buttons)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
minetest.register_node(data.modname..":"..ltier.."_"..machine_name.."_active",{
@ -273,6 +276,9 @@ function technic.register_base_machine(data)
end
meta:set_string("formspec", formspec..form_buttons)
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
technic.register_machine(tier, data.modname..":"..ltier.."_"..machine_name, technic.receiver)

View File

@ -43,7 +43,7 @@ function technic.register_solar_array(data)
tiles = {"technic_"..ltier.."_solar_array_top.png", "technic_"..ltier.."_solar_array_bottom.png",
"technic_"..ltier.."_solar_array_side.png", "technic_"..ltier.."_solar_array_side.png",
"technic_"..ltier.."_solar_array_side.png", "technic_"..ltier.."_solar_array_side.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_machine=1, ["technic_"..ltier]=1},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_machine=1, ["technic_"..ltier]=1, pickaxey=3},
connect_sides = {"bottom"},
sounds = technic.compat.wood_sounds,
description = S("Arrayed Solar %s Generator"):format(tier),
@ -59,6 +59,9 @@ function technic.register_solar_array(data)
meta:set_int(tier.."_EU_supply", 0)
end,
technic_run = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
technic.register_machine(tier, "technic:solar_array_"..ltier, technic.producer)

View File

@ -198,7 +198,7 @@ minetest.register_node("technic:supply_converter", {
"technic_supply_converter_side.png"
},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2,
technic_machine=1, technic_all_tiers=1},
technic_machine=1, technic_all_tiers=1, pickaxey=3},
connect_sides = {"top", "bottom"},
sounds = technic.compat.wood_sounds,
on_receive_fields = supply_converter_receive_fields,
@ -218,6 +218,10 @@ minetest.register_node("technic:supply_converter", {
digiline = digiline_def,
technic_run = run,
technic_on_disable = run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true,
_mcl_fortune_drop = mcl_core.fortune_drop_ore
})
minetest.register_craft({

View File

@ -36,7 +36,7 @@ minetest.register_node("technic:switching_station",{
"technic_water_mill_top_active.png",
"technic_water_mill_top_active.png",
"technic_water_mill_top_active.png"},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1},
groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, technic_all_tiers=1,pickaxey=3},
connect_sides = {"bottom"},
sounds = technic.compat.wood_sounds,
on_construct = function(pos)

View File

@ -113,11 +113,14 @@ minetest.register_node("technic:light", {
drawtype = "glasslike",
tiles = {"technic_light.png"},
paramtype = "light",
groups = {not_in_creative_inventory = 1},
groups = {not_in_creative_inventory = 1, pickaxey=3},
drop = "",
walkable = false,
buildable_to = true,
sunlight_propagates = true,
light_source = minetest.LIGHT_MAX,
pointable = false,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})

View File

@ -321,7 +321,12 @@ function technic.chests:definition(name, data)
minetest.remove_node(pos)
return drops
end,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
}
def.groups.pickaxey = 3
if data.locked then
def.allow_metadata_inventory_move = self.inv_move
def.allow_metadata_inventory_put = self.inv_put

View File

@ -250,7 +250,7 @@ minetest.register_node(":technic:cnc", {
description = desc_tr,
tiles = {"technic_cnc_top.png", "technic_cnc_bottom.png", "technic_cnc_side.png",
"technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_front.png"},
groups = {cracky=2, technic_machine=1, technic_lv=1},
groups = {cracky=2, technic_machine=1, technic_lv=1, pickaxey=3},
connect_sides = {"bottom", "back", "left", "right"},
paramtype2 = "facedir",
legacy_facedir_simple = true,
@ -269,6 +269,9 @@ minetest.register_node(":technic:cnc", {
allow_metadata_inventory_move = allow_metadata_inventory_move,
on_receive_fields = form_handler,
technic_run = technic_cnc.use_technic and run,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
-- Active state block
@ -278,7 +281,7 @@ if technic_cnc.use_technic then
description = desc_tr,
tiles = {"technic_cnc_top_active.png", "technic_cnc_bottom.png", "technic_cnc_side.png",
"technic_cnc_side.png", "technic_cnc_side.png", "technic_cnc_front_active.png"},
groups = {cracky=2, technic_machine=1, technic_lv=1, not_in_creative_inventory=1},
groups = {cracky=2, technic_machine=1, technic_lv=1, not_in_creative_inventory=1, pickaxey=3},
connect_sides = {"bottom", "back", "left", "right"},
paramtype2 = "facedir",
drop = "technic:cnc",
@ -290,6 +293,9 @@ if technic_cnc.use_technic then
on_receive_fields = form_handler,
technic_run = run,
technic_disabled_machine_name = "technic:cnc",
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
technic.register_machine("LV", "technic:cnc", technic.receiver)

View File

@ -273,7 +273,8 @@ technic_cnc.programs_disable = {
-- Generic function for registering all the different node types
function technic_cnc.register_program(recipeitem, suffix, model, groups, images, description, cbox, sbox)
groups.pickaxey = 3
local dtype
local nodeboxdef
local meshdef
@ -303,7 +304,10 @@ function technic_cnc.register_program(recipeitem, suffix, model, groups, images,
walkable = true,
groups = groups,
selection_box = sbox,
collision_box = cbox
collision_box = cbox,
_mcl_hardness = 3,
_mcl_blast_resistance = 3,
_mcl_silk_touch_drop = true
})
end

View File

@ -10,8 +10,11 @@ minetest.register_node(":moretrees:rubber_tree_sapling", {
wield_image = "technic_rubber_sapling.png",
paramtype = "light",
walkable = false,
groups = {dig_immediate=3, flammable=2, sapling=1},
groups = {dig_immediate=3, flammable=2, sapling=1, pickaxey=1, handy=1},
sounds = sounds.node_sound_defaults(),
_mcl_hardness = 1,
_mcl_blast_resistance = 1,
_mcl_silk_touch_drop = true
})
minetest.register_craft({
@ -25,8 +28,11 @@ minetest.register_node(":moretrees:rubber_tree_trunk", {
tiles = {"default_tree_top.png", "default_tree_top.png",
"technic_rubber_tree_full.png"},
groups = {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1,
flammable=2},
flammable=2, handy=1},
sounds = sounds.node_sound_wood_defaults(),
_mcl_hardness = 1,
_mcl_blast_resistance = 1,
_mcl_silk_touch_drop = true
})
minetest.register_node(":moretrees:rubber_tree_trunk_empty", {
@ -34,8 +40,11 @@ minetest.register_node(":moretrees:rubber_tree_trunk_empty", {
tiles = {"default_tree_top.png", "default_tree_top.png",
"technic_rubber_tree_empty.png"},
groups = {tree=1, snappy=1, choppy=2, oddly_breakable_by_hand=1,
flammable=2, not_in_creative_inventory=1},
flammable=2, not_in_creative_inventory=1,handy=1},
sounds = sounds.node_sound_wood_defaults(),
_mcl_hardness = 1,
_mcl_blast_resistance = 1,
_mcl_silk_touch_drop = true
})
minetest.register_node(":moretrees:rubber_tree_leaves", {
@ -43,7 +52,7 @@ minetest.register_node(":moretrees:rubber_tree_leaves", {
description = S("Rubber Tree Leaves"),
tiles = {"technic_rubber_leaves.png"},
paramtype = "light",
groups = {snappy=3, leafdecay=3, flammable=2, leaves=1},
groups = {snappy=3, leafdecay=3, flammable=2, leaves=1,},
drop = {
max_items = 1,
items = {{
@ -55,7 +64,10 @@ minetest.register_node(":moretrees:rubber_tree_leaves", {
}
}
},
sounds = sounds.node_sound_leaves_defaults()
sounds = sounds.node_sound_leaves_defaults(),
_mcl_hardness = 1,
_mcl_blast_resistance = 1,
_mcl_silk_touch_drop = true
})
technic.rubber_tree_model={
@ -91,8 +103,17 @@ if technic.config:get_bool("enable_rubber_tree_generation") then
x = (maxp.x - minp.x) / 2 + minp.x,
y = (maxp.y - minp.y) / 2 + minp.y,
z = (maxp.z - minp.z) / 2 + minp.z}
local near_node = nil
if minetest.get_modpath("mcl_core") then
near_node = "mcl_core:dirt_with_grass"
else if minetest.get_modpath("default") then
near_node = "default:dirt_with_grass"
else
error(S("[TECHNIC] Cant generate rubber trees as default or mcl_core is not installed, please use a mineclone compatible game or minetest_game"))
end
end
local pos = minetest.find_node_near(tmp, maxp.x - minp.x,
{"default:dirt_with_grass"})
near_node)
if pos ~= nil then
minetest.spawn_tree({x=pos.x, y=pos.y+1, z=pos.z}, technic.rubber_tree_model)
end