From 137695ea67cf7096311c893de7cf139e6307b26b Mon Sep 17 00:00:00 2001 From: Tim <t4im@users.noreply.github.com> Date: Mon, 16 Mar 2015 23:58:41 +0100 Subject: [PATCH] allow activation/deactivation of frames/templates by config --- technic/machines/other/injector.lua | 22 ++++++++++++++++------ 1 files changed, 16 insertions(+), 6 deletions(-) diff --git a/technic/machines/other/injector.lua b/technic/machines/other/injector.lua index 36c2592..e68760c 100644 --- a/technic/machines/other/injector.lua +++ b/technic/machines/other/injector.lua @@ -2,7 +2,7 @@ local S = technic.getter local function inject_items (pos) - local meta=minetest.env:get_meta(pos) + local meta=minetest.get_meta(pos) local inv = meta:get_inventory() local mode=meta:get_string("mode") if mode=="single items" then @@ -65,11 +65,19 @@ description = S("Self-Contained Injector"), tiles = {"technic_injector_top.png", "technic_injector_bottom.png", "technic_injector_side.png", "technic_injector_side.png", "technic_injector_side.png", "technic_injector_side.png"}, - groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, tubedevice=1}, - tube = {connect_sides={bottom=1}}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, tubedevice=1, tubedevice_receiver=1}, + tube = { + can_insert = function(pos, node, stack, direction) + return minetest.get_meta(pos):get_inventory():room_for_item("main",stack) + end, + insert_object = function(pos, node, stack, direction) + return minetest.get_meta(pos):get_inventory():add_item("main",stack) + end, + connect_sides = {left=1, right=1, front=1, back=1, top=1, bottom=1}, + }, sounds = default.node_sound_wood_defaults(), on_construct = function(pos) - local meta = minetest.env:get_meta(pos) + local meta = minetest.get_meta(pos) meta:set_string("infotext", S("Self-Contained Injector")) local inv = meta:get_inventory() inv:set_size("main", 8*4) @@ -77,12 +85,12 @@ set_injector_formspec(meta) end, can_dig = function(pos,player) - local meta = minetest.env:get_meta(pos); + local meta = minetest.get_meta(pos); local inv = meta:get_inventory() return inv:is_empty("main") end, on_receive_fields = function(pos, formanme, fields, sender) - local meta = minetest.env:get_meta(pos) + local meta = minetest.get_meta(pos) if fields.mode_item then meta:set_string("mode", "single items") end if fields.mode_stack then meta:set_string("mode", "whole stacks") end set_injector_formspec(meta) @@ -90,6 +98,8 @@ allow_metadata_inventory_put = technic.machine_inventory_put, 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 }) minetest.register_abm({ -- Gitblit v1.8.0