From 10b415b735db44bfe892690bd1335dab84599ada Mon Sep 17 00:00:00 2001 From: Handful of Frogs Date: Fri, 10 May 2024 11:29:04 +0300 Subject: [PATCH] feat: mcl hopper compat for common machines --- machines/common.lua | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/machines/common.lua b/machines/common.lua index 23df385..17e2d5a 100644 --- a/machines/common.lua +++ b/machines/common.lua @@ -357,9 +357,29 @@ function industrialtest.internal.registerMachine(config) if config.sounds=="metal" then definition.sounds=mcl_sounds.node_sound_metal_defaults() end - definition.groups={pickaxey=1} + definition.groups={ + pickaxey=1, + container=2 + } definition._mcl_blast_resistance=3.5 definition._mcl_hardness=3.9 + definition._mcl_hoppers_on_try_pull=function(pos, hop_pos, hop_inv, hop_list) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + local stack = inv:get_stack("dst", 1) + if not stack:is_empty() and hop_inv:room_for_item(hop_list, stack) then + return inv, "dst", 1 + end + return nil, nil, nil + end + definition._mcl_hoppers_on_try_push=function(pos, hop_pos, hop_inv, hop_list) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + return inv, "src", mcl_util.select_stack(hop_inv, hop_list, inv, "src") + end + definition._mcl_hoppers_on_after_push=function(pos) + minetest.get_node_timer(pos):start(1.0) + end end definition.groups._industrialtest_wrenchUnmountable=1 if config.requiresWrench then