-- Nodes that are to be powered by other nodes PyuTest.make_electricity_device("pyutest_electricity:freezer_device", "Freezer Device", { cracky = PyuTest.BLOCK_FAST }, { "pyutest-freezer.png" }, "pyutest_blocks:ice_block", nil, function(pos, node, sender_pos) PyuTest.dorange(pos, 2, function(p) local n = core.get_node(p) if core.get_item_group(n.name, "freezable") ~= 0 then core.set_node(p, { name = "pyutest_blocks:ice_block" }) elseif core.get_item_group(n.name, "coolable") ~= 0 then local def = core.registered_nodes[n.name] local cool_into = def.__cool_into or "pyutest_blocks:water_source" core.set_node(p, { name = cool_into }) end end) end) PyuTest.make_electricity_device("pyutest_electricity:heater_device", "Heater Device", { cracky = PyuTest.BLOCK_FAST }, { "pyutest-heater.png" }, "pyutest_blocks:fire", nil, function(pos, node, sender_pos) PyuTest.dorange(pos, 2, function(p) local n = core.get_node(p) if core.get_item_group(n.name, "thawable") ~= 0 then local def = core.registered_nodes[n.name] local thaw_into = def.__thaw_into or "pyutest_blocks:water_source" core.set_node(p, { name = thaw_into }) elseif core.get_item_group(n.name, "heatable") ~= 0 then local def = core.registered_nodes[n.name] local heat_into = def.__heat_into or "pyutest_blocks:lava_source" core.set_node(p, { name = heat_into }) end end) end) PyuTest.make_electricity_device("pyutest_electricity:lamp_device", "Lamp Device", { cracky = PyuTest.BLOCK_FAST, }, { "pyutest-lamp.png" }, "pyutest_blocks:light", nil, function(pos, node, sender_pos) core.set_node(pos, { name = "pyutest_electricity:lamp_device_on" }) end) PyuTest.make_electricity_device("pyutest_electricity:lamp_device_on", "Lamp Device", { cracky = PyuTest.BLOCK_FAST, not_in_creative_inventory = 1 }, { "pyutest-lamp.png" }, nil, { light_source = core.LIGHT_MAX, drop = "pyutest_electricity:lamp_device" }, function(pos, node, sender_pos) core.set_node(pos, { name = "pyutest_electricity:lamp_device" }) end) PyuTest.make_electricity_device("pyutest_electricity:time_device", "Time Device", { cracky = PyuTest.BLOCK_FAST }, { "pyutest-time-device.png" }, nil, nil, function(pos, node) local time = core.get_timeofday() if math.round(time) ~= 1 then core.set_timeofday(0.5) else core.set_timeofday(1) end end)