Hopper compatibility and iron furnace fix #11

Merged
mrkubax10 merged 4 commits from HandfulOfFrogs/industrialtest:master into master 2024-05-10 21:38:37 +02:00
Showing only changes of commit 9c0668b996 - Show all commits
+21 -1
View File
@@ -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)
mrkubax10 marked this conversation as resolved Outdated
Outdated
Review

Problem with this code is that not every machine has dst or src slots. For example Canning Machine has target slot instead of dst.

Problem with this code is that not every machine has `dst` or `src` slots. For example Canning Machine has `target` slot instead of `dst`.
Outdated
Review

I see, maybe this can be moved into registerSimpleElectricItemProcessor specifically?

I see, maybe this can be moved into `registerSimpleElectricItemProcessor` specifically?
Outdated
Review

Or, rather, have canning machine use dst slot too

Or, rather, have canning machine use dst slot too
Outdated
Review

Yeah this seems like a better solution though fact that src and dst are "special" should be documented somehow.

Yeah this seems like a better solution though fact that `src` and `dst` are "special" should be documented somehow.
Outdated
Review

Alright I renamed inventory list names to src and dst where it was making sense in 2669b7bc27.

Alright I renamed inventory list names to `src` and `dst` where it was making sense in 2669b7bc27.
Outdated
Review

Oh, great!

Oh, great!
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)
mrkubax10 marked this conversation as resolved Outdated
Outdated
Review

Use industrialtest.updateDelay instead of hardcoding 1.0.

Use `industrialtest.updateDelay` instead of hardcoding `1.0`.
end
end
definition.groups._industrialtest_wrenchUnmountable=1
if config.requiresWrench then